@pnpm/core 15.3.9 → 15.3.11

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.
Files changed (31) hide show
  1. package/package.json +27 -27
  2. package/lib/install/allProjectsAreUpToDate.d.ts +0 -13
  3. package/lib/install/allProjectsAreUpToDate.js +0 -150
  4. package/lib/install/allProjectsAreUpToDate.js.map +0 -1
  5. package/lib/install/checkCompatibility/BreakingChangeError.d.ts +0 -12
  6. package/lib/install/checkCompatibility/BreakingChangeError.js +0 -14
  7. package/lib/install/checkCompatibility/BreakingChangeError.js.map +0 -1
  8. package/lib/install/checkCompatibility/ErrorRelatedSources.d.ts +0 -5
  9. package/lib/install/checkCompatibility/ErrorRelatedSources.js +0 -3
  10. package/lib/install/checkCompatibility/ErrorRelatedSources.js.map +0 -1
  11. package/lib/install/checkCompatibility/ModulesBreakingChangeError.d.ts +0 -9
  12. package/lib/install/checkCompatibility/ModulesBreakingChangeError.js +0 -18
  13. package/lib/install/checkCompatibility/ModulesBreakingChangeError.js.map +0 -1
  14. package/lib/install/checkCompatibility/UnexpectedStoreError.d.ts +0 -11
  15. package/lib/install/checkCompatibility/UnexpectedStoreError.js +0 -14
  16. package/lib/install/checkCompatibility/UnexpectedStoreError.js.map +0 -1
  17. package/lib/install/checkCompatibility/UnexpectedVirtualStoreDirError.d.ts +0 -11
  18. package/lib/install/checkCompatibility/UnexpectedVirtualStoreDirError.js +0 -14
  19. package/lib/install/checkCompatibility/UnexpectedVirtualStoreDirError.js.map +0 -1
  20. package/lib/install/checkCompatibility/index.d.ts +0 -6
  21. package/lib/install/checkCompatibility/index.js +0 -37
  22. package/lib/install/checkCompatibility/index.js.map +0 -1
  23. package/lib/install/getPreferredVersions.d.ts +0 -5
  24. package/lib/install/getPreferredVersions.js +0 -62
  25. package/lib/install/getPreferredVersions.js.map +0 -1
  26. package/lib/install/getPreferredVersions.test.d.ts +0 -1
  27. package/lib/install/getPreferredVersions.test.js +0 -30
  28. package/lib/install/getPreferredVersions.test.js.map +0 -1
  29. package/lib/install/validateModules.d.ts +0 -26
  30. package/lib/install/validateModules.js +0 -138
  31. package/lib/install/validateModules.js.map +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pnpm/core",
3
3
  "description": "Fast, disk space efficient installation engine",
4
- "version": "15.3.9",
4
+ "version": "15.3.11",
5
5
  "bugs": {
6
6
  "url": "https://github.com/pnpm/pnpm/issues"
7
7
  },
@@ -31,50 +31,50 @@
31
31
  "semver": "^7.6.2",
32
32
  "sort-keys": "^4.2.0",
33
33
  "@pnpm/build-modules": "14.0.5",
34
- "@pnpm/catalogs.protocol-parser": "0.1.0",
35
- "@pnpm/catalogs.types": "0.1.0",
36
34
  "@pnpm/calc-dep-state": "7.0.10",
35
+ "@pnpm/catalogs.types": "0.1.0",
36
+ "@pnpm/catalogs.protocol-parser": "0.1.0",
37
37
  "@pnpm/constants": "9.0.0",
38
- "@pnpm/crypto.polyfill": "1.0.0",
39
38
  "@pnpm/core-loggers": "10.0.7",
40
39
  "@pnpm/crypto.base32-hash": "3.0.1",
40
+ "@pnpm/crypto.polyfill": "1.0.0",
41
41
  "@pnpm/dependency-path": "5.1.7",
42
- "@pnpm/error": "6.0.2",
43
42
  "@pnpm/deps.graph-sequencer": "2.0.1",
44
- "@pnpm/headless": "23.2.9",
43
+ "@pnpm/error": "6.0.2",
45
44
  "@pnpm/get-context": "12.0.8",
45
+ "@pnpm/headless": "23.2.9",
46
46
  "@pnpm/hooks.read-package-hook": "5.1.0",
47
- "@pnpm/lifecycle": "17.1.5",
48
- "@pnpm/hooks.types": "2.0.9",
49
47
  "@pnpm/hoist": "9.1.15",
48
+ "@pnpm/hooks.types": "2.0.9",
49
+ "@pnpm/lifecycle": "17.1.5",
50
50
  "@pnpm/lockfile-to-pnp": "4.1.15",
51
- "@pnpm/lockfile.fs": "1.1.0",
51
+ "@pnpm/link-bins": "10.0.11",
52
52
  "@pnpm/lockfile.filtering": "1.0.7",
53
- "@pnpm/lockfile.settings-checker": "1.0.1",
54
53
  "@pnpm/lockfile.preferred-versions": "1.0.14",
54
+ "@pnpm/lockfile.pruner": "0.0.6",
55
+ "@pnpm/lockfile.fs": "1.1.0",
56
+ "@pnpm/lockfile.settings-checker": "1.0.1",
55
57
  "@pnpm/lockfile.utils": "1.0.4",
56
- "@pnpm/manifest-utils": "6.0.9",
57
- "@pnpm/link-bins": "10.0.11",
58
58
  "@pnpm/lockfile.verification": "1.0.7",
59
59
  "@pnpm/lockfile.walker": "1.0.4",
60
- "@pnpm/lockfile.pruner": "0.0.6",
61
- "@pnpm/modules-cleaner": "15.1.16",
60
+ "@pnpm/manifest-utils": "6.0.9",
62
61
  "@pnpm/matcher": "6.0.0",
62
+ "@pnpm/modules-cleaner": "15.1.16",
63
63
  "@pnpm/modules-yaml": "13.1.7",
64
+ "@pnpm/normalize-registries": "6.0.7",
64
65
  "@pnpm/package-requester": "25.2.10",
65
66
  "@pnpm/parse-overrides": "5.1.1",
66
- "@pnpm/normalize-registries": "6.0.7",
67
67
  "@pnpm/parse-wanted-dependency": "6.0.0",
68
- "@pnpm/read-modules-dir": "7.0.0",
69
- "@pnpm/remove-bins": "6.0.9",
70
68
  "@pnpm/pkg-manager.direct-dep-linker": "3.0.8",
