Breaking changes
Node.js 20 has reached end-of-life on April 30, 2026. Starting with the next image releases, Node.js 20 will be removed from the toolcache on all runner images. The default Node.js version will be updated to Node.js 22 (Maintenance LTS) on images where Node.js 20 was the default.
Node.js 20 reached end-of-life on April 30, 2026. Starting with the next image releases:
- Node.js 20 will be removed from the toolcache on all runner images. It will no longer be pre-installed.
The default Node.js version will be updated to 22 (Maintenance LTS) on images where Node.js 20 was previously the default.
- After this change, only Node.js 22 and Node.js 24 will remain pre-installed in the toolcache.
Target date
This change will be rolled out beginning May 19, 2026 and will complete by May 26, 2026.
The motivation for the changes
Node.js 20 transitioned to end-of-life on 2026-04-30. Keeping an EOL runtime as the default version on runner images poses security risks and causes confusion for users. Node.js 22 (Maintenance LTS) is the next supported version and is already the default on macos-15, windows-2025, and windows-2025-vs2026 images. This change aligns the remaining images with the same supported baseline.
Possible impact
Node.js 20 will no longer be available in the toolcache. Workflows that rely on node or npm commands without explicitly specifying a version via actions/setup-node will now use Node.js 22 instead of Node.js 20 on affected images.
If your project requires Node.js 20, you must use actions/setup-node to install it. Since Node.js 20 will no longer be pre-installed, actions/setup-node will download it on demand, which may add some time to your workflow.
Platforms affected
Runner images affected
Mitigation ways
Use NodeJS 22 or 24 instead NodeJS 20
Breaking changes
Node.js 20 has reached end-of-life on April 30, 2026. Starting with the next image releases, Node.js 20 will be removed from the toolcache on all runner images. The default Node.js version will be updated to Node.js 22 (Maintenance LTS) on images where Node.js 20 was the default.
Node.js 20 reached end-of-life on April 30, 2026. Starting with the next image releases:
The default Node.js version will be updated to 22 (Maintenance LTS) on images where Node.js 20 was previously the default.
Target date
This change will be rolled out beginning May 19, 2026 and will complete by May 26, 2026.
The motivation for the changes
Node.js 20 transitioned to end-of-life on 2026-04-30. Keeping an EOL runtime as the default version on runner images poses security risks and causes confusion for users. Node.js 22 (Maintenance LTS) is the next supported version and is already the default on macos-15, windows-2025, and windows-2025-vs2026 images. This change aligns the remaining images with the same supported baseline.
Possible impact
Node.js 20 will no longer be available in the toolcache. Workflows that rely on
nodeornpmcommands without explicitly specifying a version via actions/setup-node will now use Node.js 22 instead of Node.js 20 on affected images.If your project requires Node.js 20, you must use
actions/setup-nodeto install it. Since Node.js 20 will no longer be pre-installed,actions/setup-nodewill download it on demand, which may add some time to your workflow.Platforms affected
Runner images affected
Mitigation ways
Use NodeJS 22 or 24 instead NodeJS 20