Context
Node.js 20 entered EOL in April 2026, and Node.js 18 has been EOL since April 2025. Node.js 24 became the active LTS in October 2025 and is the current latest LTS. Node.js 22 remains in active LTS until April 2027.
We should align the repository to the supported Node.js release line:
- Default Node version everywhere we currently pin to
22 should be bumped to 24.
- Anywhere we still default to
20 or 18 should be bumped to 24.
- CI test matrices should drop
18 and 20 entirely (both EOL) and become ['22', '24'].
engines.node in every package.json (root + workspaces) should be raised to >=22.
- Any existing
.nvmrc / .node-version file should be set to 24 (we won't create new ones).
Scope
.github/workflows/*.yml
.github/actions/cache-restore/action.yml
.nvmrc
package.json engines.node (root + packages/*, examples/next/*)
No Docker base image changes are needed; the only Docker images in this repo are WordPress/PHP, not Node.
Coordination
PR #2368 is currently bumping actions/* v4 -> v5 across the same workflow files. The two changesets touch different lines (action version vs node-version), so they should merge cleanly, but reviewers should be aware of the overlap.
Follow-up
A PR implementing this will be linked here.
Context
Node.js 20 entered EOL in April 2026, and Node.js 18 has been EOL since April 2025. Node.js 24 became the active LTS in October 2025 and is the current latest LTS. Node.js 22 remains in active LTS until April 2027.
We should align the repository to the supported Node.js release line:
22should be bumped to24.20or18should be bumped to24.18and20entirely (both EOL) and become['22', '24'].engines.nodein everypackage.json(root + workspaces) should be raised to>=22..nvmrc/.node-versionfile should be set to24(we won't create new ones).Scope
.github/workflows/*.yml.github/actions/cache-restore/action.yml.nvmrcpackage.jsonengines.node(root +packages/*,examples/next/*)No Docker base image changes are needed; the only Docker images in this repo are WordPress/PHP, not Node.
Coordination
PR #2368 is currently bumping
actions/*v4 -> v5 across the same workflow files. The two changesets touch different lines (action version vsnode-version), so they should merge cleanly, but reviewers should be aware of the overlap.Follow-up
A PR implementing this will be linked here.