Repository navigation
chore(ci): drop end-of-life Node versions from the test matrix - #160
Merged
Merged
Conversation
Test the supported LTS lines and keep lint in the pipeline. • Replace the Node 20.x and 23.x jobs with 22.x, 24.x and 26.x: Node 20 reached end-of-life in April 2026, 23.x is EOL, and vitest 4 does not support 23.x. • Upload coverage from the 24.x job; the previous 20.x condition would silently stop uploading once that job is removed. • Run `npm run lint:ci` before the tests so formatting regressions fail CI; the Biome 2.6.3 upgrade broke the script without any check noticing. • Move `.nvmrc` to 24.22.2, the current Active LTS, which also satisfies vitest's >=22.12 requirement. `engines.node` stays at `>=20.19.0`; raising the published floor is a consumer-facing change and belongs in a major release.
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.
Test the supported Node.js lines, keep lint in the pipeline, and move the coverage upload to a job that still exists.
• Replace the Node 20.x and 23.x jobs with 22.x, 24.x, and 26.x. Node 20 reached end-of-life in April 2026, 23.x is also EOL, and
vitest@4does not list 23.x as supported.• Upload the coverage artifact from the 24.x job. The old
matrix.node-version == '20.x'condition would silently stop uploading once that job is removed (if-no-files-found: errornever triggers because the step is skipped).• Run
npm run lint:cibefore the tests. The Biome 2.6.3 upgrade in #151 broke the linter onmainand nothing noticed because CI did not run it.• Move
.nvmrcfrom 22.11.0 to 24.22.2. 22.11.0 predates@vitest/coverage-v8's>=22.12engine floor, so a new contributor following.nvmrcgot an engine warning.engines.nodeintentionally stays at>=20.19.0. At least six public dependents declare a floor of 18 or 20 (including Mockoon), and raising the published floor is a consumer-facing change that belongs in a major release, not a CI chore.Verification
npm run lint:ci,npm run build, andnpm test(1,380 tests) pass locally on Node 26.13.0.gh actions-lock --verifystill passes; no workflow pins changed.