394 Commits

Author SHA1 Message Date
zkochan
de225700f3 fix: don't try to wait for skipped packages that were not analyzed 2017-06-08 02:20:53 +03:00
zkochan
d028208a51 fix: build correct node_modules tree 2017-06-06 19:44:39 +03:00
zkochan
0dfe760700 fix: respect shrinkwrap for all types of dependencies 2017-06-06 13:29:59 +03:00
zkochan
2c04aa69da feat: save optional deps separately in the lockfile
For correct prunning of the lockfile, it has to be known
which deps are optional. Also it has to be known which
deps are dev deps in the root.

BREAKING CHANGE:

lockfile format changed
2017-06-05 22:06:32 +03:00
zkochan
5acc4671f0 feat: support the --no-optional flag
The --no-optional argument prevents optional dependencies from
being installed.

Close #460
2017-06-05 14:46:05 +03:00
zkochan
63d3fd0a90 fix: non-compatible package should still be saved to store
Ref #759
2017-06-04 23:23:12 +03:00
zkochan
7f4515c292 refactor: require symlink-dir instead of import 2017-06-04 22:02:07 +03:00
zkochan
f2ff9797f3 fix: fall back to copying when cannot link package
Ref #712
2017-06-04 20:12:31 +03:00
zkochan
d23bcfb75f fix: link to root all root packages 2017-06-04 12:50:49 +03:00
zkochan
586afa193b perf: faster install 2017-06-03 20:50:09 +03:00
zkochan
502b566945 refactor: rename root to directory in resolution
BREAKING CHANGE:

