-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Require PHP 8.3 #6889
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Require PHP 8.3 #6889
Conversation
d042031
to
58e9ada
Compare
This can help making a decision. Apparently 25% of the 4.x userbase still uses 8.2. Only ~3% uses 8.1, so I'd say OK for dropping at least 8.1, but for 8.2, it still feels a bit early. |
I think we agreed long ago on a policy that we support the supported PHP versions. The desire to upgrade DBAL will motivate users to upgrade their PHP. They are already using an unsupported PHP versions, and it's apparently not a problem. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well OK then
Sorry, I'm late to the party here, but this happened during me travelling to conferences. 😓 I too feel that this bump has been too ambitious. PHP 8.2 is still widely supported by downstream projects like Symfony, TYPO3 and Shopware, just to name a few. Dropping support for it brings those projects into a difficult position, especially if combined with the unreleased changes to our schema API. They're basically forced to use a depreacted API in the next feature release and won't be able to make their projects forward-compatible with DBAL 5. This will ultimately slow down the adoption of DBAL 5. On top of that, I don't see much benefit for us in bumping to PHP 8.3 because not much has changed in the language itself or the database drivers that would allow us to drop compat code. I see two possible ways forward:
I also think that we should have a more formailzed way to bumping the minimum PHP version. We're having this discussion on each of our repositories and for each of them individually and those discussions feel even more time consuming than the work that we have to invest to support older PHP releases. We've failed to formalize a process for that at our meetup last fall. I will have some time next week and I'll try to prepare something. |
I feel strongly against supporting PHP 8.1 which has been out of community support for longer than a year. Restoring the support for PHP 8.2 seems okay given the dependents. Let's establish a more formal agreement on our PHP support policy going forward. |
| Q | A |------------- | ----------- | Type | improvement | Fixed issues | #6889 (comment) #### Summary This PR allows DBAL 4 to be installed on PHP 8.2 again. See the discussion on #6889 for details.
PHP 8.1 and 8.2 are no longer supported by the community. PHPUnit 12 also requires PHP 8.3 or newer (see #6888).
The code/phpDoc changes are needed to address the following coding standard violations:
They are reported because the
enableStandaloneNullTrueFalseTypeHints
parameter defaults totrue
on PHP 8.2+. I don't think we want to turn it off just to retain the annotations, and we cannot modify theConfiguration
method signatures because it's notfinal
. Modifying the return type inUnexpectedValue
is fine because it isfinal
.