-
-
Notifications
You must be signed in to change notification settings - Fork 930
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix EBADENGINE error for Node.js 14.13.1 through 14.17.x #6729
Comments
I didn't notice this at first, but I double-checked just now and that's not the only dependency that can trigger this: write-file-atomic 5 requires node |
@bbrk24 Thanks for the report. Is a workaround of |
All that does is demote it from an error to a warning -- and, since it currently isn't specified, it's false by default anyways. |
Do you know how to detect an inconsistency of |
No, I'm not aware of any automated tool, but also I haven't looked very hard. I discovered the issue with write-file-atomic by grepping package-lock.json (I was using node 14.17, so only supports-hyperlinks triggered EBADENGINE). I decided to go back and double-check with the same method, and I found that none of the |
We can relax this if needed. |
I just created a simple tool to check this: https://github.com/bbrk24/engine-check. I haven't tested it super thoroughly yet but it seems to work so far. Sample output:
|
@bbrk24 Thanks for sharing your tool. I just confirmed it works on my local machine. For now, the following way seems easier because changes between jamestalmage/supports-hyperlinks@v2.3.0...v3.0.0 do not seem to include significant things:
But I still have a few questions:
By the way, note that Node.js v14 will become end-of-life on April 30 this year. So we will drop the support with the next Stylelint major version. |
As I mentioned earlier, I use node 14.17, so the others don't affect me directly. However, write-file-atomic does prevent using earlier minor versions of node 14. I'm not as concerned about @csstools, since node 17 has already reached end of life.
I would like to believe there's an existing solution for this, but I'm not aware of one.
Thanks for the heads-up. I'll have to change my configuration to use v16 or v18 by default instead of v14. As a side note, I'm not aware of any other language that goes through major versions as quickly as Node does. |
It seems reasonable to wait until Node.js v14 EOL (about a month left) unless people complain about this inconsistency. For future releases, we might need to consider any way to check |
I just opened an issue to remove Node.js 14 support: #6740 |
Closed by #7020 |
Describe the documentation issue
The package.json says it supports
"node": "^14.13.1 || >=16.0.0"
. However, it also lists as a dependency"supports-hyperlinks": "^3.0.0"
, which requires"node": ">=14.18"
. Thus, attempting to install using versions of node older than 14.18 results in EBADENGINE.What solution would you like to see?
There are three possible solutions:
I'm not familiar enough with the codebase to say which is the best idea.
The text was updated successfully, but these errors were encountered: