Upgrade Node.js version from 20 to 24#9
Upgrade Node.js version from 20 to 24#9sebdanielsson wants to merge 1 commit intoandreijiroh-dev:mainfrom
Conversation
Signed-off-by: Sebastian <sebastian.danielsson@proton.me>
📝 WalkthroughWalkthroughThe GitHub Action runtime configuration in Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@action.yml`:
- Line 27: The action's runtime was changed to "using: node24" which introduces
breaking compatibility requirements; update your release notes and changelog to
explicitly state Node 24 compatibility and required infrastructure (self-hosted
runner v2.327.1+ and GHES 3.14+), mention Linux ARM32 auto-fallback to Node 20
and the potential failures on unsupported runners/GHES, and publish the action
under a new major version tag (e.g., v2) to signal the breaking change so
consumers can opt in; locate the "using: node24" entry in action.yml to guide
the documentation and version bump.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
| runs: | ||
| using: node20 | ||
| main: dist/index.js No newline at end of file | ||
| using: node24 |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
What are the current compatibility requirements for GitHub Actions JavaScript actions using runs.using: node24 (minimum GHES version, minimum self-hosted runner version, and unsupported OS/architectures)?
💡 Result:
Current compatibility requirements for GitHub Actions JavaScript actions using runs.using: node24: - Minimum self-hosted runner version: v2.327.1 (added support via PR #3940) - Minimum GHES version: Not explicitly found; likely GHES 3.14+ based on runner upgrades, but recommend latest GHES for full support. Progressive rollout means check specific instance. - Unsupported OS/architectures: Linux ARM32 (automatic fallback to Node 20 with warning) As of 2026-03-28, Node 24 is the default/enforced for JS actions (phased migration complete per June 2026 timeline), with enforcement in recent runners like v2.333.0.
Citations:
- 1: Node 20 -> Node 24 migration feature flagging, opt-in and opt-out environment variables actions/runner#3948
- 2: https://github.com/actions/setup-node
- 3: https://github.blog/changelog/2026-02-05-github-actions-self-hosted-runner-minimum-version-enforcement-extended/
- 4: https://docs.github.com/en/actions/reference/runners/self-hosted-runners
- 5: https://github.com/actions/runner/releases/tag/v2.327.1
- 6: https://github.com/actions/runner/blob/main/releaseNote.md
Document Node 24 compatibility requirements in release notes and use a major version tag.
The node24 runtime requirement affects self-hosted runners and GHES deployments. Requires self-hosted runner v2.327.1+ and GHES 3.14+ (verify with your instance). Linux ARM32 systems will auto-fallback to Node 20, but other users on unsupported runner/GHES versions may experience failures. Add explicit compatibility notes to release documentation and consider shipping as a major version to signal the breaking change to consumers.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@action.yml` at line 27, The action's runtime was changed to "using: node24"
which introduces breaking compatibility requirements; update your release notes
and changelog to explicitly state Node 24 compatibility and required
infrastructure (self-hosted runner v2.327.1+ and GHES 3.14+), mention Linux
ARM32 auto-fallback to Node 20 and the potential failures on unsupported
runners/GHES, and publish the action under a new major version tag (e.g., v2) to
signal the breaking change so consumers can opt in; locate the "using: node24"
entry in action.yml to guide the documentation and version bump.
Summary by CodeRabbit