Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

create node pr: Node.js 20 deprecation & `DEP0040` warnings logged

Open Beginner friendly
#10,031 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
80/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
github-actions, nodejs
Domain
ci-cd

Research direction

The issue points to the template file at scripts/template-oss/create-node-pr-yml.hbs. Look at line 24 to find the outdated actions/checkout@v3 reference. Update it to actions/checkout@v7. Verify the change by checking the GitHub Actions workflow syntax and ensuring no other references need updating. The fix is a one-line change in a template file.

Written by the indexing model from the issue text.

Description

Situation

When .github/workflows/create-node-pr.yml is executed to promote an npm release for packaging into Node.js, the following deprecation warnings are logged:

  • a Node.js 20 deprecation warning from GitHub Actions and
  • a DEP0040 node:punycode module deprecation warning

Logs

https://github.com/npm/cli/actions/runs/35881707767

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. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

https://github.com/npm/cli/actions/runs/35881707767/job/107251530925

Run actions/checkout@v3
(node:2429) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)

Suggestion

Update the template https://github.com/npm/cli/blob/c039090578a5b21a1aa3aba9c96e199feaf1823a/scripts/template-oss/create-node-pr-yml.hbs#L24 :

FROM TO
actions/checkout@v3 actions/checkout@v7
  • actions/checkout@v3 is an outdated release (originally from Mar 2022) which targets usage on node16. It is forced to run under node24.
  • actions/checkout@v7 is the currenet release which targets usage natively on node24

Although this is a simple update, I prefer to leave a PR to the npm team, since I'm not able to test PR creation from the npm/cli repo into the nodejs/node end-to-end.

cc: @reggi

Dominant language
JavaScript
Stars
10.1k
Forks
4.7k
Avg merge
3d 6h
Merged PRs (30d)
18

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from npm/cli

All issues in npm/cli

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.