TLDR; npm install -g npm@7
What's new?
First let's highlight the major additions:workspaces! finally the top-requested feature from our userbase makes its way into a stable release line 🎉
auto-installing peer-dependencies again 📦
Improving DX
There are some smaller changes/additions/tweaks that will hopefully continue to help improving the user experience, such as:
new npm exec command - same as npx that now lives in the cli 😁
a new package-lock format and support to install from yarn.lock files 🚀
improved npm audit output! 😎
new update notification system for the npm cli
ability to install a git/GH pkg from a PR: npm i user/project#pull/123
less verbose install output
skip pre/post scripts when using --ignore-scripts
new system to cache node_modules data that makes npm ls much faster
npm ls now defaults to top-level deps only, to see the entire tree you can now run npm ls --all
slightly improved npm fund output, highlighting funding urls and properly nesting deps
And much, much more!
Clean up work
In reality npm7 is the long due refactor/clean up of the npm cli and it spawns a couple of very important internal packages to our ecosystem which are now the standard Programmatic APIs for npm:- @npmcli/arborist the new npm install system
- @npmcli/config the new npm config
- @npmcli/run-script the new npm run
- @npmcli/map-workspaces read workspaces configs
- libnpmfund npm fund Programmatic API
It's also worth mentioning that a lot of the work that went into this version is making sure every line of code and functionality is well-tested and stable so that we can better iterate on new features and bug fixes moving forward 😊
More?
There are also new options/flags that goes along with some of the new features such as --legacy-peer-deps and --strict-peer-deps that help tweak the behavior of installing peer deps, npm ls --all to see all installed deps since the default is now show top-level only, etc
The team will be working hard on adding more tests and fixing any bugs that managed to slip through our beta test period 😄 Feel free to reach out to us in our GitHub issue tracker that now have the best up-to-date links on how to report bugs, propose new features or get help.
You can also read more about the release in the official channels:
npm blog post
GitHub blog post
⬇️ Get it now
The npm7 is going to be a part of the upcoming node15 release but if you want to get it first, you can install it now with:
npm install -g npm@7
Happy dependency-installing everyone!
No comments:
Post a Comment