Summary
The node.js.yml build job currently runs a matrix across Node.js [16, 20]. Node.js 16 reached end-of-life in September 2023 and should be removed.
The lint and test jobs already use [20] only — this only affects build.
Change
File: .github/workflows/node.js.yml
# Before
strategy:
matrix:
node-version: [16, 20]
# After
strategy:
matrix:
node-version: [20]
Scope
node.js.yml is explicitly excluded from the sync-workflows.yml sync (to preserve per-repo benchmark customisations). After merging the canonical change here, all 35 downstream frmscoe/rule-* repos must be updated individually via script (see implementation plan in the comments).
Acceptance Criteria
Related
Summary
The
node.js.ymlbuildjob currently runs a matrix across Node.js[16, 20]. Node.js 16 reached end-of-life in September 2023 and should be removed.The
lintandtestjobs already use[20]only — this only affectsbuild.Change
File:
.github/workflows/node.js.ymlScope
node.js.ymlis explicitly excluded from thesync-workflows.ymlsync (to preserve per-repo benchmark customisations). After merging the canonical change here, all 35 downstreamfrmscoe/rule-*repos must be updated individually via script (see implementation plan in the comments).Acceptance Criteria
frmscoe/workflowscanonicalnode.js.ymlhasnode-version: [20]only in thebuildjobfrmscoerule repos (rule-001 through rule-091) havenode-version: [20]only innode.js.ymlRelated