From 8055d31288d41fe5bc5a4fb8f5ba30571e0b3ac7 Mon Sep 17 00:00:00 2001 From: Gu Xiang <42297553+gavinxgu@users.noreply.github.com> Date: Mon, 9 Jun 2025 15:24:52 +0800 Subject: [PATCH] [rush] Upgrade `pnpm-sync-lib` to v0.3.3 for pnpm v10 compatibility https://github.com/tiktok/pnpm-sync/pull/40 https://github.com/tiktok/pnpm-sync/pull/43 --- README.md | 3 + apps/lockfile-explorer/package.json | 2 +- .../lockfile-explorer/src/utils/shrinkwrap.ts | 7 +- ...pm-sync-lib-to-3.0.1_2025-06-09-07-23.json | 10 + ...pm-sync-lib-to-0.3.3_2025-06-20-00-29.json | 10 + ...pm-sync-lib-to-0.3.3_2025-06-20-00-29.json | 10 + ...pm-sync-lib-to-0.3.3_2025-06-20-00-29.json | 10 + ...pm-sync-lib-to-0.3.3_2025-06-20-00-29.json | 10 + .../rush/browser-approved-packages.json | 16 +- .../rush/nonbrowser-approved-packages.json | 20 + .../build-tests-subspace/pnpm-lock.yaml | 370 +++++++++++++++- .../build-tests-subspace/repo-state.json | 4 +- .../subspaces/default/common-versions.json | 6 + .../config/subspaces/default/pnpm-lock.yaml | 405 ++++++++++++++++-- .../config/subspaces/default/repo-state.json | 2 +- common/reviews/api/rush-pnpm-kit-v10.api.md | 39 ++ common/reviews/api/rush-pnpm-kit-v8.api.md | 35 ++ common/reviews/api/rush-pnpm-kit-v9.api.md | 39 ++ libraries/rush-lib/package.json | 11 +- .../src/logic/base/BaseInstallManager.ts | 49 +-- .../rush-lib/src/logic/pnpm/IPnpmfile.ts | 4 +- .../src/logic/pnpm/PnpmLinkManager.ts | 15 +- .../pnpm/PnpmShrinkWrapFileConverters.ts | 6 +- .../src/logic/pnpm/PnpmShrinkwrapFile.ts | 20 +- .../test/PnpmShrinkwrapConverters.test.ts | 4 +- .../config/api-extractor.json | 19 + libraries/rush-pnpm-kit-v10/config/rig.json | 7 + libraries/rush-pnpm-kit-v10/package.json | 23 + .../rush-pnpm-kit-v10/src/dependencyPath.ts | 4 + libraries/rush-pnpm-kit-v10/src/index.ts | 3 + libraries/rush-pnpm-kit-v10/src/lockfileFs.ts | 3 + libraries/rush-pnpm-kit-v10/src/logger.ts | 3 + libraries/rush-pnpm-kit-v10/tsconfig.json | 3 + .../config/api-extractor.json | 19 + libraries/rush-pnpm-kit-v8/config/rig.json | 7 + libraries/rush-pnpm-kit-v8/package.json | 23 + .../rush-pnpm-kit-v8/src/dependencyPath.ts | 3 + libraries/rush-pnpm-kit-v8/src/index.ts | 3 + libraries/rush-pnpm-kit-v8/src/lockfileFs.ts | 3 + libraries/rush-pnpm-kit-v8/src/logger.ts | 3 + libraries/rush-pnpm-kit-v8/tsconfig.json | 3 + .../config/api-extractor.json | 19 + libraries/rush-pnpm-kit-v9/config/rig.json | 7 + libraries/rush-pnpm-kit-v9/package.json | 23 + .../rush-pnpm-kit-v9/src/dependencyPath.ts | 4 + libraries/rush-pnpm-kit-v9/src/index.ts | 3 + libraries/rush-pnpm-kit-v9/src/lockfileFs.ts | 3 + libraries/rush-pnpm-kit-v9/src/logger.ts | 3 + libraries/rush-pnpm-kit-v9/tsconfig.json | 3 + libraries/rush-sdk/package.json | 2 +- rush.json | 18 + 51 files changed, 1183 insertions(+), 138 deletions(-) create mode 100644 common/changes/@microsoft/rush/guxiang-upgrade-pnpm-sync-lib-to-3.0.1_2025-06-09-07-23.json create mode 100644 common/changes/@rushstack/lockfile-explorer/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json create mode 100644 common/changes/@rushstack/rush-pnpm-kit-v10/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json create mode 100644 common/changes/@rushstack/rush-pnpm-kit-v8/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json create mode 100644 common/changes/@rushstack/rush-pnpm-kit-v9/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json create mode 100644 common/reviews/api/rush-pnpm-kit-v10.api.md create mode 100644 common/reviews/api/rush-pnpm-kit-v8.api.md create mode 100644 common/reviews/api/rush-pnpm-kit-v9.api.md create mode 100644 libraries/rush-pnpm-kit-v10/config/api-extractor.json create mode 100644 libraries/rush-pnpm-kit-v10/config/rig.json create mode 100644 libraries/rush-pnpm-kit-v10/package.json create mode 100644 libraries/rush-pnpm-kit-v10/src/dependencyPath.ts create mode 100644 libraries/rush-pnpm-kit-v10/src/index.ts create mode 100644 libraries/rush-pnpm-kit-v10/src/lockfileFs.ts create mode 100644 libraries/rush-pnpm-kit-v10/src/logger.ts create mode 100644 libraries/rush-pnpm-kit-v10/tsconfig.json create mode 100644 libraries/rush-pnpm-kit-v8/config/api-extractor.json create mode 100644 libraries/rush-pnpm-kit-v8/config/rig.json create mode 100644 libraries/rush-pnpm-kit-v8/package.json create mode 100644 libraries/rush-pnpm-kit-v8/src/dependencyPath.ts create mode 100644 libraries/rush-pnpm-kit-v8/src/index.ts create mode 100644 libraries/rush-pnpm-kit-v8/src/lockfileFs.ts create mode 100644 libraries/rush-pnpm-kit-v8/src/logger.ts create mode 100644 libraries/rush-pnpm-kit-v8/tsconfig.json create mode 100644 libraries/rush-pnpm-kit-v9/config/api-extractor.json create mode 100644 libraries/rush-pnpm-kit-v9/config/rig.json create mode 100644 libraries/rush-pnpm-kit-v9/package.json create mode 100644 libraries/rush-pnpm-kit-v9/src/dependencyPath.ts create mode 100644 libraries/rush-pnpm-kit-v9/src/index.ts create mode 100644 libraries/rush-pnpm-kit-v9/src/lockfileFs.ts create mode 100644 libraries/rush-pnpm-kit-v9/src/logger.ts create mode 100644 libraries/rush-pnpm-kit-v9/tsconfig.json diff --git a/README.md b/README.md index 39383c2fa4e..c094d04ef57 100644 --- a/README.md +++ b/README.md @@ -89,6 +89,9 @@ These GitHub repositories provide supplementary resources for Rush Stack: | [/libraries/package-extractor](./libraries/package-extractor/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Fpackage-extractor.svg)](https://badge.fury.io/js/%40rushstack%2Fpackage-extractor) | [changelog](./libraries/package-extractor/CHANGELOG.md) | [@rushstack/package-extractor](https://www.npmjs.com/package/@rushstack/package-extractor) | | [/libraries/rig-package](./libraries/rig-package/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Frig-package.svg)](https://badge.fury.io/js/%40rushstack%2Frig-package) | [changelog](./libraries/rig-package/CHANGELOG.md) | [@rushstack/rig-package](https://www.npmjs.com/package/@rushstack/rig-package) | | [/libraries/rush-lib](./libraries/rush-lib/) | [![npm version](https://badge.fury.io/js/%40microsoft%2Frush-lib.svg)](https://badge.fury.io/js/%40microsoft%2Frush-lib) | | [@microsoft/rush-lib](https://www.npmjs.com/package/@microsoft/rush-lib) | +| [/libraries/rush-pnpm-kit-v10](./libraries/rush-pnpm-kit-v10/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v10.svg)](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v10) | [changelog](./libraries/rush-pnpm-kit-v10/CHANGELOG.md) | [@rushstack/rush-pnpm-kit-v10](https://www.npmjs.com/package/@rushstack/rush-pnpm-kit-v10) | +| [/libraries/rush-pnpm-kit-v8](./libraries/rush-pnpm-kit-v8/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v8.svg)](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v8) | [changelog](./libraries/rush-pnpm-kit-v8/CHANGELOG.md) | [@rushstack/rush-pnpm-kit-v8](https://www.npmjs.com/package/@rushstack/rush-pnpm-kit-v8) | +| [/libraries/rush-pnpm-kit-v9](./libraries/rush-pnpm-kit-v9/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v9.svg)](https://badge.fury.io/js/%40rushstack%2Frush-pnpm-kit-v9) | [changelog](./libraries/rush-pnpm-kit-v9/CHANGELOG.md) | [@rushstack/rush-pnpm-kit-v9](https://www.npmjs.com/package/@rushstack/rush-pnpm-kit-v9) | | [/libraries/rush-sdk](./libraries/rush-sdk/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Frush-sdk.svg)](https://badge.fury.io/js/%40rushstack%2Frush-sdk) | | [@rushstack/rush-sdk](https://www.npmjs.com/package/@rushstack/rush-sdk) | | [/libraries/stream-collator](./libraries/stream-collator/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Fstream-collator.svg)](https://badge.fury.io/js/%40rushstack%2Fstream-collator) | [changelog](./libraries/stream-collator/CHANGELOG.md) | [@rushstack/stream-collator](https://www.npmjs.com/package/@rushstack/stream-collator) | | [/libraries/terminal](./libraries/terminal/) | [![npm version](https://badge.fury.io/js/%40rushstack%2Fterminal.svg)](https://badge.fury.io/js/%40rushstack%2Fterminal) | [changelog](./libraries/terminal/CHANGELOG.md) | [@rushstack/terminal](https://www.npmjs.com/package/@rushstack/terminal) | diff --git a/apps/lockfile-explorer/package.json b/apps/lockfile-explorer/package.json index 28d0078200a..c620547347b 100644 --- a/apps/lockfile-explorer/package.json +++ b/apps/lockfile-explorer/package.json @@ -66,7 +66,7 @@ "js-yaml": "~3.13.1", "open": "~8.4.0", "update-notifier": "~5.1.0", - "@pnpm/dependency-path-lockfile-pre-v9": "npm:@pnpm/dependency-path@~2.1.2", + "@rushstack/rush-pnpm-kit-v8": "workspace:*", "semver": "~7.5.4", "@rushstack/rush-sdk": "workspace:*", "@rushstack/ts-command-line": "workspace:*" diff --git a/apps/lockfile-explorer/src/utils/shrinkwrap.ts b/apps/lockfile-explorer/src/utils/shrinkwrap.ts index 8cb289fc1e6..ef3d5c6d83f 100644 --- a/apps/lockfile-explorer/src/utils/shrinkwrap.ts +++ b/apps/lockfile-explorer/src/utils/shrinkwrap.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. // See LICENSE in the project root for license information. -import * as dependencyPathLockfilePreV9 from '@pnpm/dependency-path-lockfile-pre-v9'; +import * as pnpmKitV8 from '@rushstack/rush-pnpm-kit-v8'; interface IPackageInfo { name: string; @@ -12,7 +12,8 @@ interface IPackageInfo { export function convertLockfileV6DepPathToV5DepPath(newDepPath: string): string { if (!newDepPath.includes('@', 2) || newDepPath.startsWith('file:')) return newDepPath; const index = newDepPath.indexOf('@', newDepPath.indexOf('/@') + 2); - if (newDepPath.includes('(') && index > dependencyPathLockfilePreV9.indexOfPeersSuffix(newDepPath)) return newDepPath; + if (newDepPath.includes('(') && index > pnpmKitV8.dependencyPath.indexOfPeersSuffix(newDepPath)) + return newDepPath; return `${newDepPath.substring(0, index)}/${newDepPath.substring(index + 1)}`; } @@ -21,7 +22,7 @@ export function parseDependencyPath(shrinkwrapFileMajorVersion: number, newDepPa if (shrinkwrapFileMajorVersion === 6) { dependencyPath = convertLockfileV6DepPathToV5DepPath(newDepPath); } - const packageInfo = dependencyPathLockfilePreV9.parse(dependencyPath); + const packageInfo = pnpmKitV8.dependencyPath.parse(dependencyPath); return { name: packageInfo.name as string, peersSuffix: packageInfo.peersSuffix, diff --git a/common/changes/@microsoft/rush/guxiang-upgrade-pnpm-sync-lib-to-3.0.1_2025-06-09-07-23.json b/common/changes/@microsoft/rush/guxiang-upgrade-pnpm-sync-lib-to-3.0.1_2025-06-09-07-23.json new file mode 100644 index 00000000000..0439bd586bb --- /dev/null +++ b/common/changes/@microsoft/rush/guxiang-upgrade-pnpm-sync-lib-to-3.0.1_2025-06-09-07-23.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@microsoft/rush", + "comment": "Upgrade `pnpm-sync-lib` to v0.3.3 for pnpm v10 compatibility", + "type": "none" + } + ], + "packageName": "@microsoft/rush" +} \ No newline at end of file diff --git a/common/changes/@rushstack/lockfile-explorer/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json b/common/changes/@rushstack/lockfile-explorer/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json new file mode 100644 index 00000000000..c3df88d2254 --- /dev/null +++ b/common/changes/@rushstack/lockfile-explorer/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/lockfile-explorer", + "comment": "Use pnpm dependency path implementation from `@rushstack/rush-pnpm-kit-v8`", + "type": "patch" + } + ], + "packageName": "@rushstack/lockfile-explorer" +} \ No newline at end of file diff --git a/common/changes/@rushstack/rush-pnpm-kit-v10/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json b/common/changes/@rushstack/rush-pnpm-kit-v10/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json new file mode 100644 index 00000000000..5d08711254e --- /dev/null +++ b/common/changes/@rushstack/rush-pnpm-kit-v10/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/rush-pnpm-kit-v10", + "comment": "Set up the `@rushstack/rush-pnpm-kit-v10` package to bundle all pnpm v10 related packages together.", + "type": "minor" + } + ], + "packageName": "@rushstack/rush-pnpm-kit-v10" +} \ No newline at end of file diff --git a/common/changes/@rushstack/rush-pnpm-kit-v8/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json b/common/changes/@rushstack/rush-pnpm-kit-v8/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json new file mode 100644 index 00000000000..c27c574a6d7 --- /dev/null +++ b/common/changes/@rushstack/rush-pnpm-kit-v8/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/rush-pnpm-kit-v8", + "comment": "Set up the `@rushstack/rush-pnpm-kit-v8` package to bundle all pnpm v8 related packages together.", + "type": "minor" + } + ], + "packageName": "@rushstack/rush-pnpm-kit-v8" +} \ No newline at end of file diff --git a/common/changes/@rushstack/rush-pnpm-kit-v9/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json b/common/changes/@rushstack/rush-pnpm-kit-v9/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json new file mode 100644 index 00000000000..88334ba2a40 --- /dev/null +++ b/common/changes/@rushstack/rush-pnpm-kit-v9/guxiang-upgrade-pnpm-sync-lib-to-0.3.3_2025-06-20-00-29.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@rushstack/rush-pnpm-kit-v9", + "comment": "Set up the `@rushstack/rush-pnpm-kit-v9` package to bundle all pnpm v9 related packages together.", + "type": "minor" + } + ], + "packageName": "@rushstack/rush-pnpm-kit-v9" +} \ No newline at end of file diff --git a/common/config/rush/browser-approved-packages.json b/common/config/rush/browser-approved-packages.json index 01b44fa2e61..db32a1d8e53 100644 --- a/common/config/rush/browser-approved-packages.json +++ b/common/config/rush/browser-approved-packages.json @@ -4,7 +4,7 @@ "packages": [ { "name": "@fluentui/react", - "allowedCategories": [ "libraries", "vscode-extensions" ] + "allowedCategories": [ "vscode-extensions" ] }, { "name": "@fluentui/react-components", @@ -50,10 +50,6 @@ "name": "@ungap/structured-clone", "allowedCategories": [ "libraries" ] }, - { - "name": "axios", - "allowedCategories": [ "libraries" ] - }, { "name": "dependency-path", "allowedCategories": [ "libraries" ] @@ -62,10 +58,6 @@ "name": "local-web-rig", "allowedCategories": [ "libraries", "vscode-extensions" ] }, - { - "name": "office-ui-fabric-core", - "allowedCategories": [ "libraries" ] - }, { "name": "react", "allowedCategories": [ "libraries", "tests", "vscode-extensions" ] @@ -96,11 +88,7 @@ }, { "name": "tslib", - "allowedCategories": [ "libraries", "tests", "vscode-extensions" ] - }, - { - "name": "zod", - "allowedCategories": [ "libraries" ] + "allowedCategories": [ "tests", "vscode-extensions" ] } ] } diff --git a/common/config/rush/nonbrowser-approved-packages.json b/common/config/rush/nonbrowser-approved-packages.json index 5ecc485db43..d2ddb40e4d4 100644 --- a/common/config/rush/nonbrowser-approved-packages.json +++ b/common/config/rush/nonbrowser-approved-packages.json @@ -102,10 +102,18 @@ "name": "@pnpm/link-bins", "allowedCategories": [ "libraries" ] }, + { + "name": "@pnpm/lockfile-file", + "allowedCategories": [ "libraries" ] + }, { "name": "@pnpm/lockfile-types", "allowedCategories": [ "libraries" ] }, + { + "name": "@pnpm/lockfile.fs", + "allowedCategories": [ "libraries" ] + }, { "name": "@pnpm/lockfile.types", "allowedCategories": [ "libraries" ] @@ -278,6 +286,18 @@ "name": "@rushstack/rush-http-build-cache-plugin", "allowedCategories": [ "libraries" ] }, + { + "name": "@rushstack/rush-pnpm-kit-v10", + "allowedCategories": [ "libraries" ] + }, + { + "name": "@rushstack/rush-pnpm-kit-v8", + "allowedCategories": [ "libraries" ] + }, + { + "name": "@rushstack/rush-pnpm-kit-v9", + "allowedCategories": [ "libraries" ] + }, { "name": "@rushstack/rush-redis-cobuild-plugin", "allowedCategories": [ "tests" ] diff --git a/common/config/subspaces/build-tests-subspace/pnpm-lock.yaml b/common/config/subspaces/build-tests-subspace/pnpm-lock.yaml index 5f2928206eb..55e16164d77 100644 --- a/common/config/subspaces/build-tests-subspace/pnpm-lock.yaml +++ b/common/config/subspaces/build-tests-subspace/pnpm-lock.yaml @@ -858,6 +858,14 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + /@pnpm/constants@1001.1.0: + resolution: {integrity: sha512-xb9dfSGi1qfUKY3r4Zy9JdC9+ZeaDxwfE7HrrGIEsBVY1hvIn6ntbR7A97z3nk44yX7vwbINNf9sizTp0WEtEw==} + engines: {node: '>=18.12'} + + /@pnpm/constants@7.1.1: + resolution: {integrity: sha512-31pZqMtjwV+Vaq7MaPrT1EoDFSYwye3dp6BiHIGRJmVThCQwySRKM7hCvqqI94epNkqFAAYoWrNynWoRYosGdw==} + engines: {node: '>=16.14'} + /@pnpm/crypto.base32-hash@1.0.1: resolution: {integrity: sha512-pzAXNn6KxTA3kbcI3iEnYs4vtH51XEVqmK/1EiD18MaPKylhqy8UvMJK3zKG+jeP82cqQbozcTGm4yOQ8i3vNw==} engines: {node: '>=14.6'} @@ -922,6 +930,30 @@ packages: resolution: {integrity: sha512-vxkRrkneBPVmP23kyjnYwVOtipwlSl6UfL+h+Xa3TrABJTz5rYBXemlTsU5BzST8U4pD7YDkTb3SQu+MMuIDKA==} engines: {node: '>=10.16'} + /@pnpm/error@1000.0.2: + resolution: {integrity: sha512-2SfE4FFL73rE1WVIoESbqlj4sLy5nWW4M/RVdHvCRJPjlQHa9MH7m7CVJM204lz6I+eHoB+E7rL3zmpJR5wYnQ==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/constants': 1001.1.0 + + /@pnpm/error@5.0.3: + resolution: {integrity: sha512-ONJU5cUeoeJSy50qOYsMZQHTA/9QKmGgh1ATfEpCLgtbdwqUiwD9MxHNeXUYYI/pocBCz6r1ZCFqiQvO+8SUKA==} + engines: {node: '>=16.14'} + dependencies: + '@pnpm/constants': 7.1.1 + + /@pnpm/git-utils@1.0.0: + resolution: {integrity: sha512-lUI+XrzOJN4zdPGOGnFUrmtXAXpXi8wD8OI0nWOZmlh+raqbLzC3VkXu1zgaduOK6YonOcnQW88O+ojav1rAdA==} + engines: {node: '>=16.14'} + dependencies: + execa: /safe-execa@0.1.2 + + /@pnpm/git-utils@1000.0.0: + resolution: {integrity: sha512-W6isNTNgB26n6dZUgwCw6wly+uHQ2Zh5QiRKY1HHMbLAlsnZOxsSNGnuS9euKWHxDftvPfU7uR8XB5x95T5zPQ==} + engines: {node: '>=18.12'} + dependencies: + execa: /safe-execa@0.1.2 + /@pnpm/graceful-fs@1000.0.0: resolution: {integrity: sha512-RvMEliAmcfd/4UoaYQ93DLQcFeqit78jhYmeJJVPxqFGmj0jEcb9Tu0eAOXr7tGP3eJHpgvPbTU4o6pZ1bJhxg==} engines: {node: '>=18.12'} @@ -946,6 +978,97 @@ packages: p-settle: 4.1.1 ramda: 0.27.2 + /@pnpm/lockfile-file@8.1.8(@pnpm/logger@1001.0.0): + resolution: {integrity: sha512-bRadYzGFyFtwiynwp4Mkn7NDNHkgKvJ9xtjsCT5XiE6S8wpzS3W8yx2WzHGk9Mm1J/2wM0F52+NzCWhlz5eIqA==} + engines: {node: '>=16.14'} + peerDependencies: + '@pnpm/logger': '*' + dependencies: + '@pnpm/constants': 7.1.1 + '@pnpm/dependency-path': 2.1.8 + '@pnpm/error': 5.0.3 + '@pnpm/git-utils': 1.0.0 + '@pnpm/lockfile-types': 5.1.5 + '@pnpm/logger': 1001.0.0 + '@pnpm/merge-lockfile-changes': 5.0.7 + '@pnpm/types': 9.4.2 + '@pnpm/util.lex-comparator': 1.0.0 + '@zkochan/rimraf': 2.1.3 + comver-to-semver: 1.0.0 + js-yaml: /@zkochan/js-yaml@0.0.6 + normalize-path: 3.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + sort-keys: 4.2.0 + strip-bom: 4.0.0 + write-file-atomic: 5.0.1 + + /@pnpm/lockfile-file@8.1.8(@pnpm/logger@5.0.0): + resolution: {integrity: sha512-bRadYzGFyFtwiynwp4Mkn7NDNHkgKvJ9xtjsCT5XiE6S8wpzS3W8yx2WzHGk9Mm1J/2wM0F52+NzCWhlz5eIqA==} + engines: {node: '>=16.14'} + peerDependencies: + '@pnpm/logger': ^5.0.0 + dependencies: + '@pnpm/constants': 7.1.1 + '@pnpm/dependency-path': 2.1.8 + '@pnpm/error': 5.0.3 + '@pnpm/git-utils': 1.0.0 + '@pnpm/lockfile-types': 5.1.5 + '@pnpm/logger': 5.0.0 + '@pnpm/merge-lockfile-changes': 5.0.7 + '@pnpm/types': 9.4.2 + '@pnpm/util.lex-comparator': 1.0.0 + '@zkochan/rimraf': 2.1.3 + comver-to-semver: 1.0.0 + js-yaml: /@zkochan/js-yaml@0.0.6 + normalize-path: 3.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + sort-keys: 4.2.0 + strip-bom: 4.0.0 + write-file-atomic: 5.0.1 + + /@pnpm/lockfile-types@5.1.5: + resolution: {integrity: sha512-02FP0HynzX+2DcuPtuMy7PH+kLIC0pevAydAOK+zug2bwdlSLErlvSkc+4+3dw60eRWgUXUqyfO2eR/Ansdbng==} + engines: {node: '>=16.14'} + dependencies: + '@pnpm/types': 9.4.2 + + /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0): + resolution: {integrity: sha512-UjBRPvL/ok2UXPsB9HUKDUZaigs3SHuspmAoB9kXQfDLuC7mAQeC7rLpqcEn1E/IVgxGekBDKAmzmm/NEoFpow==} + engines: {node: '>=18.12'} + peerDependencies: + '@pnpm/logger': '>=1001.0.0 <1002.0.0' + dependencies: + '@pnpm/constants': 1001.1.0 + '@pnpm/dependency-path': 1000.0.9 + '@pnpm/error': 1000.0.2 + '@pnpm/git-utils': 1000.0.0 + '@pnpm/lockfile.merger': 1001.0.8 + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/lockfile.utils': 1001.0.12 + '@pnpm/logger': 1001.0.0 + '@pnpm/object.key-sorting': 1000.0.1 + '@pnpm/types': 1000.6.0 + '@zkochan/rimraf': 3.0.2 + comver-to-semver: 1.0.0 + js-yaml: /@zkochan/js-yaml@0.0.7 + normalize-path: 3.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + strip-bom: 4.0.0 + write-file-atomic: 5.0.1 + + /@pnpm/lockfile.merger@1001.0.8: + resolution: {integrity: sha512-oB9ABNyxn2yiCr7fGfhrZw2ANXjs9IW9F0y+MyKlryNFHgEsw7972WKOtb1zMRozLg1tU0i+hSLt/Bh8imuTIg==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/types': 1000.6.0 + comver-to-semver: 1.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + /@pnpm/lockfile.types@1.0.3: resolution: {integrity: sha512-A7vUWktnhDkrIs+WmXm7AdffJVyVYJpQUEouya/DYhB+Y+tQ3BXjZ6CV0KybqLgI/8AZErgCJqFxA0GJH6QDjA==} engines: {node: '>=18.12'} @@ -954,6 +1077,63 @@ packages: '@pnpm/types': 12.2.0 dev: false + /@pnpm/lockfile.types@1001.0.8: + resolution: {integrity: sha512-rKecvWutX7aZPFNyXGnGtiwfmnPRiQyG6AWQ1Ad0djWKbPeccg0s9B7cJqCJ4nEnwzhEvw9UtuofBkU/O0L+bQ==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/patching.types': 1000.1.0 + '@pnpm/types': 1000.6.0 + + /@pnpm/lockfile.types@900.0.0: + resolution: {integrity: sha512-/4+3CAu4uIjx0ln1DYXNdj0qKJ3wyRDY+RS+eFzV6OHjreaTKWsF2WcjigYp1M5mxL4kj2RsRGgBGEyKtCfEWg==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/patching.types': 900.0.0 + '@pnpm/types': 900.0.0 + dev: false + + /@pnpm/lockfile.utils@1001.0.12: + resolution: {integrity: sha512-8+jo/Qqn6tmwsGhaHaG1TVaqLzWzrr86RtF1Bi+GlwBrgVj+JkrymWAxcH9aKNEP2es6hJSVe3+71pTx/g1yhg==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/dependency-path': 1000.0.9 + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/pick-fetcher': 1000.0.1 + '@pnpm/resolver-base': 1004.0.0 + '@pnpm/types': 1000.6.0 + get-npm-tarball-url: 2.1.0 + ramda: /@pnpm/ramda@0.28.1 + + /@pnpm/logger@1001.0.0: + resolution: {integrity: sha512-nj80XtTHHt7T+b5stLWszzd166MbGx4eTOu9+6h6RdelKMlSWhrb7KUb0j90tYk+yoGx8TeMVdJCaoBnkLp8xw==} + engines: {node: '>=18.12'} + dependencies: + bole: 5.0.19 + ndjson: 2.0.0 + + /@pnpm/logger@5.0.0: + resolution: {integrity: sha512-YfcB2QrX+Wx1o6LD1G2Y2fhDhOix/bAY/oAnMpHoNLsKkWIRbt1oKLkIFvxBMzLwAEPqnYWguJrYC+J6i4ywbw==} + engines: {node: '>=12.17'} + dependencies: + bole: 5.0.19 + ndjson: 2.0.0 + + /@pnpm/merge-lockfile-changes@5.0.7: + resolution: {integrity: sha512-fYmX1+EHv3wg7l4A9FCEkjgEBIHaY6JosknkLk3pL8dbB9k6unjIrF9f2onNtpj3XUlWxZ3aBw9THk/Bf6hKow==} + engines: {node: '>=16.14'} + dependencies: + '@pnpm/lockfile-types': 5.1.5 + comver-to-semver: 1.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + + /@pnpm/object.key-sorting@1000.0.1: + resolution: {integrity: sha512-YTJCXyUGOrJuj4QqhSKqZa1vlVAm82h1/uw00ZmD/kL2OViggtyUwWyIe62kpwWVPwEYixfGjfvaFKVJy2mjzA==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/util.lex-comparator': 3.0.2 + sort-keys: 4.2.0 + /@pnpm/package-bins@4.1.0: resolution: {integrity: sha512-57/ioGYLBbVRR80Ux9/q2i3y8Q+uQADc3c+Yse8jr/60YLOi3jcWz13e2Jy+ANYtZI258Qc5wk2X077rp0Ly/Q==} engines: {node: '>=10.16'} @@ -967,6 +1147,22 @@ packages: engines: {node: '>=18.12'} dev: false + /@pnpm/patching.types@1000.1.0: + resolution: {integrity: sha512-Zib2ysLctRnWM4KXXlljR44qSKwyEqYmLk+8VPBDBEK3l5Gp5mT3N4ix9E4qjYynvFqahumsxzOfxOYQhUGMGw==} + engines: {node: '>=18.12'} + + /@pnpm/patching.types@900.0.0: + resolution: {integrity: sha512-A/3kgRD4Xy2tBMPjOBdx5ZdgmpUobphzWkqDB72S5SIB6gdyCg32AUV0/aO12DwMxpT7kyqMhkkynUOPBfdlUQ==} + engines: {node: '>=18.12'} + dev: false + + /@pnpm/pick-fetcher@1000.0.1: + resolution: {integrity: sha512-ETF8ZC6lCLbDzMBUX7kX7srn6Wbqsk/m4ecszRJewtXl3ugQkLw1SA1B6FTPc37EJDPjBShmmKrZF2zMXa6uUA==} + engines: {node: '>=18.12'} + + /@pnpm/ramda@0.28.1: + resolution: {integrity: sha512-zcAG+lvU0fMziNeGXpPyCyCJYp5ZVrPElEE4t14jAmViaihohocZ+dDkcRIyAomox8pQsuZnv1EyHR+pOhmUWw==} + /@pnpm/read-modules-dir@2.0.3: resolution: {integrity: sha512-i9OgRvSlxrTS9a2oXokhDxvQzDtfqtsooJ9jaGoHkznue5aFCTSrNZFQ6M18o8hC03QWfnxaKi0BtOvNkKu2+A==} engines: {node: '>=10.13'} @@ -999,6 +1195,12 @@ packages: sort-keys: 4.2.0 strip-bom: 4.0.0 + /@pnpm/resolver-base@1004.0.0: + resolution: {integrity: sha512-hPCwGIDJBRBSojFhyoLFEmzd3TGL4NiFqaDNufdjIr+nK5FhyAPwWEJwCNm4/cHtk91aDkJ3qOpIk9RbdQwC3A==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/types': 1000.6.0 + /@pnpm/types@1000.6.0: resolution: {integrity: sha512-6PsMNe98VKPGcg6LnXSW/LE3YfJ77nj+bPKiRjYRWAQLZ+xXjEQRaR0dAuyjCmchlv4wR/hpnMVRS21/fCod5w==} engines: {node: '>=18.12'} @@ -1019,6 +1221,19 @@ packages: resolution: {integrity: sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA==} engines: {node: '>=16.14'} + /@pnpm/types@900.0.0: + resolution: {integrity: sha512-GucC9h/EVbU03Kl7M/FqVes1s5RCQaGCW2f41lFA7VqqHWQElR6k1q33iF6f6fXDUSCdzB1IUxSq9ghP2J+8Pw==} + engines: {node: '>=18.12'} + dev: false + + /@pnpm/util.lex-comparator@1.0.0: + resolution: {integrity: sha512-3aBQPHntVgk5AweBWZn+1I/fqZ9krK/w01197aYVkAJQGftb+BVWgEepxY5GChjSW12j52XX+CmfynYZ/p0DFQ==} + engines: {node: '>=12.22.0'} + + /@pnpm/util.lex-comparator@3.0.2: + resolution: {integrity: sha512-blFO4Ws97tWv/SNE6N39ZdGmZBrocXnBOfVp0ln4kELmns4pGPZizqyRtR8EjfOLMLstbmNCTReBoDvLz1isVg==} + engines: {node: '>=18.12'} + /@pnpm/write-project-manifest@1.1.7: resolution: {integrity: sha512-OLkDZSqkA1mkoPNPvLFXyI6fb0enCuFji6Zfditi/CLAo9kmIhQFmEUDu4krSB8i908EljG8YwL5Xjxzm5wsWA==} engines: {node: '>=10.16'} @@ -1391,7 +1606,7 @@ packages: globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 - semver: 7.6.3 + semver: 7.7.2 ts-api-utils: 1.4.3(typescript@5.8.2) typescript: 5.8.2 transitivePeerDependencies: @@ -1449,7 +1664,7 @@ packages: '@typescript-eslint/types': 6.21.0(typescript@5.8.2) '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.8.2) eslint: 8.57.1 - semver: 7.6.3 + semver: 7.7.2 transitivePeerDependencies: - supports-color - typescript @@ -1574,6 +1789,35 @@ packages: graceful-fs: 4.2.11 is-windows: 1.0.2 + /@zkochan/js-yaml@0.0.6: + resolution: {integrity: sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==} + hasBin: true + dependencies: + argparse: 2.0.1 + + /@zkochan/js-yaml@0.0.7: + resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==} + hasBin: true + dependencies: + argparse: 2.0.1 + + /@zkochan/rimraf@2.1.3: + resolution: {integrity: sha512-mCfR3gylCzPC+iqdxEA6z5SxJeOgzgbwmyxanKriIne5qZLswDe/M43aD3p5MNzwzXRhbZg/OX+MpES6Zk1a6A==} + engines: {node: '>=12.10'} + dependencies: + rimraf: 3.0.2 + + /@zkochan/rimraf@3.0.2: + resolution: {integrity: sha512-GBf4ua7ogWTr7fATnzk/JLowZDBnBJMm8RkMaC/KcvxZ9gxbMWix0/jImd815LmqKyIHZ7h7lADRddGMdGBuCA==} + engines: {node: '>=18.12'} + + /@zkochan/which@2.0.3: + resolution: {integrity: sha512-C1ReN7vt2/2O0fyTsx5xnbQuxBrmG5NMSbcIkPKCCfCTJgpZBsuRYzFXHj3nVq8vTfK7vxHUmzfCpSHgO7j4rg==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + /acorn-jsx@5.3.2(acorn@8.14.0): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -1878,6 +2122,12 @@ packages: inherits: 2.0.4 readable-stream: 3.6.2 + /bole@5.0.19: + resolution: {integrity: sha512-OgMuI8erST2t4K/Y+tSsn4SOxlKj4JR2wluQgLYadQFPIhj0r3jcmnp0OthgiyNO91CnxR8woKeLQmnMPgl1Ug==} + dependencies: + fast-safe-stringify: 2.1.1 + individual: 3.0.0 + /boxen@5.1.2: resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} engines: {node: '>=10'} @@ -2137,6 +2387,10 @@ packages: engines: {node: '>= 12.0.0'} dev: true + /comver-to-semver@1.0.0: + resolution: {integrity: sha512-gcGtbRxjwROQOdXLUWH1fQAXqThUVRZ219aAwgtX3KfYw429/Zv6EIJRf5TBSzWdAGwePmqH7w70WTaX4MDqag==} + engines: {node: '>=12.17'} + /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -2326,7 +2580,7 @@ packages: require-package-name: 2.0.1 resolve: 1.22.8 resolve-from: 5.0.0 - semver: 7.6.3 + semver: 7.7.2 yargs: 16.2.0 transitivePeerDependencies: - supports-color @@ -2875,6 +3129,9 @@ packages: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} dev: true + /fast-safe-stringify@2.1.1: + resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + /fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} dependencies: @@ -3015,6 +3272,10 @@ packages: hasown: 2.0.2 dev: true + /get-npm-tarball-url@2.1.0: + resolution: {integrity: sha512-ro+DiMu5DXgRBabqXupW38h7WPZ9+Ad8UjwhvsmmN8w1sU7ab0nzAXvVZ4kqYg57OrqomRtJvepX5/xvFKNtjA==} + engines: {node: '>=12.17'} + /get-package-type@0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} @@ -3333,6 +3594,9 @@ packages: resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} engines: {node: '>=8'} + /individual@3.0.0: + resolution: {integrity: sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g==} + /inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. @@ -4074,7 +4338,7 @@ packages: jest-util: 29.7.0 natural-compare: 1.4.0 pretty-format: 29.7.0 - semver: 7.6.3 + semver: 7.7.2 transitivePeerDependencies: - supports-color dev: true @@ -4187,6 +4451,9 @@ packages: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true + /json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + /json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} hasBin: true @@ -4542,6 +4809,17 @@ packages: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} dev: true + /ndjson@2.0.0: + resolution: {integrity: sha512-nGl7LRGrzugTtaFcJMhLbpzJM6XdivmbkdlaGcrk/LXg2KL/YBC6z1g70xh0/al+oFuVFP8N8kiWRucmeEH/qQ==} + engines: {node: '>=10'} + hasBin: true + dependencies: + json-stringify-safe: 5.0.1 + minimist: 1.2.8 + readable-stream: 3.6.2 + split2: 3.2.2 + through2: 4.0.2 + /node-emoji@1.11.0: resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==} dependencies: @@ -4814,7 +5092,7 @@ packages: got: 11.8.6 registry-auth-token: 4.2.2 registry-url: 5.1.0 - semver: 7.6.3 + semver: 7.7.2 /pako@1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} @@ -4850,6 +5128,9 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + /path-name@1.0.0: + resolution: {integrity: sha512-/dcAb5vMXH0f51yvMuSUqFpxUcA8JelbRmE5mW/p4CUJxrNgK24IkstnV7ENtg2IDGBOu6izKTG6eilbnbNKWQ==} + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -4900,11 +5181,14 @@ packages: dependencies: semver-compare: 1.0.0 - /pnpm-sync-lib@0.3.2: - resolution: {integrity: sha512-XlHyNAHlBqIMGTBD0HfgyRyj1UpSJvVyP20ihPek00YKmMb7RJ16AxlQkjT1jQ/D6s6OAT0ety/tSxcJTrvQ4w==} + /pnpm-sync-lib@0.3.3: + resolution: {integrity: sha512-iE0xtJIm7cljColV3CAfi05FfRWHeJFwKcxsJfwo+dkFo9kg9QgGKHlF5qlF2o2uArOz6z0P4bA/t4pX2Z2jYg==} dependencies: - '@pnpm/dependency-path-2': /@pnpm/dependency-path@2.1.8 - '@pnpm/dependency-path-5': /@pnpm/dependency-path@5.1.7 + '@pnpm/dependency-path-pnpm-v10': /@pnpm/dependency-path@1000.0.9 + '@pnpm/dependency-path-pnpm-v8': /@pnpm/dependency-path@2.1.8 + '@pnpm/dependency-path-pnpm-v9': /@pnpm/dependency-path@5.1.7 + '@pnpm/lockfile-types-pnpm-lock-v6': /@pnpm/lockfile-types@5.1.5 + '@pnpm/lockfile.types-pnpm-lock-v9': /@pnpm/lockfile.types@1001.0.8 yaml: 2.4.1 /possible-typed-array-names@1.0.0: @@ -5215,7 +5499,6 @@ packages: hasBin: true dependencies: glob: 7.2.3 - dev: true /run-async@2.4.1: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} @@ -5248,6 +5531,14 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + /safe-execa@0.1.2: + resolution: {integrity: sha512-vdTshSQ2JsRCgT8eKZWNJIL26C6bVqy1SOmuCMlKHegVeo8KYRobRrefOdUq9OozSPUUiSxrylteeRmLOMFfWg==} + engines: {node: '>=12'} + dependencies: + '@zkochan/which': 2.0.3 + execa: 5.1.1 + path-name: 1.0.0 + /safe-regex-test@1.0.3: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} @@ -5343,6 +5634,10 @@ packages: /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} @@ -5387,6 +5682,11 @@ packages: /spdx-license-ids@3.0.20: resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} + /split2@3.2.2: + resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} + dependencies: + readable-stream: 3.6.2 + /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -5598,6 +5898,11 @@ packages: /throat@6.0.2: resolution: {integrity: sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==} + /through2@4.0.2: + resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} + dependencies: + readable-stream: 3.6.2 + /through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} @@ -5851,7 +6156,7 @@ packages: is-yarn-global: 0.3.0 latest-version: 5.1.0 pupa: 2.1.1 - semver: 7.6.3 + semver: 7.7.2 semver-diff: 3.1.1 xdg-basedir: 4.0.0 @@ -6015,6 +6320,13 @@ packages: signal-exit: 3.0.7 dev: true + /write-file-atomic@5.0.1: + resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + /write-yaml-file@4.2.0: resolution: {integrity: sha512-LwyucHy0uhWqbrOkh9cBluZBeNVxzHjDaE9mwepZG3n3ZlbM4v3ndrFw51zW/NXYFFqP+QWZ72ihtLWTh05e4Q==} engines: {node: '>=10.13'} @@ -6481,12 +6793,18 @@ packages: '@pnpm/dependency-path-lockfile-pre-v10': /@pnpm/dependency-path@5.1.7 '@pnpm/dependency-path-lockfile-pre-v9': /@pnpm/dependency-path@2.1.8 '@pnpm/link-bins': 5.3.25 + '@pnpm/lockfile-file-pnpm-lock-v6': /@pnpm/lockfile-file@8.1.8(@pnpm/logger@1001.0.0) + '@pnpm/lockfile.fs-pnpm-lock-v9': /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0) + '@pnpm/logger': 1001.0.0 '@rushstack/heft-config-file': file:../../../libraries/heft-config-file(@types/node@20.17.19) '@rushstack/lookup-by-path': file:../../../libraries/lookup-by-path(@types/node@20.17.19) '@rushstack/node-core-library': file:../../../libraries/node-core-library(@types/node@20.17.19) '@rushstack/package-deps-hash': file:../../../libraries/package-deps-hash(@types/node@20.17.19) '@rushstack/package-extractor': file:../../../libraries/package-extractor(@types/node@20.17.19) '@rushstack/rig-package': file:../../../libraries/rig-package + '@rushstack/rush-pnpm-kit-v10': file:../../../libraries/rush-pnpm-kit-v10 + '@rushstack/rush-pnpm-kit-v8': file:../../../libraries/rush-pnpm-kit-v8 + '@rushstack/rush-pnpm-kit-v9': file:../../../libraries/rush-pnpm-kit-v9 '@rushstack/stream-collator': file:../../../libraries/stream-collator(@types/node@20.17.19) '@rushstack/terminal': file:../../../libraries/terminal(@types/node@20.17.19) '@rushstack/ts-command-line': file:../../../libraries/ts-command-line(@types/node@20.17.19) @@ -6504,7 +6822,7 @@ packages: js-yaml: 3.13.1 npm-check: 6.0.1 npm-package-arg: 6.1.1 - pnpm-sync-lib: 0.3.2 + pnpm-sync-lib: 0.3.3 read-package-tree: 5.1.6 rxjs: 6.6.7 semver: 7.5.4 @@ -6518,12 +6836,40 @@ packages: - '@types/node' - supports-color + file:../../../libraries/rush-pnpm-kit-v10: + resolution: {directory: ../../../libraries/rush-pnpm-kit-v10, type: directory} + name: '@rushstack/rush-pnpm-kit-v10' + dependencies: + '@pnpm/dependency-path-pnpm-v10': /@pnpm/dependency-path@1000.0.9 + '@pnpm/lockfile.fs-pnpm-lock-v9': /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0) + '@pnpm/lockfile.types-pnpm-lock-v9': /@pnpm/lockfile.types@1001.0.8 + '@pnpm/logger': 1001.0.0 + + file:../../../libraries/rush-pnpm-kit-v8: + resolution: {directory: ../../../libraries/rush-pnpm-kit-v8, type: directory} + name: '@rushstack/rush-pnpm-kit-v8' + dependencies: + '@pnpm/dependency-path-pnpm-v8': /@pnpm/dependency-path@2.1.8 + '@pnpm/lockfile-file-pnpm-lock-v6': /@pnpm/lockfile-file@8.1.8(@pnpm/logger@5.0.0) + '@pnpm/lockfile-types-pnpm-lock-v6': /@pnpm/lockfile-types@5.1.5 + '@pnpm/logger': 5.0.0 + + file:../../../libraries/rush-pnpm-kit-v9: + resolution: {directory: ../../../libraries/rush-pnpm-kit-v9, type: directory} + name: '@rushstack/rush-pnpm-kit-v9' + dependencies: + '@pnpm/dependency-path-pnpm-v9': /@pnpm/dependency-path@5.1.7 + '@pnpm/lockfile.fs-pnpm-lock-v9': /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0) + '@pnpm/lockfile.types-pnpm-lock-v9': /@pnpm/lockfile.types@1001.0.8 + '@pnpm/logger': 1001.0.0 + file:../../../libraries/rush-sdk(@types/node@20.17.19): resolution: {directory: ../../../libraries/rush-sdk, type: directory} id: file:../../../libraries/rush-sdk name: '@rushstack/rush-sdk' dependencies: '@pnpm/lockfile.types': 1.0.3 + '@pnpm/lockfile.types-900': /@pnpm/lockfile.types@900.0.0 '@rushstack/lookup-by-path': file:../../../libraries/lookup-by-path(@types/node@20.17.19) '@rushstack/node-core-library': file:../../../libraries/node-core-library(@types/node@20.17.19) '@rushstack/package-deps-hash': file:../../../libraries/package-deps-hash(@types/node@20.17.19) diff --git a/common/config/subspaces/build-tests-subspace/repo-state.json b/common/config/subspaces/build-tests-subspace/repo-state.json index 6bda9170b8e..81a9f4ec619 100644 --- a/common/config/subspaces/build-tests-subspace/repo-state.json +++ b/common/config/subspaces/build-tests-subspace/repo-state.json @@ -1,6 +1,6 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "40cbf48a53cad8d9f815d7d1d8ec18a48233a1ad", + "pnpmShrinkwrapHash": "b367a364bdd41195a62905d8518dbcc530bcb55c", "preferredVersionsHash": "54149ea3f01558a859c96dee2052b797d4defe68", - "packageJsonInjectedDependenciesHash": "8bc9d0aabfed5614af0cf7950d2ba377e412b716" + "packageJsonInjectedDependenciesHash": "42f9e83735448fcf984d9d60317ed213268211ac" } diff --git a/common/config/subspaces/default/common-versions.json b/common/config/subspaces/default/common-versions.json index a4798836c9c..105944055dc 100644 --- a/common/config/subspaces/default/common-versions.json +++ b/common/config/subspaces/default/common-versions.json @@ -136,6 +136,12 @@ "@rushstack/eslint-config": [ // This is used by the ESLint 7 build tests "3.7.1" + ], + "@pnpm/logger": [ + // For pnpm kit v8 + "~5.0.0", + // For pnpm kit v9, v10 + "~1001.0.0" ] } } diff --git a/common/config/subspaces/default/pnpm-lock.yaml b/common/config/subspaces/default/pnpm-lock.yaml index e2a3f47dcf2..6c706c5820c 100644 --- a/common/config/subspaces/default/pnpm-lock.yaml +++ b/common/config/subspaces/default/pnpm-lock.yaml @@ -190,12 +190,12 @@ importers: '@microsoft/rush-lib': specifier: workspace:* version: link:../../libraries/rush-lib - '@pnpm/dependency-path-lockfile-pre-v9': - specifier: npm:@pnpm/dependency-path@~2.1.2 - version: /@pnpm/dependency-path@2.1.8 '@rushstack/node-core-library': specifier: workspace:* version: link:../../libraries/node-core-library + '@rushstack/rush-pnpm-kit-v8': + specifier: workspace:* + version: link:../../libraries/rush-pnpm-kit-v8 '@rushstack/rush-sdk': specifier: workspace:* version: link:../../libraries/rush-sdk @@ -3294,15 +3294,6 @@ importers: ../../../libraries/rush-lib: dependencies: - '@pnpm/dependency-path': - specifier: ~1000.0.9 - version: 1000.0.9 - '@pnpm/dependency-path-lockfile-pre-v10': - specifier: npm:@pnpm/dependency-path@~5.1.7 - version: /@pnpm/dependency-path@5.1.7 - '@pnpm/dependency-path-lockfile-pre-v9': - specifier: npm:@pnpm/dependency-path@~2.1.2 - version: /@pnpm/dependency-path@2.1.8 '@pnpm/link-bins': specifier: ~5.3.7 version: 5.3.25 @@ -3324,6 +3315,15 @@ importers: '@rushstack/rig-package': specifier: workspace:* version: link:../rig-package + '@rushstack/rush-pnpm-kit-v10': + specifier: workspace:* + version: link:../rush-pnpm-kit-v10 + '@rushstack/rush-pnpm-kit-v8': + specifier: workspace:* + version: link:../rush-pnpm-kit-v8 + '@rushstack/rush-pnpm-kit-v9': + specifier: workspace:* + version: link:../rush-pnpm-kit-v9 '@rushstack/stream-collator': specifier: workspace:* version: link:../stream-collator @@ -3376,8 +3376,8 @@ importers: specifier: ~6.1.0 version: 6.1.1 pnpm-sync-lib: - specifier: 0.3.2 - version: 0.3.2 + specifier: 0.3.3 + version: 0.3.3 read-package-tree: specifier: ~5.1.5 version: 5.1.6 @@ -3406,12 +3406,9 @@ importers: specifier: ~8.3.2 version: 8.3.2 devDependencies: - '@pnpm/lockfile.types': - specifier: ~1.0.3 - version: 1.0.3 - '@pnpm/logger': - specifier: 4.0.0 - version: 4.0.0 + '@pnpm/lockfile.types-900': + specifier: npm:@pnpm/lockfile.types@~900.0.0 + version: /@pnpm/lockfile.types@900.0.0 '@rushstack/heft': specifier: workspace:* version: link:../../apps/heft @@ -3467,11 +3464,68 @@ importers: specifier: ~5.98.0 version: 5.98.0 + ../../../libraries/rush-pnpm-kit-v10: + dependencies: + '@pnpm/dependency-path-pnpm-v10': + specifier: npm:@pnpm/dependency-path@~1000.0.9 + version: /@pnpm/dependency-path@1000.0.9 + '@pnpm/lockfile.fs-pnpm-lock-v9': + specifier: npm:@pnpm/lockfile.fs@~1001.1.11 + version: /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0) + '@pnpm/logger': + specifier: ~1001.0.0 + version: 1001.0.0 + devDependencies: + '@rushstack/heft': + specifier: workspace:* + version: link:../../apps/heft + local-node-rig: + specifier: workspace:* + version: link:../../rigs/local-node-rig + + ../../../libraries/rush-pnpm-kit-v8: + dependencies: + '@pnpm/dependency-path-pnpm-v8': + specifier: npm:@pnpm/dependency-path@~2.1.8 + version: /@pnpm/dependency-path@2.1.8 + '@pnpm/lockfile-file-pnpm-lock-v6': + specifier: npm:@pnpm/lockfile-file@~8.1.8 + version: /@pnpm/lockfile-file@8.1.8(@pnpm/logger@5.0.0) + '@pnpm/logger': + specifier: ~5.0.0 + version: 5.0.0 + devDependencies: + '@rushstack/heft': + specifier: workspace:* + version: link:../../apps/heft + local-node-rig: + specifier: workspace:* + version: link:../../rigs/local-node-rig + + ../../../libraries/rush-pnpm-kit-v9: + dependencies: + '@pnpm/dependency-path-pnpm-v9': + specifier: npm:@pnpm/dependency-path@~5.1.7 + version: /@pnpm/dependency-path@5.1.7 + '@pnpm/lockfile.fs-pnpm-lock-v9': + specifier: npm:@pnpm/lockfile.fs@~1001.1.11 + version: /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0) + '@pnpm/logger': + specifier: ~1001.0.0 + version: 1001.0.0 + devDependencies: + '@rushstack/heft': + specifier: workspace:* + version: link:../../apps/heft + local-node-rig: + specifier: workspace:* + version: link:../../rigs/local-node-rig + ../../../libraries/rush-sdk: dependencies: - '@pnpm/lockfile.types': - specifier: ~1.0.3 - version: 1.0.3 + '@pnpm/lockfile.types-900': + specifier: npm:@pnpm/lockfile.types@~900.0.0 + version: /@pnpm/lockfile.types@900.0.0 '@rushstack/lookup-by-path': specifier: workspace:* version: link:../lookup-by-path @@ -9809,6 +9863,16 @@ packages: webpack: 4.47.0 dev: true + /@pnpm/constants@1001.1.0: + resolution: {integrity: sha512-xb9dfSGi1qfUKY3r4Zy9JdC9+ZeaDxwfE7HrrGIEsBVY1hvIn6ntbR7A97z3nk44yX7vwbINNf9sizTp0WEtEw==} + engines: {node: '>=18.12'} + dev: false + + /@pnpm/constants@7.1.1: + resolution: {integrity: sha512-31pZqMtjwV+Vaq7MaPrT1EoDFSYwye3dp6BiHIGRJmVThCQwySRKM7hCvqqI94epNkqFAAYoWrNynWoRYosGdw==} + engines: {node: '>=16.14'} + dev: false + /@pnpm/crypto.base32-hash@1.0.1: resolution: {integrity: sha512-pzAXNn6KxTA3kbcI3iEnYs4vtH51XEVqmK/1EiD18MaPKylhqy8UvMJK3zKG+jeP82cqQbozcTGm4yOQ8i3vNw==} engines: {node: '>=14.6'} @@ -9875,7 +9939,7 @@ packages: dependencies: '@pnpm/crypto.base32-hash': 3.0.1 '@pnpm/types': 12.2.0 - semver: 7.6.3 + semver: 7.7.2 dev: false /@pnpm/error@1.4.0: @@ -9883,6 +9947,34 @@ packages: engines: {node: '>=10.16'} dev: false + /@pnpm/error@1000.0.2: + resolution: {integrity: sha512-2SfE4FFL73rE1WVIoESbqlj4sLy5nWW4M/RVdHvCRJPjlQHa9MH7m7CVJM204lz6I+eHoB+E7rL3zmpJR5wYnQ==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/constants': 1001.1.0 + dev: false + + /@pnpm/error@5.0.3: + resolution: {integrity: sha512-ONJU5cUeoeJSy50qOYsMZQHTA/9QKmGgh1ATfEpCLgtbdwqUiwD9MxHNeXUYYI/pocBCz6r1ZCFqiQvO+8SUKA==} + engines: {node: '>=16.14'} + dependencies: + '@pnpm/constants': 7.1.1 + dev: false + + /@pnpm/git-utils@1.0.0: + resolution: {integrity: sha512-lUI+XrzOJN4zdPGOGnFUrmtXAXpXi8wD8OI0nWOZmlh+raqbLzC3VkXu1zgaduOK6YonOcnQW88O+ojav1rAdA==} + engines: {node: '>=16.14'} + dependencies: + execa: /safe-execa@0.1.2 + dev: false + + /@pnpm/git-utils@1000.0.0: + resolution: {integrity: sha512-W6isNTNgB26n6dZUgwCw6wly+uHQ2Zh5QiRKY1HHMbLAlsnZOxsSNGnuS9euKWHxDftvPfU7uR8XB5x95T5zPQ==} + engines: {node: '>=18.12'} + dependencies: + execa: /safe-execa@0.1.2 + dev: false + /@pnpm/graceful-fs@1000.0.0: resolution: {integrity: sha512-RvMEliAmcfd/4UoaYQ93DLQcFeqit78jhYmeJJVPxqFGmj0jEcb9Tu0eAOXr7tGP3eJHpgvPbTU4o6pZ1bJhxg==} engines: {node: '>=18.12'} @@ -9909,27 +10001,136 @@ packages: ramda: 0.27.2 dev: false + /@pnpm/lockfile-file@8.1.8(@pnpm/logger@5.0.0): + resolution: {integrity: sha512-bRadYzGFyFtwiynwp4Mkn7NDNHkgKvJ9xtjsCT5XiE6S8wpzS3W8yx2WzHGk9Mm1J/2wM0F52+NzCWhlz5eIqA==} + engines: {node: '>=16.14'} + peerDependencies: + '@pnpm/logger': ^5.0.0 + dependencies: + '@pnpm/constants': 7.1.1 + '@pnpm/dependency-path': 2.1.8 + '@pnpm/error': 5.0.3 + '@pnpm/git-utils': 1.0.0 + '@pnpm/lockfile-types': 5.1.5 + '@pnpm/logger': 5.0.0 + '@pnpm/merge-lockfile-changes': 5.0.7 + '@pnpm/types': 9.4.2 + '@pnpm/util.lex-comparator': 1.0.0 + '@zkochan/rimraf': 2.1.3 + comver-to-semver: 1.0.0 + js-yaml: /@zkochan/js-yaml@0.0.6 + normalize-path: 3.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.5.4 + sort-keys: 4.2.0 + strip-bom: 4.0.0 + write-file-atomic: 5.0.1 + dev: false + /@pnpm/lockfile-types@5.1.5: resolution: {integrity: sha512-02FP0HynzX+2DcuPtuMy7PH+kLIC0pevAydAOK+zug2bwdlSLErlvSkc+4+3dw60eRWgUXUqyfO2eR/Ansdbng==} engines: {node: '>=16.14'} dependencies: '@pnpm/types': 9.4.2 - dev: true - /@pnpm/lockfile.types@1.0.3: - resolution: {integrity: sha512-A7vUWktnhDkrIs+WmXm7AdffJVyVYJpQUEouya/DYhB+Y+tQ3BXjZ6CV0KybqLgI/8AZErgCJqFxA0GJH6QDjA==} + /@pnpm/lockfile.fs@1001.1.13(@pnpm/logger@1001.0.0): + resolution: {integrity: sha512-UjBRPvL/ok2UXPsB9HUKDUZaigs3SHuspmAoB9kXQfDLuC7mAQeC7rLpqcEn1E/IVgxGekBDKAmzmm/NEoFpow==} + engines: {node: '>=18.12'} + peerDependencies: + '@pnpm/logger': '>=1001.0.0 <1002.0.0' + dependencies: + '@pnpm/constants': 1001.1.0 + '@pnpm/dependency-path': 1000.0.9 + '@pnpm/error': 1000.0.2 + '@pnpm/git-utils': 1000.0.0 + '@pnpm/lockfile.merger': 1001.0.8 + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/lockfile.utils': 1001.0.12 + '@pnpm/logger': 1001.0.0 + '@pnpm/object.key-sorting': 1000.0.1 + '@pnpm/types': 1000.6.0 + '@zkochan/rimraf': 3.0.2 + comver-to-semver: 1.0.0 + js-yaml: /@zkochan/js-yaml@0.0.7 + normalize-path: 3.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + strip-bom: 4.0.0 + write-file-atomic: 5.0.1 + dev: false + + /@pnpm/lockfile.merger@1001.0.8: + resolution: {integrity: sha512-oB9ABNyxn2yiCr7fGfhrZw2ANXjs9IW9F0y+MyKlryNFHgEsw7972WKOtb1zMRozLg1tU0i+hSLt/Bh8imuTIg==} engines: {node: '>=18.12'} dependencies: - '@pnpm/patching.types': 1.0.0 - '@pnpm/types': 12.2.0 + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/types': 1000.6.0 + comver-to-semver: 1.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.7.2 + dev: false - /@pnpm/logger@4.0.0: - resolution: {integrity: sha512-SIShw+k556e7S7tLZFVSIHjCdiVog1qWzcKW2RbLEHPItdisAFVNIe34kYd9fMSswTlSRLS/qRjw3ZblzWmJ9Q==} + /@pnpm/lockfile.types@1001.0.8: + resolution: {integrity: sha512-rKecvWutX7aZPFNyXGnGtiwfmnPRiQyG6AWQ1Ad0djWKbPeccg0s9B7cJqCJ4nEnwzhEvw9UtuofBkU/O0L+bQ==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/patching.types': 1000.1.0 + '@pnpm/types': 1000.6.0 + dev: false + + /@pnpm/lockfile.types@900.0.0: + resolution: {integrity: sha512-/4+3CAu4uIjx0ln1DYXNdj0qKJ3wyRDY+RS+eFzV6OHjreaTKWsF2WcjigYp1M5mxL4kj2RsRGgBGEyKtCfEWg==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/patching.types': 900.0.0 + '@pnpm/types': 900.0.0 + + /@pnpm/lockfile.utils@1001.0.12: + resolution: {integrity: sha512-8+jo/Qqn6tmwsGhaHaG1TVaqLzWzrr86RtF1Bi+GlwBrgVj+JkrymWAxcH9aKNEP2es6hJSVe3+71pTx/g1yhg==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/dependency-path': 1000.0.9 + '@pnpm/lockfile.types': 1001.0.8 + '@pnpm/pick-fetcher': 1000.0.1 + '@pnpm/resolver-base': 1004.0.0 + '@pnpm/types': 1000.6.0 + get-npm-tarball-url: 2.1.0 + ramda: /@pnpm/ramda@0.28.1 + dev: false + + /@pnpm/logger@1001.0.0: + resolution: {integrity: sha512-nj80XtTHHt7T+b5stLWszzd166MbGx4eTOu9+6h6RdelKMlSWhrb7KUb0j90tYk+yoGx8TeMVdJCaoBnkLp8xw==} + engines: {node: '>=18.12'} + dependencies: + bole: 5.0.19 + ndjson: 2.0.0 + dev: false + + /@pnpm/logger@5.0.0: + resolution: {integrity: sha512-YfcB2QrX+Wx1o6LD1G2Y2fhDhOix/bAY/oAnMpHoNLsKkWIRbt1oKLkIFvxBMzLwAEPqnYWguJrYC+J6i4ywbw==} engines: {node: '>=12.17'} dependencies: - bole: 4.0.1 + bole: 5.0.19 ndjson: 2.0.0 - dev: true + dev: false + + /@pnpm/merge-lockfile-changes@5.0.7: + resolution: {integrity: sha512-fYmX1+EHv3wg7l4A9FCEkjgEBIHaY6JosknkLk3pL8dbB9k6unjIrF9f2onNtpj3XUlWxZ3aBw9THk/Bf6hKow==} + engines: {node: '>=16.14'} + dependencies: + '@pnpm/lockfile-types': 5.1.5 + comver-to-semver: 1.0.0 + ramda: /@pnpm/ramda@0.28.1 + semver: 7.5.4 + dev: false + + /@pnpm/object.key-sorting@1000.0.1: + resolution: {integrity: sha512-YTJCXyUGOrJuj4QqhSKqZa1vlVAm82h1/uw00ZmD/kL2OViggtyUwWyIe62kpwWVPwEYixfGjfvaFKVJy2mjzA==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/util.lex-comparator': 3.0.2 + sort-keys: 4.2.0 + dev: false /@pnpm/package-bins@4.1.0: resolution: {integrity: sha512-57/ioGYLBbVRR80Ux9/q2i3y8Q+uQADc3c+Yse8jr/60YLOi3jcWz13e2Jy+ANYtZI258Qc5wk2X077rp0Ly/Q==} @@ -9940,9 +10141,23 @@ packages: is-subdir: 1.2.0 dev: false - /@pnpm/patching.types@1.0.0: - resolution: {integrity: sha512-juCdQCC1USqLcOhVPl1tYReoTO9YH4fTullMnFXXcmpsDM7Dkn3tzuOQKC3oPoJ2ozv+0EeWWMtMGqn2+IM3pQ==} + /@pnpm/patching.types@1000.1.0: + resolution: {integrity: sha512-Zib2ysLctRnWM4KXXlljR44qSKwyEqYmLk+8VPBDBEK3l5Gp5mT3N4ix9E4qjYynvFqahumsxzOfxOYQhUGMGw==} + engines: {node: '>=18.12'} + dev: false + + /@pnpm/patching.types@900.0.0: + resolution: {integrity: sha512-A/3kgRD4Xy2tBMPjOBdx5ZdgmpUobphzWkqDB72S5SIB6gdyCg32AUV0/aO12DwMxpT7kyqMhkkynUOPBfdlUQ==} + engines: {node: '>=18.12'} + + /@pnpm/pick-fetcher@1000.0.1: + resolution: {integrity: sha512-ETF8ZC6lCLbDzMBUX7kX7srn6Wbqsk/m4ecszRJewtXl3ugQkLw1SA1B6FTPc37EJDPjBShmmKrZF2zMXa6uUA==} engines: {node: '>=18.12'} + dev: false + + /@pnpm/ramda@0.28.1: + resolution: {integrity: sha512-zcAG+lvU0fMziNeGXpPyCyCJYp5ZVrPElEE4t14jAmViaihohocZ+dDkcRIyAomox8pQsuZnv1EyHR+pOhmUWw==} + dev: false /@pnpm/read-modules-dir@2.0.3: resolution: {integrity: sha512-i9OgRvSlxrTS9a2oXokhDxvQzDtfqtsooJ9jaGoHkznue5aFCTSrNZFQ6M18o8hC03QWfnxaKi0BtOvNkKu2+A==} @@ -9979,6 +10194,13 @@ packages: strip-bom: 4.0.0 dev: false + /@pnpm/resolver-base@1004.0.0: + resolution: {integrity: sha512-hPCwGIDJBRBSojFhyoLFEmzd3TGL4NiFqaDNufdjIr+nK5FhyAPwWEJwCNm4/cHtk91aDkJ3qOpIk9RbdQwC3A==} + engines: {node: '>=18.12'} + dependencies: + '@pnpm/types': 1000.6.0 + dev: false + /@pnpm/types@1000.6.0: resolution: {integrity: sha512-6PsMNe98VKPGcg6LnXSW/LE3YfJ77nj+bPKiRjYRWAQLZ+xXjEQRaR0dAuyjCmchlv4wR/hpnMVRS21/fCod5w==} engines: {node: '>=18.12'} @@ -9987,6 +10209,7 @@ packages: /@pnpm/types@12.2.0: resolution: {integrity: sha512-5RtwWhX39j89/Tmyv2QSlpiNjErA357T/8r1Dkg+2lD3P7RuS7Xi2tChvmOC3VlezEFNcWnEGCOeKoGRkDuqFA==} engines: {node: '>=18.12'} + dev: false /@pnpm/types@6.4.0: resolution: {integrity: sha512-nco4+4sZqNHn60Y4VE/fbtlShCBqipyUO+nKRPvDHqLrecMW9pzHWMVRxk4nrMRoeowj3q0rX3GYRBa8lsHTAg==} @@ -10002,6 +10225,20 @@ packages: resolution: {integrity: sha512-g1hcF8Nv4gd76POilz9gD4LITAPXOe5nX4ijgr8ixCbLQZfcpYiMfJ+C1RlMNRUDo8vhlNB4O3bUlxmT6EAQXA==} engines: {node: '>=16.14'} + /@pnpm/types@900.0.0: + resolution: {integrity: sha512-GucC9h/EVbU03Kl7M/FqVes1s5RCQaGCW2f41lFA7VqqHWQElR6k1q33iF6f6fXDUSCdzB1IUxSq9ghP2J+8Pw==} + engines: {node: '>=18.12'} + + /@pnpm/util.lex-comparator@1.0.0: + resolution: {integrity: sha512-3aBQPHntVgk5AweBWZn+1I/fqZ9krK/w01197aYVkAJQGftb+BVWgEepxY5GChjSW12j52XX+CmfynYZ/p0DFQ==} + engines: {node: '>=12.22.0'} + dev: false + + /@pnpm/util.lex-comparator@3.0.2: + resolution: {integrity: sha512-blFO4Ws97tWv/SNE6N39ZdGmZBrocXnBOfVp0ln4kELmns4pGPZizqyRtR8EjfOLMLstbmNCTReBoDvLz1isVg==} + engines: {node: '>=18.12'} + dev: false + /@pnpm/write-project-manifest@1.1.7: resolution: {integrity: sha512-OLkDZSqkA1mkoPNPvLFXyI6fb0enCuFji6Zfditi/CLAo9kmIhQFmEUDu4krSB8i908EljG8YwL5Xjxzm5wsWA==} engines: {node: '>=10.16'} @@ -14583,6 +14820,40 @@ packages: is-windows: 1.0.2 dev: false + /@zkochan/js-yaml@0.0.6: + resolution: {integrity: sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==} + hasBin: true + dependencies: + argparse: 2.0.1 + dev: false + + /@zkochan/js-yaml@0.0.7: + resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==} + hasBin: true + dependencies: + argparse: 2.0.1 + dev: false + + /@zkochan/rimraf@2.1.3: + resolution: {integrity: sha512-mCfR3gylCzPC+iqdxEA6z5SxJeOgzgbwmyxanKriIne5qZLswDe/M43aD3p5MNzwzXRhbZg/OX+MpES6Zk1a6A==} + engines: {node: '>=12.10'} + dependencies: + rimraf: 3.0.2 + dev: false + + /@zkochan/rimraf@3.0.2: + resolution: {integrity: sha512-GBf4ua7ogWTr7fATnzk/JLowZDBnBJMm8RkMaC/KcvxZ9gxbMWix0/jImd815LmqKyIHZ7h7lADRddGMdGBuCA==} + engines: {node: '>=18.12'} + dev: false + + /@zkochan/which@2.0.3: + resolution: {integrity: sha512-C1ReN7vt2/2O0fyTsx5xnbQuxBrmG5NMSbcIkPKCCfCTJgpZBsuRYzFXHj3nVq8vTfK7vxHUmzfCpSHgO7j4rg==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: false + /abab@2.0.6: resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==} deprecated: Use your platform's native atob() and btoa() methods instead @@ -15679,12 +15950,12 @@ packages: - supports-color dev: false - /bole@4.0.1: - resolution: {integrity: sha512-42r0aSOJFJti2l6LasBHq2BuWJzohGs349olQnH/ETlJo87XnoWw7UT8pGE6UstjxzOKkwz7tjoFcmSr6L16vg==} + /bole@5.0.19: + resolution: {integrity: sha512-OgMuI8erST2t4K/Y+tSsn4SOxlKj4JR2wluQgLYadQFPIhj0r3jcmnp0OthgiyNO91CnxR8woKeLQmnMPgl1Ug==} dependencies: fast-safe-stringify: 2.1.1 individual: 3.0.0 - dev: true + dev: false /bonjour-service@1.2.1: resolution: {integrity: sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==} @@ -16589,6 +16860,11 @@ packages: resolution: {integrity: sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==} dev: true + /comver-to-semver@1.0.0: + resolution: {integrity: sha512-gcGtbRxjwROQOdXLUWH1fQAXqThUVRZ219aAwgtX3KfYw429/Zv6EIJRf5TBSzWdAGwePmqH7w70WTaX4MDqag==} + engines: {node: '>=12.17'} + dev: false + /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -19208,6 +19484,7 @@ packages: /fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} + dev: false /fast-xml-parser@4.2.5: resolution: {integrity: sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==} @@ -19827,6 +20104,11 @@ packages: math-intrinsics: 1.1.0 dev: false + /get-npm-tarball-url@2.1.0: + resolution: {integrity: sha512-ro+DiMu5DXgRBabqXupW38h7WPZ9+Ad8UjwhvsmmN8w1sU7ab0nzAXvVZ4kqYg57OrqomRtJvepX5/xvFKNtjA==} + engines: {node: '>=12.17'} + dev: false + /get-package-type@0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} @@ -20735,7 +21017,7 @@ packages: /individual@3.0.0: resolution: {integrity: sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g==} - dev: true + dev: false /infer-owner@1.0.4: resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} @@ -22220,7 +22502,7 @@ packages: /json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} - dev: true + dev: false /json5@1.0.2: resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} @@ -23338,7 +23620,7 @@ packages: readable-stream: 3.6.2 split2: 3.2.2 through2: 4.0.2 - dev: true + dev: false /negotiator@0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} @@ -24083,6 +24365,10 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + /path-name@1.0.0: + resolution: {integrity: sha512-/dcAb5vMXH0f51yvMuSUqFpxUcA8JelbRmE5mW/p4CUJxrNgK24IkstnV7ENtg2IDGBOu6izKTG6eilbnbNKWQ==} + dev: false + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -24224,11 +24510,14 @@ packages: - typescript dev: true - /pnpm-sync-lib@0.3.2: - resolution: {integrity: sha512-XlHyNAHlBqIMGTBD0HfgyRyj1UpSJvVyP20ihPek00YKmMb7RJ16AxlQkjT1jQ/D6s6OAT0ety/tSxcJTrvQ4w==} + /pnpm-sync-lib@0.3.3: + resolution: {integrity: sha512-iE0xtJIm7cljColV3CAfi05FfRWHeJFwKcxsJfwo+dkFo9kg9QgGKHlF5qlF2o2uArOz6z0P4bA/t4pX2Z2jYg==} dependencies: - '@pnpm/dependency-path-2': /@pnpm/dependency-path@2.1.8 - '@pnpm/dependency-path-5': /@pnpm/dependency-path@5.1.7 + '@pnpm/dependency-path-pnpm-v10': /@pnpm/dependency-path@1000.0.9 + '@pnpm/dependency-path-pnpm-v8': /@pnpm/dependency-path@2.1.8 + '@pnpm/dependency-path-pnpm-v9': /@pnpm/dependency-path@5.1.7 + '@pnpm/lockfile-types-pnpm-lock-v6': /@pnpm/lockfile-types@5.1.5 + '@pnpm/lockfile.types-pnpm-lock-v9': /@pnpm/lockfile.types@1001.0.8 yaml: 2.4.1 dev: false @@ -25926,6 +26215,15 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} + /safe-execa@0.1.2: + resolution: {integrity: sha512-vdTshSQ2JsRCgT8eKZWNJIL26C6bVqy1SOmuCMlKHegVeo8KYRobRrefOdUq9OozSPUUiSxrylteeRmLOMFfWg==} + engines: {node: '>=12'} + dependencies: + '@zkochan/which': 2.0.3 + execa: 5.1.1 + path-name: 1.0.0 + dev: false + /safe-regex-test@1.0.3: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} @@ -26646,6 +26944,11 @@ packages: /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + dev: false + /simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} dev: true @@ -26899,7 +27202,7 @@ packages: resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==} dependencies: readable-stream: 3.6.2 - dev: true + dev: false /sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} @@ -27588,7 +27891,7 @@ packages: resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} dependencies: readable-stream: 3.6.2 - dev: true + dev: false /through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} @@ -29176,6 +29479,14 @@ packages: imurmurhash: 0.1.4 signal-exit: 3.0.7 + /write-file-atomic@5.0.1: + resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + dev: false + /write-yaml-file@4.2.0: resolution: {integrity: sha512-LwyucHy0uhWqbrOkh9cBluZBeNVxzHjDaE9mwepZG3n3ZlbM4v3ndrFw51zW/NXYFFqP+QWZ72ihtLWTh05e4Q==} engines: {node: '>=10.13'} diff --git a/common/config/subspaces/default/repo-state.json b/common/config/subspaces/default/repo-state.json index d3f09b6dec3..345bf967db5 100644 --- a/common/config/subspaces/default/repo-state.json +++ b/common/config/subspaces/default/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "d132a98928f381f6aae3c1da00a3939f2d38dafe", + "pnpmShrinkwrapHash": "3d262b1b0d8cb209befc2f55eee7b71769a2c57b", "preferredVersionsHash": "54149ea3f01558a859c96dee2052b797d4defe68" } diff --git a/common/reviews/api/rush-pnpm-kit-v10.api.md b/common/reviews/api/rush-pnpm-kit-v10.api.md new file mode 100644 index 00000000000..8a6d0f4c60e --- /dev/null +++ b/common/reviews/api/rush-pnpm-kit-v10.api.md @@ -0,0 +1,39 @@ +## API Report File for "@rushstack/rush-pnpm-kit-v10" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import type { DependencyPath } from '@pnpm/dependency-path-pnpm-v10'; +import { depPathToFilename } from '@pnpm/dependency-path-pnpm-v10'; +import { indexOfPeersSuffix } from '@pnpm/dependency-path-pnpm-v10'; +import type { LogBase } from '@pnpm/logger'; +import { parse } from '@pnpm/dependency-path-pnpm-v10'; +import { readWantedLockfile } from '@pnpm/lockfile.fs-pnpm-lock-v9'; +import { removeSuffix } from '@pnpm/dependency-path-pnpm-v10'; + +declare namespace dependencyPath { + export { + depPathToFilename, + indexOfPeersSuffix, + parse, + removeSuffix, + DependencyPath + } +} + +declare namespace lockfileFs { + export { + readWantedLockfile + } +} + +declare namespace logger { + export { + LogBase + } +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/common/reviews/api/rush-pnpm-kit-v8.api.md b/common/reviews/api/rush-pnpm-kit-v8.api.md new file mode 100644 index 00000000000..e6d5e5bdd27 --- /dev/null +++ b/common/reviews/api/rush-pnpm-kit-v8.api.md @@ -0,0 +1,35 @@ +## API Report File for "@rushstack/rush-pnpm-kit-v8" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { depPathToFilename } from '@pnpm/dependency-path-pnpm-v8'; +import { indexOfPeersSuffix } from '@pnpm/dependency-path-pnpm-v8'; +import type { LogBase } from '@pnpm/logger'; +import { parse } from '@pnpm/dependency-path-pnpm-v8'; +import { readWantedLockfile } from '@pnpm/lockfile-file-pnpm-lock-v6'; + +declare namespace dependencyPath { + export { + depPathToFilename, + indexOfPeersSuffix, + parse + } +} + +declare namespace lockfileFs { + export { + readWantedLockfile + } +} + +declare namespace logger { + export { + LogBase + } +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/common/reviews/api/rush-pnpm-kit-v9.api.md b/common/reviews/api/rush-pnpm-kit-v9.api.md new file mode 100644 index 00000000000..c94a618c571 --- /dev/null +++ b/common/reviews/api/rush-pnpm-kit-v9.api.md @@ -0,0 +1,39 @@ +## API Report File for "@rushstack/rush-pnpm-kit-v9" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import type { DependencyPath } from '@pnpm/dependency-path-pnpm-v9'; +import { depPathToFilename } from '@pnpm/dependency-path-pnpm-v9'; +import { indexOfPeersSuffix } from '@pnpm/dependency-path-pnpm-v9'; +import type { LogBase } from '@pnpm/logger'; +import { parse } from '@pnpm/dependency-path-pnpm-v9'; +import { readWantedLockfile } from '@pnpm/lockfile.fs-pnpm-lock-v9'; +import { removeSuffix } from '@pnpm/dependency-path-pnpm-v9'; + +declare namespace dependencyPath { + export { + depPathToFilename, + indexOfPeersSuffix, + parse, + removeSuffix, + DependencyPath + } +} + +declare namespace lockfileFs { + export { + readWantedLockfile + } +} + +declare namespace logger { + export { + LogBase + } +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/libraries/rush-lib/package.json b/libraries/rush-lib/package.json index 7b461ac27f6..61c56aa8cc4 100644 --- a/libraries/rush-lib/package.json +++ b/libraries/rush-lib/package.json @@ -29,9 +29,6 @@ }, "license": "MIT", "dependencies": { - "@pnpm/dependency-path-lockfile-pre-v9": "npm:@pnpm/dependency-path@~2.1.2", - "@pnpm/dependency-path-lockfile-pre-v10": "npm:@pnpm/dependency-path@~5.1.7", - "@pnpm/dependency-path": "~1000.0.9", "@pnpm/link-bins": "~5.3.7", "@rushstack/heft-config-file": "workspace:*", "@rushstack/lookup-by-path": "workspace:*", @@ -39,6 +36,9 @@ "@rushstack/package-deps-hash": "workspace:*", "@rushstack/package-extractor": "workspace:*", "@rushstack/rig-package": "workspace:*", + "@rushstack/rush-pnpm-kit-v10": "workspace:*", + "@rushstack/rush-pnpm-kit-v8": "workspace:*", + "@rushstack/rush-pnpm-kit-v9": "workspace:*", "@rushstack/stream-collator": "workspace:*", "@rushstack/terminal": "workspace:*", "@rushstack/ts-command-line": "workspace:*", @@ -65,11 +65,10 @@ "tar": "~6.2.1", "true-case-path": "~2.2.1", "uuid": "~8.3.2", - "pnpm-sync-lib": "0.3.2" + "pnpm-sync-lib": "0.3.3" }, "devDependencies": { - "@pnpm/lockfile.types": "~1.0.3", - "@pnpm/logger": "4.0.0", + "@pnpm/lockfile.types-900": "npm:@pnpm/lockfile.types@~900.0.0", "local-node-rig": "workspace:*", "@rushstack/heft-webpack5-plugin": "workspace:*", "@rushstack/heft": "workspace:*", diff --git a/libraries/rush-lib/src/logic/base/BaseInstallManager.ts b/libraries/rush-lib/src/logic/base/BaseInstallManager.ts index 2bb9ec8afcf..3c0d7fb7323 100644 --- a/libraries/rush-lib/src/logic/base/BaseInstallManager.ts +++ b/libraries/rush-lib/src/logic/base/BaseInstallManager.ts @@ -21,11 +21,12 @@ import { readFile, unlink } from 'fs/promises'; import { PrintUtilities, Colorize, type ITerminal } from '@rushstack/terminal'; import { type ILockfile, - type ILockfilePackage, type ILogMessageCallbackOptions, pnpmSyncGetJsonVersion, pnpmSyncPrepareAsync } from 'pnpm-sync-lib'; +import * as pnpmKitV8 from '@rushstack/rush-pnpm-kit-v8'; +import * as pnpmKitV9 from '@rushstack/rush-pnpm-kit-v9'; import { ApprovedPackagesChecker } from '../ApprovedPackagesChecker'; import type { AsyncRecycler } from '../../utilities/AsyncRecycler'; @@ -57,7 +58,6 @@ import { SubspacePnpmfileConfiguration } from '../pnpm/SubspacePnpmfileConfigura import type { Subspace } from '../../api/Subspace'; import { ProjectImpactGraphGenerator } from '../ProjectImpactGraphGenerator'; import { FlagFile } from '../../api/FlagFile'; -import { PnpmShrinkwrapFile } from '../pnpm/PnpmShrinkwrapFile'; import { PnpmSyncUtilities } from '../../utilities/PnpmSyncUtilities'; import { HotlinkManager } from '../../utilities/HotlinkManager'; @@ -304,35 +304,28 @@ export abstract class BaseInstallManager { lockfileId: subspace.subspaceName, ensureFolderAsync: FileSystem.ensureFolderAsync.bind(FileSystem), // eslint-disable-next-line @typescript-eslint/naming-convention - readPnpmLockfile: async (lockfilePath: string) => { - const wantedPnpmLockfile: PnpmShrinkwrapFile | undefined = PnpmShrinkwrapFile.loadFromFile( - lockfilePath, - { withCaching: true } + readPnpmLockfile: async (lockfilePath: string, options) => { + const pnpmLockFolder: string = path.dirname(lockfilePath); + + const lockfileV9: ILockfile | null = await pnpmKitV9.lockfileFs.readWantedLockfile( + pnpmLockFolder, + options ); - if (!wantedPnpmLockfile) { - return undefined; - } else { - const lockfilePackages: Record = Object.create(null); - for (const versionPath of wantedPnpmLockfile.packages.keys()) { - lockfilePackages[versionPath] = { - dependencies: wantedPnpmLockfile.packages.get(versionPath)?.dependencies as Record< - string, - string - >, - optionalDependencies: wantedPnpmLockfile.packages.get(versionPath) - ?.optionalDependencies as Record - }; - } - - const result: ILockfile = { - lockfileVersion: wantedPnpmLockfile.shrinkwrapFileMajorVersion, - importers: Object.fromEntries(wantedPnpmLockfile.importers.entries()), - packages: lockfilePackages - }; - - return result; + if (lockfileV9?.lockfileVersion.toString().startsWith('9')) { + return lockfileV9; } + + const lockfileV6: ILockfile | null = await pnpmKitV8.lockfileFs.readWantedLockfile( + pnpmLockFolder, + options + ); + + if (lockfileV6?.lockfileVersion.toString().startsWith('6')) { + return lockfileV6; + } + + return undefined; }, logMessageCallback: (logMessageOptions: ILogMessageCallbackOptions) => PnpmSyncUtilities.processLogMessage(logMessageOptions, this._terminal) diff --git a/libraries/rush-lib/src/logic/pnpm/IPnpmfile.ts b/libraries/rush-lib/src/logic/pnpm/IPnpmfile.ts index 0104bc238b7..861ff9d6922 100644 --- a/libraries/rush-lib/src/logic/pnpm/IPnpmfile.ts +++ b/libraries/rush-lib/src/logic/pnpm/IPnpmfile.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. // See LICENSE in the project root for license information. -import type { LogBase } from '@pnpm/logger'; +import type * as pnpmKitV8 from '@rushstack/rush-pnpm-kit-v8'; import type { IPackageJson } from '@rushstack/node-core-library'; import type { IPnpmShrinkwrapYaml } from './PnpmShrinkwrapFile'; import type { RushConfigurationProject } from '../../api/RushConfigurationProject'; @@ -51,7 +51,7 @@ export interface IPnpmfileContext { /** * The `log` parameter passed to {@link IPnpmfile.hooks.filterLog}. */ -export type IPnpmLog = LogBase & { +export type IPnpmLog = pnpmKitV8.logger.LogBase & { [key: string]: unknown; }; diff --git a/libraries/rush-lib/src/logic/pnpm/PnpmLinkManager.ts b/libraries/rush-lib/src/logic/pnpm/PnpmLinkManager.ts index a0b1466ee48..8f7e803fce8 100644 --- a/libraries/rush-lib/src/logic/pnpm/PnpmLinkManager.ts +++ b/libraries/rush-lib/src/logic/pnpm/PnpmLinkManager.ts @@ -322,13 +322,14 @@ export class PnpmLinkManager extends BaseLinkManager { RushConstants.nodeModulesFolderName ); } else if (this._pnpmVersion.major >= 10) { - const { depPathToFilename } = await import('@pnpm/dependency-path'); + // eslint-disable-next-line @typescript-eslint/typedef + const pnpmKitV10 = await import('@rushstack/rush-pnpm-kit-v10'); // project@file+projects+presentation-integration-tests.tgz_jsdom@11.12.0 // The second parameter is max length of virtual store dir, // for v10 default is 120 on Linux/MacOS and 60 on Windows https://pnpm.io/next/settings#virtualstoredirmaxlength // TODO Read virtual-store-dir-max-length from .npmrc - const folderName: string = depPathToFilename( + const folderName: string = pnpmKitV10.dependencyPath.depPathToFilename( tempProjectDependencyKey, process.platform === 'win32' ? 60 : 120 ); @@ -340,12 +341,13 @@ export class PnpmLinkManager extends BaseLinkManager { RushConstants.nodeModulesFolderName ); } else if (this._pnpmVersion.major >= 9) { - const { depPathToFilename } = await import('@pnpm/dependency-path-lockfile-pre-v10'); + // eslint-disable-next-line @typescript-eslint/typedef + const pnpmKitV9 = await import('@rushstack/rush-pnpm-kit-v9'); // project@file+projects+presentation-integration-tests.tgz_jsdom@11.12.0 // The second parameter is max length of virtual store dir, for v9 default is 120 https://pnpm.io/9.x/npmrc#virtual-store-dir-max-length // TODO Read virtual-store-dir-max-length from .npmrc - const folderName: string = depPathToFilename(tempProjectDependencyKey, 120); + const folderName: string = pnpmKitV9.dependencyPath.depPathToFilename(tempProjectDependencyKey, 120); return path.join( this._rushConfiguration.commonTempFolder, RushConstants.nodeModulesFolderName, @@ -354,13 +356,14 @@ export class PnpmLinkManager extends BaseLinkManager { RushConstants.nodeModulesFolderName ); } else if (this._pnpmVersion.major >= 8) { - const { depPathToFilename } = await import('@pnpm/dependency-path-lockfile-pre-v9'); + // eslint-disable-next-line @typescript-eslint/typedef + const pnpmKitV8 = await import('@rushstack/rush-pnpm-kit-v8'); // PNPM 8 changed the local path format again and the hashing algorithm, and // is now using the scoped '@pnpm/dependency-path' package // See https://github.com/pnpm/pnpm/releases/tag/v8.0.0 // e.g.: // file+projects+presentation-integration-tests.tgz_jsdom@11.12.0 - const folderName: string = depPathToFilename(`${tarballEntry}${folderSuffix}`); + const folderName: string = pnpmKitV8.dependencyPath.depPathToFilename(`${tarballEntry}${folderSuffix}`); return path.join( this._rushConfiguration.commonTempFolder, RushConstants.nodeModulesFolderName, diff --git a/libraries/rush-lib/src/logic/pnpm/PnpmShrinkWrapFileConverters.ts b/libraries/rush-lib/src/logic/pnpm/PnpmShrinkWrapFileConverters.ts index ca57585da1d..4a2e7b8e12c 100644 --- a/libraries/rush-lib/src/logic/pnpm/PnpmShrinkWrapFileConverters.ts +++ b/libraries/rush-lib/src/logic/pnpm/PnpmShrinkWrapFileConverters.ts @@ -13,7 +13,7 @@ * 2. @pnpm/lockfile.fs only provides asynchronous read methods, while rush requires synchronous reading of the lockfile file. * Perhaps this file will be deleted in the future and instead depend on @pnpm/lockfile.fs directly. */ -import { removeSuffix } from '@pnpm/dependency-path'; +import * as pnpmKitV9 from '@rushstack/rush-pnpm-kit-v9'; import type { InlineSpecifiersProjectSnapshot, InlineSpecifiersResolvedDependencies, @@ -23,7 +23,7 @@ import type { PackageSnapshots, ProjectSnapshot, ResolvedDependencies -} from '@pnpm/lockfile.types'; +} from '@pnpm/lockfile.types-900'; import { removeNullishProps } from '../../utilities/objectUtilities'; type DepPath = string & { __brand: 'DepPath' }; @@ -106,7 +106,7 @@ export function convertLockfileV9ToLockfileObject(lockfile: LockfileFileV9): Loc const packages: PackageSnapshots = {}; for (const [depPath, pkg] of Object.entries(lockfile.snapshots ?? {})) { - const pkgId: string = removeSuffix(depPath); + const pkgId: string = pnpmKitV9.dependencyPath.removeSuffix(depPath); packages[depPath as DepPath] = Object.assign(pkg, lockfile.packages?.[pkgId]); } return { diff --git a/libraries/rush-lib/src/logic/pnpm/PnpmShrinkwrapFile.ts b/libraries/rush-lib/src/logic/pnpm/PnpmShrinkwrapFile.ts index 6f03421a064..d3e0aa0fbac 100644 --- a/libraries/rush-lib/src/logic/pnpm/PnpmShrinkwrapFile.ts +++ b/libraries/rush-lib/src/logic/pnpm/PnpmShrinkwrapFile.ts @@ -14,8 +14,8 @@ import { InternalError } from '@rushstack/node-core-library'; import { Colorize, type ITerminal } from '@rushstack/terminal'; -import * as dependencyPathLockfilePreV9 from '@pnpm/dependency-path-lockfile-pre-v9'; -import * as dependencyPath from '@pnpm/dependency-path'; +import * as pnpmKitV8 from '@rushstack/rush-pnpm-kit-v8'; +import * as pnpmKitV9 from '@rushstack/rush-pnpm-kit-v9'; import { BaseShrinkwrapFile } from '../base/BaseShrinkwrapFile'; import { DependencySpecifier } from '../DependencySpecifier'; @@ -40,7 +40,7 @@ import type { ProjectSnapshot, LockfileFileV9, ResolvedDependencies -} from '@pnpm/lockfile.types'; +} from '@pnpm/lockfile.types-900'; import { convertLockfileV9ToLockfileObject } from './PnpmShrinkWrapFileConverters'; const yamlModule: typeof import('js-yaml') = Import.lazy('js-yaml', require); @@ -143,7 +143,7 @@ export function parsePnpm9DependencyKey( return undefined; } - const { peersIndex } = dependencyPath.indexOfPeersSuffix(dependencyKey); + const { peersIndex } = pnpmKitV9.dependencyPath.indexOfPeersSuffix(dependencyKey); if (peersIndex !== -1) { // Remove peer suffix const key: string = dependencyKey.slice(0, peersIndex); @@ -159,7 +159,7 @@ export function parsePnpm9DependencyKey( // Example: https://github.com/jonschlinkert/pad-left/tarball/2.1.0 -> name=undefined version=undefined // Example: pad-left@https://github.com/jonschlinkert/pad-left/tarball/2.1.0 -> name=pad-left nonSemverVersion=https://xxxx // Example: pad-left@https://codeload.github.com/jonschlinkert/pad-left/tar.gz/7798d648225aa5 -> name=pad-left nonSemverVersion=https://xxxx - const dependency: dependencyPath.DependencyPath = dependencyPath.parse(dependencyKey); + const dependency: pnpmKitV9.dependencyPath.DependencyPath = pnpmKitV9.dependencyPath.parse(dependencyKey); const name: string = dependency.name ?? dependencyName; const version: string = dependency.version ?? dependency.nonSemverVersion ?? dependencyKey; @@ -358,7 +358,7 @@ export class PnpmShrinkwrapFile extends BaseShrinkwrapFile { return /@file:/.test(version) ? version : `${name}@${version}`; } - return dependencyPath.removeSuffix(version).includes('@', 1) ? version : `${name}@${version}`; + return pnpmKitV9.dependencyPath.removeSuffix(version).includes('@', 1) ? version : `${name}@${version}`; } public static loadFromFile( @@ -556,7 +556,7 @@ export class PnpmShrinkwrapFile extends BaseShrinkwrapFile { private _convertLockfileV6DepPathToV5DepPath(newDepPath: string): string { if (!newDepPath.includes('@', 2) || newDepPath.startsWith('file:')) return newDepPath; const index: number = newDepPath.indexOf('@', newDepPath.indexOf('/@') + 2); - if (newDepPath.includes('(') && index > dependencyPathLockfilePreV9.indexOfPeersSuffix(newDepPath)) + if (newDepPath.includes('(') && index > pnpmKitV8.dependencyPath.indexOfPeersSuffix(newDepPath)) return newDepPath; return `${newDepPath.substring(0, index)}/${newDepPath.substring(index + 1)}`; } @@ -571,8 +571,8 @@ export class PnpmShrinkwrapFile extends BaseShrinkwrapFile { if (this.shrinkwrapFileMajorVersion >= 6) { depPath = this._convertLockfileV6DepPathToV5DepPath(packagePath); } - const pkgInfo: ReturnType = - dependencyPathLockfilePreV9.parse(depPath); + const pkgInfo: ReturnType = + pnpmKitV8.dependencyPath.parse(depPath); return this._getPackageId(pkgInfo.name as string, pkgInfo.version as string); } @@ -676,7 +676,7 @@ export class PnpmShrinkwrapFile extends BaseShrinkwrapFile { } if (this.shrinkwrapFileMajorVersion >= ShrinkwrapFileMajorVersion.V9) { - const { version, nonSemverVersion } = dependencyPath.parse(value); + const { version, nonSemverVersion } = pnpmKitV9.dependencyPath.parse(value); value = version ?? nonSemverVersion ?? value; } else { let underscoreOrParenthesisIndex: number = value.indexOf('_'); diff --git a/libraries/rush-lib/src/logic/pnpm/test/PnpmShrinkwrapConverters.test.ts b/libraries/rush-lib/src/logic/pnpm/test/PnpmShrinkwrapConverters.test.ts index 673bf4826ff..7ed13480801 100644 --- a/libraries/rush-lib/src/logic/pnpm/test/PnpmShrinkwrapConverters.test.ts +++ b/libraries/rush-lib/src/logic/pnpm/test/PnpmShrinkwrapConverters.test.ts @@ -1,7 +1,7 @@ // Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. // See LICENSE in the project root for license information. -import type { LockfileFileV9, PackageSnapshot, ProjectSnapshot } from '@pnpm/lockfile.types'; +import type { LockfileFileV9, PackageSnapshot, ProjectSnapshot } from '@pnpm/lockfile.types-900'; import { convertLockfileV9ToLockfileObject } from '../PnpmShrinkWrapFileConverters'; import { FileSystem } from '@rushstack/node-core-library'; import yamlModule from 'js-yaml'; @@ -39,7 +39,7 @@ describe(convertLockfileV9ToLockfileObject.name, () => { }); }); - it("no nullish values", () => { + it('no nullish values', () => { const importers = new Map(Object.entries(lockfile.importers || {})); const currentPackage = importers.get('.'); diff --git a/libraries/rush-pnpm-kit-v10/config/api-extractor.json b/libraries/rush-pnpm-kit-v10/config/api-extractor.json new file mode 100644 index 00000000000..996e271d3dd --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/config/api-extractor.json @@ -0,0 +1,19 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + "mainEntryPointFilePath": "/lib/index.d.ts", + + "apiReport": { + "enabled": true, + "reportFolder": "../../../common/reviews/api" + }, + + "docModel": { + "enabled": true, + "apiJsonFilePath": "../../../common/temp/api/.api.json" + }, + + "dtsRollup": { + "enabled": true + } +} diff --git a/libraries/rush-pnpm-kit-v10/config/rig.json b/libraries/rush-pnpm-kit-v10/config/rig.json new file mode 100644 index 00000000000..165ffb001f5 --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/config/rig.json @@ -0,0 +1,7 @@ +{ + // The "rig.json" file directs tools to look for their config files in an external package. + // Documentation for this system: https://www.npmjs.com/package/@rushstack/rig-package + "$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json", + + "rigPackageName": "local-node-rig" +} diff --git a/libraries/rush-pnpm-kit-v10/package.json b/libraries/rush-pnpm-kit-v10/package.json new file mode 100644 index 00000000000..a47634eb7d2 --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/package.json @@ -0,0 +1,23 @@ +{ + "name": "@rushstack/rush-pnpm-kit-v10", + "version": "0.0.0", + "description": "rush pnpm kit v10", + "license": "MIT", + "main": "lib/index.js", + "typings": "dist/rush-pnpm-kit-v10.d.ts", + "scripts": { + "_phase:build": "heft run --only build -- --clean", + "_phase:test": "heft run --only test -- --clean", + "build": "heft build --clean", + "test": "heft test --clean" + }, + "dependencies": { + "@pnpm/dependency-path-pnpm-v10": "npm:@pnpm/dependency-path@~1000.0.9", + "@pnpm/lockfile.fs-pnpm-lock-v9": "npm:@pnpm/lockfile.fs@~1001.1.11", + "@pnpm/logger": "~1001.0.0" + }, + "devDependencies": { + "@rushstack/heft": "workspace:*", + "local-node-rig": "workspace:*" + } +} diff --git a/libraries/rush-pnpm-kit-v10/src/dependencyPath.ts b/libraries/rush-pnpm-kit-v10/src/dependencyPath.ts new file mode 100644 index 00000000000..006b3279a71 --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/src/dependencyPath.ts @@ -0,0 +1,4 @@ +import { depPathToFilename, indexOfPeersSuffix, parse, removeSuffix } from '@pnpm/dependency-path-pnpm-v10'; +import type { DependencyPath } from '@pnpm/dependency-path-pnpm-v10'; + +export { depPathToFilename, indexOfPeersSuffix, parse, removeSuffix, DependencyPath }; diff --git a/libraries/rush-pnpm-kit-v10/src/index.ts b/libraries/rush-pnpm-kit-v10/src/index.ts new file mode 100644 index 00000000000..14194070686 --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/src/index.ts @@ -0,0 +1,3 @@ +export * as dependencyPath from './dependencyPath'; +export * as lockfileFs from './lockfileFs'; +export * as logger from './logger'; diff --git a/libraries/rush-pnpm-kit-v10/src/lockfileFs.ts b/libraries/rush-pnpm-kit-v10/src/lockfileFs.ts new file mode 100644 index 00000000000..ce218e2a34e --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/src/lockfileFs.ts @@ -0,0 +1,3 @@ +import { readWantedLockfile } from '@pnpm/lockfile.fs-pnpm-lock-v9'; + +export { readWantedLockfile }; diff --git a/libraries/rush-pnpm-kit-v10/src/logger.ts b/libraries/rush-pnpm-kit-v10/src/logger.ts new file mode 100644 index 00000000000..63c263fdcbe --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/src/logger.ts @@ -0,0 +1,3 @@ +import type { LogBase } from '@pnpm/logger'; + +export { LogBase }; diff --git a/libraries/rush-pnpm-kit-v10/tsconfig.json b/libraries/rush-pnpm-kit-v10/tsconfig.json new file mode 100644 index 00000000000..dac21d04081 --- /dev/null +++ b/libraries/rush-pnpm-kit-v10/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "./node_modules/local-node-rig/profiles/default/tsconfig-base.json" +} diff --git a/libraries/rush-pnpm-kit-v8/config/api-extractor.json b/libraries/rush-pnpm-kit-v8/config/api-extractor.json new file mode 100644 index 00000000000..996e271d3dd --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/config/api-extractor.json @@ -0,0 +1,19 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + "mainEntryPointFilePath": "/lib/index.d.ts", + + "apiReport": { + "enabled": true, + "reportFolder": "../../../common/reviews/api" + }, + + "docModel": { + "enabled": true, + "apiJsonFilePath": "../../../common/temp/api/.api.json" + }, + + "dtsRollup": { + "enabled": true + } +} diff --git a/libraries/rush-pnpm-kit-v8/config/rig.json b/libraries/rush-pnpm-kit-v8/config/rig.json new file mode 100644 index 00000000000..165ffb001f5 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/config/rig.json @@ -0,0 +1,7 @@ +{ + // The "rig.json" file directs tools to look for their config files in an external package. + // Documentation for this system: https://www.npmjs.com/package/@rushstack/rig-package + "$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json", + + "rigPackageName": "local-node-rig" +} diff --git a/libraries/rush-pnpm-kit-v8/package.json b/libraries/rush-pnpm-kit-v8/package.json new file mode 100644 index 00000000000..40239703046 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/package.json @@ -0,0 +1,23 @@ +{ + "name": "@rushstack/rush-pnpm-kit-v8", + "version": "0.0.0", + "description": "rush pnpm kit v8", + "license": "MIT", + "main": "lib/index.js", + "typings": "dist/rush-pnpm-kit-v8.d.ts", + "scripts": { + "_phase:build": "heft run --only build -- --clean", + "_phase:test": "heft run --only test -- --clean", + "build": "heft build --clean", + "test": "heft test --clean" + }, + "dependencies": { + "@pnpm/dependency-path-pnpm-v8": "npm:@pnpm/dependency-path@~2.1.8", + "@pnpm/lockfile-file-pnpm-lock-v6": "npm:@pnpm/lockfile-file@~8.1.8", + "@pnpm/logger": "~5.0.0" + }, + "devDependencies": { + "@rushstack/heft": "workspace:*", + "local-node-rig": "workspace:*" + } +} diff --git a/libraries/rush-pnpm-kit-v8/src/dependencyPath.ts b/libraries/rush-pnpm-kit-v8/src/dependencyPath.ts new file mode 100644 index 00000000000..aef3c60f196 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/src/dependencyPath.ts @@ -0,0 +1,3 @@ +import { depPathToFilename, indexOfPeersSuffix, parse } from '@pnpm/dependency-path-pnpm-v8'; + +export { depPathToFilename, indexOfPeersSuffix, parse }; diff --git a/libraries/rush-pnpm-kit-v8/src/index.ts b/libraries/rush-pnpm-kit-v8/src/index.ts new file mode 100644 index 00000000000..14194070686 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/src/index.ts @@ -0,0 +1,3 @@ +export * as dependencyPath from './dependencyPath'; +export * as lockfileFs from './lockfileFs'; +export * as logger from './logger'; diff --git a/libraries/rush-pnpm-kit-v8/src/lockfileFs.ts b/libraries/rush-pnpm-kit-v8/src/lockfileFs.ts new file mode 100644 index 00000000000..a7f6a94a598 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/src/lockfileFs.ts @@ -0,0 +1,3 @@ +import { readWantedLockfile } from '@pnpm/lockfile-file-pnpm-lock-v6'; + +export { readWantedLockfile }; diff --git a/libraries/rush-pnpm-kit-v8/src/logger.ts b/libraries/rush-pnpm-kit-v8/src/logger.ts new file mode 100644 index 00000000000..63c263fdcbe --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/src/logger.ts @@ -0,0 +1,3 @@ +import type { LogBase } from '@pnpm/logger'; + +export { LogBase }; diff --git a/libraries/rush-pnpm-kit-v8/tsconfig.json b/libraries/rush-pnpm-kit-v8/tsconfig.json new file mode 100644 index 00000000000..dac21d04081 --- /dev/null +++ b/libraries/rush-pnpm-kit-v8/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "./node_modules/local-node-rig/profiles/default/tsconfig-base.json" +} diff --git a/libraries/rush-pnpm-kit-v9/config/api-extractor.json b/libraries/rush-pnpm-kit-v9/config/api-extractor.json new file mode 100644 index 00000000000..996e271d3dd --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/config/api-extractor.json @@ -0,0 +1,19 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + "mainEntryPointFilePath": "/lib/index.d.ts", + + "apiReport": { + "enabled": true, + "reportFolder": "../../../common/reviews/api" + }, + + "docModel": { + "enabled": true, + "apiJsonFilePath": "../../../common/temp/api/.api.json" + }, + + "dtsRollup": { + "enabled": true + } +} diff --git a/libraries/rush-pnpm-kit-v9/config/rig.json b/libraries/rush-pnpm-kit-v9/config/rig.json new file mode 100644 index 00000000000..165ffb001f5 --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/config/rig.json @@ -0,0 +1,7 @@ +{ + // The "rig.json" file directs tools to look for their config files in an external package. + // Documentation for this system: https://www.npmjs.com/package/@rushstack/rig-package + "$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json", + + "rigPackageName": "local-node-rig" +} diff --git a/libraries/rush-pnpm-kit-v9/package.json b/libraries/rush-pnpm-kit-v9/package.json new file mode 100644 index 00000000000..9aa382399f6 --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/package.json @@ -0,0 +1,23 @@ +{ + "name": "@rushstack/rush-pnpm-kit-v9", + "version": "0.0.0", + "description": "rush pnpm kit v9", + "license": "MIT", + "main": "lib/index.js", + "typings": "dist/rush-pnpm-kit-v9.d.ts", + "scripts": { + "_phase:build": "heft run --only build -- --clean", + "_phase:test": "heft run --only test -- --clean", + "build": "heft build --clean", + "test": "heft test --clean" + }, + "dependencies": { + "@pnpm/dependency-path-pnpm-v9": "npm:@pnpm/dependency-path@~5.1.7", + "@pnpm/lockfile.fs-pnpm-lock-v9": "npm:@pnpm/lockfile.fs@~1001.1.11", + "@pnpm/logger": "~1001.0.0" + }, + "devDependencies": { + "@rushstack/heft": "workspace:*", + "local-node-rig": "workspace:*" + } +} diff --git a/libraries/rush-pnpm-kit-v9/src/dependencyPath.ts b/libraries/rush-pnpm-kit-v9/src/dependencyPath.ts new file mode 100644 index 00000000000..44701890c54 --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/src/dependencyPath.ts @@ -0,0 +1,4 @@ +import { depPathToFilename, indexOfPeersSuffix, parse, removeSuffix } from '@pnpm/dependency-path-pnpm-v9'; +import type { DependencyPath } from '@pnpm/dependency-path-pnpm-v9'; + +export { depPathToFilename, indexOfPeersSuffix, parse, removeSuffix, DependencyPath }; diff --git a/libraries/rush-pnpm-kit-v9/src/index.ts b/libraries/rush-pnpm-kit-v9/src/index.ts new file mode 100644 index 00000000000..14194070686 --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/src/index.ts @@ -0,0 +1,3 @@ +export * as dependencyPath from './dependencyPath'; +export * as lockfileFs from './lockfileFs'; +export * as logger from './logger'; diff --git a/libraries/rush-pnpm-kit-v9/src/lockfileFs.ts b/libraries/rush-pnpm-kit-v9/src/lockfileFs.ts new file mode 100644 index 00000000000..ce218e2a34e --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/src/lockfileFs.ts @@ -0,0 +1,3 @@ +import { readWantedLockfile } from '@pnpm/lockfile.fs-pnpm-lock-v9'; + +export { readWantedLockfile }; diff --git a/libraries/rush-pnpm-kit-v9/src/logger.ts b/libraries/rush-pnpm-kit-v9/src/logger.ts new file mode 100644 index 00000000000..63c263fdcbe --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/src/logger.ts @@ -0,0 +1,3 @@ +import type { LogBase } from '@pnpm/logger'; + +export { LogBase }; diff --git a/libraries/rush-pnpm-kit-v9/tsconfig.json b/libraries/rush-pnpm-kit-v9/tsconfig.json new file mode 100644 index 00000000000..dac21d04081 --- /dev/null +++ b/libraries/rush-pnpm-kit-v9/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "./node_modules/local-node-rig/profiles/default/tsconfig-base.json" +} diff --git a/libraries/rush-sdk/package.json b/libraries/rush-sdk/package.json index 644479d8256..6597de6e5ed 100644 --- a/libraries/rush-sdk/package.json +++ b/libraries/rush-sdk/package.json @@ -39,7 +39,7 @@ }, "license": "MIT", "dependencies": { - "@pnpm/lockfile.types": "~1.0.3", + "@pnpm/lockfile.types-900": "npm:@pnpm/lockfile.types@~900.0.0", "@rushstack/lookup-by-path": "workspace:*", "@rushstack/node-core-library": "workspace:*", "@rushstack/package-deps-hash": "workspace:*", diff --git a/rush.json b/rush.json index 5968af8b38f..02b2b05954f 100644 --- a/rush.json +++ b/rush.json @@ -1438,6 +1438,24 @@ "projectFolder": "rush-plugins/rush-mcp-docs-plugin", "reviewCategory": "libraries", "shouldPublish": true + }, + { + "packageName": "@rushstack/rush-pnpm-kit-v8", + "projectFolder": "libraries/rush-pnpm-kit-v8", + "reviewCategory": "libraries", + "shouldPublish": true + }, + { + "packageName": "@rushstack/rush-pnpm-kit-v9", + "projectFolder": "libraries/rush-pnpm-kit-v9", + "reviewCategory": "libraries", + "shouldPublish": true + }, + { + "packageName": "@rushstack/rush-pnpm-kit-v10", + "projectFolder": "libraries/rush-pnpm-kit-v10", + "reviewCategory": "libraries", + "shouldPublish": true } ] }