mathiasbynens / punycode.js

A robust Punycode converter that fully complies to RFC 3492 and RFC 5891.
https://mths.be/punycode
MIT License
1.59k stars 158 forks source link

ci(deps): update GitHub actions to run on Node.js 20 (LTS) #130

Closed MikeMcC399 closed 10 months ago

MikeMcC399 commented 10 months ago

This PR bumps

Also in GitHub Actions workflows

the following GitHub Action are bumped

to resolve the GitHub Actions deprecation warning:

Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.

and the planned deprecation of node16 (see blog post GitHub Actions: Transitioning from Node 16 to Node 20 Sep 22, 2023).

MikeMcC399 commented 10 months ago

Further details

DEP0040 in the History section of the Node.js documentation shows that Node.js punycode has been deprecated since Node.js v7.0.0 and, starting with Node.js v21.0.0, this has been changed to a runtime deprecation (see https://github.com/nodejs/node/pull/47202). The runtime deprecation is causing it to now become visible.

Node.js v21.0.0 was released on Oct 17, 2023 as the first release of the 21.x major version, so the issue is quite new.

Typically the deprecation notice looks like this:

(node:2136) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead. (Use node --trace-deprecation ... to show where the warning was created)

and I'm seeing this appearing in many places, including when Yarn Classic is used to add a package.

mathiasbynens commented 10 months ago

Thanks!

MikeMcC399 commented 10 months ago

@mathiasbynens

You're very welcome!