diff --git a/packages/nx/src/lock-file/lock-file.spec.ts b/packages/nx/src/lock-file/lock-file.spec.ts index a8c31066ad8d6..31cb97281f107 100644 --- a/packages/nx/src/lock-file/lock-file.spec.ts +++ b/packages/nx/src/lock-file/lock-file.spec.ts @@ -1,7 +1,19 @@ import { mapLockFileDataToPartialGraph } from './lock-file'; -import { parseNpmLockFile, stringifyNpmLockFile } from './npm'; -import { parsePnpmLockFile, stringifyPnpmLockFile } from './pnpm'; -import { parseYarnLockFile, stringifyYarnLockFile } from './yarn'; +import { + parseNpmLockFile, + pruneNpmLockFile, + stringifyNpmLockFile, +} from './npm'; +import { + parsePnpmLockFile, + prunePnpmLockFile, + stringifyPnpmLockFile, +} from './pnpm'; +import { + parseYarnLockFile, + pruneYarnLockFile, + stringifyYarnLockFile, +} from './yarn'; import { npmLockFileV1WithAliases, npmLockFileWithAliases, @@ -247,6 +259,7 @@ describe('lock-file', () => { ); const newPackage = createPackageJson('lib1', partialGraph, {}); + const prunedLockFile = pruneYarnLockFile(lockFileData, newPackage); expect(newPackage).toMatchInlineSnapshot(` Object { "dependencies": Object { @@ -283,6 +296,7 @@ describe('lock-file', () => { ); const newPackage = createPackageJson('lib1', partialGraph, {}); + const prunedLockFile = pruneNpmLockFile(lockFileData, newPackage); expect(newPackage).toMatchInlineSnapshot(` Object { "dependencies": Object { @@ -317,6 +331,7 @@ describe('lock-file', () => { ); const newPackage = createPackageJson('lib1', partialGraph, {}); + const prunedLockFile = pruneYarnLockFile(lockFileData, newPackage); expect(newPackage).toMatchInlineSnapshot(` Object { "dependencies": Object { @@ -350,6 +365,7 @@ describe('lock-file', () => { mapLockFileDataToPartialGraph(lockFileData, 'pnpm') ); const newPackage = createPackageJson('lib1', partialGraph, {}); + const prunedLockFile = prunePnpmLockFile(lockFileData, newPackage); expect(newPackage).toMatchInlineSnapshot(` Object { "dependencies": Object { diff --git a/packages/nx/src/lock-file/pnpm.ts b/packages/nx/src/lock-file/pnpm.ts index a6f14a0a7224b..95267be7d504d 100644 --- a/packages/nx/src/lock-file/pnpm.ts +++ b/packages/nx/src/lock-file/pnpm.ts @@ -432,7 +432,9 @@ function pruneDependencies( dependencies[packageName] ).find(([_, v]) => v.rootVersion); result[packageName] = result[packageName] || {}; - const metaKey = `/${packageName}/${value.version}`; + const metaKey = value.actualVersion + ? value.version + : `/${packageName}/${value.version}`; const meta = packageMeta.find((m) => m.key.startsWith(metaKey)); result[packageName][key] = Object.assign(value, {