Upgrade npm to version 5.0.3 (take 2) #8835
This is a major update from npm 4.6.1, and should bring significant benefits in terms of speed and reproducibility of
To understand npm's new
For backwards compatibility, Meteor still works with
For application developers using
Meteor remains completely agnostic about how you populate the
Note that this version no longer corresponds exactly to the current Node version, which is perfectly fine, yet ever so slightly disappointing.
Based on this warning: npm ERR! As of npm@5, the npm cache self-heals from corruption issues and npm ERR! data extracted from the cache is guaranteed to be valid. If you npm ERR! want to make sure everything is consistent, use 'npm cache npm ERR! verify' instead. npm ERR! npm ERR! If you're sure you want to delete the entire cache, rerun this npm ERR! command with --force.
This was preventing `node-gyp` from installing the Node header files on Windows and was the reason that `minimatch` was not being found, as seen in #8831. The `minimatch` module was present, but it was just in `dev_bundle/lib`, not in `dev_bundle/lib/node_modules/npm/node_modules`. This expecation may have been expected from older versions of npm but is no longer the case. This replicates the behavior of the Unix `generate_dev_bundle.sh` script, which also does not nest `node-gyp`. /cc @benjamn
The new version of npm no longer tolerates stray packages in node_modules that are not mentioned in package.json, such as node_modules/repl.
If a package has a semantic (x.y.z) version in npm-shrinkwrap.json, npm appears to install it always from the npm registry, rather than the original tarball URL (uncommon but used by the less and stylus Meteor packages, among others).
I suspect the output of the Sandbox has changed in the meantime? I was not able to test this so I'm guessing and would expect changing the test matching line
Might not fail the test. But I guess you might know better :-)
Might this be related to the failed tests we are seeing?