@pnpm/installing.deps-installer 1101.0.9 → 1101.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -92,6 +92,7 @@ export interface StrictInstallOptions {
92
92
  userAgent: string;
93
93
  unsafePerm: boolean;
94
94
  registries: Registries;
95
+ namedRegistries?: Record<string, string>;
95
96
  tag: string;
96
97
  overrides: Record<string, string>;
97
98
  ownLifecycleHooksStdio: 'inherit' | 'pipe';
@@ -137,6 +138,7 @@ export interface StrictInstallOptions {
137
138
  * The option might be used in the future to improve performance.
138
139
  */
139
140
  disableRelinkLocalDirDeps: boolean;
141
+ skipRuntimes: boolean;
140
142
  supportedArchitectures?: SupportedArchitectures;
141
143
  hoistWorkspacePackages?: boolean;
142
144
  virtualStoreDirMaxLength: number;
@@ -151,6 +153,13 @@ export interface StrictInstallOptions {
151
153
  trustPolicyIgnoreAfter?: number;
152
154
  packageVulnerabilityAudit?: PackageVulnerabilityAudit;
153
155
  blockExoticSubdeps?: boolean;
156
+ /**
157
+ * If true, `mutateModules` does not emit the per-install `summary` log
158
+ * event. Used by `pnpm add -g` when it runs multiple isolated installs
159
+ * inside a single command and wants to emit a single consolidated
160
+ * summary at the very end instead of one summary per install.
161
+ */
162
+ omitSummaryLog: boolean;
154
163
  /** URL of a pnpm agent server. See the pnpm-agent README. */
155
164
  agent?: string;
156
165
  }
@@ -97,9 +97,11 @@ const defaults = (opts) => {
97
97
  ignoreWorkspaceCycles: false,
98
98
  disallowWorkspaceCycles: false,
99
99
  excludeLinksFromLockfile: false,
100
+ skipRuntimes: false,
100
101
  virtualStoreDirMaxLength: 120,
101
102
  peersSuffixMaxLength: 1000,
102
103
  blockExoticSubdeps: false,
104
+ omitSummaryLog: false,
103
105
  };
104
106
  };
105
107
  export function extendOptions(opts) {
@@ -923,6 +923,7 @@ const _installInContext = async (projects, ctx, opts) => {
923
923
  preferredVersions,
924
924
  preserveWorkspaceProtocol: opts.preserveWorkspaceProtocol,
925
925
  registries: ctx.registries,
926
+ namedRegistries: opts.namedRegistries,
926
927
  resolutionMode: opts.resolutionMode,
927
928
  saveWorkspaceProtocol: opts.saveWorkspaceProtocol,
928
929
  storeController: opts.storeController,
@@ -970,6 +971,20 @@ const _installInContext = async (projects, ctx, opts) => {
970
971
  }
971
972
  }
972
973
  }
974
+ if (opts.skipRuntimes) {
975
+ // The lockfile filter (filterImporter) handles wantedLockfile-driven linking,
976
+ // but the direct bin-linking path at the end of _installInContext iterates
977
+ // dependenciesByProjectId and only filters by ctx.skipped. Add runtime
978
+ // depPaths there so that path skips them too.
979
+ for (const id of Object.keys(dependenciesByProjectId)) {
980
+ for (const [alias, depPath] of dependenciesByProjectId[id].entries()) {
981
+ if (depPath.includes('@runtime:')) {
982
+ ctx.skipped.add(depPath);
983
+ dependenciesByProjectId[id].delete(alias);
984
+ }
985
+ }
986
+ }
987
+ }
973
988
  stageLogger.debug({
974
989
  prefix: ctx.lockfileDir,
975
990
  stage: 'resolution_done',
@@ -1015,6 +1030,7 @@ const _installInContext = async (projects, ctx, opts) => {
1015
1030
  sideEffectsCacheRead: opts.sideEffectsCacheRead,
1016
1031
  symlink: opts.symlink,
1017
1032
  skipped: ctx.skipped,
1033
+ skipRuntimes: opts.skipRuntimes,
1018
1034
  storeController: opts.storeController,
1019
1035
  virtualStoreDir: ctx.virtualStoreDir,
1020
1036
  virtualStoreDirMaxLength: ctx.virtualStoreDirMaxLength,
@@ -1227,7 +1243,9 @@ const _installInContext = async (projects, ctx, opts) => {
1227
1243
  strictPeerDependencies: opts.strictPeerDependencies,
1228
1244
  rules: opts.peerDependencyRules,
1229
1245
  });
1230
- summaryLogger.debug({ prefix: opts.lockfileDir });
1246
+ if (!opts.omitSummaryLog) {
1247
+ summaryLogger.debug({ prefix: opts.lockfileDir });
1248
+ }
1231
1249
  // Similar to the sequencing for when the original wanted lockfile is
1232
1250
  // copied, the new lockfile passed here should be as close as possible to
1233
1251
  // what will eventually be written to disk. Ex: peers should be resolved,
@@ -33,6 +33,7 @@ export interface LinkPackagesOptions {
33
33
  sideEffectsCacheRead: boolean;
34
34
  symlink: boolean;
35
35
  skipped: Set<DepPath>;
36
+ skipRuntimes?: boolean;
36
37
  storeController: StoreController;
37
38
  virtualStoreDir: string;
38
39
  virtualStoreDirMaxLength: number;
@@ -47,6 +47,7 @@ export async function linkPackages(projects, depGraph, opts) {
47
47
  pruneVirtualStore: opts.pruneVirtualStore,
48
48
  publicHoistedModulesDir: (opts.publicHoistPattern != null) ? opts.rootModulesDir : undefined,
49
49
  skipped: opts.skipped,
50
+ skipRuntimes: opts.skipRuntimes,
50
51
  storeController: opts.storeController,
51
52
  virtualStoreDir: opts.virtualStoreDir,
52
53
  virtualStoreDirMaxLength: opts.virtualStoreDirMaxLength,
@@ -61,6 +62,7 @@ export async function linkPackages(projects, depGraph, opts) {
61
62
  include: opts.include,
62
63
  registries: opts.registries,
63
64
  skipped: opts.skipped,
65
+ skipRuntimes: opts.skipRuntimes,
64
66
  };
65
67
  const newCurrentLockfile = filterLockfileByImporters(opts.wantedLockfile, projectIds, {
66
68
  ...filterOpts,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pnpm/installing.deps-installer",
3
- "version": "1101.0.9",
3
+ "version": "1101.1.1",
4
4
  "description": "Fast, disk space efficient installation engine",
5
5
  "keywords": [
6
6
  "pnpm",
@@ -56,66 +56,66 @@
56
56
  "load-json-file": "^7.0.1",
57
57
  "normalize-path": "^3.0.0",
58
58
  "p-filter": "^4.1.0",
59
- "p-limit": "^7.3.0",
59
+ "p-limit": "^7.1.0",
60
60
  "path-absolute": "^2.0.0",
61
61
  "path-exists": "^5.0.0",
62
62
  "ramda": "npm:@pnpm/ramda@0.28.1",
63
63
  "run-groups": "^5.0.0",
64
- "semver": "^7.7.4",
65
- "@pnpm/bins.remover": "1100.0.2",
66
- "@pnpm/bins.linker": "1100.0.3",
67
- "@pnpm/building.after-install": "1101.0.9",
68
- "@pnpm/agent.client": "1.0.3",
69
- "@pnpm/building.policy": "1100.0.3",
70
- "@pnpm/building.during-install": "1101.0.7",
71
- "@pnpm/catalogs.resolver": "1100.0.0",
64
+ "semver": "^7.7.2",
65
+ "@pnpm/agent.client": "1.0.4",
66
+ "@pnpm/bins.linker": "1100.0.5",
67
+ "@pnpm/bins.remover": "1100.0.3",
68
+ "@pnpm/building.after-install": "1101.0.11",
69
+ "@pnpm/building.during-install": "1101.0.9",
70
+ "@pnpm/building.policy": "1100.0.4",
72
71
  "@pnpm/catalogs.protocol-parser": "1100.0.0",
72
+ "@pnpm/catalogs.resolver": "1100.0.0",
73
+ "@pnpm/catalogs.types": "1100.0.0",
73
74
  "@pnpm/config.matcher": "1100.0.1",
74
- "@pnpm/config.normalize-registries": "1100.0.2",
75
+ "@pnpm/config.normalize-registries": "1100.0.3",
76
+ "@pnpm/config.parse-overrides": "1100.0.1",
75
77
  "@pnpm/constants": "1100.0.0",
78
+ "@pnpm/core-loggers": "1100.0.2",
76
79
  "@pnpm/crypto.hash": "1100.0.1",
77
- "@pnpm/core-loggers": "1100.0.1",
78
- "@pnpm/catalogs.types": "1100.0.0",
79
- "@pnpm/deps.graph-hasher": "1100.1.4",
80
+ "@pnpm/crypto.object-hasher": "1100.0.0",
81
+ "@pnpm/deps.graph-hasher": "1100.1.5",
80
82
  "@pnpm/deps.graph-sequencer": "1100.0.0",
81
- "@pnpm/deps.path": "1100.0.2",
83
+ "@pnpm/deps.path": "1100.0.3",
82
84
  "@pnpm/error": "1100.0.0",
83
- "@pnpm/exec.lifecycle": "1100.0.7",
84
- "@pnpm/crypto.object-hasher": "1100.0.0",
85
+ "@pnpm/exec.lifecycle": "1100.0.9",
85
86
  "@pnpm/fs.read-modules-dir": "1100.0.1",
86
- "@pnpm/fs.symlink-dependency": "1100.0.2",
87
- "@pnpm/config.parse-overrides": "1100.0.1",
88
- "@pnpm/hooks.read-package-hook": "1100.0.2",
89
- "@pnpm/hooks.types": "1100.0.5",
90
- "@pnpm/installing.context": "1100.0.8",
91
- "@pnpm/installing.linking.direct-dep-linker": "1100.0.2",
92
- "@pnpm/installing.deps-resolver": "1100.0.8",
93
- "@pnpm/installing.deps-restorer": "1101.0.8",
94
- "@pnpm/installing.linking.hoist": "1100.0.3",
95
- "@pnpm/installing.linking.modules-cleaner": "1100.0.7",
96
- "@pnpm/installing.modules-yaml": "1100.0.3",
97
- "@pnpm/lockfile.filtering": "1100.0.7",
98
- "@pnpm/lockfile.preferred-versions": "1100.0.7",
99
- "@pnpm/lockfile.pruner": "1100.0.4",
100
- "@pnpm/lockfile.settings-checker": "1100.0.8",
101
- "@pnpm/lockfile.utils": "1100.0.6",
102
- "@pnpm/lockfile.fs": "1100.0.6",
103
- "@pnpm/lockfile.verification": "1100.0.8",
104
- "@pnpm/lockfile.walker": "1100.0.4",
105
- "@pnpm/patching.config": "1100.0.2",
106
- "@pnpm/lockfile.to-pnp": "1100.0.6",
107
- "@pnpm/pkg-manifest.utils": "1100.1.1",
108
- "@pnpm/resolving.resolver-base": "1100.1.2",
87
+ "@pnpm/fs.symlink-dependency": "1100.0.3",
88
+ "@pnpm/hooks.read-package-hook": "1100.0.3",
89
+ "@pnpm/hooks.types": "1100.0.6",
90
+ "@pnpm/installing.context": "1100.0.9",
91
+ "@pnpm/installing.deps-resolver": "1100.0.9",
92
+ "@pnpm/installing.deps-restorer": "1101.1.1",
93
+ "@pnpm/installing.linking.direct-dep-linker": "1100.0.3",
94
+ "@pnpm/installing.linking.hoist": "1100.0.5",
95
+ "@pnpm/installing.linking.modules-cleaner": "1100.1.0",
96
+ "@pnpm/installing.modules-yaml": "1100.0.4",
97
+ "@pnpm/installing.package-requester": "1101.0.5",
98
+ "@pnpm/lockfile.filtering": "1100.1.0",
99
+ "@pnpm/lockfile.fs": "1100.0.7",
100
+ "@pnpm/lockfile.preferred-versions": "1100.0.8",
101
+ "@pnpm/lockfile.pruner": "1100.0.5",
102
+ "@pnpm/lockfile.settings-checker": "1100.0.9",
103
+ "@pnpm/lockfile.to-pnp": "1100.0.7",
104
+ "@pnpm/lockfile.utils": "1100.0.7",
105
+ "@pnpm/lockfile.verification": "1100.0.9",
106
+ "@pnpm/lockfile.walker": "1100.0.5",
107
+ "@pnpm/patching.config": "1100.0.3",
108
+ "@pnpm/pkg-manifest.utils": "1100.1.2",
109
109
  "@pnpm/resolving.parse-wanted-dependency": "1100.0.1",
110
- "@pnpm/store.controller-types": "1100.0.5",
111
- "@pnpm/workspace.project-manifest-reader": "1100.0.3",
112
- "@pnpm/types": "1101.0.0",
113
- "@pnpm/installing.package-requester": "1101.0.4",
114
- "@pnpm/store.index": "1100.1.0"
110
+ "@pnpm/resolving.resolver-base": "1100.1.3",
111
+ "@pnpm/store.controller-types": "1100.0.6",
112
+ "@pnpm/types": "1101.1.0",
113
+ "@pnpm/store.index": "1100.1.0",
114
+ "@pnpm/workspace.project-manifest-reader": "1100.0.4"
115
115
  },
116
116
  "peerDependencies": {
117
- "@pnpm/logger": "^1001.0.1",
118
- "@pnpm/worker": "^1100.1.3"
117
+ "@pnpm/logger": ">=1001.0.0 <1002.0.0",
118
+ "@pnpm/worker": "^1100.1.4"
119
119
  },
120
120
  "devDependencies": {
121
121
  "@jest/globals": "30.3.0",
@@ -126,7 +126,7 @@
126
126
  "@types/ramda": "0.31.1",
127
127
  "@types/semver": "7.7.1",
128
128
  "@yarnpkg/core": "4.5.0",
129
- "ci-info": "^4.4.0",
129
+ "ci-info": "^4.3.0",
130
130
  "deep-require-cwd": "1.0.0",
131
131
  "execa": "npm:safe-execa@0.3.0",
132
132
  "exists-link": "2.0.0",
@@ -138,21 +138,21 @@
138
138
  "symlink-dir": "^10.0.1",
139
139
  "write-json-file": "^7.0.0",
140
140
  "write-yaml-file": "^6.0.0",
141
- "@pnpm/assert-project": "1100.0.6",
142
- "@pnpm/assert-store": "1100.0.6",
143
- "@pnpm/installing.deps-installer": "1101.0.9",
144
- "@pnpm/lockfile.types": "1100.0.4",
145
- "@pnpm/network.git-utils": "1100.0.1",
146
- "@pnpm/pkg-manifest.reader": "1100.0.2",
141
+ "@pnpm/assert-project": "1100.0.7",
142
+ "@pnpm/assert-store": "1100.0.7",
143
+ "@pnpm/installing.deps-installer": "1101.1.1",
144
+ "@pnpm/lockfile.types": "1100.0.5",
147
145
  "@pnpm/logger": "1100.0.0",
148
- "@pnpm/prepare": "1100.0.6",
149
- "@pnpm/resolving.registry.types": "1100.0.2",
150
- "@pnpm/store.cafs": "1100.1.2",
146
+ "@pnpm/network.git-utils": "1100.0.1",
147
+ "@pnpm/pkg-manifest.reader": "1100.0.3",
148
+ "@pnpm/prepare": "1100.0.7",
149
+ "@pnpm/resolving.registry.types": "1100.0.3",
150
+ "@pnpm/store.cafs": "1100.1.3",
151
151
  "@pnpm/store.path": "1100.0.1",
152
152
  "@pnpm/test-fixtures": "1100.0.0",
153
153
  "@pnpm/test-ipc-server": "1100.0.0",
154
- "@pnpm/testing.temp-store": "1100.0.13",
155
- "@pnpm/testing.mock-agent": "1100.0.2"
154
+ "@pnpm/testing.mock-agent": "1100.0.3",
155
+ "@pnpm/testing.temp-store": "1100.0.15"
156
156
  },
157
157
  "engines": {
158
158
  "node": ">=22.13"