chore(ci): upgrade Node 20 to Node 24 - #1035
Conversation
Node 20 reached end-of-life in April 2026. This moves GitHub Actions configuration to Node 24, the active LTS (supported until April 2028). Scope is CI configuration only: package.json engines, Dockerfiles and dependency versions are unchanged. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
✅ Deploy Preview for elementalselenium canceled.
|
GitHub is deprecating the node20 Actions runtime and already force-runs these actions on Node 24, emitting a deprecation warning on every run: "Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24" Each action is moved to the LOWEST major version that declares runs.using: node24, to clear the warning with the smallest possible behavioral change rather than jumping to latest. Not bumped (no node24 release exists upstream): - FedericoCarboni/setup-ffmpeg@v3 - saucelabs/sauce-connect-action@v2 / @V3 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Added: deprecated Actions runtime bumpsA second commit was pushed to this branch, widening scope beyond the Node version bump. GitHub already force-runs node20 actions on Node 24 and warns on every run:
This commit bumps 38 pinned action ref(s) in this repo to the lowest major that declares Every target was verified by reading that version's own 🤖 Generated with Claude Code |
test-build.yml and deploy-on-push-to-main.yml still pinned Node 22.x while javascript-tips.yml and serenity-js-tips.yml were moved to 24 earlier in this PR, leaving the repo split across two majors. This repo has no .nvmrc, so each workflow carries its own pin and they can drift independently. Align all four on Node 24. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Added: remaining workflows normalized to Node 24A third commit was pushed to this branch. This repo has no
All four now target Node 24. The 🤖 Generated with Claude Code |
What this PR changes
Node version
node-version:'22.x'→'24.x'node-version:20→24node-version:22.x→24.xDeprecated action runtimes — 38 ref(s)
These actions declare
runs.using: node20, which GitHub has deprecated and now force-runs on Node 24 with a warning on every run. Each moves to the lowest major that declaresnode24— chosen over "latest" to clear the warning with the smallest behavioral change.nick-invision/retryv3.0.2v4actions/checkoutv4v5actions/setup-nodev4v5actions/cachev4v5actions/setup-javav4v5stCarolas/setup-mavenv5v5.1JamesIves/github-pages-deploy-actionv4.7.3v4.9.0actions/setup-dotnetv4v5actions/setup-pythonv5v6peter-evans/create-pull-requestv7v8Files changed
.github/workflows/calibreapp-image-actions.yml.github/workflows/deploy-on-push-to-main.yml.github/workflows/dotnet-tips.yml.github/workflows/java-tips.yml.github/workflows/javascript-tips.yml.github/workflows/python-tips.yml.github/workflows/ruby-tips.yml.github/workflows/selenide-tips.yml.github/workflows/serenity-js-tips.yml.github/workflows/test-build.ymlScope
CI configuration only.
package.json, Dockerfiles and dependency versions are unchanged.🤖 Generated with Claude Code