Skip to content

Conversation

@stof
Copy link
Member

@stof stof commented Oct 25, 2025

Dropping support for old PHP versions simplifies our maintenance work, by unlocking a bunch of improvements (which will be done in separate PRs):

  • updating Psalm to a maintained versions
  • updating to PHPUnit 11
  • investigating the usage of newer PHP features (typed properties, readonly properties, etc...) when doable without BC breaks.

Note that this also fixes the correctness of the implementation of #1882, which relies on union type that are not compatible with PHP 7 (not detected by the CI as we don't yet generate code needing such shape, but there is an in-progress PR that will use it once updated).

Closes #1961

@stof
Copy link
Member Author

stof commented Oct 25, 2025

Remaining TODO; figuring out the proper way to document this in the changelog files so that we release it as a semver-minor, not as a semver-patch.

@stof
Copy link
Member Author

stof commented Oct 25, 2025

The changes in the psalm baseline correspond to different kinds:

  • updating the psalm version on the root node (apparently, it's been a while since the last time we did an automated generation of the baseline as it was with an older version of Psalm)
  • reordering files in the baseline (manual edition of the baseline did not preserve alphabetical sorting)
  • removing some errors in Core that are no longer reported thanks to more precise type declarations in psr/cache and symfony/cache, thanks to using newer versions now that Psalm does not run on PHP 7 anymore.
  • new errors reported in the Monolog integration due to running Psalm using Monolog 3.x instead of 2.x (fixing them will requiring dropping support for Monolog 2.x, to migrate to modern Monolog APIs)

@stof stof force-pushed the bump_min_version branch from b15a5da to 6134b35 Compare October 25, 2025 20:18
@stof
Copy link
Member Author

stof commented Oct 25, 2025

@jderusse @Nyholm could one of you remove all PHP versions lower than 8.2 from the list of required CI checks ? I don't have admin access on the repo to do it myself.

@jderusse
Copy link
Member

@jderusse @Nyholm could one of you remove all PHP versions lower than 8.2 from the list of required CI checks ? I don't have admin access on the repo to do it myself.

done.

Feel free to merge the PR when you think is ready.
Thank you for this contribution and pushing this change.

@stof stof merged commit a9ceb4c into async-aws:master Oct 26, 2025
12 checks passed
@stof stof deleted the bump_min_version branch October 26, 2025 07:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[RFC] Bump the minimum version of PHP we support

2 participants