Commit Graph

10701 Commits

Author SHA1 Message Date
Zoltan Kochan
a1e977c57f fix(config): ignore workspace configs during global install 2018-10-18 23:25:43 +03:00
Zoltan Kochan
45f8c05ab3 chore(release): 2.17.0-3 v2.17.0-3 2018-10-17 02:00:51 +03:00
Zoltan Kochan
0442eacf5a fix(link): use relative path from prefix not shrinkwrap dir 2018-10-17 01:31:56 +03:00
Zoltan Kochan
b26bb7443d fix(link): prefer local packages in a workspace 2018-10-17 00:26:33 +03:00
Zoltan Kochan
ddd7dbe6cb chore(release): 2.17.0-2 v2.17.0-2 2018-10-16 00:28:30 +03:00
Zoltan Kochan
129aa5c20a fix: repeat install with shared shrinkwrap and peers
ref #1366
2018-10-15 23:47:58 +03:00
Zoltan Kochan
96eb000479 chore(release): 2.17.0-1 v2.17.0-1 2018-10-15 21:21:42 +03:00
Zoltan Kochan
9debbf3729 feat: use shrinkwrap v4 for shared shrinkwrap.yaml
ref #1366
2018-10-15 18:26:00 +03:00
Zoltan Kochan
df30de6c89 docs(readme): fix link to contributing page 2018-10-15 13:39:19 +03:00
Zoltan Kochan
7a831f3e27 docs(readme): add backers and sponsors badges 2018-10-15 12:55:20 +03:00
Zoltan Kochan
e342aaa748 docs(readme): add backers/sponsors section 2018-10-15 12:44:27 +03:00
Zoltan Kochan
bed248adc2 feat: install only subdeps of selected importers
ref #1366
2018-10-15 03:15:08 +03:00
Zoltan Kochan
f260ea8d3a test(supi): fix "only skip optional dependencies" 2018-10-14 12:13:43 +03:00
Zoltan Kochan
b673b0bda0 chore(renovate): ignore @pnpm/assert-project 2018-10-14 01:50:27 +03:00
Zoltan Kochan
585fadfc82 test: share the prepare utils between supi and pnpm 2018-10-14 00:22:08 +03:00
Zoltan Kochan
0ea4921988 refactor(supi): move absolutePathToRef to src/install/ 2018-10-13 13:48:15 +03:00
Zoltan Kochan
23d3b9a960 fix: ignore protocol when comparing tarball URLs 2018-10-13 13:44:46 +03:00
Zoltan Kochan
c5c2913eb1 fix(recursive): always prefer local packages when they are present
When `link-workspace-packages` is `true`, local packages should be
preferred even if packages from the registry are already present
in `shrinkwrap.yaml`.
2018-10-12 23:22:30 +03:00
Zoltan Kochan
48384dfa5a fix(deps): update @types/tempy, semver, typescript, @types/node
patch: @pnpm/default-reporter
patch: dependencies-hierarchy
patch: @pnpm/modules-cleaner
patch: @pnpm/resolve-dependencies
patch: supi

close #1415
close #1413
close #1411
close #1410
2018-10-12 23:01:21 +03:00
Zoltan Kochan
24060fc0a0 fix(recursive): don't install packages after -- 2018-10-11 00:53:11 +03:00
Zoltan Kochan
bc47af9d61 perf: check direct dependency in correct folder
ref #1366
2018-10-10 21:15:47 +03:00
Martin Drohmann
c1f74ab6d6 fix: ignore filtered packages when sorting topologically
This is another issue with the graph-sequencer producing strange results
when
sorting.

Case that is fixed here:

- Package 'a' depends on 'b' and 'c'
- Package 'd' depends on 'a'
- Package 'e' depends on 'a', 'b' and 'c'

Command that has the wront behavior:

	pnpm recursive --filter=...a [command]

**Expected behavior**:

Packages are executed in order ['a', ['d', 'e']] ('d' and 'e' can be
executed
in parallel.)

**Actual behavior**:

Packages are executed in order [['e', 'a', 'd']]

**Fix**:

Remove the unused dependencies 'b' and 'c' from the graph when sorting.

PR #1408
2018-10-10 11:37:47 +03:00
Zoltan Kochan
f7ad5a6f23 perf: fast repeat install when node_modules lacks only skipped packages 2018-10-10 01:46:13 +03:00
Zoltan Kochan
2f2c505dd1 fix: hooks applied when installing with a shared shrinkwrap
ref #1366
2018-10-09 22:14:34 +03:00
Martin Drohmann
10cffe6584 fix: ignore cycles of length 1 in dependency graph when sorting
* fix: ignore cycles of length 1 in dependency graph when sorting

Cycles of length 1 in the dependency graph ie., packages that depend on
themselves, confuse the 'graph-sequencer' function that is used to order the
packages topologically.

