-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Blocking Node version check #634
Comments
I'll add that it seems that |
@olivierlambert We're doing the right thing here. |
@ChristopherBiscardi Seems like a separate bug, can you open a new issue? Thank you! |
@kittens It's the right thing in theory. In practice it's the reason why pre-release versions of node can't install packages with engine-strict because |
I just hit this as well. Apparently the I think you are right to error, but it's going to cause some conflicts with the current ecosystem where packages are too strict but nobody cared because it didn't error before. I can also repro that |
@kittens it's not "the right thing" if you use this dep without Node (eg with Browserify). In this case, Node version doesn't matter because the dep won't be used in Node at all. But display a warning is a good idea anyway. edit: if there is a way to "tell" that it won't be used in Node that I never heard of (which is very likely), I'll be happy to do so. |
I just filed #638. |
This affects multiple of our (Groupon's) internal apps. Including things like "years ago someone set the node engine to I really don't want to have to patch yarn whenever I try out a beta version of node. And the only alternative is to add a boilerplate |
Would love to at least have |
as soon as a release is cut with Things will work with --ignore-engines. --ignore-engines being opt in was very much intentional, the fact that these fields were only advisory actually removed all of their value forcing package like this to be invented https://github.com/samccone/engine-deps Having packages respect this field is super super valuable. |
Thanks @samccone. I don't disagree that package authors need to use that field for what it was intended. Looking forward to next release. |
@samccone Again, that's all great in theory. But the practice is things like this:
There's nothing in that package that actually needs node 5+. If I understand it correctly they're using "node>=5" to express "we're super excited about npm 3!!!!". A project using angular 2 w/ the latest node LTS will currently not work with yarn. It works fine without it. I agree that having a good, reliable way to tell a user "this package will definitely not work at all unless you use node X or higher" would be great. But because of the way engine works right now and how the ecosystem is using it, |
Given that #647 is merged, should this not be closed? |
@wmertens I think it's premature to close this while it causes popular libraries like |
Ok, so the issue is then that instead of erroring, it should warn? In that I suppose it can be as simple as changing yarn/src/package-compatibility.js Line 164 in b880d40
to be like the warning a few lines down? I don't quite follow the logic in that function, I don't know where the ignore comes from. On Fri, Oct 14, 2016 at 9:29 PM Jan Olaf Krems [email protected]
|
Cross linking #1102 |
Hi there,
That's maybe a bug :)
Our project (Xen Orchestra) have a dep (
chartist
) we use in Browserify. Butyarn
stop at:This should be a warning, not an error, because we don't use this dep in Node.
Running this on Node
v4.4.7
and Debian testing.The text was updated successfully, but these errors were encountered: