action.yml declares
runs:
using: node20
main: dist/main/index.js
and GitHub has deprecated the Node.js 20 runtime for actions. Every run of this action now
carries a warning annotation, and the step is already being forced onto a runtime it does not
declare:
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run
on Node.js 24: actions/checkout@v3, actions/github-script@v7,
FlowingCode/action-conventional-commits@feature/wip-action-required.
See https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/.
Observed on every job that uses the action, for example
https://github.com/javier-godoy/test-repo/actions/runs/34501484151/job/102983570109.
What to change
runs.using becomes node24. The bundle in dist/main is what actually runs, so it should be
rebuilt on a Node 24 toolchain in the same change rather than only having the declaration
updated.
Two things worth checking while doing it, because they are what would break rather than the
runtime itself:
- the bundled dependencies,
got@11 in particular, on Node 24;
- self-hosted runners, which need a runner version that provides the Node 24 runtime. A runner
that is too old fails the step instead of warning about it.
The other two entries in the warning, actions/checkout@v3 and actions/github-script@v7, are
not this repository's: they come from the calling workflow and are tracked wherever that
workflow lives.
action.ymldeclaresand GitHub has deprecated the Node.js 20 runtime for actions. Every run of this action now
carries a warning annotation, and the step is already being forced onto a runtime it does not
declare:
See https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/.
Observed on every job that uses the action, for example
https://github.com/javier-godoy/test-repo/actions/runs/34501484151/job/102983570109.
What to change
runs.usingbecomesnode24. The bundle indist/mainis what actually runs, so it should berebuilt on a Node 24 toolchain in the same change rather than only having the declaration
updated.
Two things worth checking while doing it, because they are what would break rather than the
runtime itself:
got@11in particular, on Node 24;that is too old fails the step instead of warning about it.
The other two entries in the warning,
actions/checkout@v3andactions/github-script@v7, arenot this repository's: they come from the calling workflow and are tracked wherever that
workflow lives.