69
+ "@pnpm/read-modules-dir": "7.0.0",
71
70
  "@pnpm/read-project-manifest": "6.0.9",
72
- "@pnpm/resolve-dependencies": "36.0.6",
73
- "@pnpm/types": "12.2.0",
74
- "@pnpm/store-controller-types": "18.1.6",
71
+ "@pnpm/remove-bins": "6.0.9",
72
+ "@pnpm/resolve-dependencies": "36.0.8",
75
73
  "@pnpm/resolver-base": "13.0.4",
74
+ "@pnpm/store-controller-types": "18.1.6",
75
+ "@pnpm/symlink-dependency": "8.0.8",
76
76
  "@pnpm/which-version-is-pinned": "6.0.0",
77
- "@pnpm/symlink-dependency": "8.0.8"
77
+ "@pnpm/types": "12.2.0"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@pnpm/registry-mock": "3.43.0",
@@ -98,18 +98,18 @@
98
98
  "symlink-dir": "^6.0.2",
99
99
  "write-json-file": "^4.3.0",
100
100
  "write-yaml-file": "^5.0.0",
101
- "@pnpm/assert-store": "1.0.92",
102
101
  "@pnpm/assert-project": "2.3.62",
103
- "@pnpm/core": "15.3.9",
104
- "@pnpm/logger": "5.2.0",
102
+ "@pnpm/client": "11.1.12",
103
+ "@pnpm/assert-store": "1.0.92",
104
+ "@pnpm/core": "15.3.11",
105
105
  "@pnpm/crypto.object-hasher": "2.0.0",
106
106
  "@pnpm/git-utils": "2.0.0",
107
- "@pnpm/package-store": "20.4.2",
108
107
  "@pnpm/lockfile.types": "1.0.3",
108
+ "@pnpm/logger": "5.2.0",
109
+ "@pnpm/package-store": "20.4.2",
109
110
  "@pnpm/prepare": "0.0.105",
110
- "@pnpm/store-path": "9.0.2",
111
111
  "@pnpm/read-package-json": "9.0.9",
112
- "@pnpm/client": "11.1.12",
112
+ "@pnpm/store-path": "9.0.2",
113
113
  "@pnpm/store.cafs": "4.0.2",
114
114
  "@pnpm/test-fixtures": "0.1.35",
115
115
  "@pnpm/test-ipc-server": "0.0.0"
