From 53b92ff2ba255fa775497ff991ca3bc3416549ee Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Sun, 22 May 2022 03:19:40 +0300 Subject: [PATCH 1/2] fix: auto install of peer dependencies (#4776) close #4684 --- .changeset/chilly-seahorses-visit.md | 6 + .changeset/forty-fireants-fail.md | 5 + .changeset/giant-mice-bathe.md | 6 + .changeset/quick-suits-yell.md | 5 + package.json | 6 +- packages/core/package.json | 2 +- .../core/src/install/extendInstallOptions.ts | 2 + packages/core/src/install/index.ts | 1 + .../core/test/install/autoInstallPeers.ts | 37 +++++ .../core/test/install/peerDependencies.ts | 2 +- packages/default-reporter/src/reportError.ts | 15 ++- packages/headless/package.json | 2 +- packages/package-requester/package.json | 2 +- .../plugin-commands-installation/package.json | 2 +- .../src/installDeps.ts | 21 +-- .../plugin-commands-installation/test/add.ts | 10 +- packages/plugin-commands-listing/package.json | 2 +- .../plugin-commands-outdated/package.json | 2 +- .../plugin-commands-publishing/package.json | 2 +- packages/plugin-commands-rebuild/package.json | 2 +- .../package.json | 2 +- packages/plugin-commands-store/package.json | 2 +- packages/pnpm/package.json | 2 +- packages/prune-lockfile/src/index.ts | 3 +- .../src/getNonDevWantedDependencies.ts | 2 +- packages/resolve-dependencies/src/index.ts | 2 +- .../resolve-dependencies/src/mergePeers.ts | 2 +- .../src/resolveDependencies.ts | 100 ++++++++++---- .../src/resolveDependencyTree.ts | 3 + .../src/updateProjectManifest.ts | 2 +- pnpm-lock.yaml | 127 +++++++++--------- privatePackages/assert-project/package.json | 2 +- privatePackages/assert-store/package.json | 2 +- 33 files changed, 248 insertions(+), 135 deletions(-) create mode 100644 .changeset/chilly-seahorses-visit.md create mode 100644 .changeset/forty-fireants-fail.md create mode 100644 .changeset/giant-mice-bathe.md create mode 100644 .changeset/quick-suits-yell.md create mode 100644 packages/core/test/install/autoInstallPeers.ts diff --git a/.changeset/chilly-seahorses-visit.md b/.changeset/chilly-seahorses-visit.md new file mode 100644 index 00000000000..962657c233b --- /dev/null +++ b/.changeset/chilly-seahorses-visit.md @@ -0,0 +1,6 @@ +--- +"@pnpm/core": minor +"@pnpm/resolve-dependencies": minor +--- + +New option added for automatically installing missing peer dependencies: `autoInstallPeers`. diff --git a/.changeset/forty-fireants-fail.md b/.changeset/forty-fireants-fail.md new file mode 100644 index 00000000000..74633e4d511 --- /dev/null +++ b/.changeset/forty-fireants-fail.md @@ -0,0 +1,5 @@ +--- +"@pnpm/prune-lockfile": patch +--- + +Don't prune peer deps. diff --git a/.changeset/giant-mice-bathe.md b/.changeset/giant-mice-bathe.md new file mode 100644 index 00000000000..bfc40e42af6 --- /dev/null +++ b/.changeset/giant-mice-bathe.md @@ -0,0 +1,6 @@ +--- +"@pnpm/plugin-commands-installation": patch +"pnpm": patch +--- + +When `auto-install-peers` is set to `true`, automatically install missing peer dependencies without writing them to `package.json` as dependencies. This makes pnpm handle peer dependencies the same way as npm v7 [#4776](https://github.com/pnpm/pnpm/pull/4776). diff --git a/.changeset/quick-suits-yell.md b/.changeset/quick-suits-yell.md new file mode 100644 index 00000000000..cc96d90a8af --- /dev/null +++ b/.changeset/quick-suits-yell.md @@ -0,0 +1,5 @@ +--- +"@pnpm/default-reporter": patch +--- + +Add hints to the peer dependencies error. diff --git a/package.json b/package.json index 7319ac4a576..f8e5df9c993 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@commitlint/prompt-cli": "^16.0.0", "@pnpm/eslint-config": "workspace:*", "@pnpm/meta-updater": "0.0.6", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/tsconfig": "workspace:*", "@types/jest": "^27.4.0", "@types/node": "^14.17.32", @@ -120,7 +120,9 @@ "@typescript-eslint/eslint-plugin": "^5.6.0", "@yarnpkg/core": "*" }, - "ignoreMissing": ["@yarnpkg/plugin-patch"] + "ignoreMissing": [ + "@yarnpkg/plugin-patch" + ] } } } diff --git a/packages/core/package.json b/packages/core/package.json index bc61602266e..98b81b01c7b 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -75,7 +75,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/package-store": "workspace:12.1.15", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/store-path": "^5.0.0", "@pnpm/test-fixtures": "workspace:*", "@types/fs-extra": "^9.0.5", diff --git a/packages/core/src/install/extendInstallOptions.ts b/packages/core/src/install/extendInstallOptions.ts index af828a6735a..fc449975823 100644 --- a/packages/core/src/install/extendInstallOptions.ts +++ b/packages/core/src/install/extendInstallOptions.ts @@ -16,6 +16,7 @@ import pnpmPkgJson from '../pnpmPkgJson' import { ReporterFunction } from '../types' export interface StrictInstallOptions { + autoInstallPeers: boolean forceSharedLockfile: boolean frozenLockfile: boolean frozenLockfileIfExists: boolean @@ -108,6 +109,7 @@ const defaults = async (opts: InstallOptions) => { version: pnpmPkgJson.version, } return { + autoInstallPeers: false, childConcurrency: 5, depth: 0, enablePnp: false, diff --git a/packages/core/src/install/index.ts b/packages/core/src/install/index.ts index 6399a3a50c9..0c88131be20 100644 --- a/packages/core/src/install/index.ts +++ b/packages/core/src/install/index.ts @@ -738,6 +738,7 @@ const _installInContext: InstallFunction = async (projects, ctx, opts) => { projects, { allowBuild: createAllowBuildFunction(opts), + autoInstallPeers: opts.autoInstallPeers, currentLockfile: ctx.currentLockfile, defaultUpdateDepth: (opts.update || (opts.updateMatching != null)) ? opts.depth : -1, dryRun: opts.lockfileOnly, diff --git a/packages/core/test/install/autoInstallPeers.ts b/packages/core/test/install/autoInstallPeers.ts new file mode 100644 index 00000000000..e7e68fecb77 --- /dev/null +++ b/packages/core/test/install/autoInstallPeers.ts @@ -0,0 +1,37 @@ +import { addDependenciesToPackage } from '@pnpm/core' +import { prepareEmpty } from '@pnpm/prepare' +import { addDistTag } from '@pnpm/registry-mock' +import { testDefaults } from '../utils' + +test('auto install non-optional peer dependencies', async () => { + await addDistTag({ package: 'peer-a', version: '1.0.0', distTag: 'latest' }) + const project = prepareEmpty() + await addDependenciesToPackage({}, ['abc-optional-peers@1.0.0'], await testDefaults({ autoInstallPeers: true })) + const lockfile = await project.readLockfile() + expect(Object.keys(lockfile.packages)).toStrictEqual([ + '/abc-optional-peers/1.0.0_peer-a@1.0.0', + '/peer-a/1.0.0', + ]) +}) + +test('auto install the common peer dependency', async () => { + await addDistTag({ package: 'peer-c', version: '1.0.1', distTag: 'latest' }) + const project = prepareEmpty() + await addDependenciesToPackage({}, ['wants-peer-c-1', 'wants-peer-c-1.0.0'], await testDefaults({ autoInstallPeers: true })) + const lockfile = await project.readLockfile() + expect(Object.keys(lockfile.packages)).toStrictEqual([ + '/peer-c/1.0.0', + '/wants-peer-c-1.0.0/1.0.0_peer-c@1.0.0', + '/wants-peer-c-1/1.0.0_peer-c@1.0.0', + ]) +}) + +test('do not auto install when there is no common peer dependency range intersection', async () => { + const project = prepareEmpty() + await addDependenciesToPackage({}, ['wants-peer-c-1', 'wants-peer-c-2'], await testDefaults({ autoInstallPeers: true })) + const lockfile = await project.readLockfile() + expect(Object.keys(lockfile.packages)).toStrictEqual([ + '/wants-peer-c-1/1.0.0', + '/wants-peer-c-2/1.0.0', + ]) +}) diff --git a/packages/core/test/install/peerDependencies.ts b/packages/core/test/install/peerDependencies.ts index 58ba83b5c8a..b0adf80d10f 100644 --- a/packages/core/test/install/peerDependencies.ts +++ b/packages/core/test/install/peerDependencies.ts @@ -1190,7 +1190,7 @@ test('peer dependency that is resolved by a dev dependency', async () => { ], await testDefaults({ fastUnpack: false, lockfileOnly: true })) const lockfile = await project.readLockfile() - expect(lockfile.packages['/@types/mongoose/5.7.32'].dev).toBeTruthy() + expect(lockfile.packages['/@types/mongoose/5.7.32'].dev).toBeUndefined() await mutateModules([ { diff --git a/packages/default-reporter/src/reportError.ts b/packages/default-reporter/src/reportError.ts index 16be20e8120..23af8920f0f 100644 --- a/packages/default-reporter/src/reportError.ts +++ b/packages/default-reporter/src/reportError.ts @@ -397,8 +397,21 @@ function reportPeerDependencyIssuesError ( err: Error, msg: { issuesByProjects: PeerDependencyIssuesByProjects } ) { + const hasMissingPeers = getHasMissingPeers(msg.issuesByProjects) + const hints: string[] = [] + if (hasMissingPeers) { + hints.push('If you want peer dependencies to be automatically installed, set the "auto-install-peers" setting to "true".') + } + hints.push('If you don\'t want pnpm to fail on peer dependency issues, set the "strict-peer-dependencies" setting to "false".') return { title: err.message, - body: renderPeerIssues(msg.issuesByProjects), + body: `${renderPeerIssues(msg.issuesByProjects)} +${hints.map((hint) => `hint: ${hint}`).join('\n')} +`, } } + +function getHasMissingPeers (issuesByProjects: PeerDependencyIssuesByProjects) { + return Object.values(issuesByProjects) + .some((issues) => Object.values(issues.missing).flat().some(({ optional }) => !optional)) +} diff --git a/packages/headless/package.json b/packages/headless/package.json index 5397fa0e13a..2632b72dc10 100644 --- a/packages/headless/package.json +++ b/packages/headless/package.json @@ -22,7 +22,7 @@ "@pnpm/package-store": "workspace:12.1.15", "@pnpm/prepare": "workspace:*", "@pnpm/read-projects-context": "workspace:5.0.19", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/store-path": "^5.0.0", "@pnpm/test-fixtures": "workspace:*", "@types/fs-extra": "^9.0.5", diff --git a/packages/package-requester/package.json b/packages/package-requester/package.json index 432d8fda3ce..4f46c2df6df 100644 --- a/packages/package-requester/package.json +++ b/packages/package-requester/package.json @@ -65,7 +65,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/package-requester": "workspace:17.0.3", "@pnpm/package-store": "workspace:12.1.15", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/test-fixtures": "workspace:*", "@types/normalize-path": "^3.0.0", "@types/ramda": "0.27.39", diff --git a/packages/plugin-commands-installation/package.json b/packages/plugin-commands-installation/package.json index 7ec18f178b0..6858d770a01 100644 --- a/packages/plugin-commands-installation/package.json +++ b/packages/plugin-commands-installation/package.json @@ -39,7 +39,7 @@ "@pnpm/modules-yaml": "workspace:9.1.1", "@pnpm/plugin-commands-installation": "workspace:8.4.15", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/test-fixtures": "workspace:*", "@types/is-ci": "^3.0.0", "@types/proxyquire": "^1.3.28", diff --git a/packages/plugin-commands-installation/src/installDeps.ts b/packages/plugin-commands-installation/src/installDeps.ts index 9ef7168c8f7..515d804d2df 100644 --- a/packages/plugin-commands-installation/src/installDeps.ts +++ b/packages/plugin-commands-installation/src/installDeps.ts @@ -20,7 +20,6 @@ import { import logger from '@pnpm/logger' import { sequenceGraph } from '@pnpm/sort-packages' import isSubdir from 'is-subdir' -import isEmpty from 'ramda/src/isEmpty' import getOptionsFromRootManifest from './getOptionsFromRootManifest' import getPinnedVersion from './getPinnedVersion' import getSaveType from './getSaveType' @@ -233,26 +232,8 @@ when running add/update with the --workspace option') rootDir: opts.dir, targetDependenciesField: getSaveType(opts), } - let [updatedImporter] = await mutateModules([mutatedProject], installOpts) + const [updatedImporter] = await mutateModules([mutatedProject], installOpts) if (opts.save !== false) { - if (opts.autoInstallPeers && !isEmpty(updatedImporter.peerDependencyIssues?.intersections ?? {})) { - logger.info({ - message: 'Installing missing peer dependencies', - prefix: opts.dir, - }) - const dependencySelectors = Object.entries(updatedImporter.peerDependencyIssues!.intersections) - .map(([name, version]: [string, string]) => `${name}@${version}`) - const result = await mutateModules([ - { - ...mutatedProject, - dependencySelectors, - manifest: updatedImporter.manifest, - peer: false, - targetDependenciesField: 'devDependencies', - }, - ], installOpts) - updatedImporter = result[0] - } await writeProjectManifest(updatedImporter.manifest) } return diff --git a/packages/plugin-commands-installation/test/add.ts b/packages/plugin-commands-installation/test/add.ts index e71d43c1198..cb6126aeb5c 100644 --- a/packages/plugin-commands-installation/test/add.ts +++ b/packages/plugin-commands-installation/test/add.ts @@ -290,7 +290,7 @@ test('pnpm add - should add prefix when set in .npmrc when a range is not specif }) test('pnpm add automatically installs missing peer dependencies', async () => { - prepare() + const project = prepare() await add.handler({ ...DEFAULT_OPTIONS, autoInstallPeers: true, @@ -298,10 +298,6 @@ test('pnpm add automatically installs missing peer dependencies', async () => { linkWorkspacePackages: false, }, ['abc@1.0.0']) - const manifest = (await import(path.resolve('package.json'))) - - expect(manifest.dependencies['abc']).toBe('1.0.0') - expect(manifest.devDependencies['peer-a']).toBe('^1.0.0') - expect(manifest.devDependencies['peer-b']).toBe('^1.0.0') - expect(manifest.devDependencies['peer-c']).toBe('^1.0.0') + const lockfile = await project.readLockfile() + expect(Object.keys(lockfile.packages).length).toBe(5) }) diff --git a/packages/plugin-commands-listing/package.json b/packages/plugin-commands-listing/package.json index b9b2b6e5934..046247ad112 100644 --- a/packages/plugin-commands-listing/package.json +++ b/packages/plugin-commands-listing/package.json @@ -38,7 +38,7 @@ "@pnpm/plugin-commands-installation": "workspace:8.4.15", "@pnpm/plugin-commands-listing": "workspace:4.1.15", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@types/ramda": "0.27.39", "execa": "npm:safe-execa@^0.1.1", "strip-ansi": "^6.0.0", diff --git a/packages/plugin-commands-outdated/package.json b/packages/plugin-commands-outdated/package.json index f197089c046..fb60e2e1dcb 100644 --- a/packages/plugin-commands-outdated/package.json +++ b/packages/plugin-commands-outdated/package.json @@ -38,7 +38,7 @@ "@pnpm/plugin-commands-installation": "workspace:8.4.15", "@pnpm/plugin-commands-outdated": "workspace:5.1.14", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@types/lru-cache": "^5.1.0", "@types/ramda": "0.27.39", "@types/wrap-ansi": "^3.0.0", diff --git a/packages/plugin-commands-publishing/package.json b/packages/plugin-commands-publishing/package.json index 6fd094e042d..bd4b63f7e98 100644 --- a/packages/plugin-commands-publishing/package.json +++ b/packages/plugin-commands-publishing/package.json @@ -39,7 +39,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/plugin-commands-publishing": "workspace:4.5.8", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@types/cross-spawn": "^6.0.2", "@types/is-ci": "^3.0.0", "@types/is-windows": "^1.0.0", diff --git a/packages/plugin-commands-rebuild/package.json b/packages/plugin-commands-rebuild/package.json index 26ca32b8d66..8b4c8b76295 100644 --- a/packages/plugin-commands-rebuild/package.json +++ b/packages/plugin-commands-rebuild/package.json @@ -37,7 +37,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/plugin-commands-rebuild": "workspace:5.4.21", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/test-fixtures": "workspace:*", "@types/ramda": "0.27.39", "@types/semver": "^7.3.4", diff --git a/packages/plugin-commands-script-runners/package.json b/packages/plugin-commands-script-runners/package.json index fa4cf80a109..7d2a52d23e7 100644 --- a/packages/plugin-commands-script-runners/package.json +++ b/packages/plugin-commands-script-runners/package.json @@ -38,7 +38,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/plugin-commands-script-runners": "workspace:4.6.9", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@types/is-windows": "^1.0.0", "@types/ramda": "0.27.39", "is-windows": "^1.0.2", diff --git a/packages/plugin-commands-store/package.json b/packages/plugin-commands-store/package.json index a39961eac84..a5050d5fcfa 100644 --- a/packages/plugin-commands-store/package.json +++ b/packages/plugin-commands-store/package.json @@ -38,7 +38,7 @@ "@pnpm/logger": "^4.0.0", "@pnpm/plugin-commands-store": "workspace:4.1.19", "@pnpm/prepare": "workspace:*", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@types/archy": "0.0.31", "@types/ramda": "0.27.39", "@types/ssri": "^7.1.0", diff --git a/packages/pnpm/package.json b/packages/pnpm/package.json index 2587c4785a4..ab69cabfa73 100644 --- a/packages/pnpm/package.json +++ b/packages/pnpm/package.json @@ -54,7 +54,7 @@ "@pnpm/prepare": "workspace:*", "@pnpm/read-package-json": "workspace:5.0.12", "@pnpm/read-project-manifest": "workspace:2.0.13", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/run-npm": "workspace:3.1.1", "@pnpm/store-path": "^5.0.0", "@pnpm/tabtab": "^0.1.2", diff --git a/packages/prune-lockfile/src/index.ts b/packages/prune-lockfile/src/index.ts index 51c7f45edff..14e5f859551 100644 --- a/packages/prune-lockfile/src/index.ts +++ b/packages/prune-lockfile/src/index.ts @@ -9,7 +9,6 @@ import { PackageManifest } from '@pnpm/types' import { refToRelative } from 'dependency-path' import difference from 'ramda/src/difference' import isEmpty from 'ramda/src/isEmpty' -import omit from 'ramda/src/omit' import unnest from 'ramda/src/unnest' export * from '@pnpm/lockfile-types' @@ -197,7 +196,7 @@ function copyDependencySubGraph ( } else if (depLockfile.dev === undefined && !ctx.notProdOnly.has(depPath)) { depLockfile.dev = false } - const newDependencies = resolvedDepsToDepPaths(omit(Object.keys(depLockfile.peerDependencies ?? {}) ?? [], depLockfile.dependencies ?? {})) + const newDependencies = resolvedDepsToDepPaths(depLockfile.dependencies ?? {}) copyDependencySubGraph(ctx, newDependencies, opts) const newOptionalDependencies = resolvedDepsToDepPaths(depLockfile.optionalDependencies ?? {}) copyDependencySubGraph(ctx, newOptionalDependencies, { dev: opts.dev, optional: true }) diff --git a/packages/resolve-dependencies/src/getNonDevWantedDependencies.ts b/packages/resolve-dependencies/src/getNonDevWantedDependencies.ts index fb6e3df45b7..ac990861a32 100644 --- a/packages/resolve-dependencies/src/getNonDevWantedDependencies.ts +++ b/packages/resolve-dependencies/src/getNonDevWantedDependencies.ts @@ -8,7 +8,7 @@ export interface WantedDependency { injected?: boolean } -export default function getNonDevWantedDependencies (pkg: DependencyManifest) { +export default function getNonDevWantedDependencies (pkg: Pick) { const bd = pkg.bundleDependencies ?? pkg.bundleDependencies const bundledDeps = new Set(Array.isArray(bd) ? bd : []) const filterDeps = getNotBundledDeps.bind(null, bundledDeps) diff --git a/packages/resolve-dependencies/src/index.ts b/packages/resolve-dependencies/src/index.ts index 88433d8801f..a649d86f584 100644 --- a/packages/resolve-dependencies/src/index.ts +++ b/packages/resolve-dependencies/src/index.ts @@ -132,7 +132,7 @@ export default async function ( difference( Object.keys(getAllDependenciesFromManifest(project.manifest)), resolvedImporter.directDependencies - .filter((dep, index) => project.wantedDependencies[index].isNew === true) + .filter((dep, index) => project.wantedDependencies[index]?.isNew === true) .map(({ alias }) => alias) || [] ), project.modulesDir diff --git a/packages/resolve-dependencies/src/mergePeers.ts b/packages/resolve-dependencies/src/mergePeers.ts index 473dbde633a..42ee44aa9a8 100644 --- a/packages/resolve-dependencies/src/mergePeers.ts +++ b/packages/resolve-dependencies/src/mergePeers.ts @@ -20,7 +20,7 @@ export function mergePeers (missingPeers: MissingPeerIssuesByPeerName) { return { conflicts, intersections } } -function safeIntersect (ranges: string[]): null | string { +export function safeIntersect (ranges: string[]): null | string { try { return intersect(...ranges) } catch { diff --git a/packages/resolve-dependencies/src/resolveDependencies.ts b/packages/resolve-dependencies/src/resolveDependencies.ts index d6c6a99dd50..c909caf0ccc 100644 --- a/packages/resolve-dependencies/src/resolveDependencies.ts +++ b/packages/resolve-dependencies/src/resolveDependencies.ts @@ -42,6 +42,7 @@ import isEmpty from 'ramda/src/isEmpty' import semver from 'semver' import encodePkgId from './encodePkgId' import getNonDevWantedDependencies, { WantedDependency } from './getNonDevWantedDependencies' +import { safeIntersect } from './mergePeers' import { createNodeId, nodeIdContainsSequence, @@ -116,6 +117,7 @@ export interface ChildrenByParentDepPath { } export interface ResolutionContext { + autoInstallPeers: boolean allowBuild?: (pkgName: string) => boolean updatedSet: Set defaultTag: string @@ -160,6 +162,7 @@ export type PkgAddress = { version?: string updated: boolean rootDir: string + missingPeers: Record } & ({ isLinkedDependency: true version: string @@ -202,9 +205,12 @@ export interface ResolvedPackage { type ParentPkg = Pick +type ParentPkgAliases = Record + interface ResolvedDependenciesOptions { currentDepth: number parentPkg: ParentPkg + parentPkgAliases: ParentPkgAliases // If the package has been updated, the dependencies // which were used by the previous version are passed // via this option @@ -215,35 +221,47 @@ interface ResolvedDependenciesOptions { workspacePackages?: WorkspacePackages } +type PostponedResolutionFunction = (preferredVersions: PreferredVersions, parentPkgAliases: ParentPkgAliases) => Promise + export default async function resolveDependencies ( ctx: ResolutionContext, preferredVersions: PreferredVersions, wantedDependencies: Array, options: ResolvedDependenciesOptions ): Promise> { - const extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { - preferredDependencies: options.preferredDependencies, - prefix: ctx.prefix, - proceed: options.proceed || ctx.forceFullResolution, - registries: ctx.registries, - resolvedDependencies: options.resolvedDependencies, - }) - const postponedResolutionsQueue = [] as Array<(preferredVersions: PreferredVersions) => Promise> - const pkgAddresses = ( - await Promise.all( - extendedWantedDeps.map(async (extendedWantedDep) => resolveDependenciesOfDependency( - postponedResolutionsQueue, - ctx, - preferredVersions, - options, - extendedWantedDep - )) - ) - ) - .filter(Boolean) as PkgAddress[] + let extendedWantedDeps: ExtendedWantedDependency[] = [] + const postponedResolutionsQueue: PostponedResolutionFunction[] = [] + const pkgAddresses: PkgAddress[] = [] + while (true) { + extendedWantedDeps = getDepsToResolve(wantedDependencies, ctx.wantedLockfile, { + preferredDependencies: options.preferredDependencies, + prefix: ctx.prefix, + proceed: options.proceed || ctx.forceFullResolution, + registries: ctx.registries, + resolvedDependencies: options.resolvedDependencies, + }) + const newPkgAddresses = ( + await Promise.all( + extendedWantedDeps.map(async (extendedWantedDep) => resolveDependenciesOfDependency( + postponedResolutionsQueue, + ctx, + preferredVersions, + options, + extendedWantedDep + )) + ) + ).filter(Boolean) as PkgAddress[] + pkgAddresses.push(...newPkgAddresses) + if (!ctx.autoInstallPeers) break + const allMissingPeers = mergePkgsDeps(newPkgAddresses.map(({ missingPeers }) => missingPeers)) + if (!Object.keys(allMissingPeers).length) break + wantedDependencies = getNonDevWantedDependencies({ dependencies: allMissingPeers }) + } const newPreferredVersions = { ...preferredVersions } + const newParentPkgAliases = { ...options.parentPkgAliases } for (const pkgAddress of pkgAddresses) { + newParentPkgAliases[pkgAddress.alias] = true if (pkgAddress.updated) { ctx.updatedSet.add(pkgAddress.alias) } @@ -254,11 +272,31 @@ export default async function resolveDependencies ( } newPreferredVersions[resolvedPackage.name][resolvedPackage.version] = 'version' } - await Promise.all(postponedResolutionsQueue.map(async (postponedResolution) => postponedResolution(newPreferredVersions))) + await Promise.all(postponedResolutionsQueue.map(async (postponedResolution) => postponedResolution(newPreferredVersions, newParentPkgAliases))) return pkgAddresses } +function mergePkgsDeps (pkgsDeps: Array>): Record { + const groupedRanges: Record = {} + for (const deps of pkgsDeps) { + for (const [name, range] of Object.entries(deps)) { + if (!groupedRanges[name]) { + groupedRanges[name] = [] + } + groupedRanges[name].push(range) + } + } + const mergedPkgDeps = {} as Record + for (const [name, ranges] of Object.entries(groupedRanges)) { + const intersection = safeIntersect(ranges) + if (intersection) { + mergedPkgDeps[name] = intersection + } + } + return mergedPkgDeps +} + interface ExtendedWantedDependency { infoFromLockfile?: InfoFromLockfile proceed: boolean @@ -266,7 +304,7 @@ interface ExtendedWantedDependency { } async function resolveDependenciesOfDependency ( - postponedResolutionsQueue: Array<(preferredVersions: PreferredVersions) => Promise>, + postponedResolutionsQueue: PostponedResolutionFunction[], ctx: ResolutionContext, preferredVersions: PreferredVersions, options: ResolvedDependenciesOptions, @@ -295,6 +333,7 @@ async function resolveDependenciesOfDependency ( const resolveDependencyOpts: ResolveDependencyOptions = { currentDepth: options.currentDepth, parentPkg: options.parentPkg, + parentPkgAliases: options.parentPkgAliases, preferredVersions, workspacePackages: options.workspacePackages, currentPkg: extendedWantedDep.infoFromLockfile ?? undefined, @@ -319,10 +358,11 @@ async function resolveDependenciesOfDependency ( } if (!resolveDependencyResult.isNew) return resolveDependencyResult - postponedResolutionsQueue.push(async (preferredVersions) => + postponedResolutionsQueue.push(async (preferredVersions, parentPkgAliases) => resolveChildren( ctx, resolveDependencyResult, + parentPkgAliases, extendedWantedDep.infoFromLockfile?.dependencyLockfile, options.workspacePackages, options.currentDepth, @@ -337,6 +377,7 @@ async function resolveDependenciesOfDependency ( async function resolveChildren ( ctx: ResolutionContext, parentPkg: PkgAddress, + parentPkgAliases: ParentPkgAliases, dependencyLockfile: PackageSnapshot | undefined, workspacePackages: WorkspacePackages | undefined, parentDepth: number, @@ -364,6 +405,7 @@ async function resolveChildren ( { currentDepth: parentDepth + 1, parentPkg, + parentPkgAliases, preferredDependencies: currentResolvedDependencies, // If the package is not linked, we should also gather information about its dependencies. // After linking the package we'll need to symlink its dependencies. @@ -561,6 +603,7 @@ interface ResolveDependencyOptions { dependencyLockfile?: PackageSnapshot } parentPkg: ParentPkg + parentPkgAliases: ParentPkgAliases preferredVersions: PreferredVersions proceed: boolean update: boolean @@ -836,6 +879,7 @@ async function resolveDependency ( normalizedPref: options.currentDepth === 0 ? pkgResponse.body.normalizedPref : undefined, pkgId: pkgResponse.body.id, rootDir, + missingPeers: getMissingPeers(pkg, options.parentPkgAliases), // Next fields are actually only needed when isNew = true installable, @@ -845,6 +889,16 @@ async function resolveDependency ( } } +function getMissingPeers (pkg: PackageManifest, parentPkgAliases: ParentPkgAliases): Record { + const missingPeers = {} as Record + for (const [peerName, peerVersion] of Object.entries(pkg.peerDependencies ?? {})) { + if (!parentPkgAliases[peerName] && !pkg.peerDependenciesMeta?.[peerName]?.optional) { + missingPeers[peerName] = peerVersion + } + } + return missingPeers +} + function pkgIsLeaf (pkg: PackageManifest) { return isEmpty(pkg.dependencies ?? {}) && isEmpty(pkg.optionalDependencies ?? {}) && diff --git a/packages/resolve-dependencies/src/resolveDependencyTree.ts b/packages/resolve-dependencies/src/resolveDependencyTree.ts index 9a4f480ffda..3c10be99a6f 100644 --- a/packages/resolve-dependencies/src/resolveDependencyTree.ts +++ b/packages/resolve-dependencies/src/resolveDependencyTree.ts @@ -52,6 +52,7 @@ export interface ImporterToResolveGeneric extends Importer { } export interface ResolveDependenciesOptions { + autoInstallPeers?: boolean allowBuild?: (pkgName: string) => boolean currentLockfile: Lockfile dryRun: boolean @@ -84,6 +85,7 @@ export default async function ( const wantedToBeSkippedPackageIds = new Set() const ctx = { + autoInstallPeers: opts.autoInstallPeers === true, allowBuild: opts.allowBuild, childrenByParentDepPath: {} as ChildrenByParentDepPath, currentLockfile: opts.currentLockfile, @@ -135,6 +137,7 @@ export default async function ( depPath: importer.id, rootDir: importer.rootDir, }, + parentPkgAliases: {}, proceed, resolvedDependencies: { ...projectSnapshot.dependencies, diff --git a/packages/resolve-dependencies/src/updateProjectManifest.ts b/packages/resolve-dependencies/src/updateProjectManifest.ts index cf4c5465b7a..dda4216c975 100644 --- a/packages/resolve-dependencies/src/updateProjectManifest.ts +++ b/packages/resolve-dependencies/src/updateProjectManifest.ts @@ -21,7 +21,7 @@ export default async function updateProjectManifest ( throw new Error('Cannot save because no package.json found') } const specsToUpsert = opts.directDependencies - .filter((rdd, index) => importer.wantedDependencies[index]!.updateSpec) + .filter((rdd, index) => importer.wantedDependencies[index]?.updateSpec) .map((rdd, index) => { const wantedDep = importer.wantedDependencies[index]! return resolvedDirectDepToSpecObject({ ...rdd, isNew: wantedDep.isNew, specRaw: wantedDep.raw }, importer, { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f7455322d06..d26b6f9e342 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -42,7 +42,7 @@ importers: '@commitlint/prompt-cli': ^16.0.0 '@pnpm/eslint-config': workspace:* '@pnpm/meta-updater': 0.0.6 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/tsconfig': workspace:* '@types/jest': ^27.4.0 '@types/node': ^14.17.32 @@ -73,7 +73,7 @@ importers: '@commitlint/prompt-cli': 16.2.4 '@pnpm/eslint-config': link:utils/eslint-config '@pnpm/meta-updater': 0.0.6 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/tsconfig': link:utils/tsconfig '@types/jest': 27.5.0 '@types/node': 14.18.16 @@ -422,7 +422,7 @@ importers: '@pnpm/read-modules-dir': workspace:3.0.1 '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/remove-bins': workspace:2.0.14 '@pnpm/resolve-dependencies': workspace:25.0.10 '@pnpm/resolver-base': workspace:8.1.6 @@ -530,7 +530,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/package-store': link:../package-store '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/store-path': 5.0.0 '@pnpm/test-fixtures': link:../../privatePackages/test-fixtures '@types/fs-extra': 9.0.13 @@ -1096,7 +1096,7 @@ importers: '@pnpm/read-project-manifest': workspace:2.0.13 '@pnpm/read-projects-context': workspace:5.0.19 '@pnpm/real-hoist': workspace:0.1.10 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/store-controller-types': workspace:12.0.0 '@pnpm/store-path': ^5.0.0 '@pnpm/symlink-dependency': workspace:4.0.13 @@ -1157,7 +1157,7 @@ importers: '@pnpm/package-store': link:../package-store '@pnpm/prepare': link:../../privatePackages/prepare '@pnpm/read-projects-context': link:../read-projects-context - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/store-path': 5.0.0 '@pnpm/test-fixtures': link:../../privatePackages/test-fixtures '@types/fs-extra': 9.0.13 @@ -1846,7 +1846,7 @@ importers: '@pnpm/package-requester': workspace:17.0.3 '@pnpm/package-store': workspace:12.1.15 '@pnpm/read-package-json': workspace:5.0.12 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/resolver-base': workspace:8.1.6 '@pnpm/store-controller-types': workspace:12.0.0 '@pnpm/test-fixtures': workspace:* @@ -1897,7 +1897,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/package-requester': 'link:' '@pnpm/package-store': link:../package-store - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/test-fixtures': link:../../privatePackages/test-fixtures '@types/normalize-path': 3.0.0 '@types/ramda': 0.27.39 @@ -2158,7 +2158,7 @@ importers: '@pnpm/pnpmfile': workspace:1.2.6 '@pnpm/prepare': workspace:* '@pnpm/read-project-manifest': workspace:2.0.13 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/resolver-base': workspace:8.1.6 '@pnpm/semver-diff': ^1.0.2 '@pnpm/sort-packages': workspace:2.1.8 @@ -2255,7 +2255,7 @@ importers: '@pnpm/modules-yaml': link:../modules-yaml '@pnpm/plugin-commands-installation': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/test-fixtures': link:../../privatePackages/test-fixtures '@types/is-ci': 3.0.0 '@types/proxyquire': 1.3.28 @@ -2286,7 +2286,7 @@ importers: '@pnpm/plugin-commands-installation': workspace:8.4.15 '@pnpm/plugin-commands-listing': workspace:4.1.15 '@pnpm/prepare': workspace:* - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/types': workspace:7.10.0 '@types/ramda': 0.27.39 execa: npm:safe-execa@^0.1.1 @@ -2310,7 +2310,7 @@ importers: '@pnpm/plugin-commands-installation': link:../plugin-commands-installation '@pnpm/plugin-commands-listing': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@types/ramda': 0.27.39 execa: /safe-execa/0.1.1 strip-ansi: 6.0.1 @@ -2334,7 +2334,7 @@ importers: '@pnpm/plugin-commands-installation': workspace:8.4.15 '@pnpm/plugin-commands-outdated': workspace:5.1.14 '@pnpm/prepare': workspace:* - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/semver-diff': ^1.0.2 '@pnpm/store-path': ^5.0.0 '@pnpm/types': workspace:7.10.0 @@ -2377,7 +2377,7 @@ importers: '@pnpm/plugin-commands-installation': link:../plugin-commands-installation '@pnpm/plugin-commands-outdated': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@types/lru-cache': 5.1.1 '@types/ramda': 0.27.39 '@types/wrap-ansi': 3.0.0 @@ -2397,7 +2397,7 @@ importers: '@pnpm/pick-registry-for-package': workspace:2.0.11 '@pnpm/plugin-commands-publishing': workspace:4.5.8 '@pnpm/prepare': workspace:* - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/resolver-base': workspace:8.1.6 '@pnpm/run-npm': workspace:3.1.1 '@pnpm/sort-packages': workspace:2.1.8 @@ -2460,7 +2460,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/plugin-commands-publishing': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@types/cross-spawn': 6.0.2 '@types/is-ci': 3.0.0 '@types/is-windows': 1.0.0 @@ -2497,7 +2497,7 @@ importers: '@pnpm/normalize-registries': workspace:2.0.13 '@pnpm/plugin-commands-rebuild': workspace:5.4.21 '@pnpm/prepare': workspace:* - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/sort-packages': workspace:2.1.8 '@pnpm/store-connection-manager': workspace:3.2.14 '@pnpm/store-controller-types': workspace:12.0.0 @@ -2557,7 +2557,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/plugin-commands-rebuild': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/test-fixtures': link:../../privatePackages/test-fixtures '@types/ramda': 0.27.39 '@types/semver': 7.3.9 @@ -2583,7 +2583,7 @@ importers: '@pnpm/prepare': workspace:* '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/sort-packages': workspace:2.1.8 '@pnpm/store-path': ^5.0.0 '@pnpm/types': workspace:7.10.0 @@ -2626,7 +2626,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/plugin-commands-script-runners': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@types/is-windows': 1.0.0 '@types/ramda': 0.27.39 is-windows: 1.0.2 @@ -2720,7 +2720,7 @@ importers: '@pnpm/pick-registry-for-package': workspace:2.0.11 '@pnpm/plugin-commands-store': workspace:4.1.19 '@pnpm/prepare': workspace:* - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/store-connection-manager': workspace:3.2.14 '@pnpm/store-controller-types': workspace:12.0.0 '@pnpm/store-path': ^5.0.0 @@ -2767,7 +2767,7 @@ importers: '@pnpm/logger': 4.0.0 '@pnpm/plugin-commands-store': 'link:' '@pnpm/prepare': link:../../privatePackages/prepare - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@types/archy': 0.0.31 '@types/ramda': 0.27.39 '@types/ssri': 7.1.1 @@ -2814,7 +2814,7 @@ importers: '@pnpm/prepare': workspace:* '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/run-npm': workspace:3.1.1 '@pnpm/store-path': ^5.0.0 '@pnpm/tabtab': ^0.1.2 @@ -2904,7 +2904,7 @@ importers: '@pnpm/prepare': link:../../privatePackages/prepare '@pnpm/read-package-json': link:../read-package-json '@pnpm/read-project-manifest': link:../read-project-manifest - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/run-npm': link:../run-npm '@pnpm/store-path': 5.0.0 '@pnpm/tabtab': 0.1.2 @@ -3474,7 +3474,7 @@ importers: '@pnpm/constants': workspace:5.0.0 '@pnpm/lockfile-types': workspace:3.2.0 '@pnpm/modules-yaml': workspace:9.1.1 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/types': workspace:7.10.0 '@types/is-windows': ^1.0.0 '@types/isexe': 2.0.0 @@ -3489,7 +3489,7 @@ importers: '@pnpm/constants': link:../../packages/constants '@pnpm/lockfile-types': link:../../packages/lockfile-types '@pnpm/modules-yaml': link:../../packages/modules-yaml - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 '@pnpm/types': link:../../packages/types is-windows: 1.0.2 isexe: 2.0.0 @@ -3506,11 +3506,11 @@ importers: specifiers: '@pnpm/assert-store': workspace:* '@pnpm/cafs': workspace:3.0.16 - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 path-exists: ^4.0.0 dependencies: '@pnpm/cafs': link:../../packages/cafs - '@pnpm/registry-mock': 2.16.0 + '@pnpm/registry-mock': 2.17.0 path-exists: 4.0.0 devDependencies: '@pnpm/assert-store': 'link:' @@ -4380,10 +4380,10 @@ packages: '@commitlint/execute-rule': 16.2.1 '@commitlint/resolve-extends': 16.2.1 '@commitlint/types': 16.2.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 cosmiconfig: 7.0.1 - cosmiconfig-typescript-loader: 1.0.9_l47be6km5p57gglrggidw5gsgm + cosmiconfig-typescript-loader: 1.0.9_mocf6w6juzjyi26vrxr4oqpfq4 lodash: 4.17.21 resolve-from: 5.0.0 typescript: 4.6.4 @@ -4552,7 +4552,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 jest-message-util: 27.5.1 jest-util: 27.5.1 @@ -4573,7 +4573,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.8.1 @@ -4610,7 +4610,7 @@ packages: dependencies: '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 jest-mock: 27.5.1 dev: true @@ -4620,7 +4620,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@sinonjs/fake-timers': 8.1.0 - '@types/node': 17.0.31 + '@types/node': 14.18.16 jest-message-util: 27.5.1 jest-mock: 27.5.1 jest-util: 27.5.1 @@ -4649,7 +4649,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -4733,7 +4733,7 @@ packages: dependencies: '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 '@types/yargs': 16.0.4 chalk: 4.1.2 dev: true @@ -5099,8 +5099,8 @@ packages: strip-bom: 4.0.0 dev: true - /@pnpm/registry-mock/2.16.0: - resolution: {integrity: sha512-Ro5tsRBR+qTnYne6B9aQJIzsyIJWhSBfARZMpEBmVVUysivYPWjoIRBNZ3EVbtt67oF6tMXTBGViPvYkwQYeyQ==} + /@pnpm/registry-mock/2.17.0: + resolution: {integrity: sha512-vZuWSJaixugxz0Y39VIEKeyYm69TG3/8qXkgMXjLjRWtE/4EezKKGfiAEhuJasSdvVoYUQWY2Ng0nEkWihTN9w==} engines: {node: '>=10.13'} hasBin: true dependencies: @@ -5288,7 +5288,7 @@ packages: /@types/byline/4.2.33: resolution: {integrity: sha512-LJYez7wrWcJQQDknqZtrZuExMGP0IXmPl1rOOGDqLbu+H7UNNRfKNuSxCBcQMLH1EfjeWidLedC/hCc5dDfBog==} dependencies: - '@types/node': 17.0.31 + '@types/node': 17.0.35 dev: true /@types/cacheable-request/6.0.2: @@ -5296,7 +5296,7 @@ packages: dependencies: '@types/http-cache-semantics': 4.0.1 '@types/keyv': 3.1.4 - '@types/node': 17.0.31 + '@types/node': 17.0.35 '@types/responselike': 1.0.0 /@types/concat-stream/1.6.1: @@ -5413,7 +5413,7 @@ packages: /@types/keyv/3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 17.0.31 + '@types/node': 17.0.35 /@types/lodash/4.14.181: resolution: {integrity: sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==} @@ -5462,6 +5462,9 @@ packages: /@types/node/17.0.31: resolution: {integrity: sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==} + /@types/node/17.0.35: + resolution: {integrity: sha512-vu1SrqBjbbZ3J6vwY17jBs8Sr/BKA+/a/WtjRG+whKg1iuLFOosq872EXS0eXWILdO36DHQQeku/ZcL6hz2fpg==} + /@types/normalize-package-data/2.4.1: resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} dev: true @@ -5494,7 +5497,7 @@ packages: /@types/responselike/1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 17.0.31 + '@types/node': 17.0.35 /@types/retry/0.12.2: resolution: {integrity: sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow==} @@ -6441,7 +6444,7 @@ packages: printable-characters: 1.0.42 /asap/2.0.6: - resolution: {integrity: sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=} + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} /asn1/0.2.6: resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} @@ -7357,16 +7360,16 @@ packages: object-assign: 4.1.1 vary: 1.1.2 - /cosmiconfig-typescript-loader/1.0.9_l47be6km5p57gglrggidw5gsgm: + /cosmiconfig-typescript-loader/1.0.9_mocf6w6juzjyi26vrxr4oqpfq4: resolution: {integrity: sha512-tRuMRhxN4m1Y8hP9SNYfz7jRwt8lZdWxdjg/ohg5esKmsndJIn4yT96oJVcf5x0eA11taXl+sIp+ielu529k6g==} engines: {node: '>=12', npm: '>=6'} peerDependencies: '@types/node': '*' typescript: '>=3' dependencies: - '@types/node': 17.0.31 + '@types/node': 14.18.16 cosmiconfig: 7.0.1 - ts-node: 10.7.0_l47be6km5p57gglrggidw5gsgm + ts-node: 10.7.0_mocf6w6juzjyi26vrxr4oqpfq4 typescript: 4.6.4 transitivePeerDependencies: - '@swc/core' @@ -9484,7 +9487,7 @@ packages: source-map: 0.6.1 wordwrap: 1.0.0 optionalDependencies: - uglify-js: 3.15.4 + uglify-js: 3.15.5 /har-schema/2.0.0: resolution: {integrity: sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=} @@ -10274,7 +10277,7 @@ packages: '@jest/environment': 27.5.1 '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 co: 4.6.0 dedent: 0.7.0 @@ -10400,7 +10403,7 @@ packages: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 jest-mock: 27.5.1 jest-util: 27.5.1 jsdom: 16.7.0 @@ -10418,7 +10421,7 @@ packages: '@jest/environment': 27.5.1 '@jest/fake-timers': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 jest-mock: 27.5.1 jest-util: 27.5.1 dev: true @@ -10434,7 +10437,7 @@ packages: dependencies: '@jest/types': 27.5.1 '@types/graceful-fs': 4.1.5 - '@types/node': 17.0.31 + '@types/node': 14.18.16 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 @@ -10456,7 +10459,7 @@ packages: '@jest/source-map': 27.5.1 '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 co: 4.6.0 expect: 27.5.1 @@ -10511,7 +10514,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 dev: true /jest-pnp-resolver/1.2.2_jest-resolve@27.5.1: @@ -10567,7 +10570,7 @@ packages: '@jest/test-result': 27.5.1 '@jest/transform': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 emittery: 0.8.1 graceful-fs: 4.2.10 @@ -10624,7 +10627,7 @@ packages: resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: - '@types/node': 17.0.31 + '@types/node': 14.18.16 graceful-fs: 4.2.10 dev: true @@ -10663,7 +10666,7 @@ packages: engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 chalk: 4.1.2 ci-info: 3.3.0 graceful-fs: 4.2.10 @@ -10688,7 +10691,7 @@ packages: dependencies: '@jest/test-result': 27.5.1 '@jest/types': 27.5.1 - '@types/node': 17.0.31 + '@types/node': 14.18.16 ansi-escapes: 4.3.2 chalk: 4.1.2 jest-util: 27.5.1 @@ -10699,7 +10702,7 @@ packages: resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} engines: {node: '>= 10.13.0'} dependencies: - '@types/node': 17.0.31 + '@types/node': 14.18.16 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -14485,7 +14488,7 @@ packages: yargs-parser: 20.2.9 dev: true - /ts-node/10.7.0_l47be6km5p57gglrggidw5gsgm: + /ts-node/10.7.0_mocf6w6juzjyi26vrxr4oqpfq4: resolution: {integrity: sha512-TbIGS4xgJoX2i3do417KSaep1uRAW/Lu+WAL2doDHC0D6ummjirVOXU5/7aiZotbQ5p1Zp9tP7U6cYhA0O7M8A==} hasBin: true peerDependencies: @@ -14504,7 +14507,7 @@ packages: '@tsconfig/node12': 1.0.9 '@tsconfig/node14': 1.0.1 '@tsconfig/node16': 1.0.2 - '@types/node': 17.0.31 + '@types/node': 14.18.16 acorn: 8.7.1 acorn-walk: 8.2.0 arg: 4.1.3 @@ -14702,8 +14705,8 @@ packages: hasBin: true dev: true - /uglify-js/3.15.4: - resolution: {integrity: sha512-vMOPGDuvXecPs34V74qDKk4iJ/SN4vL3Ow/23ixafENYvtrNvtbcgUeugTcUGRGsOF/5fU8/NYSL5Hyb3l1OJA==} + /uglify-js/3.15.5: + resolution: {integrity: sha512-hNM5q5GbBRB5xB+PMqVRcgYe4c8jbyZ1pzZhS6jbq54/4F2gFK869ZheiE5A8/t+W5jtTNpWef/5Q9zk639FNQ==} engines: {node: '>=0.8.0'} hasBin: true requiresBuild: true diff --git a/privatePackages/assert-project/package.json b/privatePackages/assert-project/package.json index b7db7751f43..bfd069cf69f 100644 --- a/privatePackages/assert-project/package.json +++ b/privatePackages/assert-project/package.json @@ -45,7 +45,7 @@ "@pnpm/constants": "workspace:5.0.0", "@pnpm/lockfile-types": "workspace:3.2.0", "@pnpm/modules-yaml": "workspace:9.1.1", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "@pnpm/types": "workspace:7.10.0", "is-windows": "^1.0.2", "isexe": "2.0.0", diff --git a/privatePackages/assert-store/package.json b/privatePackages/assert-store/package.json index 8e918b0fe08..74cbb4b027c 100644 --- a/privatePackages/assert-store/package.json +++ b/privatePackages/assert-store/package.json @@ -42,7 +42,7 @@ }, "dependencies": { "@pnpm/cafs": "workspace:3.0.16", - "@pnpm/registry-mock": "2.16.0", + "@pnpm/registry-mock": "2.17.0", "path-exists": "^4.0.0" }, "devDependencies": { From 8a0976e00d532b6818700168d9d2c7dbe27ba791 Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Sun, 22 May 2022 03:24:31 +0300 Subject: [PATCH 2/2] chore(release): 6.32.16 --- .changeset/chilly-seahorses-visit.md | 6 - .changeset/forty-fireants-fail.md | 5 - .changeset/giant-mice-bathe.md | 6 - .changeset/quick-suits-yell.md | 5 - packages/artifacts/linux-arm64/package.json | 4 +- packages/artifacts/linux-x64/package.json | 4 +- packages/artifacts/macos-arm64/package.json | 4 +- packages/artifacts/macos-x64/package.json | 4 +- packages/artifacts/win-x64/package.json | 4 +- packages/cli-utils/CHANGELOG.md | 7 + packages/cli-utils/package.json | 6 +- packages/core/CHANGELOG.md | 13 ++ packages/core/package.json | 8 +- packages/default-reporter/CHANGELOG.md | 6 + packages/default-reporter/package.json | 4 +- packages/exe/package.json | 14 +- .../filter-workspace-packages/CHANGELOG.md | 6 + .../filter-workspace-packages/package.json | 6 +- packages/find-workspace-packages/CHANGELOG.md | 6 + packages/find-workspace-packages/package.json | 6 +- packages/make-dedicated-lockfile/CHANGELOG.md | 7 + packages/make-dedicated-lockfile/package.json | 6 +- packages/plugin-commands-audit/CHANGELOG.md | 6 + packages/plugin-commands-audit/package.json | 6 +- packages/plugin-commands-env/CHANGELOG.md | 6 + packages/plugin-commands-env/package.json | 6 +- .../plugin-commands-installation/CHANGELOG.md | 12 ++ .../plugin-commands-installation/package.json | 14 +- packages/plugin-commands-listing/CHANGELOG.md | 6 + packages/plugin-commands-listing/package.json | 10 +- .../plugin-commands-outdated/CHANGELOG.md | 6 + .../plugin-commands-outdated/package.json | 10 +- .../plugin-commands-publishing/CHANGELOG.md | 6 + .../plugin-commands-publishing/package.json | 8 +- packages/plugin-commands-rebuild/CHANGELOG.md | 7 + packages/plugin-commands-rebuild/package.json | 10 +- .../CHANGELOG.md | 8 + .../package.json | 10 +- packages/plugin-commands-server/CHANGELOG.md | 6 + packages/plugin-commands-server/package.json | 6 +- packages/plugin-commands-setup/CHANGELOG.md | 6 + packages/plugin-commands-setup/package.json | 6 +- packages/plugin-commands-store/CHANGELOG.md | 6 + packages/plugin-commands-store/package.json | 6 +- packages/pnpm/CHANGELOG.md | 6 + packages/pnpm/package.json | 32 ++-- packages/prune-lockfile/CHANGELOG.md | 6 + packages/prune-lockfile/package.json | 4 +- packages/resolve-dependencies/CHANGELOG.md | 11 ++ packages/resolve-dependencies/package.json | 6 +- pnpm-lock.yaml | 152 +++++++++--------- 51 files changed, 321 insertions(+), 200 deletions(-) delete mode 100644 .changeset/chilly-seahorses-visit.md delete mode 100644 .changeset/forty-fireants-fail.md delete mode 100644 .changeset/giant-mice-bathe.md delete mode 100644 .changeset/quick-suits-yell.md diff --git a/.changeset/chilly-seahorses-visit.md b/.changeset/chilly-seahorses-visit.md deleted file mode 100644 index 962657c233b..00000000000 --- a/.changeset/chilly-seahorses-visit.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@pnpm/core": minor -"@pnpm/resolve-dependencies": minor ---- - -New option added for automatically installing missing peer dependencies: `autoInstallPeers`. diff --git a/.changeset/forty-fireants-fail.md b/.changeset/forty-fireants-fail.md deleted file mode 100644 index 74633e4d511..00000000000 --- a/.changeset/forty-fireants-fail.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@pnpm/prune-lockfile": patch ---- - -Don't prune peer deps. diff --git a/.changeset/giant-mice-bathe.md b/.changeset/giant-mice-bathe.md deleted file mode 100644 index bfc40e42af6..00000000000 --- a/.changeset/giant-mice-bathe.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -"@pnpm/plugin-commands-installation": patch -"pnpm": patch ---- - -When `auto-install-peers` is set to `true`, automatically install missing peer dependencies without writing them to `package.json` as dependencies. This makes pnpm handle peer dependencies the same way as npm v7 [#4776](https://github.com/pnpm/pnpm/pull/4776). diff --git a/.changeset/quick-suits-yell.md b/.changeset/quick-suits-yell.md deleted file mode 100644 index cc96d90a8af..00000000000 --- a/.changeset/quick-suits-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"@pnpm/default-reporter": patch ---- - -Add hints to the peer dependencies error. diff --git a/packages/artifacts/linux-arm64/package.json b/packages/artifacts/linux-arm64/package.json index 05996681fee..1433c2e4269 100644 --- a/packages/artifacts/linux-arm64/package.json +++ b/packages/artifacts/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/linux-arm64", - "version": "6.32.15", + "version": "6.32.16", "license": "MIT", "publishConfig": { "bin": { @@ -23,6 +23,6 @@ "pnpm6" ], "devDependencies": { - "@pnpm/linux-arm64": "workspace:6.32.15" + "@pnpm/linux-arm64": "workspace:6.32.16" } } diff --git a/packages/artifacts/linux-x64/package.json b/packages/artifacts/linux-x64/package.json index 8f6a18e93c0..5450e9990ea 100644 --- a/packages/artifacts/linux-x64/package.json +++ b/packages/artifacts/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/linux-x64", - "version": "6.32.15", + "version": "6.32.16", "license": "MIT", "publishConfig": { "bin": { @@ -23,6 +23,6 @@ "pnpm6" ], "devDependencies": { - "@pnpm/linux-x64": "workspace:6.32.15" + "@pnpm/linux-x64": "workspace:6.32.16" } } diff --git a/packages/artifacts/macos-arm64/package.json b/packages/artifacts/macos-arm64/package.json index e91e187ce40..a48008a8f82 100644 --- a/packages/artifacts/macos-arm64/package.json +++ b/packages/artifacts/macos-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/macos-arm64", - "version": "6.32.15", + "version": "6.32.16", "license": "MIT", "publishConfig": { "bin": { @@ -23,6 +23,6 @@ "pnpm6" ], "devDependencies": { - "@pnpm/macos-arm64": "workspace:6.32.15" + "@pnpm/macos-arm64": "workspace:6.32.16" } } diff --git a/packages/artifacts/macos-x64/package.json b/packages/artifacts/macos-x64/package.json index 83798352385..08751d318ef 100644 --- a/packages/artifacts/macos-x64/package.json +++ b/packages/artifacts/macos-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/macos-x64", - "version": "6.32.15", + "version": "6.32.16", "license": "MIT", "publishConfig": { "bin": { @@ -23,6 +23,6 @@ "pnpm6" ], "devDependencies": { - "@pnpm/macos-x64": "workspace:6.32.15" + "@pnpm/macos-x64": "workspace:6.32.16" } } diff --git a/packages/artifacts/win-x64/package.json b/packages/artifacts/win-x64/package.json index bc971950e5c..f690cf853f8 100644 --- a/packages/artifacts/win-x64/package.json +++ b/packages/artifacts/win-x64/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/win-x64", - "version": "6.32.15", + "version": "6.32.16", "license": "MIT", "publishConfig": { "bin": { @@ -23,6 +23,6 @@ "pnpm6" ], "devDependencies": { - "@pnpm/win-x64": "workspace:6.32.15" + "@pnpm/win-x64": "workspace:6.32.16" } } diff --git a/packages/cli-utils/CHANGELOG.md b/packages/cli-utils/CHANGELOG.md index b5f9315e3b4..35bbbf3d19a 100644 --- a/packages/cli-utils/CHANGELOG.md +++ b/packages/cli-utils/CHANGELOG.md @@ -1,5 +1,12 @@ # @pnpm/cli-utils +## 0.6.54 + +### Patch Changes + +- Updated dependencies [53b92ff2b] + - @pnpm/default-reporter@8.5.16 + ## 0.6.53 ### Patch Changes diff --git a/packages/cli-utils/package.json b/packages/cli-utils/package.json index 06428dac2d3..d7719484a89 100644 --- a/packages/cli-utils/package.json +++ b/packages/cli-utils/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/cli-utils", - "version": "0.6.53", + "version": "0.6.54", "description": "Utils for pnpm commands", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -28,14 +28,14 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/cli-utils#readme", "devDependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/logger": "^4.0.0", "@types/ramda": "0.27.39" }, "dependencies": { "@pnpm/cli-meta": "workspace:2.0.2", "@pnpm/config": "workspace:13.13.3", - "@pnpm/default-reporter": "workspace:8.5.15", + "@pnpm/default-reporter": "workspace:8.5.16", "@pnpm/error": "workspace:2.1.0", "@pnpm/manifest-utils": "workspace:2.1.10", "@pnpm/package-is-installable": "workspace:5.0.13", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 6e81eb2e6f5..96ff33d317e 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,18 @@ # @pnpm/core +## 2.9.0 + +### Minor Changes + +- 53b92ff2b: New option added for automatically installing missing peer dependencies: `autoInstallPeers`. + +### Patch Changes + +- Updated dependencies [53b92ff2b] +- Updated dependencies [53b92ff2b] + - @pnpm/resolve-dependencies@25.1.0 + - @pnpm/prune-lockfile@3.0.17 + ## 2.8.2 ### Patch Changes diff --git a/packages/core/package.json b/packages/core/package.json index 98b81b01c7b..6f542e9f2ef 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@pnpm/core", "description": "Fast, disk space efficient installation engine", - "version": "2.8.2", + "version": "2.9.0", "bugs": { "url": "https://github.com/pnpm/pnpm/issues" }, @@ -37,12 +37,12 @@ "@pnpm/package-requester": "workspace:17.0.3", "@pnpm/parse-overrides": "workspace:1.0.1", "@pnpm/parse-wanted-dependency": "workspace:2.0.0", - "@pnpm/prune-lockfile": "workspace:3.0.16", + "@pnpm/prune-lockfile": "workspace:3.0.17", "@pnpm/read-modules-dir": "workspace:3.0.1", "@pnpm/read-package-json": "workspace:5.0.12", "@pnpm/read-project-manifest": "workspace:2.0.13", "@pnpm/remove-bins": "workspace:2.0.14", - "@pnpm/resolve-dependencies": "workspace:25.0.10", + "@pnpm/resolve-dependencies": "workspace:25.1.0", "@pnpm/resolver-base": "workspace:8.1.6", "@pnpm/store-controller-types": "workspace:12.0.0", "@pnpm/symlink-dependency": "workspace:4.0.13", @@ -71,7 +71,7 @@ "@pnpm/assert-store": "workspace:*", "@pnpm/cafs": "workspace:3.0.16", "@pnpm/client": "workspace:6.1.4", - "@pnpm/core": "workspace:2.8.2", + "@pnpm/core": "workspace:2.9.0", "@pnpm/logger": "^4.0.0", "@pnpm/package-store": "workspace:12.1.15", "@pnpm/prepare": "workspace:*", diff --git a/packages/default-reporter/CHANGELOG.md b/packages/default-reporter/CHANGELOG.md index f9548a731e1..54317f2227e 100644 --- a/packages/default-reporter/CHANGELOG.md +++ b/packages/default-reporter/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/default-reporter +## 8.5.16 + +### Patch Changes + +- 53b92ff2b: Add hints to the peer dependencies error. + ## 8.5.15 ### Patch Changes diff --git a/packages/default-reporter/package.json b/packages/default-reporter/package.json index 33fcb2a91ad..7c5fb304868 100644 --- a/packages/default-reporter/package.json +++ b/packages/default-reporter/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/default-reporter", - "version": "8.5.15", + "version": "8.5.16", "description": "The default reporter of pnpm", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -54,7 +54,7 @@ "strip-ansi": "^6.0.0" }, "devDependencies": { - "@pnpm/default-reporter": "workspace:8.5.15", + "@pnpm/default-reporter": "workspace:8.5.16", "@pnpm/logger": "^4.0.0", "@types/normalize-path": "^3.0.0", "@types/ramda": "0.27.39", diff --git a/packages/exe/package.json b/packages/exe/package.json index 3dc3c9d2f27..16b6cdd36c6 100644 --- a/packages/exe/package.json +++ b/packages/exe/package.json @@ -1,7 +1,7 @@ { "name": "@pnpm/exe", "description": "Fast, disk space efficient package manager", - "version": "6.32.15", + "version": "6.32.16", "publishConfig": { "bin": { "pnpm": "pnpm" @@ -11,14 +11,14 @@ "url": "https://github.com/pnpm/pnpm/issues" }, "optionalDependencies": { - "@pnpm/linux-arm64": "workspace:6.32.15", - "@pnpm/linux-x64": "workspace:6.32.15", - "@pnpm/macos-arm64": "workspace:6.32.15", - "@pnpm/macos-x64": "workspace:6.32.15", - "@pnpm/win-x64": "workspace:6.32.15" + "@pnpm/linux-arm64": "workspace:6.32.16", + "@pnpm/linux-x64": "workspace:6.32.16", + "@pnpm/macos-arm64": "workspace:6.32.16", + "@pnpm/macos-x64": "workspace:6.32.16", + "@pnpm/win-x64": "workspace:6.32.16" }, "devDependencies": { - "@pnpm/exe": "workspace:6.32.15", + "@pnpm/exe": "workspace:6.32.16", "@zkochan/pkg": "0.0.0-2", "execa": "npm:safe-execa@^0.1.1" }, diff --git a/packages/filter-workspace-packages/CHANGELOG.md b/packages/filter-workspace-packages/CHANGELOG.md index 0a577c42e32..49110779534 100644 --- a/packages/filter-workspace-packages/CHANGELOG.md +++ b/packages/filter-workspace-packages/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/filter-workspace-packages +## 4.4.27 + +### Patch Changes + +- @pnpm/find-workspace-packages@3.1.46 + ## 4.4.26 ### Patch Changes diff --git a/packages/filter-workspace-packages/package.json b/packages/filter-workspace-packages/package.json index 9bc9385b649..cb2c90e95bf 100644 --- a/packages/filter-workspace-packages/package.json +++ b/packages/filter-workspace-packages/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/filter-workspace-packages", - "version": "4.4.26", + "version": "4.4.27", "description": "Filters packages in a workspace", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -30,7 +30,7 @@ "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/filter-workspace-packages#readme", "dependencies": { "@pnpm/error": "workspace:2.1.0", - "@pnpm/find-workspace-packages": "workspace:3.1.45", + "@pnpm/find-workspace-packages": "workspace:3.1.46", "@pnpm/matcher": "workspace:2.0.0", "execa": "npm:safe-execa@^0.1.1", "find-up": "^5.0.0", @@ -40,7 +40,7 @@ "ramda": "^0.27.1" }, "devDependencies": { - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@types/is-ci": "^3.0.0", "@types/is-windows": "^1.0.0", "@types/micromatch": "^4.0.1", diff --git a/packages/find-workspace-packages/CHANGELOG.md b/packages/find-workspace-packages/CHANGELOG.md index 6b57f411f35..b38021fea9b 100644 --- a/packages/find-workspace-packages/CHANGELOG.md +++ b/packages/find-workspace-packages/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/find-workspace-packages +## 3.1.46 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 3.1.45 ### Patch Changes diff --git a/packages/find-workspace-packages/package.json b/packages/find-workspace-packages/package.json index f61ba478c49..2f6a9408a6d 100644 --- a/packages/find-workspace-packages/package.json +++ b/packages/find-workspace-packages/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/find-workspace-packages", - "version": "3.1.45", + "version": "3.1.46", "description": "Finds packages inside a workspace", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -29,7 +29,7 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/find-workspace-packages#readme", "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/constants": "workspace:5.0.0", "@pnpm/types": "workspace:7.10.0", "find-packages": "workspace:8.0.13", @@ -37,6 +37,6 @@ }, "funding": "https://opencollective.com/pnpm", "devDependencies": { - "@pnpm/find-workspace-packages": "workspace:3.1.45" + "@pnpm/find-workspace-packages": "workspace:3.1.46" } } diff --git a/packages/make-dedicated-lockfile/CHANGELOG.md b/packages/make-dedicated-lockfile/CHANGELOG.md index 5082fa33235..4fe4d156188 100644 --- a/packages/make-dedicated-lockfile/CHANGELOG.md +++ b/packages/make-dedicated-lockfile/CHANGELOG.md @@ -1,5 +1,12 @@ # @pnpm/make-dedicated-lockfile +## 0.2.27 + +### Patch Changes + +- Updated dependencies [53b92ff2b] + - @pnpm/prune-lockfile@3.0.17 + ## 0.2.26 ### Patch Changes diff --git a/packages/make-dedicated-lockfile/package.json b/packages/make-dedicated-lockfile/package.json index 92fad9d0a68..f8c420fa21e 100644 --- a/packages/make-dedicated-lockfile/package.json +++ b/packages/make-dedicated-lockfile/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/make-dedicated-lockfile", - "version": "0.2.26", + "version": "0.2.27", "description": "Creates a dedicated lockfile for a subset of workspace projects", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -38,7 +38,7 @@ "@pnpm/find-workspace-dir": "workspace:3.0.2", "@pnpm/lockfile-file": "workspace:4.3.1", "@pnpm/logger": "^4.0.0", - "@pnpm/prune-lockfile": "workspace:3.0.16", + "@pnpm/prune-lockfile": "workspace:3.0.17", "@pnpm/read-project-manifest": "workspace:2.0.13", "@pnpm/types": "workspace:7.10.0", "ramda": "^0.27.1", @@ -46,7 +46,7 @@ }, "funding": "https://opencollective.com/pnpm", "devDependencies": { - "@pnpm/make-dedicated-lockfile": "workspace:0.2.26", + "@pnpm/make-dedicated-lockfile": "workspace:0.2.27", "@pnpm/test-fixtures": "workspace:*", "@types/ramda": "0.27.39" } diff --git a/packages/plugin-commands-audit/CHANGELOG.md b/packages/plugin-commands-audit/CHANGELOG.md index 3b1ebce2c1c..f29a70a8c81 100644 --- a/packages/plugin-commands-audit/CHANGELOG.md +++ b/packages/plugin-commands-audit/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-audit +## 5.1.47 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 5.1.46 ### Patch Changes diff --git a/packages/plugin-commands-audit/package.json b/packages/plugin-commands-audit/package.json index c56b388acda..46728abf30c 100644 --- a/packages/plugin-commands-audit/package.json +++ b/packages/plugin-commands-audit/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-audit", - "version": "5.1.46", + "version": "5.1.47", "description": "pnpm commands for dependencies audit", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -31,7 +31,7 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-audit#readme", "devDependencies": { - "@pnpm/plugin-commands-audit": "workspace:5.1.46", + "@pnpm/plugin-commands-audit": "workspace:5.1.47", "@pnpm/test-fixtures": "workspace:*", "@types/ramda": "0.27.39", "@types/zkochan__table": "npm:@types/table@6.0.0", @@ -42,7 +42,7 @@ }, "dependencies": { "@pnpm/audit": "workspace:2.2.9", - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/config": "workspace:13.13.3", "@pnpm/constants": "workspace:5.0.0", "@pnpm/error": "workspace:2.1.0", diff --git a/packages/plugin-commands-env/CHANGELOG.md b/packages/plugin-commands-env/CHANGELOG.md index 5fe7e8b0a9b..9282e8d8391 100644 --- a/packages/plugin-commands-env/CHANGELOG.md +++ b/packages/plugin-commands-env/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-env +## 1.4.21 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 1.4.20 ### Patch Changes diff --git a/packages/plugin-commands-env/package.json b/packages/plugin-commands-env/package.json index 2a90d251e25..6c0d0ffb5d7 100644 --- a/packages/plugin-commands-env/package.json +++ b/packages/plugin-commands-env/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-env", - "version": "1.4.20", + "version": "1.4.21", "description": "pnpm commands for managing Node.js", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -30,7 +30,7 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-env#readme", "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", "@pnpm/fetch": "workspace:4.2.5", @@ -50,7 +50,7 @@ }, "funding": "https://opencollective.com/pnpm", "devDependencies": { - "@pnpm/plugin-commands-env": "workspace:1.4.20", + "@pnpm/plugin-commands-env": "workspace:1.4.21", "@pnpm/prepare": "workspace:*", "@types/adm-zip": "^0.4.34", "@types/semver": "^7.3.4", diff --git a/packages/plugin-commands-installation/CHANGELOG.md b/packages/plugin-commands-installation/CHANGELOG.md index 961465db7e6..03d06d6aebe 100644 --- a/packages/plugin-commands-installation/CHANGELOG.md +++ b/packages/plugin-commands-installation/CHANGELOG.md @@ -1,5 +1,17 @@ # @pnpm/plugin-commands-installation +## 8.4.16 + +### Patch Changes + +- 53b92ff2b: When `auto-install-peers` is set to `true`, automatically install missing peer dependencies without writing them to `package.json` as dependencies. This makes pnpm handle peer dependencies the same way as npm v7 [#4776](https://github.com/pnpm/pnpm/pull/4776). +- Updated dependencies [53b92ff2b] + - @pnpm/core@2.9.0 + - @pnpm/cli-utils@0.6.54 + - @pnpm/find-workspace-packages@3.1.46 + - @pnpm/plugin-commands-rebuild@5.4.22 + - @pnpm/filter-workspace-packages@4.4.27 + ## 8.4.15 ### Patch Changes diff --git a/packages/plugin-commands-installation/package.json b/packages/plugin-commands-installation/package.json index 6858d770a01..7a7fc96ee34 100644 --- a/packages/plugin-commands-installation/package.json +++ b/packages/plugin-commands-installation/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-installation", - "version": "8.4.15", + "version": "8.4.16", "description": "Commands for installation", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -37,7 +37,7 @@ "@pnpm/lockfile-types": "workspace:3.2.0", "@pnpm/logger": "^4.0.0", "@pnpm/modules-yaml": "workspace:9.1.1", - "@pnpm/plugin-commands-installation": "workspace:8.4.15", + "@pnpm/plugin-commands-installation": "workspace:8.4.16", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@pnpm/test-fixtures": "workspace:*", @@ -58,24 +58,24 @@ "symlink-dir": "^5.0.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/colorize-semver-diff": "^1.0.1", "@pnpm/command": "workspace:2.0.0", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/constants": "workspace:5.0.0", - "@pnpm/core": "workspace:2.8.2", + "@pnpm/core": "workspace:2.9.0", "@pnpm/error": "workspace:2.1.0", - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/find-workspace-dir": "workspace:3.0.2", - "@pnpm/find-workspace-packages": "workspace:3.1.45", + "@pnpm/find-workspace-packages": "workspace:3.1.46", "@pnpm/graceful-fs": "workspace:1.0.0", "@pnpm/manifest-utils": "workspace:2.1.10", "@pnpm/matcher": "workspace:2.0.0", "@pnpm/outdated": "workspace:9.0.34", "@pnpm/package-store": "workspace:12.1.15", "@pnpm/parse-wanted-dependency": "workspace:2.0.0", - "@pnpm/plugin-commands-rebuild": "workspace:5.4.21", + "@pnpm/plugin-commands-rebuild": "workspace:5.4.22", "@pnpm/pnpmfile": "workspace:1.2.6", "@pnpm/read-project-manifest": "workspace:2.0.13", "@pnpm/resolver-base": "workspace:8.1.6", diff --git a/packages/plugin-commands-listing/CHANGELOG.md b/packages/plugin-commands-listing/CHANGELOG.md index 01753a4da02..bce58004bc1 100644 --- a/packages/plugin-commands-listing/CHANGELOG.md +++ b/packages/plugin-commands-listing/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-listing +## 4.1.16 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 4.1.15 ### Patch Changes diff --git a/packages/plugin-commands-listing/package.json b/packages/plugin-commands-listing/package.json index 046247ad112..79ae2c9906a 100644 --- a/packages/plugin-commands-listing/package.json +++ b/packages/plugin-commands-listing/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-listing", - "version": "4.1.15", + "version": "4.1.16", "description": "The list and why commands of pnpm", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -33,10 +33,10 @@ "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-listing#readme", "devDependencies": { "@pnpm/constants": "workspace:5.0.0", - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-installation": "workspace:8.4.15", - "@pnpm/plugin-commands-listing": "workspace:4.1.15", + "@pnpm/plugin-commands-installation": "workspace:8.4.16", + "@pnpm/plugin-commands-listing": "workspace:4.1.16", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@types/ramda": "0.27.39", @@ -45,7 +45,7 @@ "write-yaml-file": "^4.2.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", diff --git a/packages/plugin-commands-outdated/CHANGELOG.md b/packages/plugin-commands-outdated/CHANGELOG.md index 7123d27e9ff..51c9ad6b029 100644 --- a/packages/plugin-commands-outdated/CHANGELOG.md +++ b/packages/plugin-commands-outdated/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-outdated +## 5.1.15 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 5.1.14 ### Patch Changes diff --git a/packages/plugin-commands-outdated/package.json b/packages/plugin-commands-outdated/package.json index fb60e2e1dcb..b13f1be930a 100644 --- a/packages/plugin-commands-outdated/package.json +++ b/packages/plugin-commands-outdated/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-outdated", - "version": "5.1.14", + "version": "5.1.15", "description": "The outdated command of pnpm", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -34,9 +34,9 @@ "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-outdated#readme", "devDependencies": { "@pnpm/constants": "workspace:5.0.0", - "@pnpm/filter-workspace-packages": "workspace:4.4.26", - "@pnpm/plugin-commands-installation": "workspace:8.4.15", - "@pnpm/plugin-commands-outdated": "workspace:5.1.14", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", + "@pnpm/plugin-commands-installation": "workspace:8.4.16", + "@pnpm/plugin-commands-outdated": "workspace:5.1.15", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@types/lru-cache": "^5.1.0", @@ -45,7 +45,7 @@ "@types/zkochan__table": "npm:@types/table@6.0.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/colorize-semver-diff": "^1.0.1", "@pnpm/command": "workspace:2.0.0", "@pnpm/common-cli-options-help": "workspace:0.8.0", diff --git a/packages/plugin-commands-publishing/CHANGELOG.md b/packages/plugin-commands-publishing/CHANGELOG.md index e18f16564f3..f20f0448333 100644 --- a/packages/plugin-commands-publishing/CHANGELOG.md +++ b/packages/plugin-commands-publishing/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-publishing +## 4.5.9 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 4.5.8 ### Patch Changes diff --git a/packages/plugin-commands-publishing/package.json b/packages/plugin-commands-publishing/package.json index bd4b63f7e98..dd16c9f1a52 100644 --- a/packages/plugin-commands-publishing/package.json +++ b/packages/plugin-commands-publishing/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-publishing", - "version": "4.5.8", + "version": "4.5.9", "description": "The pack and publish commands of pnpm", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -35,9 +35,9 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-publishing#readme", "devDependencies": { - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-publishing": "workspace:4.5.8", + "@pnpm/plugin-commands-publishing": "workspace:4.5.9", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@types/cross-spawn": "^6.0.2", @@ -58,7 +58,7 @@ "write-yaml-file": "^4.2.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/client": "workspace:6.1.4", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", diff --git a/packages/plugin-commands-rebuild/CHANGELOG.md b/packages/plugin-commands-rebuild/CHANGELOG.md index 0da1018570f..5431dfbe164 100644 --- a/packages/plugin-commands-rebuild/CHANGELOG.md +++ b/packages/plugin-commands-rebuild/CHANGELOG.md @@ -1,5 +1,12 @@ # @pnpm/plugin-commands-rebuild +## 5.4.22 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 +- @pnpm/find-workspace-packages@3.1.46 + ## 5.4.21 ### Patch Changes diff --git a/packages/plugin-commands-rebuild/package.json b/packages/plugin-commands-rebuild/package.json index 8b4c8b76295..3b24707c7a4 100644 --- a/packages/plugin-commands-rebuild/package.json +++ b/packages/plugin-commands-rebuild/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-rebuild", - "version": "5.4.21", + "version": "5.4.22", "description": "Commands for rebuilding dependencies", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -33,9 +33,9 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-rebuild#readme", "devDependencies": { - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-rebuild": "workspace:5.4.21", + "@pnpm/plugin-commands-rebuild": "workspace:5.4.22", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@pnpm/test-fixtures": "workspace:*", @@ -48,12 +48,12 @@ "write-yaml-file": "^4.2.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/constants": "workspace:5.0.0", "@pnpm/core-loggers": "workspace:6.1.4", - "@pnpm/find-workspace-packages": "workspace:3.1.45", + "@pnpm/find-workspace-packages": "workspace:3.1.46", "@pnpm/get-context": "workspace:5.3.8", "@pnpm/lifecycle": "workspace:12.1.7", "@pnpm/link-bins": "workspace:6.2.14", diff --git a/packages/plugin-commands-script-runners/CHANGELOG.md b/packages/plugin-commands-script-runners/CHANGELOG.md index 35e2d79cbbc..6b4bacf0af7 100644 --- a/packages/plugin-commands-script-runners/CHANGELOG.md +++ b/packages/plugin-commands-script-runners/CHANGELOG.md @@ -1,5 +1,13 @@ # @pnpm/plugin-commands-script-runners +## 4.6.10 + +### Patch Changes + +- Updated dependencies [53b92ff2b] + - @pnpm/plugin-commands-installation@8.4.16 + - @pnpm/cli-utils@0.6.54 + ## 4.6.9 ### Patch Changes diff --git a/packages/plugin-commands-script-runners/package.json b/packages/plugin-commands-script-runners/package.json index 7d2a52d23e7..834ff067aae 100644 --- a/packages/plugin-commands-script-runners/package.json +++ b/packages/plugin-commands-script-runners/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-script-runners", - "version": "4.6.9", + "version": "4.6.10", "description": "Commands for running scripts", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -34,9 +34,9 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-script-runners#readme", "devDependencies": { - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-script-runners": "workspace:4.6.9", + "@pnpm/plugin-commands-script-runners": "workspace:4.6.10", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@types/is-windows": "^1.0.0", @@ -45,14 +45,14 @@ "write-yaml-file": "^4.2.0" }, "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/command": "workspace:2.0.0", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", "@pnpm/lifecycle": "workspace:12.1.7", "@pnpm/package-bins": "workspace:5.0.12", - "@pnpm/plugin-commands-installation": "workspace:8.4.15", + "@pnpm/plugin-commands-installation": "workspace:8.4.16", "@pnpm/read-package-json": "workspace:5.0.12", "@pnpm/read-project-manifest": "workspace:2.0.13", "@pnpm/sort-packages": "workspace:2.1.8", diff --git a/packages/plugin-commands-server/CHANGELOG.md b/packages/plugin-commands-server/CHANGELOG.md index 8a58a51a9ba..903e4be4c91 100644 --- a/packages/plugin-commands-server/CHANGELOG.md +++ b/packages/plugin-commands-server/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-server +## 3.0.77 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 3.0.76 ### Patch Changes diff --git a/packages/plugin-commands-server/package.json b/packages/plugin-commands-server/package.json index 9914a463973..0e4681199bf 100644 --- a/packages/plugin-commands-server/package.json +++ b/packages/plugin-commands-server/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-server", - "version": "3.0.76", + "version": "3.0.77", "description": "Commands for controlling the store server", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -30,14 +30,14 @@ "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-server#readme", "devDependencies": { "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-server": "workspace:3.0.76", + "@pnpm/plugin-commands-server": "workspace:3.0.77", "@types/is-windows": "^1.0.0", "@types/ramda": "0.27.39", "@types/signal-exit": "^3.0.0" }, "dependencies": { "@pnpm/cli-meta": "workspace:2.0.2", - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", diff --git a/packages/plugin-commands-setup/CHANGELOG.md b/packages/plugin-commands-setup/CHANGELOG.md index 19edc74474a..26082f19e9f 100644 --- a/packages/plugin-commands-setup/CHANGELOG.md +++ b/packages/plugin-commands-setup/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-setup +## 1.1.41 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 1.1.40 ### Patch Changes diff --git a/packages/plugin-commands-setup/package.json b/packages/plugin-commands-setup/package.json index 4b32aea3cce..c6a14a743d4 100644 --- a/packages/plugin-commands-setup/package.json +++ b/packages/plugin-commands-setup/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-setup", - "version": "1.1.40", + "version": "1.1.41", "description": "pnpm commands for setting up pnpm", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -30,7 +30,7 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-setup#readme", "dependencies": { - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/error": "workspace:2.1.0", "execa": "npm:safe-execa@^0.1.1", "render-help": "^1.0.1", @@ -42,7 +42,7 @@ }, "devDependencies": { "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-setup": "workspace:1.1.40", + "@pnpm/plugin-commands-setup": "workspace:1.1.41", "@pnpm/prepare": "workspace:*", "@types/string.prototype.matchall": "^4.0.1" } diff --git a/packages/plugin-commands-store/CHANGELOG.md b/packages/plugin-commands-store/CHANGELOG.md index 281503ff5e1..eb30398e8db 100644 --- a/packages/plugin-commands-store/CHANGELOG.md +++ b/packages/plugin-commands-store/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/plugin-commands-store +## 4.1.20 + +### Patch Changes + +- @pnpm/cli-utils@0.6.54 + ## 4.1.19 ### Patch Changes diff --git a/packages/plugin-commands-store/package.json b/packages/plugin-commands-store/package.json index a5050d5fcfa..31955be9bc0 100644 --- a/packages/plugin-commands-store/package.json +++ b/packages/plugin-commands-store/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/plugin-commands-store", - "version": "4.1.19", + "version": "4.1.20", "description": "Commands for controlling the store", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -36,7 +36,7 @@ "@pnpm/assert-store": "workspace:*", "@pnpm/lockfile-file": "workspace:4.3.1", "@pnpm/logger": "^4.0.0", - "@pnpm/plugin-commands-store": "workspace:4.1.19", + "@pnpm/plugin-commands-store": "workspace:4.1.20", "@pnpm/prepare": "workspace:*", "@pnpm/registry-mock": "2.17.0", "@types/archy": "0.0.31", @@ -50,7 +50,7 @@ }, "dependencies": { "@pnpm/cafs": "workspace:3.0.16", - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/config": "workspace:13.13.3", "@pnpm/error": "workspace:2.1.0", "@pnpm/get-context": "workspace:5.3.8", diff --git a/packages/pnpm/CHANGELOG.md b/packages/pnpm/CHANGELOG.md index ece1a18d706..db97b477a14 100644 --- a/packages/pnpm/CHANGELOG.md +++ b/packages/pnpm/CHANGELOG.md @@ -1,5 +1,11 @@ # pnpm +## 6.32.16 + +### Patch Changes + +- When `auto-install-peers` is set to `true`, automatically install missing peer dependencies without writing them to `package.json` as dependencies. This makes pnpm handle peer dependencies the same way as npm v7 [#4776](https://github.com/pnpm/pnpm/pull/4776). + ## 6.32.15 ### Patch Changes diff --git a/packages/pnpm/package.json b/packages/pnpm/package.json index ab69cabfa73..7dc1617a893 100644 --- a/packages/pnpm/package.json +++ b/packages/pnpm/package.json @@ -1,7 +1,7 @@ { "name": "pnpm", "description": "Fast, disk space efficient package manager", - "version": "6.32.15", + "version": "6.32.16", "bin": { "pnpm": "bin/pnpm.cjs", "pnpx": "bin/pnpx.cjs" @@ -22,35 +22,35 @@ "@pnpm/assert-project": "workspace:*", "@pnpm/byline": "^1.0.0", "@pnpm/cli-meta": "workspace:2.0.2", - "@pnpm/cli-utils": "workspace:0.6.53", + "@pnpm/cli-utils": "workspace:0.6.54", "@pnpm/client": "workspace:6.1.4", "@pnpm/command": "workspace:2.0.0", "@pnpm/common-cli-options-help": "workspace:0.8.0", "@pnpm/config": "workspace:13.13.3", "@pnpm/constants": "workspace:5.0.0", "@pnpm/core-loggers": "workspace:6.1.4", - "@pnpm/default-reporter": "workspace:8.5.15", + "@pnpm/default-reporter": "workspace:8.5.16", "@pnpm/file-reporter": "workspace:2.0.0", - "@pnpm/filter-workspace-packages": "workspace:4.4.26", + "@pnpm/filter-workspace-packages": "workspace:4.4.27", "@pnpm/find-workspace-dir": "workspace:3.0.2", - "@pnpm/find-workspace-packages": "workspace:3.1.45", + "@pnpm/find-workspace-packages": "workspace:3.1.46", "@pnpm/lockfile-types": "workspace:3.2.0", "@pnpm/logger": "^4.0.0", "@pnpm/modules-yaml": "workspace:9.1.1", "@pnpm/nopt": "^0.2.1", "@pnpm/parse-cli-args": "workspace:4.4.1", "@pnpm/pick-registry-for-package": "workspace:2.0.11", - "@pnpm/plugin-commands-audit": "workspace:5.1.46", - "@pnpm/plugin-commands-env": "workspace:1.4.20", - "@pnpm/plugin-commands-installation": "workspace:8.4.15", - "@pnpm/plugin-commands-listing": "workspace:4.1.15", - "@pnpm/plugin-commands-outdated": "workspace:5.1.14", - "@pnpm/plugin-commands-publishing": "workspace:4.5.8", - "@pnpm/plugin-commands-rebuild": "workspace:5.4.21", - "@pnpm/plugin-commands-script-runners": "workspace:4.6.9", - "@pnpm/plugin-commands-server": "workspace:3.0.76", - "@pnpm/plugin-commands-setup": "workspace:1.1.40", - "@pnpm/plugin-commands-store": "workspace:4.1.19", + "@pnpm/plugin-commands-audit": "workspace:5.1.47", + "@pnpm/plugin-commands-env": "workspace:1.4.21", + "@pnpm/plugin-commands-installation": "workspace:8.4.16", + "@pnpm/plugin-commands-listing": "workspace:4.1.16", + "@pnpm/plugin-commands-outdated": "workspace:5.1.15", + "@pnpm/plugin-commands-publishing": "workspace:4.5.9", + "@pnpm/plugin-commands-rebuild": "workspace:5.4.22", + "@pnpm/plugin-commands-script-runners": "workspace:4.6.10", + "@pnpm/plugin-commands-server": "workspace:3.0.77", + "@pnpm/plugin-commands-setup": "workspace:1.1.41", + "@pnpm/plugin-commands-store": "workspace:4.1.20", "@pnpm/prepare": "workspace:*", "@pnpm/read-package-json": "workspace:5.0.12", "@pnpm/read-project-manifest": "workspace:2.0.13", diff --git a/packages/prune-lockfile/CHANGELOG.md b/packages/prune-lockfile/CHANGELOG.md index 7a1f891c91e..028a56dc4f2 100644 --- a/packages/prune-lockfile/CHANGELOG.md +++ b/packages/prune-lockfile/CHANGELOG.md @@ -1,5 +1,11 @@ # @pnpm/prune-lockfile +## 3.0.17 + +### Patch Changes + +- 53b92ff2b: Don't prune peer deps. + ## 3.0.16 ### Patch Changes diff --git a/packages/prune-lockfile/package.json b/packages/prune-lockfile/package.json index 8190cf5bfeb..54006238407 100644 --- a/packages/prune-lockfile/package.json +++ b/packages/prune-lockfile/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/prune-lockfile", - "version": "3.0.16", + "version": "3.0.17", "description": "Prune a pnpm-lock.yaml", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -31,7 +31,7 @@ }, "homepage": "https://github.com/pnpm/pnpm/blob/main/packages/prune-lockfile#readme", "devDependencies": { - "@pnpm/prune-lockfile": "workspace:3.0.16", + "@pnpm/prune-lockfile": "workspace:3.0.17", "@types/ramda": "0.27.39", "yaml-tag": "1.1.0" }, diff --git a/packages/resolve-dependencies/CHANGELOG.md b/packages/resolve-dependencies/CHANGELOG.md index cb87dc9e1a3..b3df0546486 100644 --- a/packages/resolve-dependencies/CHANGELOG.md +++ b/packages/resolve-dependencies/CHANGELOG.md @@ -1,5 +1,16 @@ # @pnpm/resolve-dependencies +## 25.1.0 + +### Minor Changes + +- 53b92ff2b: New option added for automatically installing missing peer dependencies: `autoInstallPeers`. + +### Patch Changes + +- Updated dependencies [53b92ff2b] + - @pnpm/prune-lockfile@3.0.17 + ## 25.0.10 ### Patch Changes diff --git a/packages/resolve-dependencies/package.json b/packages/resolve-dependencies/package.json index 055ce23eb40..15fbb1b20f7 100644 --- a/packages/resolve-dependencies/package.json +++ b/packages/resolve-dependencies/package.json @@ -1,6 +1,6 @@ { "name": "@pnpm/resolve-dependencies", - "version": "25.0.10", + "version": "25.1.0", "description": "Resolves dependency graph of a package", "main": "lib/index.js", "types": "lib/index.d.ts", @@ -37,7 +37,7 @@ "@pnpm/manifest-utils": "workspace:2.1.10", "@pnpm/npm-resolver": "workspace:12.1.8", "@pnpm/pick-registry-for-package": "workspace:2.0.11", - "@pnpm/prune-lockfile": "workspace:3.0.16", + "@pnpm/prune-lockfile": "workspace:3.0.17", "@pnpm/read-package-json": "workspace:5.0.12", "@pnpm/resolver-base": "workspace:8.1.6", "@pnpm/store-controller-types": "workspace:12.0.0", @@ -60,7 +60,7 @@ }, "devDependencies": { "@pnpm/logger": "^4.0.0", - "@pnpm/resolve-dependencies": "workspace:25.0.10", + "@pnpm/resolve-dependencies": "workspace:25.1.0", "@types/ramda": "0.27.39", "@types/semver": "^7.3.4" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d26b6f9e342..f208aa51752 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -118,31 +118,31 @@ importers: packages/artifacts/linux-arm64: specifiers: - '@pnpm/linux-arm64': workspace:6.32.15 + '@pnpm/linux-arm64': workspace:6.32.16 devDependencies: '@pnpm/linux-arm64': 'link:' packages/artifacts/linux-x64: specifiers: - '@pnpm/linux-x64': workspace:6.32.15 + '@pnpm/linux-x64': workspace:6.32.16 devDependencies: '@pnpm/linux-x64': 'link:' packages/artifacts/macos-arm64: specifiers: - '@pnpm/macos-arm64': workspace:6.32.15 + '@pnpm/macos-arm64': workspace:6.32.16 devDependencies: '@pnpm/macos-arm64': 'link:' packages/artifacts/macos-x64: specifiers: - '@pnpm/macos-x64': workspace:6.32.15 + '@pnpm/macos-x64': workspace:6.32.16 devDependencies: '@pnpm/macos-x64': 'link:' packages/artifacts/win-x64: specifiers: - '@pnpm/win-x64': workspace:6.32.15 + '@pnpm/win-x64': workspace:6.32.16 devDependencies: '@pnpm/win-x64': 'link:' @@ -270,9 +270,9 @@ importers: packages/cli-utils: specifiers: '@pnpm/cli-meta': workspace:2.0.2 - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/config': workspace:13.13.3 - '@pnpm/default-reporter': workspace:8.5.15 + '@pnpm/default-reporter': workspace:8.5.16 '@pnpm/error': workspace:2.1.0 '@pnpm/logger': ^4.0.0 '@pnpm/manifest-utils': workspace:2.1.10 @@ -395,7 +395,7 @@ importers: '@pnpm/calc-dep-state': workspace:1.0.0 '@pnpm/client': workspace:6.1.4 '@pnpm/constants': workspace:5.0.0 - '@pnpm/core': workspace:2.8.2 + '@pnpm/core': workspace:2.9.0 '@pnpm/core-loggers': workspace:6.1.4 '@pnpm/error': workspace:2.1.0 '@pnpm/filter-lockfile': workspace:5.0.21 @@ -418,13 +418,13 @@ importers: '@pnpm/parse-overrides': workspace:1.0.1 '@pnpm/parse-wanted-dependency': workspace:2.0.0 '@pnpm/prepare': workspace:* - '@pnpm/prune-lockfile': workspace:3.0.16 + '@pnpm/prune-lockfile': workspace:3.0.17 '@pnpm/read-modules-dir': workspace:3.0.1 '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 '@pnpm/registry-mock': 2.17.0 '@pnpm/remove-bins': workspace:2.0.14 - '@pnpm/resolve-dependencies': workspace:25.0.10 + '@pnpm/resolve-dependencies': workspace:25.1.0 '@pnpm/resolver-base': workspace:8.1.6 '@pnpm/store-controller-types': workspace:12.0.0 '@pnpm/store-path': ^5.0.0 @@ -570,7 +570,7 @@ importers: specifiers: '@pnpm/config': workspace:13.13.3 '@pnpm/core-loggers': workspace:6.1.4 - '@pnpm/default-reporter': workspace:8.5.15 + '@pnpm/default-reporter': workspace:8.5.16 '@pnpm/error': workspace:2.1.0 '@pnpm/logger': ^4.0.0 '@pnpm/render-peer-issues': workspace:1.1.2 @@ -736,12 +736,12 @@ importers: packages/exe: specifiers: - '@pnpm/exe': workspace:6.32.15 - '@pnpm/linux-arm64': workspace:6.32.15 - '@pnpm/linux-x64': workspace:6.32.15 - '@pnpm/macos-arm64': workspace:6.32.15 - '@pnpm/macos-x64': workspace:6.32.15 - '@pnpm/win-x64': workspace:6.32.15 + '@pnpm/exe': workspace:6.32.16 + '@pnpm/linux-arm64': workspace:6.32.16 + '@pnpm/linux-x64': workspace:6.32.16 + '@pnpm/macos-arm64': workspace:6.32.16 + '@pnpm/macos-x64': workspace:6.32.16 + '@pnpm/win-x64': workspace:6.32.16 '@zkochan/pkg': 0.0.0-2 execa: npm:safe-execa@^0.1.1 optionalDependencies: @@ -874,8 +874,8 @@ importers: packages/filter-workspace-packages: specifiers: '@pnpm/error': workspace:2.1.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 - '@pnpm/find-workspace-packages': workspace:3.1.45 + '@pnpm/filter-workspace-packages': workspace:4.4.27 + '@pnpm/find-workspace-packages': workspace:3.1.46 '@pnpm/matcher': workspace:2.0.0 '@types/is-ci': ^3.0.0 '@types/is-windows': ^1.0.0 @@ -942,9 +942,9 @@ importers: packages/find-workspace-packages: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/constants': workspace:5.0.0 - '@pnpm/find-workspace-packages': workspace:3.1.45 + '@pnpm/find-workspace-packages': workspace:3.1.46 '@pnpm/types': workspace:7.10.0 find-packages: workspace:8.0.13 read-yaml-file: ^2.1.0 @@ -1503,8 +1503,8 @@ importers: '@pnpm/find-workspace-dir': workspace:3.0.2 '@pnpm/lockfile-file': workspace:4.3.1 '@pnpm/logger': ^4.0.0 - '@pnpm/make-dedicated-lockfile': workspace:0.2.26 - '@pnpm/prune-lockfile': workspace:3.0.16 + '@pnpm/make-dedicated-lockfile': workspace:0.2.27 + '@pnpm/prune-lockfile': workspace:3.0.17 '@pnpm/read-project-manifest': workspace:2.0.13 '@pnpm/test-fixtures': workspace:* '@pnpm/types': workspace:7.10.0 @@ -2033,12 +2033,12 @@ importers: packages/plugin-commands-audit: specifiers: '@pnpm/audit': workspace:2.2.9 - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/config': workspace:13.13.3 '@pnpm/constants': workspace:5.0.0 '@pnpm/error': workspace:2.1.0 '@pnpm/lockfile-file': workspace:4.3.1 - '@pnpm/plugin-commands-audit': workspace:5.1.46 + '@pnpm/plugin-commands-audit': workspace:5.1.47 '@pnpm/read-project-manifest': workspace:2.0.13 '@pnpm/test-fixtures': workspace:* '@pnpm/types': workspace:7.10.0 @@ -2077,13 +2077,13 @@ importers: packages/plugin-commands-env: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/config': workspace:13.13.3 '@pnpm/error': workspace:2.1.0 '@pnpm/fetch': workspace:4.2.5 '@pnpm/fetcher-base': workspace:11.1.6 '@pnpm/package-store': workspace:12.1.15 - '@pnpm/plugin-commands-env': workspace:1.4.20 + '@pnpm/plugin-commands-env': workspace:1.4.21 '@pnpm/prepare': workspace:* '@pnpm/store-path': ^5.0.0 '@pnpm/tarball-fetcher': workspace:9.3.17 @@ -2133,17 +2133,17 @@ importers: packages/plugin-commands-installation: specifiers: '@pnpm/assert-project': workspace:* - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/colorize-semver-diff': ^1.0.1 '@pnpm/command': workspace:2.0.0 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/constants': workspace:5.0.0 - '@pnpm/core': workspace:2.8.2 + '@pnpm/core': workspace:2.9.0 '@pnpm/error': workspace:2.1.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/find-workspace-dir': workspace:3.0.2 - '@pnpm/find-workspace-packages': workspace:3.1.45 + '@pnpm/find-workspace-packages': workspace:3.1.46 '@pnpm/graceful-fs': workspace:1.0.0 '@pnpm/lockfile-types': workspace:3.2.0 '@pnpm/logger': ^4.0.0 @@ -2153,8 +2153,8 @@ importers: '@pnpm/outdated': workspace:9.0.34 '@pnpm/package-store': workspace:12.1.15 '@pnpm/parse-wanted-dependency': workspace:2.0.0 - '@pnpm/plugin-commands-installation': workspace:8.4.15 - '@pnpm/plugin-commands-rebuild': workspace:5.4.21 + '@pnpm/plugin-commands-installation': workspace:8.4.16 + '@pnpm/plugin-commands-rebuild': workspace:5.4.22 '@pnpm/pnpmfile': workspace:1.2.6 '@pnpm/prepare': workspace:* '@pnpm/read-project-manifest': workspace:2.0.13 @@ -2275,16 +2275,16 @@ importers: packages/plugin-commands-listing: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/constants': workspace:5.0.0 '@pnpm/error': workspace:2.1.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/list': workspace:6.3.5 '@pnpm/logger': ^4.0.0 - '@pnpm/plugin-commands-installation': workspace:8.4.15 - '@pnpm/plugin-commands-listing': workspace:4.1.15 + '@pnpm/plugin-commands-installation': workspace:8.4.16 + '@pnpm/plugin-commands-listing': workspace:4.1.16 '@pnpm/prepare': workspace:* '@pnpm/registry-mock': 2.17.0 '@pnpm/types': workspace:7.10.0 @@ -2318,7 +2318,7 @@ importers: packages/plugin-commands-outdated: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/colorize-semver-diff': ^1.0.1 '@pnpm/command': workspace:2.0.0 '@pnpm/common-cli-options-help': workspace:0.8.0 @@ -2326,13 +2326,13 @@ importers: '@pnpm/constants': workspace:5.0.0 '@pnpm/default-resolver': workspace:14.0.13 '@pnpm/error': workspace:2.1.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/lockfile-file': workspace:4.3.1 '@pnpm/matcher': workspace:2.0.0 '@pnpm/modules-yaml': workspace:9.1.1 '@pnpm/outdated': workspace:9.0.34 - '@pnpm/plugin-commands-installation': workspace:8.4.15 - '@pnpm/plugin-commands-outdated': workspace:5.1.14 + '@pnpm/plugin-commands-installation': workspace:8.4.16 + '@pnpm/plugin-commands-outdated': workspace:5.1.15 '@pnpm/prepare': workspace:* '@pnpm/registry-mock': 2.17.0 '@pnpm/semver-diff': ^1.0.2 @@ -2385,17 +2385,17 @@ importers: packages/plugin-commands-publishing: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/client': workspace:6.1.4 '@pnpm/config': workspace:13.13.3 '@pnpm/error': workspace:2.1.0 '@pnpm/exportable-manifest': workspace:2.3.2 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/lifecycle': workspace:12.1.7 '@pnpm/logger': ^4.0.0 '@pnpm/package-bins': workspace:5.0.12 '@pnpm/pick-registry-for-package': workspace:2.0.11 - '@pnpm/plugin-commands-publishing': workspace:4.5.8 + '@pnpm/plugin-commands-publishing': workspace:4.5.9 '@pnpm/prepare': workspace:* '@pnpm/registry-mock': 2.17.0 '@pnpm/resolver-base': workspace:8.1.6 @@ -2480,13 +2480,13 @@ importers: packages/plugin-commands-rebuild: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/constants': workspace:5.0.0 '@pnpm/core-loggers': workspace:6.1.4 - '@pnpm/filter-workspace-packages': workspace:4.4.26 - '@pnpm/find-workspace-packages': workspace:3.1.45 + '@pnpm/filter-workspace-packages': workspace:4.4.27 + '@pnpm/find-workspace-packages': workspace:3.1.46 '@pnpm/get-context': workspace:5.3.8 '@pnpm/lifecycle': workspace:12.1.7 '@pnpm/link-bins': workspace:6.2.14 @@ -2495,7 +2495,7 @@ importers: '@pnpm/logger': ^4.0.0 '@pnpm/modules-yaml': workspace:9.1.1 '@pnpm/normalize-registries': workspace:2.0.13 - '@pnpm/plugin-commands-rebuild': workspace:5.4.21 + '@pnpm/plugin-commands-rebuild': workspace:5.4.22 '@pnpm/prepare': workspace:* '@pnpm/registry-mock': 2.17.0 '@pnpm/sort-packages': workspace:2.1.8 @@ -2569,17 +2569,17 @@ importers: packages/plugin-commands-script-runners: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/command': workspace:2.0.0 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/error': workspace:2.1.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/lifecycle': workspace:12.1.7 '@pnpm/logger': ^4.0.0 '@pnpm/package-bins': workspace:5.0.12 - '@pnpm/plugin-commands-installation': workspace:8.4.15 - '@pnpm/plugin-commands-script-runners': workspace:4.6.9 + '@pnpm/plugin-commands-installation': workspace:8.4.16 + '@pnpm/plugin-commands-script-runners': workspace:4.6.10 '@pnpm/prepare': workspace:* '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 @@ -2635,12 +2635,12 @@ importers: packages/plugin-commands-server: specifiers: '@pnpm/cli-meta': workspace:2.0.2 - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/error': workspace:2.1.0 '@pnpm/logger': ^4.0.0 - '@pnpm/plugin-commands-server': workspace:3.0.76 + '@pnpm/plugin-commands-server': workspace:3.0.77 '@pnpm/server': workspace:11.0.19 '@pnpm/store-connection-manager': workspace:3.2.14 '@pnpm/store-path': ^5.0.0 @@ -2683,10 +2683,10 @@ importers: packages/plugin-commands-setup: specifiers: - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/error': workspace:2.1.0 '@pnpm/logger': ^4.0.0 - '@pnpm/plugin-commands-setup': workspace:1.1.40 + '@pnpm/plugin-commands-setup': workspace:1.1.41 '@pnpm/prepare': workspace:* '@types/string.prototype.matchall': ^4.0.1 execa: npm:safe-execa@^0.1.1 @@ -2708,7 +2708,7 @@ importers: specifiers: '@pnpm/assert-store': workspace:* '@pnpm/cafs': workspace:3.0.16 - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/config': workspace:13.13.3 '@pnpm/error': workspace:2.1.0 '@pnpm/get-context': workspace:5.3.8 @@ -2718,7 +2718,7 @@ importers: '@pnpm/normalize-registries': workspace:2.0.13 '@pnpm/parse-wanted-dependency': workspace:2.0.0 '@pnpm/pick-registry-for-package': workspace:2.0.11 - '@pnpm/plugin-commands-store': workspace:4.1.19 + '@pnpm/plugin-commands-store': workspace:4.1.20 '@pnpm/prepare': workspace:* '@pnpm/registry-mock': 2.17.0 '@pnpm/store-connection-manager': workspace:3.2.14 @@ -2782,35 +2782,35 @@ importers: '@pnpm/assert-project': workspace:* '@pnpm/byline': ^1.0.0 '@pnpm/cli-meta': workspace:2.0.2 - '@pnpm/cli-utils': workspace:0.6.53 + '@pnpm/cli-utils': workspace:0.6.54 '@pnpm/client': workspace:6.1.4 '@pnpm/command': workspace:2.0.0 '@pnpm/common-cli-options-help': workspace:0.8.0 '@pnpm/config': workspace:13.13.3 '@pnpm/constants': workspace:5.0.0 '@pnpm/core-loggers': workspace:6.1.4 - '@pnpm/default-reporter': workspace:8.5.15 + '@pnpm/default-reporter': workspace:8.5.16 '@pnpm/file-reporter': workspace:2.0.0 - '@pnpm/filter-workspace-packages': workspace:4.4.26 + '@pnpm/filter-workspace-packages': workspace:4.4.27 '@pnpm/find-workspace-dir': workspace:3.0.2 - '@pnpm/find-workspace-packages': workspace:3.1.45 + '@pnpm/find-workspace-packages': workspace:3.1.46 '@pnpm/lockfile-types': workspace:3.2.0 '@pnpm/logger': ^4.0.0 '@pnpm/modules-yaml': workspace:9.1.1 '@pnpm/nopt': ^0.2.1 '@pnpm/parse-cli-args': workspace:4.4.1 '@pnpm/pick-registry-for-package': workspace:2.0.11 - '@pnpm/plugin-commands-audit': workspace:5.1.46 - '@pnpm/plugin-commands-env': workspace:1.4.20 - '@pnpm/plugin-commands-installation': workspace:8.4.15 - '@pnpm/plugin-commands-listing': workspace:4.1.15 - '@pnpm/plugin-commands-outdated': workspace:5.1.14 - '@pnpm/plugin-commands-publishing': workspace:4.5.8 - '@pnpm/plugin-commands-rebuild': workspace:5.4.21 - '@pnpm/plugin-commands-script-runners': workspace:4.6.9 - '@pnpm/plugin-commands-server': workspace:3.0.76 - '@pnpm/plugin-commands-setup': workspace:1.1.40 - '@pnpm/plugin-commands-store': workspace:4.1.19 + '@pnpm/plugin-commands-audit': workspace:5.1.47 + '@pnpm/plugin-commands-env': workspace:1.4.21 + '@pnpm/plugin-commands-installation': workspace:8.4.16 + '@pnpm/plugin-commands-listing': workspace:4.1.16 + '@pnpm/plugin-commands-outdated': workspace:5.1.15 + '@pnpm/plugin-commands-publishing': workspace:4.5.9 + '@pnpm/plugin-commands-rebuild': workspace:5.4.22 + '@pnpm/plugin-commands-script-runners': workspace:4.6.10 + '@pnpm/plugin-commands-server': workspace:3.0.77 + '@pnpm/plugin-commands-setup': workspace:1.1.41 + '@pnpm/plugin-commands-store': workspace:4.1.20 '@pnpm/prepare': workspace:* '@pnpm/read-package-json': workspace:5.0.12 '@pnpm/read-project-manifest': workspace:2.0.13 @@ -2998,7 +2998,7 @@ importers: specifiers: '@pnpm/constants': workspace:5.0.0 '@pnpm/lockfile-types': workspace:3.2.0 - '@pnpm/prune-lockfile': workspace:3.0.16 + '@pnpm/prune-lockfile': workspace:3.0.17 '@pnpm/types': workspace:7.10.0 '@types/ramda': 0.27.39 dependency-path: workspace:8.0.12 @@ -3177,9 +3177,9 @@ importers: '@pnpm/manifest-utils': workspace:2.1.10 '@pnpm/npm-resolver': workspace:12.1.8 '@pnpm/pick-registry-for-package': workspace:2.0.11 - '@pnpm/prune-lockfile': workspace:3.0.16 + '@pnpm/prune-lockfile': workspace:3.0.17 '@pnpm/read-package-json': workspace:5.0.12 - '@pnpm/resolve-dependencies': workspace:25.0.10 + '@pnpm/resolve-dependencies': workspace:25.1.0 '@pnpm/resolver-base': workspace:8.1.6 '@pnpm/store-controller-types': workspace:12.0.0 '@pnpm/types': workspace:7.10.0