MarkBind / markbind

MarkBind is a tool for generating content-heavy websites from source files in Markdown format
https://markbind.org/
MIT License
134 stars 123 forks source link

DeprecationWarning The `punycode` module is deprecated. Please use a userland alternative instead. #2485

Open kaixin-hc opened 3 months ago

kaixin-hc commented 3 months ago

Please confirm that you have searched existing issues in the repo

Yes, I have searched the existing issues

Any related issues?

No response

Tell us about your environment

M2 Mac v13.6

MarkBind version

5.4.0

Describe the bug and the steps to reproduce it

When running markbind serve -d

Screenshot 2024-03-30 at 2 15 48 PM

(node:2418) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.

This is also flagged if you npm run test and read through the logs.

Expected behavior

We shouldn't get a deprecation error.

Anything else?

I don't think this is an issue with (most) of markbind things, but rather something from node. My node version is Node.js v21.7.1 . See this issue on yarn...

The History section of DEP0040 in the Node.js documentation shows that Node.js punycode has been deprecated since Node.js v7.0.0 in Oct 2016 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 what has caused it to now become visible.

Potential options:

Aside from node, it seems punycode is also a dependency for tough-cookie and two others> Not sure if we can move away from this.