Remove Node.js warning spam after fix #190988
🏷️ Discussion TypeQuestion 💬 Feature/Topic AreaActions Checkout Discussion DetailsHow do I stop the Node.js 20 warning spam? I'm aware Node.js 20 is being deprecated. I followed the instructions to test Node24 but I'm still getting spammed. On each of my push builds, I had 15 warnings about Node20: OriginalNode.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v4, actions/checkout@v4, actions/setup-python@v5, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/My yaml files already used this and similar for the other actions mentioned: I added this to all of my actions: Now I'm still getting 15 warnings about this. I'm already aware that I forced node24 to run. This one is completely unnecessary. Post FixNode.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/setup-python@v5, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/ |
Replies: 7 comments 4 replies
|
Unfortunately there's no way to suppress these warnings right now, they're emitted by the GitHub Actions runner itself, not by the actions, so |
|
You're not doing anything wrong — this is expected behavior right now. Setting: FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true only forces JavaScript actions to run on Node 24, but it does not suppress the warnings. The warnings still appear because some actions (including official or third-party ones) are internally built on Node.js 20, and GitHub emits deprecation warnings for those regardless of the runtime override. A couple of things you can check:
That said, even after updating everything, you may still see these warnings. GitHub is still in the process of migrating away from Node 20, so some noise is unavoidable for now. In short: your setup is correct — the warnings are coming from dependencies you don't fully control yet. |
|
Hi @TokisanGames, the reason you're still seeing 15 warnings is likely because other actions in your workflow (not just checkout) are still targeting Node 20 in their metadata. The FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 variable forces the runtime, but GitHub's runner still scans the action.yml of every step. If any third-party or older official actions (like actions/cache or actions/upload-artifact) are still on older versions, they will continue to trigger these warnings. The Fix: |
|
You've hit a confirmed bug in the GitHub Actions runner. The short explanation: |
|
The deprecation warning comes from the runner detecting a node16/node12 runtime declared in an action's action.yml, not from your workflow. After upgrading, the warning persists if a transitive action (one called inside another) still pins the old runtime. Run the workflow with ACTIONS_STEP_DEBUG=true, find which action emits it, then check that action's runs.using field. If it's a third-party action you can't edit, pin to a newer tag/SHA that uses node20, or fork-and-bump. The warning is informational and won't fail the run. |
|
I use standard github pages. How do I get rid of "Node.js 20 is deprecated" warnings? I didn't choose Node.js 20 and this is not my fault. Also I am getting a ton of "Deployment failed, try again later." on standard GitHub pages. they are rather random, like every 4th deployment fails. The repo was created in June 2026. I have no custom actions whatsoever, only GitHub pages, enabled in project settings. |
Unfortunately there's no way to suppress these warnings right now, they're emitted by the GitHub Actions runner itself, not by the actions, so
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24doesn't silence them. It just forces Node 24 execution while still warning you that the action targets Node 20 internally.The warnings will go away on their own once the action maintainers (GitHub) update the bundled Node target in those actions (checkout, cache, etc.) to Node 24. That's on their end, not yours.
For now, your setup is correct, you're already running on Node 24.