* fix: notDependents should be an array of dep paths
* test: remove testOnly
* fix: pass pkgIds to updateConnections()
* refactor: use strict types
* refactor: rename notDependent to orphan
ref #52
* fix: flatten by alias
* fix: rename field, other fixes
* fix: more bug fixes
* fix: make all tests run, write a (failing) test for pruning
* fix: reflatten after pruning
* fix: do not log installation/removal of hoisted aliases
* fix: follow review comments
* fix: use muteLogs instead of skipLogs
* feat: this is a best attempt at flattening the dependency tree, similar to what npm does
* test: shamefullyFlatten option
* feat: when uninstalling, if shamefully-flatten is true, we need to re-flatten
* fix: use new shrinkwrap, not the old one
* fix: changes suggested in PR
* test: remove test.only
* fix: various bugs in uninstall and general install, added tests
* test: fix test
* test: use project.has and project.hasNot correctly
* test: remove test.only
* test: added tsconfig.json, added lint-test script, lint fixes
* test: use correct message
* fix: check should work on windows too
* feat: upload side effects cache when needed
* feat: add side-effects-cache support
* fix: review suggestions
* fix: rename to cacheByNodeVersion, compute immediately centralLocation
* fix: make cacheByNodeVersion nullable, fix centralLocation, move nodeMajor to the top
* fix: s/nodeVersion/engineName/
* fix: some renames, add verifyStoreIntegrity option
* fix(deps): update
* fix: fix failing tests
* fix: update package-store to v0.15.1
* test: creating side effects cache
* test: using the side effects cache, in readonly mode too
* fix: rename engine to include 'node', test for opts.force
* Change string compare to a path compare
* Add some tests
* Fix problem with slashes
* Allow injecting of path
* Add a simpler test
* fix: remove unused variable
ref #996
If a package has many peer dependencies, it can be placed in a
folder with a very long name. This change hashes folder names
that are longer than 32 symbols.
SEMI-BREAKING:
The structure of node_modules might change in some projects after
a clean install.
ref https://github.com/pnpm/pnpm/issues/977
* fix: run node-gyp rebuild when install is not specified
* feat: after pnpm install --ignore-script, pnpm rebuild is incremental
* refactor: add --pending option to rebuild, only store pending ids
* fix: javascript magic to avoid if statement
* fix: update pendingBuilds also when removing packages
* fix: remove old code, use testDefaults correctly
* test: add test for rebuild --pending
* chore: make my IDE and TSLint happy
* chore: @types/es6-promise makes IntelliJ happy and Travis sad
* fix: use Set, only append to pendingBuilds if ignoreScripts is true
* test: pendingBuilds handled correctly
* test: install and uninstall behavior with pendingBuilds
* fix: saveModules only when needed
* fix: Set has size, not length, add comment about the use of .concat