shrinkwrap.yaml format change
2017-06-03 15:13:19 +03:00
zkochan
1e91300714 chore: update dependencies
close #781, close #779, close #780, close #778, close #774
2017-06-03 14:51:57 +03:00
zkochan
f414e256e8 fix: subdeps of skipped optionals are skipped as well 2017-06-03 14:31:17 +03:00
Zoltan Kochan
12abf7343a refactor: change the git resolution format 2017-05-30 22:56:43 +03:00
Zoltan Kochan
2f909a2c2b refactor: update shrinkwrap version to 3 2017-05-30 22:22:31 +03:00
Zoltan Kochan
6461f76ad8 feat: saving integrity in shrinkwrap.yaml 2017-05-30 21:10:31 +03:00
Zoltan Kochan
03433abadf refactor: use ssri for checking integrity 2017-05-29 02:12:41 +03:00
Zoltan Kochan
c84cd24302 fix: non-installable optional subdependencies are not linked 2017-05-28 17:51:26 +03:00
zkochan
ef86257aee fix: extraneous packages are removed 2017-05-25 20:30:27 +03:00
zkochan
d44a3339b8 feat: lock project during install/uninstall 2017-05-25 22:23:56 +03:00
zkochan
90806ec42d fix: update shrinkwrap with correct dev/optional values 2017-05-25 10:26:55 +03:00
zkochan
505e7974e6 refactor: values in shrinkwrap.yaml/packages are always objects 2017-05-25 09:05:56 +03:00
zkochan
594ebfd5f8 refactor: add back dependencies field to root of shrinkwrap 2017-05-24 23:02:41 +03:00
zkochan
1427123972 perf: merge installation with tree creation 2017-05-23 22:33:11 +03:00
zkochan
47721be6b2 fix: relinking subdendencies when updated 2017-05-22 00:05:02 +03:00
zkochan
1462157fa8 feat: using shrinkwrap.yaml for creating node_modules 2017-05-21 23:39:34 +03:00
Zoltan Kochan
e8f3da0eb4 feat: add id field to shrinkwrap
For non-pure resolutions add an id field that indicates the
location of the package in the store
2017-05-20 22:40:53 +03:00
zkochan
e5244a8c6b feat: add dev and optional properties to shrinkwrap.yaml 2017-05-20 22:41:38 +03:00
zkochan
7dc82f0e89 feat: include peer resolutions in `shrinkwrap.yaml
BREAKING CHANGE: `shrinkwrap.yaml` format changed
2017-05-20 18:12:45 +03:00
zkochan
5887692e8e refactor: keep nodeIds inside peer resolution logic only 2017-05-20 16:39:27 +03:00
zkochan
c1e2cb158c refactor: assign a default value to resolvedDependencies 2017-05-19 00:01:13 +03:00
zkochan
e95ae02917 refactor: no additional nesting when peer resolved from own dependency 2017-05-18 23:56:32 +03:00
zkochan
cc21a4ed50 refactor(shrinkwrap): dependencies => packages['/'].dependencies 2017-05-17 22:05:05 +03:00
zkochan
4aecc181fb feat: add specifiers to shrinkwrap.yaml
BREAKING CHANGE:

shrinkwrap.yaml format has changed
2017-05-17 21:10:11 +03:00
zkochan
56049efde0 feat: all children are always grouped together 2017-05-15 22:12:02 +03:00
zkochan
2e7963f23d feat(store): pnpm store status informs on success
Close #734
2017-05-15 01:02:21 +03:00
zkochan
69cbd1701f perf: explicitly tell the path to package.json
Use `read-package-json` for reading `package.json`.
The same package is used by npm.

Use `load-json-file` instead of `read-pkg` with
normalize = false.
2017-05-14 17:37:24 +03:00
Zoltan Kochan
89a6fc6017 feat: add createdWith property to shrinkwrap.yaml
The `name@version` of the creator of the shrinkwrap is
saved in a property called `createdWith`.

Close #729
2017-05-13 17:44:06 +03:00
zkochan
c4e2540dd2 fix(shrinkwrap): don't save absolute path shrinkwrap.yaml
Relative path to the current working directory is saved
in the `shrinkwrap.yaml`.

Close #744
2017-05-13 16:29:10 +03:00
zkochan
5699569f61 feat: always add all packages to shrinkwrap.yaml
Even dev packages when installing with the --production flag

Ref #750
2017-05-11 21:01:24 +03:00
zkochan
7be76944eb fix: package.json has to be normalized before usage
Close #692
2017-05-09 22:00:53 +03:00
Zoltan Kochan
5de380989a fix(linking): packages should not loose their peer deps (#761)
* test(install): peer dependencies should be resolved correctly

* fix(linking): packages should not loose their peer deps

When a peer dependency is resolved not from the direct parent,
dependent packages should be duplicated with hard links in order
to preserve the correct set of resolved peer dependencies.

Semi-breaking change. The node_modules structure is changed but
doesn't need a complete removal of a node_modules created with
previous version of pnpm.

* docs: document how peer dependencies are resolved

Ref #694, Ref #726

* docs: nicer comments in code blocks

* docs: more explanation about peer deps
2017-05-09 18:21:39 +03:00
Vaughan Rouesnel
e0e113cf0d fix: delay during post-install stage
#757
2017-05-08 19:03:00 +03:00
zkochan
3a2683ca94 feat: add a --no-lock option
Ref #594
2017-05-07 21:38:51 +03:00
zkochan
a38544529b perf: substitute immutable code to make tree creation faster
Ref #742
2017-05-07 16:38:41 +03:00
zkochan
2ce22d3170 fix(CLI): options are passed through to npm
Close #747
2017-05-07 10:58:08 +03:00
zkochan
62f11adc68 fix: ignoring scoped packages installed by other pms 2017-04-28 16:55:45 +03:00
zkochan
bdbea75858 chore: update typescript to version 2.3 2017-04-27 21:18:49 +03:00
zkochan
d3c13bdcbb perf: use a separate config for specifying repeat install depth
`repeat-install-depth` is used instead of `depth` when
analyzing the dependency tree during `install`.

Ref #722
2017-04-27 21:08:48 +03:00
zkochan
04c9c0feed fix: running repeat install on out of date node_modules
Ref #722
2017-04-27 14:46:17 +03:00