-
-
Notifications
You must be signed in to change notification settings - Fork 25
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
Put ls-engines
in library mode
#215
Conversation
That this fails is good, it's catching that we now need #190. |
8c23f49
to
355edfe
Compare
Great, more fun! Something else must've dropped node 14- in the whole glob fiasco. Welp. Whadawedonow? |
🤦♂️ 😮💨 |
Oh, just saw this! npm/npm-pick-manifest#33 fixes a longstanding bug in npm, so engines-based resolution is a thing, just like it should be. Therefore, we can revert all of these engines changes, and npm won't install the newer glob/jackspeak/etc. However, if we support node 14, then we support npm 6 (and 8 and 10), so... no 😢 That change would change the behavior to need an ls-engines engines though, so we'll probably have to wait a week or two (but, of course, we won't drop npm <10.8.2 anytime soon, so 🤷♂️) |
355edfe
to
76c684e
Compare
New and removed dependencies detected. Learn more about Socket for GitHub ↗︎
🚮 Removed packages: npm/ls-engines@0.9.2) |
Ok, so this one is complicated. SemVer wise, we should be able to support glob 10 & glob 11. The only breaking change is the engine. Therefore, the "correct" specifier is indeed `^10.2.6 || ^11.0.0`. We support both, if you need an older engine, you should use an older version. In fact, npm is supposed to do this automatically. However, up until `npm-pick-manifest@9.1.0` (included in `npm@10.8.2`), there was a longstanding bug where it didn't! The code was there, but the logic didn't work right and after Isaacs moved on to vlt, his PR fixing this got stalled. After the `glob` fiasco, he rebased the PR and it's now fixed, but the change wasn't backported. Because we support Node 14, we support `npm@6.14.18`, so we can't take advantage of this. Instead, we just have to tolerate a slightly old version of glob. Oh well. I also removed "enginesStrict" because our engine declaration is now higher than technically needed because glob only declares support for the latest versions of Node branches.
76c684e
to
b38cf28
Compare
Note: I did fix this, but I don't want to push it till #256 gets merged b/c my branches are complicated enough as-is. |
Superseded by #274 |
Split off from: #190