@@ -1,13 +0,0 @@
1
- import { type ProjectOptions } from '@pnpm/get-context';
2
- import { type Lockfile } from '@pnpm/lockfile-file';
3
- import { type WorkspacePackages } from '@pnpm/resolver-base';
4
- export declare function allProjectsAreUpToDate(projects: Array<ProjectOptions & {
5
- id: string;
6
- }>, opts: {
7
- autoInstallPeers: boolean;
8
- excludeLinksFromLockfile: boolean;
9
- linkWorkspacePackages: boolean;
10
- wantedLockfile: Lockfile;
11
- workspacePackages: WorkspacePackages;
12
- lockfileDir: string;
13
- }): Promise<boolean>;
@@ -1,150 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.allProjectsAreUpToDate = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const lockfile_utils_1 = require("@pnpm/lockfile-utils");
9
- const read_package_json_1 = require("@pnpm/read-package-json");
10
- const types_1 = require("@pnpm/types");
11
- const p_every_1 = __importDefault(require("p-every"));
12
- const any_1 = __importDefault(require("ramda/src/any"));
13
- const semver_1 = __importDefault(require("semver"));
14
- const version_selector_type_1 = __importDefault(require("version-selector-type"));
15
- async function allProjectsAreUpToDate(projects, opts) {
16
- const manifestsByDir = opts.workspacePackages ? getWorkspacePackagesByDirectory(opts.workspacePackages) : {};
17
- const _satisfiesPackageManifest = lockfile_utils_1.satisfiesPackageManifest.bind(null, {
18
- autoInstallPeers: opts.autoInstallPeers,
19
- excludeLinksFromLockfile: opts.excludeLinksFromLockfile,
20
- });
21
- const _linkedPackagesAreUpToDate = linkedPackagesAreUpToDate.bind(null, {
22
- linkWorkspacePackages: opts.linkWorkspacePackages,
23
- manifestsByDir,
24
- workspacePackages: opts.workspacePackages,
25
- lockfilePackages: opts.wantedLockfile.packages,
26
- lockfileDir: opts.lockfileDir,
27
- });
28
- return (0, p_every_1.default)(projects, (project) => {
29
- const importer = opts.wantedLockfile.importers[project.id];
30
- return !hasLocalTarballDepsInRoot(importer) &&
31
- _satisfiesPackageManifest(importer, project.manifest).satisfies &&
32
- _linkedPackagesAreUpToDate({
33
- dir: project.rootDir,
34
- manifest: project.manifest,
35
- snapshot: importer,
36
- });
37
- });
38
- }
39
- exports.allProjectsAreUpToDate = allProjectsAreUpToDate;
40
- function getWorkspacePackagesByDirectory(workspacePackages) {
41
- const workspacePackagesByDirectory = {};
42
- Object.keys(workspacePackages || {}).forEach((pkgName) => {
43
- Object.keys(workspacePackages[pkgName] || {}).forEach((pkgVersion) => {
44
- workspacePackagesByDirectory[workspacePackages[pkgName][pkgVersion].dir] = workspacePackages[pkgName][pkgVersion].manifest;
45
- });
46
- });
47
- return workspacePackagesByDirectory;
48
- }
49
- async function linkedPackagesAreUpToDate({ linkWorkspacePackages, manifestsByDir, workspacePackages, lockfilePackages, lockfileDir, }, project) {
50
- return (0, p_every_1.default)(types_1.DEPENDENCIES_FIELDS, (depField) => {
51
- const lockfileDeps = project.snapshot[depField];
52
- const manifestDeps = project.manifest[depField];
53
- if ((lockfileDeps == null) || (manifestDeps == null))
54
- return true;
55
- const depNames = Object.keys(lockfileDeps);
56
- return (0, p_every_1.default)(depNames, async (depName) => {
57
- const currentSpec = manifestDeps[depName];
58
- if (!currentSpec)
59
- return true;
60
- const lockfileRef = lockfileDeps[depName];
61
- if ((0, lockfile_utils_1.refIsLocalDirectory)(project.snapshot.specifiers[depName])) {
62
- return isLocalFileDepUpdated(lockfileDir, lockfilePackages?.[lockfileRef]);
63
- }
64
- const isLinked = lockfileRef.startsWith('link:');
65
- if (isLinked &&
66
- (currentSpec.startsWith('link:') ||
67
- currentSpec.startsWith('file:') ||
68
- currentSpec.startsWith('workspace:.'))) {
69
- return true;
70
- }
71
- // https://github.com/pnpm/pnpm/issues/6592
72
- // if the dependency is linked and the specified version type is tag, we consider it to be up-to-date to skip full resolution.
73
- if (isLinked && (0, version_selector_type_1.default)(currentSpec)?.type === 'tag') {
74
- return true;
75
- }
76
- const linkedDir = isLinked
77
- ? path_1.default.join(project.dir, lockfileRef.slice(5))
78
- : workspacePackages?.[depName]?.[lockfileRef]?.dir;
79
- if (!linkedDir)
80
- return true;
81
- if (!linkWorkspacePackages && !currentSpec.startsWith('workspace:')) {
82
- // we found a linked dir, but we don't want to use it, because it's not specified as a
83
- // workspace:x.x.x dependency
84
- return true;
85
- }
86
- const linkedPkg = manifestsByDir[linkedDir] ?? await (0, read_package_json_1.safeReadPackageJsonFromDir)(linkedDir);
87
- const availableRange = getVersionRange(currentSpec);
88
- // This should pass the same options to semver as @pnpm/npm-resolver
89
- const localPackageSatisfiesRange = availableRange === '*' || availableRange === '^' || availableRange === '~' ||
90
- linkedPkg && semver_1.default.satisfies(linkedPkg.version, availableRange, { loose: true });
91
- if (isLinked !== localPackageSatisfiesRange)
92
- return false;
93
- return true;
94
- });
95
- });
96
- }
97
- async function isLocalFileDepUpdated(lockfileDir, pkgSnapshot) {
98
- if (!pkgSnapshot)
99
- return false;
100
- const localDepDir = path_1.default.join(lockfileDir, pkgSnapshot.resolution.directory);
101
- const manifest = await (0, read_package_json_1.safeReadPackageJsonFromDir)(localDepDir);
102
- if (!manifest)
103
- return false;
104
- for (const depField of types_1.DEPENDENCIES_OR_PEER_FIELDS) {
105
- if (depField === 'devDependencies')
106
- continue;
107
- const manifestDeps = manifest[depField] ?? {};
108
- const lockfileDeps = pkgSnapshot[depField] ?? {};
109
- // Lock file has more dependencies than the current manifest, e.g. some dependencies are removed.
110
- if (Object.keys(lockfileDeps).some(depName => !manifestDeps[depName])) {
111
- return false;
112
- }
113
- for (const depName of Object.keys(manifestDeps)) {
114
- // If a dependency does not exist in the lock file, e.g. a new dependency is added to the current manifest.
115
- // We need to do full resolution again.
116
- if (!lockfileDeps[depName]) {
117
- return false;
118
- }
119
- const currentSpec = manifestDeps[depName];
120
- // We do not care about the link dependencies of local dependency.
121
- if (currentSpec.startsWith('file:') || currentSpec.startsWith('link:') || currentSpec.startsWith('workspace:'))
122
- continue;
123
- if (semver_1.default.satisfies(lockfileDeps[depName], getVersionRange(currentSpec), { loose: true })) {
124
- continue;
125
- }
126
- else {
127
- return false;
128
- }
129
- }
130
- }
131
- return true;
132
- }
133
- function getVersionRange(spec) {
134
- if (spec.startsWith('workspace:'))
135
- return spec.slice(10);
136
- if (spec.startsWith('npm:')) {
137
- spec = spec.slice(4);
138
- const index = spec.indexOf('@', 1);
139
- if (index === -1)
140
- return '*';
141
- return spec.slice(index + 1) || '*';
142
- }
143
- return spec;
144
- }
145
- function hasLocalTarballDepsInRoot(importer) {
146
- return (0, any_1.default)(lockfile_utils_1.refIsLocalTarball, Object.values(importer.dependencies ?? {})) ||
147
- (0, any_1.default)(lockfile_utils_1.refIsLocalTarball, Object.values(importer.devDependencies ?? {})) ||
148
- (0, any_1.default)(lockfile_utils_1.refIsLocalTarball, Object.values(importer.optionalDependencies ?? {}));
149
- }
150
- //# sourceMappingURL=allProjectsAreUpToDate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"allProjectsAreUpToDate.js","sourceRoot":"","sources":["../../src/install/allProjectsAreUpToDate.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAQvB,yDAAuG;AACvG,+DAAoE;AAEpE,uCAKoB;AACpB,sDAA4B;AAC5B,wDAA+B;AAC/B,oDAA2B;AAC3B,kFAA0D;AAEnD,KAAK,UAAU,sBAAsB,CAC1C,QAAgD,EAChD,IAOC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,+BAA+B,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC5G,MAAM,yBAAyB,GAAG,yCAAwB,CAAC,IAAI,CAAC,IAAI,EAAE;QACpE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;KACxD,CAAC,CAAA;IACF,MAAM,0BAA0B,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE;QACtE,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;QACjD,cAAc;QACd,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ;QAC9C,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC,CAAA;IACF,OAAO,IAAA,iBAAM,EAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC1D,OAAO,CAAC,yBAAyB,CAAC,QAAQ,CAAC;YACzC,yBAAyB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,SAAS;YAC/D,0BAA0B,CAAC;gBACzB,GAAG,EAAE,OAAO,CAAC,OAAO;gBACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACJ,CAAC;AAjCD,wDAiCC;AAED,SAAS,+BAA+B,CAAE,iBAAoC;IAC5E,MAAM,4BAA4B,GAAuC,EAAE,CAAA;IAC3E,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACvD,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YACnE,4BAA4B,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAA;QAC5H,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,OAAO,4BAA4B,CAAA;AACrC,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,EACE,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,GAOZ,EACD,OAIC;IAED,OAAO,IAAA,iBAAM,EACX,2BAAmB,EACnB,CAAC,QAAQ,EAAE,EAAE;QACX,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC/C,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC/C,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC1C,OAAO,IAAA,iBAAM,EACX,QAAQ,EACR,KAAK,EAAE,OAAO,EAAE,EAAE;YAChB,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,CAAC,WAAW;gBAAE,OAAO,IAAI,CAAA;YAC7B,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;YACzC,IAAI,IAAA,oCAAmB,EAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE;gBAC7D,OAAO,qBAAqB,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;aAC3E;YACD,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YAChD,IACE,QAAQ;gBACR,CACE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CACtC,EACD;gBACA,OAAO,IAAI,CAAA;aACZ;YACD,2CAA2C;YAC3C,8HAA8H;YAC9H,IAAI,QAAQ,IAAI,IAAA,+BAAsB,EAAC,WAAW,CAAC,EAAE,IAAI,KAAK,KAAK,EAAE;gBACnE,OAAO,IAAI,CAAA;aACZ;YACD,MAAM,SAAS,GAAG,QAAQ;gBACxB,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9C,CAAC,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,CAAA;YACpD,IAAI,CAAC,SAAS;gBAAE,OAAO,IAAI,CAAA;YAC3B,IAAI,CAAC,qBAAqB,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBACnE,sFAAsF;gBACtF,6BAA6B;gBAC7B,OAAO,IAAI,CAAA;aACZ;YACD,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,MAAM,IAAA,8CAA0B,EAAC,SAAS,CAAC,CAAA;YAC1F,MAAM,cAAc,GAAG,eAAe,CAAC,WAAW,CAAC,CAAA;YACnD,oEAAoE;YACpE,MAAM,0BAA0B,GAAG,cAAc,KAAK,GAAG,IAAI,cAAc,KAAK,GAAG,IAAI,cAAc,KAAK,GAAG;gBAC3G,SAAS,IAAI,gBAAM,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;YACnF,IAAI,QAAQ,KAAK,0BAA0B;gBAAE,OAAO,KAAK,CAAA;YACzD,OAAO,IAAI,CAAA;QACb,CAAC,CACF,CAAA;IACH,CAAC,CACF,CAAA;AACH,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAE,WAAmB,EAAE,WAAwC;IACjG,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAA;IAC9B,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAG,WAAW,CAAC,UAAkC,CAAC,SAAS,CAAC,CAAA;IACrG,MAAM,QAAQ,GAAG,MAAM,IAAA,8CAA0B,EAAC,WAAW,CAAC,CAAA;IAC9D,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3B,KAAK,MAAM,QAAQ,IAAI,mCAA2B,EAAE;QAClD,IAAI,QAAQ,KAAK,iBAAiB;YAAE,SAAQ;QAC5C,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QAC7C,MAAM,YAAY,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAA;QAEhD,iGAAiG;QACjG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE;YACrE,OAAO,KAAK,CAAA;SACb;QAED,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC/C,2GAA2G;YAC3G,uCAAuC;YACvC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;gBAC1B,OAAO,KAAK,CAAA;aACb;YACD,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;YACzC,kEAAkE;YAClE,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC;gBAAE,SAAQ;YACxH,IAAI,gBAAM,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE;gBAC1F,SAAQ;aACT;iBAAM;gBACL,OAAO,KAAK,CAAA;aACb;SACF;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,eAAe,CAAE,IAAY;IACpC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IACxD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;QAC3B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACpB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QAClC,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO,GAAG,CAAA;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAA;KACpC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,yBAAyB,CAAE,QAAyB;IAC3D,OAAO,IAAA,aAAG,EAAC,kCAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;QACvE,IAAA,aAAG,EAAC,kCAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;QACrE,IAAA,aAAG,EAAC,kCAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAA;AAC9E,CAAC"}
@@ -1,12 +0,0 @@
1
- import { PnpmError } from '@pnpm/error';
2
- import { type ErrorRelatedSources } from './ErrorRelatedSources';
3
- export type BreakingChangeErrorOptions = ErrorRelatedSources & {
4
- code: string;
5
- message: string;
6
- };
7
- export declare class BreakingChangeError extends PnpmError {
8
- relatedIssue?: number;
9
- relatedPR?: number;
10
- additionalInformation?: string;
11
- constructor(opts: BreakingChangeErrorOptions);
12
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BreakingChangeError = void 0;
4
- const error_1 = require("@pnpm/error");
5
- class BreakingChangeError extends error_1.PnpmError {
6
- constructor(opts) {
7
- super(opts.code, opts.message);
8
- this.relatedIssue = opts.relatedIssue;
9
- this.relatedPR = opts.relatedPR;
10
- this.additionalInformation = opts.additionalInformation;
11
- }
12
- }
13
- exports.BreakingChangeError = BreakingChangeError;
14
- //# sourceMappingURL=BreakingChangeError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BreakingChangeError.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/BreakingChangeError.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AAQvC,MAAa,mBAAoB,SAAQ,iBAAS;IAIhD,YAAa,IAAgC;QAC3C,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QAC/B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAA;IACzD,CAAC;CACF;AAVD,kDAUC"}
@@ -1,5 +0,0 @@
1
- export interface ErrorRelatedSources {
2
- additionalInformation?: string;
3
- relatedIssue?: number;
4
- relatedPR?: number;
5
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ErrorRelatedSources.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ErrorRelatedSources.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/ErrorRelatedSources.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- import { BreakingChangeError } from './BreakingChangeError';
2
- import { type ErrorRelatedSources } from './ErrorRelatedSources';
3
- export type ModulesBreakingChangeErrorOptions = ErrorRelatedSources & {
4
- modulesPath: string;
5
- };
6
- export declare class ModulesBreakingChangeError extends BreakingChangeError {
7
- modulesPath: string;
8
- constructor(opts: ModulesBreakingChangeErrorOptions);
9
- }
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ModulesBreakingChangeError = void 0;
4
- const BreakingChangeError_1 = require("./BreakingChangeError");
5
- class ModulesBreakingChangeError extends BreakingChangeError_1.BreakingChangeError {
6
- constructor(opts) {
7
- super({
8
- additionalInformation: opts.additionalInformation,
9
- code: 'MODULES_BREAKING_CHANGE',
10
- message: `The node_modules structure at "${opts.modulesPath}" is not compatible with the current pnpm version. Run "pnpm install --force" to recreate node_modules.`,
11
- relatedIssue: opts.relatedIssue,
12
- relatedPR: opts.relatedPR,
13
- });
14
- this.modulesPath = opts.modulesPath;
15
- }
16
- }
17
- exports.ModulesBreakingChangeError = ModulesBreakingChangeError;
18
- //# sourceMappingURL=ModulesBreakingChangeError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ModulesBreakingChangeError.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/ModulesBreakingChangeError.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAO3D,MAAa,0BAA2B,SAAQ,yCAAmB;IAEjE,YAAa,IAAuC;QAClD,KAAK,CAAC;YACJ,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,IAAI,EAAE,yBAAyB;YAC/B,OAAO,EAAE,kCAAkC,IAAI,CAAC,WAAW,yGAAyG;YACpK,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAA;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;IACrC,CAAC;CACF;AAZD,gEAYC"}
@@ -1,11 +0,0 @@
1
- import { PnpmError } from '@pnpm/error';
2
- export declare class UnexpectedStoreError extends PnpmError {
3
- expectedStorePath: string;
4
- actualStorePath: string;
5
- modulesDir: string;
6
- constructor(opts: {
7
- expectedStorePath: string;
8
- actualStorePath: string;
9
- modulesDir: string;
10
- });
11
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnexpectedStoreError = void 0;
4
- const error_1 = require("@pnpm/error");
5
- class UnexpectedStoreError extends error_1.PnpmError {
6
- constructor(opts) {
7
- super('UNEXPECTED_STORE', 'Unexpected store location');
8
- this.expectedStorePath = opts.expectedStorePath;
9
- this.actualStorePath = opts.actualStorePath;
10
- this.modulesDir = opts.modulesDir;
11
- }
12
- }
13
- exports.UnexpectedStoreError = UnexpectedStoreError;
14
- //# sourceMappingURL=UnexpectedStoreError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UnexpectedStoreError.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/UnexpectedStoreError.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AAEvC,MAAa,oBAAqB,SAAQ,iBAAS;IAIjD,YACE,IAIC;QAED,KAAK,CAAC,kBAAkB,EAAE,2BAA2B,CAAC,CAAA;QACtD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAA;QAC/C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAA;QAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IACnC,CAAC;CACF;AAhBD,oDAgBC"}
@@ -1,11 +0,0 @@
1
- import { PnpmError } from '@pnpm/error';
2
- export declare class UnexpectedVirtualStoreDirError extends PnpmError {
3
- expected: string;
4
- actual: string;
5
- modulesDir: string;
6
- constructor(opts: {
7
- expected: string;
8
- actual: string;
9
- modulesDir: string;
10
- });
11
- }
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnexpectedVirtualStoreDirError = void 0;
4
- const error_1 = require("@pnpm/error");
5
- class UnexpectedVirtualStoreDirError extends error_1.PnpmError {
6
- constructor(opts) {
7
- super('UNEXPECTED_VIRTUAL_STORE', 'Unexpected virtual store location');
8
- this.expected = opts.expected;
9
- this.actual = opts.actual;
10
- this.modulesDir = opts.modulesDir;
11
- }
12
- }
13
- exports.UnexpectedVirtualStoreDirError = UnexpectedVirtualStoreDirError;
14
- //# sourceMappingURL=UnexpectedVirtualStoreDirError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UnexpectedVirtualStoreDirError.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/UnexpectedVirtualStoreDirError.ts"],"names":[],"mappings":";;;AAAA,uCAAuC;AAEvC,MAAa,8BAA+B,SAAQ,iBAAS;IAI3D,YACE,IAIC;QAED,KAAK,CAAC,0BAA0B,EAAE,mCAAmC,CAAC,CAAA;QACtE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IACnC,CAAC;CACF;AAhBD,wEAgBC"}
@@ -1,6 +0,0 @@
1
- import { type Modules } from '@pnpm/modules-yaml';
2
- export declare function checkCompatibility(modules: Modules, opts: {
3
- storeDir: string;
4
- modulesDir: string;
5
- virtualStoreDir: string;
6
- }): void;
@@ -1,37 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.checkCompatibility = checkCompatibility;
7
- const path_1 = __importDefault(require("path"));
8
- const constants_1 = require("@pnpm/constants");
9
- const ModulesBreakingChangeError_1 = require("./ModulesBreakingChangeError");
10
- const UnexpectedStoreError_1 = require("./UnexpectedStoreError");
11
- const UnexpectedVirtualStoreDirError_1 = require("./UnexpectedVirtualStoreDirError");
12
- function checkCompatibility(modules, opts) {
13
- if (!modules.layoutVersion || modules.layoutVersion !== constants_1.LAYOUT_VERSION) {
14
- throw new ModulesBreakingChangeError_1.ModulesBreakingChangeError({
15
- modulesPath: opts.modulesDir,
16
- });
17
- }
18
- // Important: comparing paths with path.relative()
19
- // is the only way to compare paths correctly on Windows
20
- // as of Node.js 4-9
21
- // See related issue: https://github.com/pnpm/pnpm/issues/996
22
- if (!modules.storeDir || path_1.default.relative(modules.storeDir, opts.storeDir) !== '') {
23
- throw new UnexpectedStoreError_1.UnexpectedStoreError({
24
- actualStorePath: opts.storeDir,
25
- expectedStorePath: modules.storeDir,
26
- modulesDir: opts.modulesDir,
27
- });
28
- }
29
- if (modules.virtualStoreDir && path_1.default.relative(modules.virtualStoreDir, opts.virtualStoreDir) !== '') {
30
- throw new UnexpectedVirtualStoreDirError_1.UnexpectedVirtualStoreDirError({
31
- actual: opts.virtualStoreDir,
32
- expected: modules.virtualStoreDir,
33
- modulesDir: opts.modulesDir,
34
- });
35
- }
36
- }
37
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/install/checkCompatibility/index.ts"],"names":[],"mappings":";;;;;AAOA,gDA+BC;AAtCD,gDAAuB;AACvB,+CAAgD;AAEhD,6EAAyE;AACzE,iEAA6D;AAC7D,qFAAiF;AAEjF,SAAgB,kBAAkB,CAChC,OAAgB,EAChB,IAIC;IAED,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,KAAK,0BAAc,EAAE,CAAC;QACvE,MAAM,IAAI,uDAA0B,CAAC;YACnC,WAAW,EAAE,IAAI,CAAC,UAAU;SAC7B,CAAC,CAAA;IACJ,CAAC;IACD,kDAAkD;IAClD,wDAAwD;IACxD,oBAAoB;IACpB,6DAA6D;IAC7D,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;QAC/E,MAAM,IAAI,2CAAoB,CAAC;YAC7B,eAAe,EAAE,IAAI,CAAC,QAAQ;YAC9B,iBAAiB,EAAE,OAAO,CAAC,QAAQ;YACnC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,eAAe,IAAI,cAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC;QACnG,MAAM,IAAI,+DAA8B,CAAC;YACvC,MAAM,EAAE,IAAI,CAAC,eAAe;YAC5B,QAAQ,EAAE,OAAO,CAAC,eAAe;YACjC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAA;IACJ,CAAC;AACH,CAAC"}
@@ -1,5 +0,0 @@
1
- import { type PackageSnapshots } from '@pnpm/lockfile-utils';
2
- import { type PreferredVersions } from '@pnpm/resolver-base';
3
- import { type DependencyManifest, type ProjectManifest } from '@pnpm/types';
4
- export declare function getAllUniqueSpecs(manifests: DependencyManifest[]): Record<string, string>;
5
- export declare function getPreferredVersionsFromLockfileAndManifests(snapshots: PackageSnapshots | undefined, manifests: Array<DependencyManifest | ProjectManifest>): PreferredVersions;
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPreferredVersionsFromLockfileAndManifests = exports.getAllUniqueSpecs = void 0;
7
- const lockfile_utils_1 = require("@pnpm/lockfile-utils");
8
- const manifest_utils_1 = require("@pnpm/manifest-utils");
9
- const resolver_base_1 = require("@pnpm/resolver-base");
10
- const version_selector_type_1 = __importDefault(require("version-selector-type"));
11
- function getAllUniqueSpecs(manifests) {
12
- const allSpecs = {};
13
- const ignored = new Set();
14
- for (const manifest of manifests) {
15
- const specs = (0, manifest_utils_1.getAllDependenciesFromManifest)(manifest);
16
- for (const [name, spec] of Object.entries(specs)) {
17
- if (ignored.has(name))
18
- continue;
19
- if (allSpecs[name] != null && allSpecs[name] !== spec || spec.includes(':')) {
20
- ignored.add(name);
21
- delete allSpecs[name];
22
- continue;
23
- }
24
- allSpecs[name] = spec;
25
- }
26
- }
27
- return allSpecs;
28
- }
29
- exports.getAllUniqueSpecs = getAllUniqueSpecs;
30
- function getPreferredVersionsFromLockfileAndManifests(snapshots, manifests) {
31
- const preferredVersions = {};
32
- for (const manifest of manifests) {
33
- const specs = (0, manifest_utils_1.getAllDependenciesFromManifest)(manifest);
34
- for (const [name, spec] of Object.entries(specs)) {
35
- const selector = (0, version_selector_type_1.default)(spec);
36
- if (!selector)
37
- continue;
38
- preferredVersions[name] = preferredVersions[name] ?? {};
39
- preferredVersions[name][spec] = {
40
- selectorType: selector.type,
41
- weight: resolver_base_1.DIRECT_DEP_SELECTOR_WEIGHT,
42
- };
43
- }
44
- }
45
- if (!snapshots)
46
- return preferredVersions;
47
- addPreferredVersionsFromLockfile(snapshots, preferredVersions);
48
- return preferredVersions;
49
- }
50
- exports.getPreferredVersionsFromLockfileAndManifests = getPreferredVersionsFromLockfileAndManifests;
51
- function addPreferredVersionsFromLockfile(snapshots, preferredVersions) {
52
- for (const [depPath, snapshot] of Object.entries(snapshots)) {
53
- const { name, version } = (0, lockfile_utils_1.nameVerFromPkgSnapshot)(depPath, snapshot);
54
- if (!preferredVersions[name]) {
55
- preferredVersions[name] = { [version]: 'version' };
56
- }
57
- else if (!preferredVersions[name][version]) {
58
- preferredVersions[name][version] = 'version';
59
- }
60
- }
61
- }
62
- //# sourceMappingURL=getPreferredVersions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getPreferredVersions.js","sourceRoot":"","sources":["../../src/install/getPreferredVersions.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAoF;AACpF,yDAAqE;AACrE,uDAAwF;AAExF,kFAA0D;AAE1D,SAAgB,iBAAiB,CAAE,SAA+B;IAChE,MAAM,QAAQ,GAA2B,EAAE,CAAA;IAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,KAAK,GAAG,IAAA,+CAA8B,EAAC,QAAQ,CAAC,CAAA;QACtD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAChD,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAQ;YAC/B,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBAC3E,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACjB,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACrB,SAAQ;aACT;YACD,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;SACtB;KACF;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAhBD,8CAgBC;AAED,SAAgB,4CAA4C,CAC1D,SAAuC,EACvC,SAAsD;IAEtD,MAAM,iBAAiB,GAAsB,EAAE,CAAA;IAC/C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,KAAK,GAAG,IAAA,+CAA8B,EAAC,QAAQ,CAAC,CAAA;QACtD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAChD,MAAM,QAAQ,GAAG,IAAA,+BAAsB,EAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,CAAC,QAAQ;gBAAE,SAAQ;YACvB,iBAAiB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;YACvD,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG;gBAC9B,YAAY,EAAE,QAAQ,CAAC,IAAI;gBAC3B,MAAM,EAAE,0CAA0B;aACnC,CAAA;SACF;KACF;IACD,IAAI,CAAC,SAAS;QAAE,OAAO,iBAAiB,CAAA;IACxC,gCAAgC,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;IAC9D,OAAO,iBAAiB,CAAA;AAC1B,CAAC;AApBD,oGAoBC;AAED,SAAS,gCAAgC,CAAE,SAA2B,EAAE,iBAAoC;IAC1G,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC3D,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAA,uCAAsB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QACnE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;YAC5B,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAA;SACnD;aAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE;YAC5C,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;SAC7C;KACF;AACH,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const getPreferredVersions_1 = require("./getPreferredVersions");
4
- test('getAllUniqueSpecs()', () => {
5
- expect((0, getPreferredVersions_1.getAllUniqueSpecs)([
6
- {
7
- name: '',
8
- version: '',
9
- dependencies: {
10
- foo: '1.0.0',
11
- bar: '1.0.0',
12
- qar: '1.0.0',
13
- zoo: 'link:../zoo',
14
- alpha: 'npm:beta@2',
15
- },
16
- },
17
- {
18
- name: '',
19
- version: '',
20
- dependencies: {
21
- bar: '1.0.0',
22
- qar: '2.0.0',
23
- },
24
- },
25
- ])).toStrictEqual({
26
- foo: '1.0.0',
27
- bar: '1.0.0',
28
- });
29
- });
30
- //# sourceMappingURL=getPreferredVersions.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getPreferredVersions.test.js","sourceRoot":"","sources":["../../src/install/getPreferredVersions.test.ts"],"names":[],"mappings":";;AAAA,iEAA0D;AAE1D,IAAI,CAAC,qBAAqB,EAAE,GAAG,EAAE;IAC/B,MAAM,CAAC,IAAA,wCAAiB,EAAC;QACvB;YACE,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,EAAE;YACX,YAAY,EAAE;gBACZ,GAAG,EAAE,OAAO;gBACZ,GAAG,EAAE,OAAO;gBACZ,GAAG,EAAE,OAAO;gBACZ,GAAG,EAAE,aAAa;gBAClB,KAAK,EAAE,YAAY;aACpB;SACF;QACD;YACE,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,EAAE;YACX,YAAY,EAAE;gBACZ,GAAG,EAAE,OAAO;gBACZ,GAAG,EAAE,OAAO;aACb;SACF;KACF,CAAC,CAAC,CAAC,aAAa,CAAC;QAChB,GAAG,EAAE,OAAO;QACZ,GAAG,EAAE,OAAO;KACb,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,26 +0,0 @@
1
- import { type IncludedDependencies, type Modules } from '@pnpm/modules-yaml';
2
- import { type Registries, type ProjectRootDir } from '@pnpm/types';
3
- export declare function validateModules(modules: Modules, projects: Array<{
4
- modulesDir: string;
5
- id: string;
6
- rootDir: ProjectRootDir;
7
- }>, opts: {
8
- currentHoistPattern?: string[];
9
- currentPublicHoistPattern?: string[];
10
- forceNewModules: boolean;
11
- include?: IncludedDependencies;
12
- lockfileDir: string;
13
- modulesDir: string;
14
- registries: Registries;
15
- storeDir: string;
16
- virtualStoreDir: string;
17
- virtualStoreDirMaxLength: number;
18
- confirmModulesPurge?: boolean;
19
- hoistPattern?: string[] | undefined;
20
- forceHoistPattern?: boolean;
21
- publicHoistPattern?: string[] | undefined;
22
- forcePublicHoistPattern?: boolean;
23
- global?: boolean;
24
- }): Promise<{
25
- purged: boolean;
26
- }>;
@@ -1,138 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.validateModules = validateModules;
7
- const fs_1 = require("fs");
8
- const path_1 = __importDefault(require("path"));
9
- const error_1 = require("@pnpm/error");
10
- const logger_1 = require("@pnpm/logger");
11
- const types_1 = require("@pnpm/types");
12
- const rimraf_1 = __importDefault(require("@zkochan/rimraf"));
13
- const enquirer_1 = __importDefault(require("enquirer"));
14
- const equals_1 = __importDefault(require("ramda/src/equals"));
15
- const checkCompatibility_1 = require("./checkCompatibility");
16
- async function validateModules(modules, projects, opts) {
17
- const rootProject = projects.find(({ id }) => id === '.');
18
- if (opts.virtualStoreDirMaxLength !== modules.virtualStoreDirMaxLength) {
19
- if (opts.forceNewModules && (rootProject != null)) {
20
- await purgeModulesDirsOfImporter(opts, rootProject);
21
- return { purged: true };
22
- }
23
- throw new error_1.PnpmError('VIRTUAL_STORE_DIR_MAX_LENGTH_DIFF', 'This modules directory was created using a different virtual-store-dir-max-length value.' +
24
- ' Run "pnpm install" to recreate the modules directory.');
25
- }
26
- if (opts.forcePublicHoistPattern &&
27
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
28
- !(0, equals_1.default)(modules.publicHoistPattern, opts.publicHoistPattern || undefined)) {
29
- if (opts.forceNewModules && (rootProject != null)) {
30
- await purgeModulesDirsOfImporter(opts, rootProject);
31
- return { purged: true };
32
- }
33
- throw new error_1.PnpmError('PUBLIC_HOIST_PATTERN_DIFF', 'This modules directory was created using a different public-hoist-pattern value.' +
34
- ' Run "pnpm install" to recreate the modules directory.');
35
- }
36
- const importersToPurge = [];
37
- if (opts.forceHoistPattern && (rootProject != null)) {
38
- try {
39
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
40
- if (!(0, equals_1.default)(opts.currentHoistPattern, opts.hoistPattern || undefined)) {
41
- throw new error_1.PnpmError('HOIST_PATTERN_DIFF', 'This modules directory was created using a different hoist-pattern value.' +
42
- ' Run "pnpm install" to recreate the modules directory.');
43
- }
44
- }
45
- catch (err) { // eslint-disable-line
46
- if (!opts.forceNewModules)
47
- throw err;
48
- importersToPurge.push(rootProject);
49
- }
50
- }
51
- for (const project of projects) {
52
- try {
53
- (0, checkCompatibility_1.checkCompatibility)(modules, {
54
- modulesDir: project.modulesDir,
55
- storeDir: opts.storeDir,
56
- virtualStoreDir: opts.virtualStoreDir,
57
- });
58
- if (opts.lockfileDir !== project.rootDir && (opts.include != null) && modules.included) {
59
- for (const depsField of types_1.DEPENDENCIES_FIELDS) {
60
- if (opts.include[depsField] !== modules.included[depsField]) {
61
- throw new error_1.PnpmError('INCLUDED_DEPS_CONFLICT', `modules directory (at "${opts.lockfileDir}") was installed with ${stringifyIncludedDeps(modules.included)}. ` +
62
- `Current install wants ${stringifyIncludedDeps(opts.include)}.`);
63
- }
64
- }
65
- }
66
- }
67
- catch (err) { // eslint-disable-line
68
- if (!opts.forceNewModules)
69
- throw err;
70
- importersToPurge.push(project);
71
- }
72
- }
73
- if (importersToPurge.length > 0 && (rootProject == null)) {
74
- importersToPurge.push({
75
- modulesDir: path_1.default.join(opts.lockfileDir, opts.modulesDir),
76
- rootDir: opts.lockfileDir,
77
- });
78
- }
79
- const purged = importersToPurge.length > 0;
80
- if (purged) {
81
- await purgeModulesDirsOfImporters(opts, importersToPurge);
82
- }
83
- return { purged };
84
- }
85
- async function purgeModulesDirsOfImporter(opts, importer) {
86
- return purgeModulesDirsOfImporters(opts, [importer]);
87
- }
88
- async function purgeModulesDirsOfImporters(opts, importers) {
89
- if (opts.confirmModulesPurge ?? true) {
90
- const confirmed = await enquirer_1.default.prompt({
91
- type: 'confirm',
92
- name: 'question',
93
- message: importers.length === 1
94
- ? `The modules directory at "${importers[0].modulesDir}" will be removed and reinstalled from scratch. Proceed?`
95
- : 'The modules directories will be removed and reinstalled from scratch. Proceed?',
96
- initial: true,
97
- });
98
- if (!confirmed.question) {
99
- throw new error_1.PnpmError('ABORTED_REMOVE_MODULES_DIR', 'Aborted removal of modules directory');
100
- }
101
- }
102
- await Promise.all(importers.map(async (importer) => {
103
- logger_1.logger.info({
104
- message: `Recreating ${importer.modulesDir}`,
105
- prefix: importer.rootDir,
106
- });
107
- try {
108
- // We don't remove the actual modules directory, just the contents of it.
109
- // 1. we will need the directory anyway.
110
- // 2. in some setups, pnpm won't even have permission to remove the modules directory.
111
- await removeContentsOfDir(importer.modulesDir, opts.virtualStoreDir);
112
- }
113
- catch (err) { // eslint-disable-line
114
- if (err.code !== 'ENOENT')
115
- throw err;
116
- }
117
- }));
118
- }
119
- async function removeContentsOfDir(dir, virtualStoreDir) {
120
- const items = await fs_1.promises.readdir(dir);
121
- await Promise.all(items.map(async (item) => {
122
- // The non-pnpm related hidden files are kept
123
- if (item.startsWith('.') &&
124
- item !== '.bin' &&
125
- item !== '.modules.yaml' &&
126
- !dirsAreEqual(path_1.default.join(dir, item), virtualStoreDir)) {
127
- return;
128
- }
129
- await (0, rimraf_1.default)(path_1.default.join(dir, item));
130
- }));
131
- }
132
- function dirsAreEqual(dir1, dir2) {
133
- return path_1.default.relative(dir1, dir2) === '';
134
- }
135
- function stringifyIncludedDeps(included) {
136
- return types_1.DEPENDENCIES_FIELDS.filter((depsField) => included[depsField]).join(', ');
137
- }
138
- //# sourceMappingURL=validateModules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateModules.js","sourceRoot":"","sources":["../../src/install/validateModules.ts"],"names":[],"mappings":";;;;;AAuBA,0CA4GC;AAnID,2BAAmC;AACnC,gDAAuB;AACvB,uCAAuC;AACvC,yCAAqC;AAKrC,uCAIoB;AACpB,6DAAoC;AACpC,wDAA+B;AAC/B,8DAAqC;AACrC,6DAAyD;AAOlD,KAAK,UAAU,eAAe,CACnC,OAAgB,EAChB,QAIE,EACF,IAmBC;IAED,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAA;IACzD,IAAI,IAAI,CAAC,wBAAwB,KAAK,OAAO,CAAC,wBAAwB,EAAE,CAAC;QACvE,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;YAClD,MAAM,0BAA0B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;YACnD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QACzB,CAAC;QACD,MAAM,IAAI,iBAAS,CACjB,mCAAmC,EACnC,0FAA0F;YAC1F,wDAAwD,CACzD,CAAA;IACH,CAAC;IACD,IACE,IAAI,CAAC,uBAAuB;QAC5B,wEAAwE;QACxE,CAAC,IAAA,gBAAM,EAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,SAAS,CAAC,EACzE,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;YAClD,MAAM,0BAA0B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;YACnD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QACzB,CAAC;QACD,MAAM,IAAI,iBAAS,CACjB,2BAA2B,EAC3B,kFAAkF;YAClF,wDAAwD,CACzD,CAAA;IACH,CAAC;IAED,MAAM,gBAAgB,GAAsB,EAAE,CAAA;IAE9C,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC;YACH,wEAAwE;YACxE,IAAI,CAAC,IAAA,gBAAM,EAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,iBAAS,CACjB,oBAAoB,EACpB,2EAA2E;oBAC3E,wDAAwD,CACzD,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC,CAAC,sBAAsB;YACzC,IAAI,CAAC,IAAI,CAAC,eAAe;gBAAE,MAAM,GAAG,CAAA;YACpC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACpC,CAAC;IACH,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,IAAA,uCAAkB,EAAC,OAAO,EAAE;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC,CAAC,CAAA;YACF,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACvF,KAAK,MAAM,SAAS,IAAI,2BAAmB,EAAE,CAAC;oBAC5C,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC5D,MAAM,IAAI,iBAAS,CAAC,wBAAwB,EAC1C,0BAA0B,IAAI,CAAC,WAAW,yBAAyB,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI;4BAC9G,yBAAyB,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAChE,CAAA;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC,CAAC,sBAAsB;YACzC,IAAI,CAAC,IAAI,CAAC,eAAe;gBAAE,MAAM,GAAG,CAAA;YACpC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;QACzD,gBAAgB,CAAC,IAAI,CAAC;YACpB,UAAU,EAAE,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC;YACxD,OAAO,EAAE,IAAI,CAAC,WAA6B;SAC5C,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAA;IAC1C,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,2BAA2B,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAC3D,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAA;AACnB,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,IAGC,EACD,QAAyB;IAEzB,OAAO,2BAA2B,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;AACtD,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,IAGC,EACD,SAA4B;IAE5B,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,MAAM,kBAAQ,CAAC,MAAM,CAAwB;YAC7D,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,SAAS,CAAC,MAAM,KAAK,CAAC;gBAC7B,CAAC,CAAC,6BAA6B,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,0DAA0D;gBAChH,CAAC,CAAC,gFAAgF;YACpF,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YACxB,MAAM,IAAI,iBAAS,CAAC,4BAA4B,EAAE,sCAAsC,CAAC,CAAA;QAC3F,CAAC;IACH,CAAC;IACD,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACjD,eAAM,CAAC,IAAI,CAAC;YACV,OAAO,EAAE,cAAc,QAAQ,CAAC,UAAU,EAAE;YAC5C,MAAM,EAAE,QAAQ,CAAC,OAAO;SACzB,CAAC,CAAA;QACF,IAAI,CAAC;YACH,yEAAyE;YACzE,wCAAwC;YACxC,sFAAsF;YACtF,MAAM,mBAAmB,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAA;QACtE,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC,CAAC,sBAAsB;YACzC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,GAAG,CAAA;QACtC,CAAC;IACH,CAAC,CAAC,CAAC,CAAA;AACL,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAE,GAAW,EAAE,eAAuB;IACtE,MAAM,KAAK,GAAG,MAAM,aAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACzC,6CAA6C;QAC7C,IACE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YACpB,IAAI,KAAK,MAAM;YACf,IAAI,KAAK,eAAe;YACxB,CAAC,YAAY,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,eAAe,CAAC,EACpD,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,IAAA,gBAAM,EAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;IACpC,CAAC,CAAC,CAAC,CAAA;AACL,CAAC;AAED,SAAS,YAAY,CAAE,IAAY,EAAE,IAAY;IAC/C,OAAO,cAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAA;AACzC,CAAC;AAED,SAAS,qBAAqB,CAAE,QAA8B;IAC5D,OAAO,2BAAmB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAClF,CAAC"}