Commit Graph

241 Commits

Author SHA1 Message Date
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
d204b13aec test: shrinkwrap is regenerated when package.json changes 2017-04-28 01:48:22 +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
Zoltan Kochan
a17a8df50c Perf/fast repeat install (#730)
* perf: validating the node_modules structure to a specified depth

Ref #722

* feat: adding an update boolean property to the install API

BREAKING CHANGE:

Dependencies won't be updated when `update` is `false`.
It doesn't matter what the value of `depth` is.
`depth` is used for specifying how deep should the install
algorithm analize the dependency tree.

Ref #722

* refactor: merge new resolved deps with the previous
2017-04-27 11:04:37 +03:00
zkochan
1b0db8444e test: assign modules to variable m alsways 2017-04-26 21:51:58 +03:00
Zoltan Kochan
5d04767778 fix: peers are resolved similarly during named and general install (#726)
* fix: peers are resolved similarly during named and general install

There is no need to always run a general installation for
creating a predictable `node_modules` structure. If peers are
resolved from top dependencies, the peers are not linked to
the dependent package. The dependent package can see such peers
w/o additional manipulations

Ref #724

* fix: don't print warning when peer is resolved from top dep

* test: verify the peer warning are reported correctly
2017-04-26 14:40:45 +03:00
zkochan
9b08ac4b79 test: installing of private package from shrinkwrap
When resolution is saved in cache and the meta info is on
a different path. Correct auth info should be used for
downloading the tarball.

Close #718
2017-04-25 22:28:47 +03:00
zkochan
33ada9f947 test: when pkg meta is not on the domain on which the tarball 2017-04-25 20:09:12 +03:00
zkochan
c8036fc930 test: add auth tests
Close #432
2017-04-25 19:50:43 +03:00
zkochan
b911c35eb2 fix: rewrite packages added by other package managers
Close #710
2017-04-24 17:47:30 +03:00
zkochan
7a9f657acf fix: installation of packages from non-github repos
Close #716
2017-04-23 20:09:37 +03:00
zkochan
b36c9febc0 fix: peer deps are now resolved from preinstalled packages 2017-04-23 17:49:56 +03:00
Zoltan Kochan
2c46333107 fix: global installation always works now (#713)
* fix: global installation always works now

Close #711

* refactor: avoid using `read-pkg-up`

BREAKING CHANGE:

API should be called in the folder that has a package.json file.
pnpm won't search up for a package.json file.

Close #67

* docs(API): update

* refactor: write-pkg created dir on its own

* refactor: rename `globalDir` to `globalPrefix`

* feat: saving the global package in <global prefix>/pnpm-global
2017-04-22 23:11:25 +03:00
zkochan
b94aaff38a feat: use npm's config system
BREAKING CHANGE:

`rc` is not used to get configs.

BREAKING CHANGE:

`.pnpmrc` files are ignored

BREAKING CHANGE:

configs in json format are not supported

BREAKING CHANGE:

`--config` argument renamed to `--userconfig`

Close #696, Close #40
2017-04-20 23:01:14 +03:00
zkochan
4a564f50f9 test: fix uninstallation tests 2017-04-17 11:18:24 +03:00
zkochan
646eafef15 fix: installation with custom dist-tag 2017-04-15 21:59:52 +03:00
zkochan
7f426d0cc7 fix: use the new npm-package-arg 2017-04-15 20:51:03 +03:00
zkochan
5c223e0540 fix: the correct spec is saved in package.json
When the package source is not the registry, the correct spec is
saved to `package.json`
2017-04-14 09:38:43 +03:00
zkochan
99d2274bd0 fix(unlink): unlink works with outer links 2017-04-13 23:43:29 +03:00
zkochan
7bb539d83a fix: scoped packages installation from shrinkwrap.yaml 2017-04-09 19:49:11 +03:00
zkochan
765a139ede fix: store status doesn't fail on skipped optional deps
A new property called `skipped` added to
`node_modules/.modules.yaml`. The property is an array of
package IDs, of those packages that are optional an were
skipped during installation.

Close #681
2017-04-09 14:06:49 +03:00
zkochan
fa8f2e57db fix(user-agent): set the correct user-agent 2017-04-08 15:39:18 +03:00
zkochan
75d9a3da84 test(lifecycle): installation fails when lifecycle script fails 2017-04-08 14:41:53 +03:00
zkochan
76fc444219 fix(lifecycle): run preinstall before general installation
As well as other lifecycle scripts.
2017-04-08 14:35:35 +03:00
zkochan
0a130d310d feat: recreate node_modules only with general installation
Close #674
2017-04-05 23:06:18 +03:00
zkochan
ee1b390dfb feat: proper resolving of peer dependencies
BREAKING CHANGE: structure of node_modules changed

Close #678, PR #694
2017-04-04 23:00:48 +03:00
zkochan
8e907023fd test: divide installation tests to separate files 2017-04-02 21:46:37 +03:00
zkochan
40b436cd8c fix: subdeps of not installable packages are ignored 2017-03-31 20:55:27 +03:00
zkochan
d88cb274bf style: remove trailing whitespace in template string 2017-03-29 23:43:22 +03:00
zkochan
d37f781459 fix: optional dependencies are always resolved
Close #679
2017-03-24 01:22:32 +02:00
zkochan
5a4a46815e feat: rename pnpm verify to pnpm store status
BREAKING CHANGE: `pnpm verify` renamed to `pnpm store status`

BREAKING CHANGE: don't run `pnpm verify` before `pnpm publish`

Ref #430, Ref #658
2017-03-23 21:36:28 +02:00
zkochan
e43aa6e8ae fix: installation of circular concurrent deps 2017-03-19 14:48:28 +02:00
zkochan
5d9044553d feat: no tarball paths in shrinkwrap.yaml for default registries
Ref #664, PR #666
2017-03-19 00:35:10 +02:00
zkochan
be2b13d6ae feat: smaller shrinkwrap
pkg IDs are shorter for packages hosted on the default registry

Ref #664, PR #666
2017-03-19 00:35:10 +02:00
zkochan
317cac03b6 feat: make shrinkwrap.yaml smaller
Ref #664
2017-03-19 00:35:10 +02:00
zkochan
d3b0bb0c75 feat: use a shrinkwrap file instead of graph.yaml
Ref #658

BREAKING CHANGE: no `node_modules/.graph.yaml` used anymore
2017-03-13 21:23:41 +02:00
zkochan
e2068c401e feat: always save dependencies
Ref #658

BREAKING CHANGE: cannot insall a dependency w/o saving
2017-03-13 02:41:38 +02:00
zkochan
4f484162d4 feat: add offline support
Close #508, Close #659
2017-03-13 02:31:37 +02:00
zkochan
f0ae7a0ff2 fix: the tag config is used only for top-level named installs 2017-03-05 19:14:20 +02:00
zkochan
d0add08695 test: skip shrinkwrap breaking change on CI servers 2017-03-04 23:42:35 +02:00
zkochan
a85351ea03 test(shrinkwrap): scoped dependency is saved in shrinkwrap.yaml 2017-03-04 23:34:04 +02:00
zkochan
7d48b9d07e feat: remove shrinkwrap.yaml when no deps left in package.json 2017-03-04 22:05:10 +02:00
zkochan
ddc69abd9f feat(shrinkwrap): respect shrinkwrap.yaml for top deps 2017-03-04 21:57:39 +02:00
zkochan
d68fb703d8 refactor(shinkwrap): not type prop for tarball resolutions
Most of the resolutions are tarball files. Skipping the
type property for these decreases the size of `shrinkwrap.yaml`
significantly.
2017-03-04 16:07:48 +02:00
zkochan
91849fd88a feat(shrinkwrap): don't save empty shrinkwrap files 2017-03-04 16:07:48 +02:00
zkochan
1a8f7628a4 fix(shrinkwrap): ignore shrinkwrap when it is out of date
BREAKING CHANGE: shrinkwrap format changed

Close #634
2017-03-04 16:07:48 +02:00
zkochan
f3b0b6f4c1 test(shrinkwrap): deps of deps should satisfy package.json semver
Rel #634
2017-03-04 16:07:48 +02:00
zkochan
4aa3e78e88 fix: use path-exists instead of exists-file 2017-03-02 22:56:56 +02:00