Skip to content

[CI] Test the suite against Node.js 22, 24 and 26 - #11

Merged
Kocal merged 1 commit into
symfony:mainfrom
Kocal:ci/test-node-24-26
Jul 10, 2026
Merged

[CI] Test the suite against Node.js 22, 24 and 26#11
Kocal merged 1 commit into
symfony:mainfrom
Kocal:ci/test-node-24-26

Conversation

@Kocal

@Kocal Kocal commented Jul 10, 2026

Copy link
Copy Markdown
Member
Q A
Bug fix? no
New feature? no
Deprecations? no
Issues -
License MIT

The test job used to run on a single Node version pinned by .nvmrc (Node 22). This PR adds a version matrix instead, testing Node 22, 24 and 26 across the three OSes we already cover (ubuntu, windows, macos), with readable job names like "Node 24 on ubuntu-latest". The lint job keeps using .nvmrc, no need to matrix that one.

  • CI now runs the test suite on Node 22 x 24 x 26 x {ubuntu, windows, macos}.
  • engines.node in both the root package.json and assets/package.json (the published @symfony/reprise) now declares the same support, using the enumerated form Webpack Encore uses: ^22.18.0 || ^24.11.0 || >=26.0. This is stricter than the previous >=22.18 on the published package since it excludes the odd, non-LTS majors (23, 25). The root package.json had no engines field at all before.

This mirrors how symfony/webpack-encore declares and tests its supported Node versions. Ran the suite locally on Node 22.18.0 (the floor of the range) and it passes.

Add a node-version matrix (22, 24, 26) to the test job so the JS suite runs on
every supported major across the three OSes, replacing the single .nvmrc-pinned
run. Declare the same support in both package.json "engines" fields, switching to
the enumerated LTS-major form Webpack Encore uses (^22.18.0 || ^24.11.0 || >=26.0)
so the odd, non-LTS majors are excluded.
@Kocal
Kocal merged commit 32b824b into symfony:main Jul 10, 2026
20 checks passed
@Kocal
Kocal deleted the ci/test-node-24-26 branch July 10, 2026 16:52
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.

1 participant