Sometimes, it makes sense to make packages depend on themselves eg., to install
their exposed scripts in `node_modules/.bin`, so we should either fix the
`graph-sequencer` or apply this patch.

An example for this behavior is:

- Package 'a' depends on 'b' and 'c'
- Package 'b' depends on 'b'
- Package 'c' depends on 'b' and 'c'

Now run:

	pnpm recursive --filter=a... [some command]

**Expected behavior**:

- Packages are visited in order [['b'], ['c'], ['a']], where no parallel
  execution is possible.

**Actual behavior**:

- Packages are visited in order [['b'], ['a'], ['c']].

This patch fixes that behavior.

* fix: ignore cycles of length 1 in dependency graph when sorting

add a regression test to packages/pnpm/test/monorepo/index.ts

pr #1406
2018-10-09 14:52:28 +03:00
Zoltan Kochan
3f84094309 fix: a dependency should always be linked if it is non-optional
ref #1305
2018-10-09 01:30:01 +03:00
Zoltan Kochan
b685487358 test(config): workspace manifest is searched from specified prefix 2018-10-08 03:22:22 +03:00
Zoltan Kochan
f30eec9173 chore(release): 2.17.0-0 v2.17.0-0 2018-10-07 22:29:19 +03:00
Zoltan Kochan
bc5e726b6a fix: use correct prefix when logging stats 2018-10-07 20:50:08 +03:00
Zoltan Kochan
3911cf0823 style: use standard style with trailing comma 2018-10-07 16:39:49 +03:00
Zoltan Kochan
534850aaca perf(supi): faster installation with shared shrinkwrap.yaml
PR #1401
ref #1366
2018-10-07 14:08:17 +03:00
Vaughan Rouesnel
a4578d4f81 test: fix failing test on Windows
PR #1404
ref #1402
2018-10-07 01:37:00 +03:00
Zoltan Kochan
0944f36392 fix(deps): update dependency @types/node to v10.11.4 2018-10-06 14:40:38 +03:00
Vaughan Rouesnel
b9154ce433 fix(link): use realpaths for symlink source and target
PR #1402
close #1208
2018-10-06 12:06:43 +03:00
Zoltan Kochan
16c2cc8b83 refactor(supi): remove reinstallForFlatten option 2018-10-02 23:47:43 +03:00
Zoltan Kochan
5933bd7a1c refactor(supi): remove installType arg from installInContext() 2018-10-02 23:06:09 +03:00
Zoltan Kochan
b8ab0f5c61 refactor(resolve-dependencies): return directDependencies 2018-10-02 01:50:06 +03:00
Zoltan Kochan
8d3f7524ce refactor(resolve-dependencies): DependenciesGraph=>DependenciesTree 2018-10-02 01:15:41 +03:00
Zoltan Kochan
00c09d4ea3 refactor: create @pnpm/resolve-dependencies
Also, better naming of variables in @pnpm/resolve-dependencies.

This is refactoring of supi to make it easier to do the performance improvements for #1366.

PR  #1399
2018-10-01 10:04:23 +03:00
Zoltan Kochan
ef3d2f5392 refactor: depsToSpecs=>getWantedDependencies 2018-09-30 14:41:45 +03:00
Zoltan Kochan
2a72068961 refactor: create @pnpm/modules-cleaner 2018-09-30 14:06:44 +03:00
Zoltan Kochan
1d1a8b606c refactor(supi): change directory structure 2018-09-30 12:07:29 +03:00
Zoltan Kochan
5e9f8de93e feat: add importers field to .modules.yaml
This changes the way node_modules information of importers is
stored. The initial implementation in #1373 used a separate
`.modules.yaml` in every importer's node_modules directory.
Keeping only one `.modules.yaml` makes it easier to get all the
necessary info during recursive installation.

ref #1366
2018-09-30 02:44:27 +03:00
Renovate Bot
ab45aa65fc fix(deps): update dependency strip-ansi to v5 2018-09-30 02:43:19 +03:00
Zoltan Kochan
4e6387f563 chore: move @pnpm/assert-project to monorepo 2018-09-29 15:08:30 +03:00
Zoltan Kochan
18dc98646c fix: always use real location of node_modules
PR #1392
2018-09-28 21:30:33 +03:00
Renovate Bot
8a743ce3e1 chore(deps): update dependency tape-promise to v4 2018-09-28 21:15:01 +03:00
Zoltan Kochan
269b8ea82d refactor: use yaml-tag from registry instead of zkochan/yaml-tag 2018-09-28 20:44:24 +03:00
Zoltan Kochan
6b981f7f97 refactor: remove reinstallForFlatten
supi:

BREAKING CHANGE:

remove prune()
remove reinstallForFlatten
2018-09-27 13:38:50 +03:00
Zoltan Kochan
7e414b131c refactor: pin dependencies 2018-09-26 00:24:49 +03:00