@pnpm/installing.commands 1100.5.0 → 1100.7.0
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.
- package/lib/add.js +1 -0
- package/lib/install.d.ts +2 -1
- package/lib/install.js +6 -0
- package/lib/policyHandlers.js +15 -9
- package/lib/recursive.d.ts +1 -1
- package/lib/update/getUpdateChoices.d.ts +1 -0
- package/lib/update/getUpdateChoices.js +1 -0
- package/lib/update/index.js +49 -57
- package/package.json +47 -47
package/lib/add.js
CHANGED
package/lib/install.d.ts
CHANGED
|
@@ -7,13 +7,14 @@ export declare const shorthands: Record<string, string>;
|
|
|
7
7
|
export declare const commandNames: string[];
|
|
8
8
|
export declare const recursiveByDefault = true;
|
|
9
9
|
export declare function help(): string;
|
|
10
|
-
export type InstallCommandOptions = Pick<Config, 'autoInstallPeers' | 'bail' | 'bin' | 'catalogs' | 'configDependencies' | 'dedupeInjectedDeps' | 'dedupeDirectDeps' | 'dedupePeerDependents' | 'dedupePeers' | 'deployAllFiles' | 'depth' | 'dev' | 'enableGlobalVirtualStore' | 'engineStrict' | 'excludeLinksFromLockfile' | 'frozenLockfile' | 'global' | 'globalPnpmfile' | 'hoistPattern' | 'publicHoistPattern' | 'ignorePnpmfile' | 'ignoreScripts' | 'injectWorkspacePackages' | 'linkWorkspacePackages' | 'lockfileDir' | 'lockfileOnly' | 'modulesDir' | 'nodeLinker' | 'patchedDependencies' | 'preferFrozenLockfile' | 'preferWorkspacePackages' | 'production' | 'registries' | 'save' | 'saveDev' | 'saveExact' | 'saveOptional' | 'savePeer' | 'savePrefix' | 'saveProd' | 'saveCatalogName' | 'saveWorkspaceProtocol' | 'lockfileIncludeTarballUrl' | 'sideEffectsCache' | 'sideEffectsCacheReadonly' | 'sort' | 'sharedWorkspaceLockfile' | 'tag' | 'trustLockfile' | 'allowBuilds' | 'optional' | 'virtualStoreDir' | 'workspaceConcurrency' | 'workspaceDir' | 'workspacePackagePatterns' | 'extraEnv' | 'resolutionMode' | 'ignoreWorkspaceCycles' | 'disallowWorkspaceCycles' | 'updateConfig' | 'overrides' | 'packageExtensions' | 'agent' | 'supportedArchitectures' | 'packageConfigs'> & Pick<ConfigContext, 'allProjects' | 'cliOptions' | 'hooks' | 'rootProjectManifest' | 'rootProjectManifestDir' | 'allProjectsGraph' | 'selectedProjectsGraph'> & CreateStoreControllerOptions & Partial<Pick<Config, 'globalPkgDir'>> & {
|
|
10
|
+
export type InstallCommandOptions = Pick<Config, 'autoInstallPeers' | 'bail' | 'bin' | 'catalogs' | 'configDependencies' | 'dedupeInjectedDeps' | 'dedupeDirectDeps' | 'dedupePeerDependents' | 'dedupePeers' | 'deployAllFiles' | 'depth' | 'dev' | 'enableGlobalVirtualStore' | 'engineStrict' | 'excludeLinksFromLockfile' | 'frozenLockfile' | 'global' | 'globalPnpmfile' | 'hoistPattern' | 'hoistingLimits' | 'publicHoistPattern' | 'ignorePnpmfile' | 'ignoreScripts' | 'injectWorkspacePackages' | 'linkWorkspacePackages' | 'lockfileDir' | 'lockfileOnly' | 'modulesDir' | 'nodeLinker' | 'patchedDependencies' | 'preferFrozenLockfile' | 'preferWorkspacePackages' | 'production' | 'registries' | 'save' | 'saveDev' | 'saveExact' | 'saveOptional' | 'savePeer' | 'savePrefix' | 'saveProd' | 'saveCatalogName' | 'saveWorkspaceProtocol' | 'lockfileIncludeTarballUrl' | 'sideEffectsCache' | 'sideEffectsCacheReadonly' | 'sort' | 'sharedWorkspaceLockfile' | 'tag' | 'trustLockfile' | 'allowBuilds' | 'optional' | 'virtualStoreDir' | 'workspaceConcurrency' | 'workspaceDir' | 'workspacePackagePatterns' | 'extraEnv' | 'resolutionMode' | 'ignoreWorkspaceCycles' | 'disallowWorkspaceCycles' | 'updateConfig' | 'overrides' | 'packageExtensions' | 'agent' | 'supportedArchitectures' | 'packageConfigs'> & Pick<ConfigContext, 'allProjects' | 'cliOptions' | 'hooks' | 'rootProjectManifest' | 'rootProjectManifestDir' | 'allProjectsGraph' | 'selectedProjectsGraph'> & CreateStoreControllerOptions & Partial<Pick<Config, 'globalPkgDir'>> & {
|
|
11
11
|
argv: {
|
|
12
12
|
cooked?: string[];
|
|
13
13
|
original: string[];
|
|
14
14
|
remain?: string[];
|
|
15
15
|
};
|
|
16
16
|
fixLockfile?: boolean;
|
|
17
|
+
updateChecksums?: boolean;
|
|
17
18
|
frozenLockfileIfExists?: boolean;
|
|
18
19
|
useBetaCli?: boolean;
|
|
19
20
|
pruneDirectDependencies?: boolean;
|
package/lib/install.js
CHANGED
|
@@ -26,6 +26,7 @@ export function rcOptionsTypes() {
|
|
|
26
26
|
'global',
|
|
27
27
|
'hoist',
|
|
28
28
|
'hoist-pattern',
|
|
29
|
+
'hoisting-limits',
|
|
29
30
|
'https-proxy',
|
|
30
31
|
'ignore-pnpmfile',
|
|
31
32
|
'ignore-scripts',
|
|
@@ -78,6 +79,7 @@ export const cliOptionsTypes = () => ({
|
|
|
78
79
|
...rcOptionsTypes(),
|
|
79
80
|
...pick(['force'], allTypes),
|
|
80
81
|
'fix-lockfile': Boolean,
|
|
82
|
+
'update-checksums': Boolean,
|
|
81
83
|
'resolution-only': Boolean,
|
|
82
84
|
recursive: Boolean,
|
|
83
85
|
// `--no-save` lets `pnpm install` skip writing to package.json /
|
|
@@ -157,6 +159,10 @@ For options that may be used with `-r`, see "pnpm help recursive"',
|
|
|
157
159
|
description: 'Fix broken lockfile entries automatically',
|
|
158
160
|
name: '--fix-lockfile',
|
|
159
161
|
},
|
|
162
|
+
{
|
|
163
|
+
description: 'Refresh integrity checksums recorded in the lockfile from the registry',
|
|
164
|
+
name: '--update-checksums',
|
|
165
|
+
},
|
|
160
166
|
{
|
|
161
167
|
description: 'Merge lockfiles were generated on git branch',
|
|
162
168
|
name: '--merge-git-branch-lockfiles',
|
package/lib/policyHandlers.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { confirm } from '@inquirer/prompts';
|
|
1
2
|
import { PnpmError } from '@pnpm/error';
|
|
2
3
|
import { globalInfo } from '@pnpm/logger';
|
|
3
4
|
import { MINIMUM_RELEASE_AGE_VIOLATION_CODE } from '@pnpm/resolving.npm-resolver';
|
|
4
5
|
import { isCI } from 'ci-info';
|
|
5
|
-
import enquirer from 'enquirer';
|
|
6
6
|
/**
|
|
7
7
|
* Composes the per-policy handlers the install command needs for the
|
|
8
8
|
* current opts. Returns `undefined` only when no handler reports
|
|
@@ -127,7 +127,7 @@ function pickImmatureEntries(violations, promptRequired) {
|
|
|
127
127
|
// the discovery notice.
|
|
128
128
|
const reason = promptRequired
|
|
129
129
|
? '(approved at the prompt)'
|
|
130
|
-
: '(
|
|
130
|
+
: '(set minimumReleaseAgeStrict to true to gate these updates with a prompt)';
|
|
131
131
|
globalInfo(`Added ${sorted.length} ${sorted.length === 1 ? 'entry' : 'entries'} to minimumReleaseAgeExclude in pnpm-workspace.yaml ` +
|
|
132
132
|
`${reason}:\n ${sorted.join('\n ')}`);
|
|
133
133
|
return sorted;
|
|
@@ -146,13 +146,19 @@ async function promptForApproval(immature) {
|
|
|
146
146
|
const message = `${sorted.length} ${sorted.length === 1 ? 'version does' : 'versions do'} not meet the minimumReleaseAge constraint:\n` +
|
|
147
147
|
sorted.map((v) => ` ${v.name}@${v.version}`).join('\n') + '\n' +
|
|
148
148
|
'Add to minimumReleaseAgeExclude in pnpm-workspace.yaml and proceed with the install?';
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
149
|
+
let confirmed;
|
|
150
|
+
try {
|
|
151
|
+
confirmed = await confirm({ message, default: false });
|
|
152
|
+
}
|
|
153
|
+
catch (err) {
|
|
154
|
+
if (err instanceof Error && err.name === 'ExitPromptError') {
|
|
155
|
+
confirmed = false;
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
throw err;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
if (!confirmed) {
|
|
156
162
|
throw new PnpmError('MINIMUM_RELEASE_AGE_DENIED', 'Aborted: the immature versions were not approved.', {
|
|
157
163
|
hint: 'Re-run the install without `minimumReleaseAgeStrict: true` to allow these versions, ' +
|
|
158
164
|
'or wait for the packages to mature past the configured cutoff.',
|
package/lib/recursive.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { ResolutionVerifier } from '@pnpm/resolving.resolver-base';
|
|
|
6
6
|
import { type CreateStoreControllerOptions } from '@pnpm/store.connection-manager';
|
|
7
7
|
import type { StoreController } from '@pnpm/store.controller';
|
|
8
8
|
import type { IncludedDependencies, Project, ProjectManifest, ProjectsGraph } from '@pnpm/types';
|
|
9
|
-
export type RecursiveOptions = CreateStoreControllerOptions & Pick<Config, 'bail' | 'configDependencies' | 'dedupePeerDependents' | 'dedupePeers' | 'depth' | 'globalPnpmfile' | 'hoistPattern' | 'ignorePnpmfile' | 'ignoreScripts' | 'linkWorkspacePackages' | 'lockfileDir' | 'lockfileOnly' | 'modulesDir' | 'agent' | 'allowBuilds' | 'registries' | 'runtime' | 'save' | 'saveCatalogName' | 'saveDev' | 'saveExact' | 'saveOptional' | 'savePeer' | 'savePrefix' | 'saveProd' | 'saveWorkspaceProtocol' | 'lockfileIncludeTarballUrl' | 'sharedWorkspaceLockfile' | 'tag' | 'trustLockfile' | 'cleanupUnusedCatalogs' | 'packageConfigs' | 'updateConfig'> & Pick<ConfigContext, 'hooks' | 'rootProjectManifest' | 'rootProjectManifestDir'> & {
|
|
9
|
+
export type RecursiveOptions = CreateStoreControllerOptions & Pick<Config, 'bail' | 'configDependencies' | 'dedupePeerDependents' | 'dedupePeers' | 'depth' | 'globalPnpmfile' | 'hoistPattern' | 'hoistingLimits' | 'ignorePnpmfile' | 'ignoreScripts' | 'linkWorkspacePackages' | 'lockfileDir' | 'lockfileOnly' | 'modulesDir' | 'agent' | 'allowBuilds' | 'registries' | 'runtime' | 'save' | 'saveCatalogName' | 'saveDev' | 'saveExact' | 'saveOptional' | 'savePeer' | 'savePrefix' | 'saveProd' | 'saveWorkspaceProtocol' | 'lockfileIncludeTarballUrl' | 'sharedWorkspaceLockfile' | 'tag' | 'trustLockfile' | 'cleanupUnusedCatalogs' | 'packageConfigs' | 'updateConfig'> & Pick<ConfigContext, 'hooks' | 'rootProjectManifest' | 'rootProjectManifestDir'> & {
|
|
10
10
|
rebuildHandler?: CommandHandler;
|
|
11
11
|
include?: IncludedDependencies;
|
|
12
12
|
includeDirect?: IncludedDependencies;
|
package/lib/update/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { checkbox, Separator } from '@inquirer/prompts';
|
|
1
2
|
import { FILTERING, OPTIONS, UNIVERSAL_OPTIONS } from '@pnpm/cli.common-cli-options-help';
|
|
2
|
-
import { docsUrl, readDepNameCompletions, readProjectManifestOnly, } from '@pnpm/cli.utils';
|
|
3
|
+
import { docsUrl, interactivePromptPageSize, readDepNameCompletions, readProjectManifestOnly, } from '@pnpm/cli.utils';
|
|
3
4
|
import { createMatcher } from '@pnpm/config.matcher';
|
|
4
5
|
import { types as allTypes } from '@pnpm/config.reader';
|
|
5
6
|
import { outdatedDepsOfProjects } from '@pnpm/deps.inspection.outdated';
|
|
@@ -7,8 +8,7 @@ import { PnpmError } from '@pnpm/error';
|
|
|
7
8
|
import { handleGlobalUpdate } from '@pnpm/global.commands';
|
|
8
9
|
import { globalInfo } from '@pnpm/logger';
|
|
9
10
|
import chalk from 'chalk';
|
|
10
|
-
import
|
|
11
|
-
import { pick, pluck, unnest } from 'ramda';
|
|
11
|
+
import { pick, unnest } from 'ramda';
|
|
12
12
|
import { renderHelp } from 'render-help';
|
|
13
13
|
import { installDeps } from '../installDeps.js';
|
|
14
14
|
import { parseUpdateParam } from '../recursive.js';
|
|
@@ -187,69 +187,61 @@ async function interactiveUpdate(input, opts, rebuildHandler) {
|
|
|
187
187
|
timeout: opts.fetchTimeout,
|
|
188
188
|
});
|
|
189
189
|
const workspacesEnabled = !!opts.workspaceDir;
|
|
190
|
-
const
|
|
191
|
-
if (
|
|
190
|
+
const choiceGroups = getUpdateChoices(unnest(outdatedPkgsOfProjects), workspacesEnabled);
|
|
191
|
+
if (choiceGroups.length === 0) {
|
|
192
192
|
if (opts.latest) {
|
|
193
193
|
return 'All of your dependencies are already up to date';
|
|
194
194
|
}
|
|
195
195
|
return 'All of your dependencies are already up to date inside the specified ranges. Use the --latest option to update the ranges in package.json';
|
|
196
196
|
}
|
|
197
|
-
const
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
message: 'Choose which packages to update ' +
|
|
204
|
-
`(Press ${chalk.cyan('<space>')} to select, ` +
|
|
205
|
-
`${chalk.cyan('<a>')} to toggle all, ` +
|
|
206
|
-
`${chalk.cyan('<i>')} to invert selection)`,
|
|
207
|
-
name: 'updateDependencies',
|
|
208
|
-
pointer: '❯',
|
|
209
|
-
result() {
|
|
210
|
-
return this.selected;
|
|
211
|
-
},
|
|
212
|
-
format() {
|
|
213
|
-
if (!this.state.submitted || this.state.cancelled)
|
|
214
|
-
return '';
|
|
215
|
-
if (Array.isArray(this.selected)) {
|
|
216
|
-
return this.selected
|
|
217
|
-
// The custom format function is used to filter out "[dependencies]" or "[devDependencies]" from the output.
|
|
218
|
-
// https://github.com/enquirer/enquirer/blob/master/lib/prompts/select.js#L98
|
|
219
|
-
.filter((choice) => !/^\[.+\]$/.test(choice.name))
|
|
220
|
-
.map((choice) => this.styles.primary(choice.name)).join(', ');
|
|
197
|
+
const flatChoices = [];
|
|
198
|
+
for (const group of choiceGroups) {
|
|
199
|
+
flatChoices.push(new Separator(chalk.bold(`── ${group.message} ──`)));
|
|
200
|
+
for (const choice of group.choices) {
|
|
201
|
+
if (choice.disabled) {
|
|
202
|
+
flatChoices.push(new Separator(` ${choice.message ?? choice.name}`));
|
|
221
203
|
}
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
success: chalk.reset,
|
|
228
|
-
},
|
|
229
|
-
type: 'multiselect',
|
|
230
|
-
validate(value) {
|
|
231
|
-
if (value.length === 0) {
|
|
232
|
-
return 'You must choose at least one package.';
|
|
204
|
+
else {
|
|
205
|
+
flatChoices.push({
|
|
206
|
+
name: choice.message,
|
|
207
|
+
value: choice.value,
|
|
208
|
+
});
|
|
233
209
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
const message = 'Choose which packages to update ' +
|
|
213
|
+
`(Press ${chalk.cyan('<space>')} to select, ` +
|
|
214
|
+
`${chalk.cyan('<a>')} to toggle all, ` +
|
|
215
|
+
`${chalk.cyan('<i>')} to invert selection)\n\nEnter to start updating. Ctrl-c to cancel.`;
|
|
216
|
+
let updatePkgNames;
|
|
217
|
+
try {
|
|
218
|
+
updatePkgNames = await checkbox({
|
|
219
|
+
choices: flatChoices,
|
|
220
|
+
pageSize: interactivePromptPageSize(),
|
|
221
|
+
message,
|
|
222
|
+
required: true,
|
|
223
|
+
validate: (values) => {
|
|
224
|
+
if (values.length === 0) {
|
|
225
|
+
return 'You must choose at least one package.';
|
|
226
|
+
}
|
|
227
|
+
return true;
|
|
228
|
+
},
|
|
229
|
+
theme: {
|
|
230
|
+
icon: { checked: '●', unchecked: '○', cursor: '❯' },
|
|
231
|
+
style: {
|
|
232
|
+
highlight: (text) => text,
|
|
233
|
+
},
|
|
234
|
+
keybindings: ['vim'],
|
|
235
|
+
},
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
catch (err) {
|
|
239
|
+
if (err instanceof Error && err.name === 'ExitPromptError') {
|
|
248
240
|
globalInfo('Update canceled');
|
|
249
241
|
process.exit(0);
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
|
|
242
|
+
}
|
|
243
|
+
throw err;
|
|
244
|
+
}
|
|
253
245
|
return update(updatePkgNames, opts, rebuildHandler);
|
|
254
246
|
}
|
|
255
247
|
async function update(dependencies, opts, rebuildHandler) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnpm/installing.commands",
|
|
3
|
-
"version": "1100.
|
|
3
|
+
"version": "1100.7.0",
|
|
4
4
|
"description": "Commands for installation",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pnpm",
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"!*.map"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
+
"@inquirer/prompts": "^8.4.3",
|
|
27
28
|
"@pnpm/colorize-semver-diff": "^2.0.0",
|
|
28
29
|
"@pnpm/semver-diff": "^2.0.0",
|
|
29
30
|
"@pnpm/util.lex-comparator": "^3.0.2",
|
|
@@ -32,72 +33,70 @@
|
|
|
32
33
|
"@yarnpkg/parsers": "3.0.3",
|
|
33
34
|
"@zkochan/rimraf": "^4.0.0",
|
|
34
35
|
"@zkochan/table": "^2.0.1",
|
|
35
|
-
"chalk": "^5.6.
|
|
36
|
-
"ci-info": "^4.
|
|
37
|
-
"enquirer": "^2.4.1",
|
|
36
|
+
"chalk": "^5.6.2",
|
|
37
|
+
"ci-info": "^4.4.0",
|
|
38
38
|
"get-npm-tarball-url": "^2.1.0",
|
|
39
39
|
"is-subdir": "^2.0.0",
|
|
40
40
|
"load-json-file": "^7.0.1",
|
|
41
41
|
"normalize-path": "^3.0.0",
|
|
42
42
|
"p-filter": "^4.1.0",
|
|
43
|
-
"p-limit": "^7.
|
|
43
|
+
"p-limit": "^7.3.0",
|
|
44
44
|
"ramda": "npm:@pnpm/ramda@0.28.1",
|
|
45
45
|
"render-help": "^2.0.0",
|
|
46
46
|
"version-selector-type": "^3.0.0",
|
|
47
|
-
"@pnpm/building.after-install": "1101.0.
|
|
47
|
+
"@pnpm/building.after-install": "1101.0.18",
|
|
48
48
|
"@pnpm/catalogs.types": "1100.0.0",
|
|
49
49
|
"@pnpm/cli.command": "1100.0.1",
|
|
50
|
-
"@pnpm/cli.utils": "1101.0.7",
|
|
51
50
|
"@pnpm/cli.common-cli-options-help": "1100.0.1",
|
|
51
|
+
"@pnpm/cli.utils": "1101.0.8",
|
|
52
52
|
"@pnpm/config.matcher": "1100.0.1",
|
|
53
|
-
"@pnpm/config.pick-registry-for-package": "1100.0.
|
|
54
|
-
"@pnpm/config.reader": "1101.
|
|
53
|
+
"@pnpm/config.pick-registry-for-package": "1100.0.6",
|
|
54
|
+
"@pnpm/config.reader": "1101.5.0",
|
|
55
|
+
"@pnpm/config.writer": "1100.0.10",
|
|
55
56
|
"@pnpm/constants": "1100.0.0",
|
|
56
|
-
"@pnpm/
|
|
57
|
+
"@pnpm/deps.inspection.outdated": "1100.1.4",
|
|
58
|
+
"@pnpm/deps.path": "1100.0.5",
|
|
59
|
+
"@pnpm/deps.status": "1100.0.20",
|
|
57
60
|
"@pnpm/error": "1100.0.0",
|
|
58
|
-
"@pnpm/deps.inspection.outdated": "1100.1.2",
|
|
59
61
|
"@pnpm/fs.graceful-fs": "1100.1.0",
|
|
60
62
|
"@pnpm/fs.read-modules-dir": "1100.0.1",
|
|
61
|
-
"@pnpm/
|
|
62
|
-
"@pnpm/
|
|
63
|
-
"@pnpm/
|
|
64
|
-
"@pnpm/
|
|
65
|
-
"@pnpm/installing.
|
|
66
|
-
"@pnpm/installing.
|
|
67
|
-
"@pnpm/
|
|
68
|
-
"@pnpm/
|
|
69
|
-
"@pnpm/
|
|
70
|
-
"@pnpm/
|
|
71
|
-
"@pnpm/pkg-manifest.utils": "1100.2.0",
|
|
72
|
-
"@pnpm/resolving.npm-resolver": "1101.3.2",
|
|
63
|
+
"@pnpm/hooks.pnpmfile": "1100.0.11",
|
|
64
|
+
"@pnpm/global.commands": "1100.0.23",
|
|
65
|
+
"@pnpm/installing.context": "1100.0.14",
|
|
66
|
+
"@pnpm/installing.dedupe.check": "1100.0.8",
|
|
67
|
+
"@pnpm/installing.deps-installer": "1101.6.0",
|
|
68
|
+
"@pnpm/installing.env-installer": "1101.1.4",
|
|
69
|
+
"@pnpm/lockfile.types": "1100.0.8",
|
|
70
|
+
"@pnpm/pkg-manifest.reader": "1100.0.5",
|
|
71
|
+
"@pnpm/pkg-manifest.utils": "1100.2.1",
|
|
72
|
+
"@pnpm/resolving.npm-resolver": "1101.4.0",
|
|
73
73
|
"@pnpm/resolving.parse-wanted-dependency": "1100.0.1",
|
|
74
|
-
"@pnpm/resolving.resolver-base": "1100.3.
|
|
75
|
-
"@pnpm/store.connection-manager": "1100.2.
|
|
76
|
-
"@pnpm/store.controller": "1101.0.
|
|
77
|
-
"@pnpm/types": "1101.
|
|
78
|
-
"@pnpm/workspace.project-manifest-reader": "1100.0.
|
|
79
|
-
"@pnpm/workspace.project-manifest-writer": "1100.0.
|
|
80
|
-
"@pnpm/workspace.projects-filter": "1100.0.
|
|
81
|
-
"@pnpm/workspace.projects-
|
|
82
|
-
"@pnpm/workspace.projects-
|
|
83
|
-
"@pnpm/workspace.projects-
|
|
84
|
-
"@pnpm/workspace.
|
|
85
|
-
"@pnpm/workspace.
|
|
86
|
-
"@pnpm/workspace.
|
|
74
|
+
"@pnpm/resolving.resolver-base": "1100.3.1",
|
|
75
|
+
"@pnpm/store.connection-manager": "1100.2.5",
|
|
76
|
+
"@pnpm/store.controller": "1101.0.10",
|
|
77
|
+
"@pnpm/types": "1101.2.0",
|
|
78
|
+
"@pnpm/workspace.project-manifest-reader": "1100.0.9",
|
|
79
|
+
"@pnpm/workspace.project-manifest-writer": "1100.0.5",
|
|
80
|
+
"@pnpm/workspace.projects-filter": "1100.0.17",
|
|
81
|
+
"@pnpm/workspace.projects-graph": "1100.0.14",
|
|
82
|
+
"@pnpm/workspace.projects-reader": "1101.0.8",
|
|
83
|
+
"@pnpm/workspace.projects-sorter": "1100.0.4",
|
|
84
|
+
"@pnpm/workspace.root-finder": "1100.0.1",
|
|
85
|
+
"@pnpm/workspace.state": "1100.0.17",
|
|
86
|
+
"@pnpm/workspace.workspace-manifest-writer": "1100.0.10"
|
|
87
87
|
},
|
|
88
88
|
"peerDependencies": {
|
|
89
|
-
"@pnpm/logger": "
|
|
89
|
+
"@pnpm/logger": "^1001.0.1"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|
|
92
92
|
"@jest/globals": "30.3.0",
|
|
93
|
-
"@pnpm/registry-mock": "6.0.0",
|
|
94
93
|
"@types/normalize-path": "^3.0.2",
|
|
95
94
|
"@types/proxyquire": "^1.3.31",
|
|
96
95
|
"@types/ramda": "0.31.1",
|
|
97
96
|
"@types/yarnpkg__lockfile": "^1.1.9",
|
|
98
97
|
"@types/zkochan__table": "npm:@types/table@6.0.0",
|
|
99
98
|
"delay": "^7.0.0",
|
|
100
|
-
"jest-diff": "^30.
|
|
99
|
+
"jest-diff": "^30.4.1",
|
|
101
100
|
"path-name": "^1.0.0",
|
|
102
101
|
"proxyquire": "^2.1.3",
|
|
103
102
|
"read-yaml-file": "^3.0.0",
|
|
@@ -106,18 +105,19 @@
|
|
|
106
105
|
"write-json-file": "^7.0.0",
|
|
107
106
|
"write-package": "7.2.0",
|
|
108
107
|
"write-yaml-file": "^6.0.0",
|
|
109
|
-
"@pnpm/assert-project": "1100.0.
|
|
110
|
-
"@pnpm/installing.commands": "1100.
|
|
108
|
+
"@pnpm/assert-project": "1100.0.12",
|
|
109
|
+
"@pnpm/installing.commands": "1100.7.0",
|
|
110
|
+
"@pnpm/installing.modules-yaml": "1100.0.6",
|
|
111
111
|
"@pnpm/logger": "1100.0.0",
|
|
112
|
-
"@pnpm/prepare": "1100.0.
|
|
113
|
-
"@pnpm/installing.modules-yaml": "1100.0.5",
|
|
112
|
+
"@pnpm/prepare": "1100.0.12",
|
|
114
113
|
"@pnpm/store.index": "1100.1.0",
|
|
115
114
|
"@pnpm/test-fixtures": "1100.0.0",
|
|
116
115
|
"@pnpm/test-ipc-server": "1100.0.0",
|
|
117
|
-
"@pnpm/testing.command-defaults": "1100.0.
|
|
118
|
-
"@pnpm/testing.mock-agent": "1100.0.
|
|
119
|
-
"@pnpm/
|
|
120
|
-
"@pnpm/
|
|
116
|
+
"@pnpm/testing.command-defaults": "1100.0.2",
|
|
117
|
+
"@pnpm/testing.mock-agent": "1100.0.8",
|
|
118
|
+
"@pnpm/testing.registry-mock": "1100.0.2",
|
|
119
|
+
"@pnpm/worker": "1100.1.8",
|
|
120
|
+
"@pnpm/workspace.projects-filter": "1100.0.17"
|
|
121
121
|
},
|
|
122
122
|
"engines": {
|
|
123
123
|
"node": ">=22.13"
|