Skip to content

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

Description

@MikeMcC399

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

uses: actions/checkout@v3
:

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions