Commit Graph

457 Commits

Author SHA1 Message Date
Zoltan Kochan
db20dafee1 fix: update @pnpm/headless 2018-04-20 00:34:48 +03:00
Zoltan Kochan
c5ee3c7d27 feat: afterAllResolved can modify the shrinkwrap object
ref pnpm/pnpm#1119
2018-04-19 02:14:25 +03:00
Zoltan Kochan
d0d9b46796 feat: new hook - afterAllResolved()
ref pnpm/pnpm#1088
2018-04-17 23:58:57 +03:00
Zoltan Kochan
9c9d79cbbe test: fix typings to make ts-node happy 2018-04-17 22:53:48 +03:00
Zoltan Kochan
406bd4d54c fix(unlink): don't prefer frozen shrinkwrap when unlinking 2018-04-15 01:57:13 +03:00
Zoltan Kochan
9ea263f5e5 fix: saving shrinkwrap.yaml should not fail when dep has no spec
ref pnpm/pnpm#1104
2018-04-14 23:39:00 +03:00
Zoltan Kochan
1191b67b41 perf: optimize the dependencies build step
ref pnpm/pnpm#1109
2018-04-13 01:24:22 +03:00
Zoltan Kochan
10ae8cc892 fix: update @pnpm/lifecycle and @pnpm/headless
BREAKING CHANGE: the format of lifecycle logs has changed
2018-04-08 01:03:35 +03:00
Zoltan Kochan
6aed1cf225 fix(lifecycle): run scripts of deps in correct order 2018-03-31 20:07:06 +03:00
Zoltan Kochan
a0d991530e fix(frozen-shrinkwrap): don't fail when no shrinkwrap.yaml present
ref pnpm/pnpm#1065
2018-03-25 23:45:48 +03:00
Zoltan Kochan
11eea5abd6 fix: prefer existing version of non-pure deps during installation
ref pnpm/pnpm#1092
2018-03-25 14:54:00 +03:00
Zoltan Kochan
0f33896ef3 feat: implement frozen-shrinkwrap (headless) installation
ref pnpm/pnpm#1065
PR #58
2018-03-24 15:11:43 +02:00
Zoltan Kochan
e6ea9d4aee fix(shrinkwrap): save non-default registries in resolution field 2018-03-15 23:39:04 +02:00
Zoltan Kochan
3d3890c280 fix(shrinkwrap): save non-standard tarball URLs
ref pnpm/pnpm#1072
2018-03-12 23:49:51 +02:00
Zoltan Kochan
fd6fe67e90 test: fix on Windows 2018-03-11 22:55:29 +02:00
Zoltan Kochan
83cd14db1d test: use @pnpm/assert-project 2018-03-11 22:05:28 +02:00
Emanuele Tamponi
4030cc361f fix: notDependents should be an array of dep paths
* 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
2018-03-08 13:10:06 +02:00
Zoltan Kochan
12a26da8e1 feat: allow modifying root package with readPackage() hook
ref pnpm/pnpm#1063
2018-03-07 21:02:48 +02:00
Zoltan Kochan
3868a14d75 refactor: rename tree to graph 2018-03-06 23:25:39 +02:00
Zoltan Kochan
bc34aba650 style: adhere conventions 2018-03-05 15:49:34 +02:00
Zoltan Kochan
f34f966135 feat: specify linked deps in shrinkwrap.yaml (#51)
* feat: specify linked deps in shrinkwrap.yaml

* feat: node_modules is pruned after linking from external package

* feat: link() and linkFromGlobal() expect arrays as first args

BREAKING CHANGE:

link() expects an array as first arg

BREAKING CHANGE:

linkFromGlobal() expects and array as first arg

* feat: update specifiers field in shrinkwrap.yaml when linking

* fix: prune node_modules after linking
2018-03-05 09:48:51 +02:00
Zoltan Kochan
02f57c15ba test: directory dependencies via the link: spec
ref pnpm/pnpm#1061
2018-03-03 01:47:36 +02:00
Zoltan Kochan
3063a6b7ea fix: create package.json during installation when there is no one
ref pnpm/pnpm#1049
2018-03-01 00:28:22 +02:00
Zoltan Kochan
98dc2cdf0b feat: force local tarball fetch when its integrity has changed
BREAKING CHANGE:

requestPackage() of the storeController is expected to answer
with a pkgResponse.body.updated

ref pnpm/pnpm#1054
2018-02-28 02:08:44 +02:00
Emanuele Tamponi
7a4661df37 fix: use the real path to node_modules (#49)
BREAKING CHANGE:

The API of link() has changed. The second param should be the target `node_modules` folder
2018-02-27 21:35:20 +02:00
Zoltan Kochan
4ebec14158 test: fix and skip the local tarball update test 2018-02-27 01:44:21 +02:00
Zoltan Kochan
b8db1aa3b7 test: local tarball deps are updated on integrity mismatch
ref pnpm/pnpm#1054
2018-02-27 00:23:35 +02:00
Emanuele Tamponi
c3a32113c7 fix: flatten peer dependencies correctly (#48)
* fix: children contains absolutePaths, not ids

* fix: it is dependency path, as per review
2018-02-26 20:22:17 +02:00
Emanuele Tamponi
556910e9aa fix: flatten dependencies by alias (#47)
* 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
2018-02-25 13:42:17 +02:00
Emanuele Tamponi
fdad157392 feat: --shamefully-flatten (#42)
* 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
2018-02-22 01:04:44 +02:00
Zoltan Kochan
6467b938a0 fix: update package-store to v0.17.0 2018-02-17 21:14:44 +02:00
Zoltan Kochan
38c43f142c fix: keep existing deps during named install with no shrinkwrap
ref pnpm/pnpm#1029
2018-02-11 21:13:10 +02:00
Zoltan Kochan
dbebdea0f2 refactor: use spread operator instead of Object.assign 2018-02-11 19:32:32 +02:00
Zoltan Kochan
4392afec0e test: running install with shrinkwrap-only
when shrinkwrap.yaml is available already

ref pnpm/pnpm#992
2018-02-11 02:13:28 +02:00
Zoltan Kochan
0cbe3cca5f test: making the tests stable 2018-02-06 01:18:28 +02:00
Zoltan Kochan
e2394fe080 feat: add an option to ignore shrinkwrap.yaml
ref pnpm/pnpm#1025
2018-02-04 21:22:08 +02:00
Zoltan Kochan
704c64d7eb fix(unlink): unlink shouldn't change package.json 2018-02-04 15:38:00 +02:00
Zoltan Kochan
6740004fe6 feat(logging): log resolution_started and importing_started
ref pnpm/pnpm#1017
2018-01-31 00:28:31 +02:00
Zoltan Kochan
85eb2a65d5 feat(logging): log the end of importing packages from store
ref pnpm/pnpm#1017
2018-01-30 22:29:11 +02:00
Zoltan Kochan
5c849b2646 fix(shrinkwrap): correctly set dev field
When a subdependency is both a dev and prod dependency of a parent
package, corrently set the dev field of the subdep.
2018-01-29 01:24:41 +02:00
Zoltan Kochan
8c5870cf97 fix: correctly update shrinkwrap.yaml on named install
close #41
2018-01-28 14:09:03 +02:00
Zoltan Kochan
30fbc48ab5 fix: using the correct tag when installing aliased deps 2018-01-28 02:03:01 +02:00
Zoltan Kochan
70c8112fb9 fix: installing aliased dep w/o version selector 2018-01-27 22:18:15 +02:00
Zoltan Kochan
58b6273ffe test: dev properties are correctly updated on named install 2018-01-25 02:05:23 +02:00
Zoltan Kochan
3a68118748 refactor: use util.promisify instead of thenify 2018-01-25 00:21:36 +02:00
Zoltan Kochan
17425eefbd fix: optional dependency that does not exist should be skipped
ref pnpm/pnpm#1004
2018-01-23 23:25:51 +02:00
Emanuele Tamponi
1b816176b8 fix: ignore upload errors, show warning 2018-01-23 22:51:19 +02:00
Emanuele Tamponi
0985078959 feat: side effects cache (#38)
* 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
2018-01-22 02:02:01 +02:00
Nicholas Pape
7336862ee5 fix: store path check should do a path-comparison, not a string comparison (#39)
* 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
2018-01-18 21:22:03 +02:00
Zoltan Kochan
d2aa2bc802 fix(uninstall): report updated package.json 2018-01-13 22:29:36 +02:00