- has barely any content
'npm shrinkwrap' solves this by pinning the currently installed versions of everything under node_modules/, regardless of dependency depth. Yarn does the same thing, but by default rather than, as with npm, an optional extra. There's an argument to be made that the correct place to shrinkwrap, if you want to, is in your build process. But I suspect that, in practice, Yarn defaulting to it will prove a net positive, albeit a bit of a speedbump for people looking to do turnkey migrations from npm.
EDIT: guess not according to https://github.com/yarnpkg/yarn/issues/929
It makes no sense and honestly makes me want to tear my hairs.
It's the literal opposite. npm hasn't been open to contributions or fixes for years.
No seriously, go look at their source code. In particular go look at the caching code, one of the big things that Yarn fixes. You think their time would have been better spent hacking on that?
*https://code.facebook.com/posts/1840075619545360?_fb_noscrip...