Update GitHub Actions that still run on Node.js 20
Maintainers usually reply within 7 days
@matej-marcisovsky is already working on this.
Since Oct 16, 2026.
Assessment
This issue has not been assessed yet.
Description
What's wrong
Every workflow run shows this warning:
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/setup-node@v4, pnpm/action-setup@v4.
GitHub currently forces these actions to run on Node 24 and will stop supporting Node 20 actions entirely (GitHub changelog).
Where
.github/actions/setup-pnpm/action.yml, the shared "Setup pnpm with cache" step used by ci.yml, qa.yml and release.yml.
Suggested change
| Action | Now | Update to (runs on Node 24) |
|---|---|---|
pnpm/action-setup |
@v4 |
@v6.1.0 |
actions/setup-node |
@v4 |
@v7.1.0 |
Things to check
actions/setup-node v5–v7:
- needs runner v2.327.1+ (GitHub-hosted runners are fine)
- automatic caching is now npm-only (we set
cache: pnpmexplicitly, so no change) - v7 no longer exports a placeholder
NODE_AUTH_TOKEN, which only matters for npm publishing;release.ymlwould need a look if semantic-release is ever re-enabled
pnpm/action-setup v5/v6:
- pnpm version comes from both the
versioninput andpackageManagerinpackage.json, both10.28.1today - consider removing
version:sopackage.jsonis the single source of truth - the v5.0.0/v6.0.0 release notes should be read for any other breaking changes
Other Node 20 actions: check whether other workflows or actions still target Node 20 (e.g. actions/checkout@v4, actions/cache@v4 and actions/[email protected] in ci.yml).
Done when
A CI run on a PR passes "Setup pnpm with cache" and "Install dependencies", and the Node 20 deprecation warning is gone from the run's annotations.
- Dominant language
- TypeScript
- Stars
- 6
- Forks
- 5
- Avg merge
- 5d 6h
- Merged PRs (30d)
- 7
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from strapi/website
-
[SEO] Remove /blog/categories page from sitemapPossibly taken @fonodi claimed this 5 days ago. Openreopened
Difficulty 1/5 Under an hour Newbie friendliness 80/100
strapi/website#128 · 2 assignees ·
Maintainers usually reply within 7 days
-
Create a new collection type and component for cloud-legalPossibly taken @fonodi claimed this 12 days ago. Openenhancement
strapi/website#169 · 2 assignees ·
Maintainers usually reply within 7 days
-
Difficulty 3/5 1-2 days Newbie friendliness 52/100
Maintainers usually reply within 7 days
-
Pricing buttons don't respond until the cards hydratePossibly taken @fonodi claimed this 5 days ago. Open
Difficulty 4/5 3-5 days Newbie friendliness 35/100
strapi/website#152 · 1 assignee ·
Maintainers usually reply within 7 days
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
Maintainers usually reply within 7 days
Similar issues
-
Add: BOM CineOpenapproved check:passed streams:add
Difficulty 1/5 Under an hour Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
bug platform-android
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Termix-SSH/Mobile#146 · 1 comment ·
Maintainers usually reply within 2 days
-
MCP mcp-feedback-pattern
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
getsentry/toolkit#2276 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
devswha/herdr-web-ui#3875 ·