ci: test on PHP 8.4 and 8.5 and update Node 20 actions#48
Merged
bennothommo merged 2 commits intoJun 15, 2026
Conversation
Adds 8.4 and 8.5 to the unit test matrix, now that assetic-php#45 and assetic-php#47 have cleaned up Assetic's own deprecations on those versions. The only deprecations remaining on 8.4/8.5 originate in vendor code (Twig 2.x and ScssPhp 1.x) that Assetic cannot fix, so the symfony/phpunit-bridge deprecation helper is configured to tolerate indirect (vendor-internal) deprecations while still failing the build on any deprecation in Assetic's own code (max[self]=0&max[direct]=0). The full suite passes on 8.4 and 8.5 (408 tests, 547 assertions). Also bumps the actions pinned to the deprecated Node 20 runtime to their Node 24 releases: actions/checkout v4 -> v5 and supplypike/setup-bin v4 -> v5. shivammathur/setup-php@v2 already runs on Node 24, so it is left unchanged.
bennothommo
reviewed
Jun 15, 2026
bennothommo
left a comment
Member
There was a problem hiding this comment.
Update to more recent versions
Co-authored-by: Ben Thomson <git@alfreido.com>
Member
|
Thanks @austinderrick! I'll fix up the tests in another commit - I updated the Tailwind CSS CLI utility in this PR, and evidently they've changed some of their boilerplate. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds PHP 8.4 and 8.5 to the unit test matrix and updates the workflow actions still pinned to the deprecated Node 20 runtime.
PRs #45 and #47 already cleaned up Assetic's own deprecations on 8.4/8.5, but the CI matrix was never extended to actually exercise those versions. This turns them on.
Changes
.github/workflows/tests.yml— add'8.4'and'8.5'to thephpVersionmatrix.phpunit.xml.dist— setSYMFONY_DEPRECATIONS_HELPER=max[self]=0&max[direct]=0. On 8.4/8.5 the only remaining deprecations come from vendor code (Twig 2.x and ScssPhp 1.x) that Assetic cannot fix. This config tolerates indirect (vendor-internal) deprecations while still failing the build on any deprecation in Assetic's own code, so the guard against regressions is preserved.code-quality.yml):actions/checkoutv4 → v5 (in bothtests.ymlandcode-quality.yml)supplypike/setup-binv4 → v5 (inputs unchanged between v4 and v5; only the runtime moved to Node 24)shivammathur/setup-php@v2already runs on Node 24, so it is left unchanged.Verification
Ran the full suite locally against current
masteron PHP 8.3, 8.4, and 8.5 (PHP 8.5.5 / 8.4.14). All green with the new helper config:php -lsweep ofsrc/on 8.5 reports no compile-time deprecations in Assetic's own code.Modeled on wintercms/storm#232, adapted for the fact that here the only outstanding deprecations are in unfixable vendor code rather than first-party source.