@teambit/pnpm 1.0.1016 → 1.0.1018

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","_interopRequireDefault","require","_component","_objects","_lockfileDepsGraphConverter","_chai","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","describe","lockfile","bit","depsRequiringBuild","importers","dependencies","comp1","version","specifier","foo","qar","zoo","lockfileVersion","snapshots","bar","comp2","packages","resolution","directory","type","engines","node","npm","hasBin","os","cpu","integrity","peerDependencies","graph","convertLockfileToGraph","pkgName","componentRelativeDir","componentRootDir","componentIdByPkgName","Map","ComponentID","fromString","expected","schemaVersion","edges","id","neighbours","optional","attr","pkgId","name","lifecycle","requiresBuild","component","scope","it","expect","fromEntries","entries","to","eql","convertGraphToLockfile","DependenciesGraph","manifests","path","resolve","rootDir","process","cwd","devDependencies","optionalDependencies","referencingComp1","edge","some","n","has","equal","comp3","undefined","rootEdge","findRootEdge","map","find","includes","generateLargeLockfile","numPackages","numComponents","importerDeps","deps","compName","compPath","fileDepPath","set","Array","from","_","start","performance","now","elapsed","be","greaterThan","size","lessThan","lockfileCount","lockfiles","graphs","ROOT_EDGE_ID","error","_error","message","eq"],"sources":["lockfile-deps-graph-converter.spec.ts"],"sourcesContent":["import path from 'path';\nimport { ComponentID } from '@teambit/component';\nimport { DependenciesGraph, type PackagesMap, type DependencyEdge } from '@teambit/objects';\nimport { convertLockfileToGraph, convertGraphToLockfile } from './lockfile-deps-graph-converter';\nimport { type BitLockfileFile } from './lynx';\nimport { expect } from 'chai';\n\ndescribe('convertLockfileToGraph simple case', () => {\n const lockfile: BitLockfileFile = {\n bit: {\n depsRequiringBuild: ['bar@1.0.0'],\n },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: {\n version: 'file:comps/comp1',\n specifier: '*',\n },\n },\n },\n 'comps/comp1': {\n dependencies: {\n foo: {\n version: '1.0.0(patch_hash=0000)',\n specifier: '^1.0.0',\n },\n qar: {\n version: '1.1.0',\n specifier: '^1.0.0',\n },\n zoo: {\n version: '1.1.0(qar@1.1.0)',\n specifier: '^1.1.0',\n },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0(patch_hash=0000)': {\n dependencies: {\n bar: '1.0.0',\n },\n },\n 'bar@1.0.0': {},\n 'qar@1.1.0': {},\n 'zoo@1.1.0(qar@1.1.0)': {\n dependencies: {\n qar: '1.1.0',\n },\n },\n 'comp1@file:comps/comp1': {\n dependencies: {\n foo: '1.0.0(patch_hash=0000)',\n qar: '1.1.0',\n zoo: '1.1.0(qar@1.1.0)',\n comp2: 'file:comps/comp2',\n },\n },\n 'comp2@file:comps/comp2': {\n dependencies: {},\n },\n },\n packages: {\n 'comp1@file:comps/comp1': {\n resolution: {\n directory: 'comps/comp1',\n type: 'directory',\n },\n },\n 'comp2@file:comps/comp2': {\n resolution: {\n directory: 'comps/comp2',\n type: 'directory',\n },\n },\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ]),\n });\n const expected = {\n schemaVersion: '2.0',\n edges: [\n {\n id: 'foo@1.0.0(patch_hash=0000)',\n neighbours: [{ id: 'bar@1.0.0', optional: false }],\n attr: {\n pkgId: 'foo@1.0.0',\n },\n },\n {\n id: 'zoo@1.1.0(qar@1.1.0)',\n neighbours: [{ id: 'qar@1.1.0', optional: false }],\n attr: {\n pkgId: 'zoo@1.1.0',\n },\n },\n {\n id: '.',\n neighbours: [\n {\n id: 'foo@1.0.0(patch_hash=0000)',\n name: 'foo',\n specifier: '^1.0.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'qar@1.1.0',\n name: 'qar',\n specifier: '^1.0.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'zoo@1.1.0(qar@1.1.0)',\n name: 'zoo',\n specifier: '^1.1.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'comp2@1.0.0',\n lifecycle: 'runtime',\n name: 'comp2',\n optional: false,\n specifier: '*',\n },\n ],\n },\n ],\n packages: {\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n requiresBuild: true,\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n 'comp2@1.0.0': {\n component: {\n name: 'comp2',\n scope: 'my-scope',\n },\n },\n },\n };\n it('should convert the lockfile object to the graph object', () => {\n expect({\n ...graph,\n packages: Object.fromEntries(graph.packages.entries()),\n }).to.eql(expected);\n });\n it('should convert the graph object to the lockfile object', async () => {\n expect(\n await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: {\n foo: '^1.0.0',\n bar: `link:${path.resolve('comps/bar')}`, // Links from the manifests are added to the lockfile\n qar: '1.1.0',\n zoo: '1.1.0',\n comp2: '1.0.0',\n },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: { integrity: '0000' } }) as any,\n })\n ).to.eql({\n bit: {\n depsRequiringBuild: ['bar@1.0.0'],\n },\n importers: {\n 'comps/comp1': {\n dependencies: {\n comp2: {\n version: '1.0.0',\n specifier: '1.0.0',\n },\n foo: {\n version: '1.0.0(patch_hash=0000)',\n specifier: '^1.0.0',\n },\n bar: {\n version: 'link:../bar',\n specifier: `link:${path.resolve('comps/bar')}`,\n },\n qar: {\n version: '1.1.0',\n specifier: '1.1.0',\n },\n zoo: {\n version: '1.1.0(qar@1.1.0)',\n specifier: '1.1.0',\n },\n },\n devDependencies: {},\n optionalDependencies: {},\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0(patch_hash=0000)': {\n dependencies: {\n bar: '1.0.0',\n },\n },\n 'bar@1.0.0': {},\n 'qar@1.1.0': {},\n 'comp2@1.0.0': {},\n 'zoo@1.1.0(qar@1.1.0)': {\n dependencies: {\n qar: '1.1.0',\n },\n },\n },\n packages: {\n 'comp2@1.0.0': {\n resolution: {\n integrity: '0000',\n },\n },\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n },\n });\n });\n});\n\ndescribe('convertLockfileToGraph with a circular workspace dependency back to the component being processed', () => {\n // Reproduces the \"No matching version found for <workspace-comp>@0.0.0-<hash>\"\n // failure: comp1 (the component being processed) is removed from snapshots\n // and packages, but a circular workspace dep (comp2 depends back on comp1)\n // leaves an edge whose neighbour references comp1@<version> with no\n // corresponding packages entry. When the graph is later converted back to a\n // lockfile, convertGraphToLockfile materialises that dangling neighbour as\n // an empty packages entry and getPkgsToResolve treats it as a missing\n // package, asking the registry for a snap-version that was never published.\n it('should drop edges that reference the component being processed', () => {\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n 'comps/comp1': {\n dependencies: {\n comp2: { version: 'file:comps/comp2', specifier: '*' },\n },\n },\n 'comps/comp2': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'comp1@file:comps/comp1': {\n dependencies: {\n comp2: 'file:comps/comp2',\n },\n },\n 'comp2@file:comps/comp2': {\n dependencies: {\n comp1: 'file:comps/comp1',\n },\n },\n },\n packages: {\n 'comp1@file:comps/comp1': {\n resolution: { directory: 'comps/comp1', type: 'directory' },\n },\n 'comp2@file:comps/comp2': {\n resolution: { directory: 'comps/comp2', type: 'directory' },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ]),\n });\n // The graph must never reference comp1 — it is the component being\n // snapped, so it does not belong in its own deps graph.\n const referencingComp1 = graph.edges.filter((edge) =>\n edge.neighbours.some((n) => n.id === 'comp1@1.0.0')\n );\n expect(referencingComp1).to.eql([]);\n expect(graph.packages.has('comp1@1.0.0')).to.equal(false);\n });\n\n // Same bug, but the cycle closes through an intermediate workspace\n // component (comp1 → comp2 → comp3 → comp1). The back-edge in the\n // lockfile lives on comp3's snapshot, not comp2's. Scrubbing only\n // direct dependents of comp1 would miss it; the fix iterates every\n // remaining snapshot so chain-length doesn't matter.\n it('should drop edges that reference the component via a multi-hop chain', () => {\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n 'comps/comp1': {\n dependencies: {\n comp2: { version: 'file:comps/comp2', specifier: '*' },\n },\n },\n 'comps/comp2': {\n dependencies: {\n comp3: { version: 'file:comps/comp3', specifier: '*' },\n },\n },\n 'comps/comp3': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'comp1@file:comps/comp1': { dependencies: { comp2: 'file:comps/comp2' } },\n 'comp2@file:comps/comp2': { dependencies: { comp3: 'file:comps/comp3' } },\n 'comp3@file:comps/comp3': { dependencies: { comp1: 'file:comps/comp1' } },\n },\n packages: {\n 'comp1@file:comps/comp1': { resolution: { directory: 'comps/comp1', type: 'directory' } },\n 'comp2@file:comps/comp2': { resolution: { directory: 'comps/comp2', type: 'directory' } },\n 'comp3@file:comps/comp3': { resolution: { directory: 'comps/comp3', type: 'directory' } },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ['comp3', ComponentID.fromString('my-scope/comp3@1.0.0')],\n ]),\n });\n const referencingComp1 = graph.edges.filter((edge) =>\n edge.neighbours.some((n) => n.id === 'comp1@1.0.0')\n );\n expect(referencingComp1).to.eql([]);\n expect(graph.packages.has('comp1@1.0.0')).to.equal(false);\n });\n});\n\ndescribe('convertLockfileToGraph with directory packages missing from componentIdByPkgName', () => {\n it('should not persist orphan @file: pkgIds in the produced graph', () => {\n // Reproduces how the broken graphs end up in the model: a directory-type\n // package in the lockfile whose name is absent from componentIdByPkgName.\n // buildPackages strips the directory resolution but leaves the \"@file:\"\n // pkgId untouched, which downstream cannot resolve. The graph creator\n // must drop these so the model never stores entries that future\n // installs can't generate a valid lockfile from.\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'comps/comp1': {\n dependencies: {\n foo: { version: '1.0.0', specifier: '^1.0.0' },\n 'orphan-comp': { version: 'file:packages/orphan-comp', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0': {},\n 'orphan-comp@file:packages/orphan-comp': {\n dependencies: { foo: '1.0.0' },\n },\n },\n packages: {\n 'foo@1.0.0': { resolution: { integrity: 'sha512-aaa' } },\n 'orphan-comp@file:packages/orphan-comp': {\n resolution: { directory: 'packages/orphan-comp', type: 'directory' },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: undefined,\n componentRelativeDir: 'comps/comp1',\n componentRootDir: undefined,\n // Intentionally empty: simulates the bug where the workspace map\n // didn't include the directory dep.\n componentIdByPkgName: new Map(),\n });\n expect([...graph.packages.keys()]).to.eql(['foo@1.0.0']);\n const rootEdge = graph.findRootEdge();\n expect(rootEdge?.neighbours.map((n) => n.id)).to.eql(['foo@1.0.0']);\n expect(graph.edges.find(({ id }) => id.includes('@file:'))).to.equal(undefined);\n });\n});\n\ndescribe('convertLockfileToGraph benchmark', () => {\n function generateLargeLockfile(\n numPackages: number,\n numComponents: number\n ): {\n lockfile: BitLockfileFile;\n componentIdByPkgName: Map<string, InstanceType<typeof ComponentID>>;\n } {\n const snapshots: Record<string, any> = {};\n const packages: Record<string, any> = {};\n const importerDeps: Record<string, any> = {};\n const componentIdByPkgName = new Map<string, InstanceType<typeof ComponentID>>();\n\n // Generate regular packages\n for (let i = 0; i < numPackages; i++) {\n const pkgId = `pkg-${i}@1.0.${i}`;\n packages[pkgId] = {\n resolution: { integrity: `sha512-${i}` },\n };\n // Each package depends on the next 2 packages (creating a graph)\n const deps: Record<string, string> = {};\n if (i + 1 < numPackages) deps[`pkg-${i + 1}`] = `1.0.${i + 1}`;\n if (i + 2 < numPackages) deps[`pkg-${i + 2}`] = `1.0.${i + 2}`;\n snapshots[pkgId] = Object.keys(deps).length > 0 ? { dependencies: deps } : {};\n if (i < 50) {\n importerDeps[`pkg-${i}`] = { version: `1.0.${i}`, specifier: `^1.0.${i}` };\n }\n }\n\n // Generate component packages (with file: protocol)\n for (let i = 0; i < numComponents; i++) {\n const compName = `@my-scope/comp-${i}`;\n const compPath = `comps/comp-${i}`;\n const fileDepPath = `${compName}@file:${compPath}`;\n\n packages[fileDepPath] = {\n resolution: { directory: compPath, type: 'directory' },\n };\n snapshots[fileDepPath] = {\n dependencies: {\n [`pkg-${i % numPackages}`]: `1.0.${i % numPackages}`,\n },\n };\n componentIdByPkgName.set(compName, ComponentID.fromString(`my-scope/comp-${i}@0.0.${i}`));\n }\n\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: Object.fromEntries(\n Array.from({ length: numComponents }, (_, i) => [\n `@my-scope/comp-${i}`,\n { version: `file:comps/comp-${i}`, specifier: '*' },\n ])\n ),\n },\n 'comps/comp-0': {\n dependencies: importerDeps,\n },\n },\n lockfileVersion: '9.0',\n snapshots,\n packages,\n };\n\n return { lockfile, componentIdByPkgName };\n }\n\n it('should handle 1000 packages and 50 components within 500ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(1000, 50);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(500);\n });\n\n it('should handle 5000 packages and 200 components within 2000ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(5000, 200);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(2000);\n });\n\n it('should handle 10000 packages and 500 components within 5000ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(10000, 500);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(5000);\n });\n\n it('should handle converting 20 lockfiles (1000 pkgs, 100 comps each) within 3000ms', () => {\n const lockfileCount = 20;\n const lockfiles = Array.from({ length: lockfileCount }, () => generateLargeLockfile(1000, 100));\n\n const start = performance.now();\n const graphs = lockfiles.map(({ lockfile, componentIdByPkgName }) =>\n convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n })\n );\n const elapsed = performance.now() - start;\n\n for (const graph of graphs) {\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n }\n expect(elapsed).to.be.lessThan(3000);\n });\n\n it('should handle converting 50 lockfiles (500 pkgs, 50 comps each) within 3000ms', () => {\n const lockfileCount = 50;\n const lockfiles = Array.from({ length: lockfileCount }, () => generateLargeLockfile(500, 50));\n\n const start = performance.now();\n const graphs = lockfiles.map(({ lockfile, componentIdByPkgName }) =>\n convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n })\n );\n const elapsed = performance.now() - start;\n\n for (const graph of graphs) {\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n }\n expect(elapsed).to.be.lessThan(3000);\n });\n});\n\ndescribe('convertGraphToLockfile on invalid graph', () => {\n // Reproduces the CI failure where a saved deps graph leaks \"@file:\" entries\n // because buildPackages couldn't map them to a workspace component. The\n // directory resolution was deleted and getPkgsToResolve can't recover an\n // integrity for \"file:\" versions (dp.parse puts them in nonSemverVersion,\n // not version), so validation throws \"doesn't have a 'resolution' field\".\n // At install time the orphan can't be salvaged: if its name matches a\n // workspace project pnpm wires it through importers/link entries (so the\n // packages entry would be wrong), and otherwise we have no published\n // version to recover. Dropping it is the only safe outcome.\n it('should drop orphan @file: packages when generating a lockfile', async () => {\n const packages: PackagesMap = new Map([\n [\n '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n {} as any,\n ],\n ['foo@1.0.0', { resolution: { integrity: 'sha512-aaa' } } as any],\n ]);\n const edges: DependencyEdge[] = [\n {\n id: DependenciesGraph.ROOT_EDGE_ID,\n neighbours: [\n { id: 'foo@1.0.0', name: 'foo', specifier: '1.0.0', lifecycle: 'runtime' },\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n name: '@teambit/dot-launch.apps.whats-new-app',\n specifier: '*',\n lifecycle: 'runtime',\n },\n ],\n },\n {\n id: 'foo@1.0.0',\n neighbours: [\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n optional: false,\n },\n ],\n },\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n neighbours: [],\n },\n ];\n const graph = new DependenciesGraph({ packages, edges });\n const lockfile = await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: { foo: '1.0.0' },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: { integrity: '0000' } }) as any,\n });\n expect(Object.keys(lockfile.packages!)).to.eql(['foo@1.0.0']);\n expect(Object.keys(lockfile.snapshots!)).to.eql(['foo@1.0.0']);\n // The dangling snapshot neighbour pointing at the orphan must also be\n // filtered out so pnpm doesn't try to resolve a dep that no longer exists.\n expect(lockfile.snapshots!['foo@1.0.0']).to.eql({});\n });\n\n\n it('should throw an error if resolution is missing', async () => {\n const packages: PackagesMap = new Map([['foo@1.0.0', {} as any]]);\n const edges: DependencyEdge[] = [\n {\n id: DependenciesGraph.ROOT_EDGE_ID,\n neighbours: [\n {\n id: 'foo@1.0.0',\n name: 'foo',\n specifier: '1.0.0',\n lifecycle: 'runtime',\n },\n ],\n },\n {\n id: 'foo@1.0.0',\n neighbours: [],\n },\n ];\n const graph = new DependenciesGraph({\n packages,\n edges,\n });\n let error: Error | undefined;\n try {\n await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: {\n foo: '1.0.0',\n },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: {} }) as any,\n });\n } catch (_error) {\n error = _error as Error;\n }\n expect(error?.message).eq(\n `Failed to generate a valid lockfile. The \"packages['foo@1.0.0'] entry doesn't have a \"resolution\" field.`\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_path","data","_interopRequireDefault","require","_component","_objects","_lockfileDepsGraphConverter","_chai","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","describe","lockfile","bit","depsRequiringBuild","importers","dependencies","comp1","version","specifier","foo","qar","zoo","lockfileVersion","snapshots","bar","comp2","packages","resolution","directory","type","engines","node","npm","hasBin","os","cpu","integrity","peerDependencies","graph","convertLockfileToGraph","pkgName","componentRelativeDir","componentRootDir","componentIdByPkgName","Map","ComponentID","fromString","expected","schemaVersion","edges","id","neighbours","optional","attr","pkgId","name","lifecycle","requiresBuild","component","scope","it","expect","fromEntries","entries","to","eql","convertGraphToLockfile","DependenciesGraph","manifests","path","resolve","rootDir","process","cwd","devDependencies","optionalDependencies","referencingComp1","edge","some","n","has","equal","comp3","undefined","rootEdge","findRootEdge","map","find","includes","generateLargeLockfile","numPackages","numComponents","importerDeps","deps","compName","compPath","fileDepPath","set","Array","from","_","start","performance","now","elapsed","be","greaterThan","size","lessThan","lockfileCount","lockfiles","graphs","ROOT_EDGE_ID","error","_error","message","eq"],"sources":["lockfile-deps-graph-converter.spec.ts"],"sourcesContent":["import path from 'path';\nimport { ComponentID } from '@teambit/component';\nimport { DependenciesGraph, type PackagesMap, type DependencyEdge } from '@teambit/objects';\nimport { convertLockfileToGraph, convertGraphToLockfile } from './lockfile-deps-graph-converter';\nimport { type BitLockfileFile } from './lynx';\nimport { expect } from 'chai';\n\ndescribe('convertLockfileToGraph simple case', () => {\n const lockfile: BitLockfileFile = {\n bit: {\n depsRequiringBuild: ['bar@1.0.0'],\n },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: {\n version: 'file:comps/comp1',\n specifier: '*',\n },\n },\n },\n 'comps/comp1': {\n dependencies: {\n foo: {\n version: '1.0.0(patch_hash=0000)',\n specifier: '^1.0.0',\n },\n qar: {\n version: '1.1.0',\n specifier: '^1.0.0',\n },\n zoo: {\n version: '1.1.0(qar@1.1.0)',\n specifier: '^1.1.0',\n },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0(patch_hash=0000)': {\n dependencies: {\n bar: '1.0.0',\n },\n },\n 'bar@1.0.0': {},\n 'qar@1.1.0': {},\n 'zoo@1.1.0(qar@1.1.0)': {\n dependencies: {\n qar: '1.1.0',\n },\n },\n 'comp1@file:comps/comp1': {\n dependencies: {\n foo: '1.0.0(patch_hash=0000)',\n qar: '1.1.0',\n zoo: '1.1.0(qar@1.1.0)',\n comp2: 'file:comps/comp2',\n },\n },\n 'comp2@file:comps/comp2': {\n dependencies: {},\n },\n },\n packages: {\n 'comp1@file:comps/comp1': {\n resolution: {\n directory: 'comps/comp1',\n type: 'directory',\n },\n },\n 'comp2@file:comps/comp2': {\n resolution: {\n directory: 'comps/comp2',\n type: 'directory',\n },\n },\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ]),\n });\n const expected = {\n schemaVersion: '2.0',\n edges: [\n {\n id: 'foo@1.0.0(patch_hash=0000)',\n neighbours: [{ id: 'bar@1.0.0', optional: false }],\n attr: {\n pkgId: 'foo@1.0.0',\n },\n },\n {\n id: 'zoo@1.1.0(qar@1.1.0)',\n neighbours: [{ id: 'qar@1.1.0', optional: false }],\n attr: {\n pkgId: 'zoo@1.1.0',\n },\n },\n {\n id: '.',\n neighbours: [\n {\n id: 'foo@1.0.0(patch_hash=0000)',\n name: 'foo',\n specifier: '^1.0.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'qar@1.1.0',\n name: 'qar',\n specifier: '^1.0.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'zoo@1.1.0(qar@1.1.0)',\n name: 'zoo',\n specifier: '^1.1.0',\n lifecycle: 'runtime',\n optional: false,\n },\n {\n id: 'comp2@1.0.0',\n lifecycle: 'runtime',\n name: 'comp2',\n optional: false,\n specifier: '*',\n },\n ],\n },\n ],\n packages: {\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n requiresBuild: true,\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n 'comp2@1.0.0': {\n component: {\n name: 'comp2',\n scope: 'my-scope',\n },\n },\n },\n };\n it('should convert the lockfile object to the graph object', () => {\n expect({\n ...graph,\n packages: Object.fromEntries(graph.packages.entries()),\n }).to.eql(expected);\n });\n it('should convert the graph object to the lockfile object', async () => {\n expect(\n await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: {\n foo: '^1.0.0',\n bar: `link:${path.resolve('comps/bar')}`, // Links from the manifests are added to the lockfile\n qar: '1.1.0',\n zoo: '1.1.0',\n comp2: '1.0.0',\n },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: { integrity: '0000' } }) as any,\n })\n ).to.eql({\n bit: {\n depsRequiringBuild: ['bar@1.0.0'],\n },\n importers: {\n 'comps/comp1': {\n dependencies: {\n comp2: {\n version: '1.0.0',\n specifier: '1.0.0',\n },\n foo: {\n version: '1.0.0(patch_hash=0000)',\n specifier: '^1.0.0',\n },\n bar: {\n version: 'link:../bar',\n specifier: `link:${path.resolve('comps/bar')}`,\n },\n qar: {\n version: '1.1.0',\n specifier: '1.1.0',\n },\n zoo: {\n version: '1.1.0(qar@1.1.0)',\n specifier: '1.1.0',\n },\n },\n devDependencies: {},\n optionalDependencies: {},\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0(patch_hash=0000)': {\n dependencies: {\n bar: '1.0.0',\n },\n },\n 'bar@1.0.0': {},\n 'qar@1.1.0': {},\n 'comp2@1.0.0': {},\n 'zoo@1.1.0(qar@1.1.0)': {\n dependencies: {\n qar: '1.1.0',\n },\n },\n },\n packages: {\n 'comp2@1.0.0': {\n resolution: {\n integrity: '0000',\n },\n },\n 'foo@1.0.0': {\n engines: {\n node: '>=8',\n npm: '>=6',\n },\n hasBin: true,\n os: ['darwin'],\n cpu: ['arm64'],\n resolution: {\n integrity: 'sha512-000',\n },\n },\n 'bar@1.0.0': {\n resolution: {\n integrity: 'sha512-111',\n },\n },\n 'qar@1.1.0': {\n resolution: {\n integrity: 'sha512-222',\n },\n },\n 'zoo@1.1.0': {\n peerDependencies: {\n qar: '*',\n },\n resolution: {\n integrity: 'sha512-333',\n },\n },\n },\n });\n });\n});\n\ndescribe('convertLockfileToGraph with a circular workspace dependency back to the component being processed', () => {\n // Reproduces the \"No matching version found for <workspace-comp>@0.0.0-<hash>\"\n // failure: comp1 (the component being processed) is removed from snapshots\n // and packages, but a circular workspace dep (comp2 depends back on comp1)\n // leaves an edge whose neighbour references comp1@<version> with no\n // corresponding packages entry. When the graph is later converted back to a\n // lockfile, convertGraphToLockfile materialises that dangling neighbour as\n // an empty packages entry and getPkgsToResolve treats it as a missing\n // package, asking the registry for a snap-version that was never published.\n it('should drop edges that reference the component being processed', () => {\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n 'comps/comp1': {\n dependencies: {\n comp2: { version: 'file:comps/comp2', specifier: '*' },\n },\n },\n 'comps/comp2': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'comp1@file:comps/comp1': {\n dependencies: {\n comp2: 'file:comps/comp2',\n },\n },\n 'comp2@file:comps/comp2': {\n dependencies: {\n comp1: 'file:comps/comp1',\n },\n },\n },\n packages: {\n 'comp1@file:comps/comp1': {\n resolution: { directory: 'comps/comp1', type: 'directory' },\n },\n 'comp2@file:comps/comp2': {\n resolution: { directory: 'comps/comp2', type: 'directory' },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ]),\n });\n // The graph must never reference comp1 — it is the component being\n // snapped, so it does not belong in its own deps graph.\n const referencingComp1 = graph.edges.filter((edge) => edge.neighbours.some((n) => n.id === 'comp1@1.0.0'));\n expect(referencingComp1).to.eql([]);\n expect(graph.packages.has('comp1@1.0.0')).to.equal(false);\n });\n\n // Same bug, but the cycle closes through an intermediate workspace\n // component (comp1 → comp2 → comp3 → comp1). The back-edge in the\n // lockfile lives on comp3's snapshot, not comp2's. Scrubbing only\n // direct dependents of comp1 would miss it; the fix iterates every\n // remaining snapshot so chain-length doesn't matter.\n it('should drop edges that reference the component via a multi-hop chain', () => {\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n 'comps/comp1': {\n dependencies: {\n comp2: { version: 'file:comps/comp2', specifier: '*' },\n },\n },\n 'comps/comp2': {\n dependencies: {\n comp3: { version: 'file:comps/comp3', specifier: '*' },\n },\n },\n 'comps/comp3': {\n dependencies: {\n comp1: { version: 'file:comps/comp1', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'comp1@file:comps/comp1': { dependencies: { comp2: 'file:comps/comp2' } },\n 'comp2@file:comps/comp2': { dependencies: { comp3: 'file:comps/comp3' } },\n 'comp3@file:comps/comp3': { dependencies: { comp1: 'file:comps/comp1' } },\n },\n packages: {\n 'comp1@file:comps/comp1': { resolution: { directory: 'comps/comp1', type: 'directory' } },\n 'comp2@file:comps/comp2': { resolution: { directory: 'comps/comp2', type: 'directory' } },\n 'comp3@file:comps/comp3': { resolution: { directory: 'comps/comp3', type: 'directory' } },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: 'comp1',\n componentRelativeDir: 'comps/comp1',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName: new Map([\n ['comp1', ComponentID.fromString('my-scope/comp1@1.0.0')],\n ['comp2', ComponentID.fromString('my-scope/comp2@1.0.0')],\n ['comp3', ComponentID.fromString('my-scope/comp3@1.0.0')],\n ]),\n });\n const referencingComp1 = graph.edges.filter((edge) => edge.neighbours.some((n) => n.id === 'comp1@1.0.0'));\n expect(referencingComp1).to.eql([]);\n expect(graph.packages.has('comp1@1.0.0')).to.equal(false);\n });\n});\n\ndescribe('convertLockfileToGraph with directory packages missing from componentIdByPkgName', () => {\n it('should not persist orphan @file: pkgIds in the produced graph', () => {\n // Reproduces how the broken graphs end up in the model: a directory-type\n // package in the lockfile whose name is absent from componentIdByPkgName.\n // buildPackages strips the directory resolution but leaves the \"@file:\"\n // pkgId untouched, which downstream cannot resolve. The graph creator\n // must drop these so the model never stores entries that future\n // installs can't generate a valid lockfile from.\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'comps/comp1': {\n dependencies: {\n foo: { version: '1.0.0', specifier: '^1.0.0' },\n 'orphan-comp': { version: 'file:packages/orphan-comp', specifier: '*' },\n },\n },\n },\n lockfileVersion: '9.0',\n snapshots: {\n 'foo@1.0.0': {},\n 'orphan-comp@file:packages/orphan-comp': {\n dependencies: { foo: '1.0.0' },\n },\n },\n packages: {\n 'foo@1.0.0': { resolution: { integrity: 'sha512-aaa' } },\n 'orphan-comp@file:packages/orphan-comp': {\n resolution: { directory: 'packages/orphan-comp', type: 'directory' },\n },\n },\n };\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: undefined,\n componentRelativeDir: 'comps/comp1',\n componentRootDir: undefined,\n // Intentionally empty: simulates the bug where the workspace map\n // didn't include the directory dep.\n componentIdByPkgName: new Map(),\n });\n expect([...graph.packages.keys()]).to.eql(['foo@1.0.0']);\n const rootEdge = graph.findRootEdge();\n expect(rootEdge?.neighbours.map((n) => n.id)).to.eql(['foo@1.0.0']);\n expect(graph.edges.find(({ id }) => id.includes('@file:'))).to.equal(undefined);\n });\n});\n\ndescribe('convertLockfileToGraph benchmark', () => {\n function generateLargeLockfile(\n numPackages: number,\n numComponents: number\n ): {\n lockfile: BitLockfileFile;\n componentIdByPkgName: Map<string, InstanceType<typeof ComponentID>>;\n } {\n const snapshots: Record<string, any> = {};\n const packages: Record<string, any> = {};\n const importerDeps: Record<string, any> = {};\n const componentIdByPkgName = new Map<string, InstanceType<typeof ComponentID>>();\n\n // Generate regular packages\n for (let i = 0; i < numPackages; i++) {\n const pkgId = `pkg-${i}@1.0.${i}`;\n packages[pkgId] = {\n resolution: { integrity: `sha512-${i}` },\n };\n // Each package depends on the next 2 packages (creating a graph)\n const deps: Record<string, string> = {};\n if (i + 1 < numPackages) deps[`pkg-${i + 1}`] = `1.0.${i + 1}`;\n if (i + 2 < numPackages) deps[`pkg-${i + 2}`] = `1.0.${i + 2}`;\n snapshots[pkgId] = Object.keys(deps).length > 0 ? { dependencies: deps } : {};\n if (i < 50) {\n importerDeps[`pkg-${i}`] = { version: `1.0.${i}`, specifier: `^1.0.${i}` };\n }\n }\n\n // Generate component packages (with file: protocol)\n for (let i = 0; i < numComponents; i++) {\n const compName = `@my-scope/comp-${i}`;\n const compPath = `comps/comp-${i}`;\n const fileDepPath = `${compName}@file:${compPath}`;\n\n packages[fileDepPath] = {\n resolution: { directory: compPath, type: 'directory' },\n };\n snapshots[fileDepPath] = {\n dependencies: {\n [`pkg-${i % numPackages}`]: `1.0.${i % numPackages}`,\n },\n };\n componentIdByPkgName.set(compName, ComponentID.fromString(`my-scope/comp-${i}@0.0.${i}`));\n }\n\n const lockfile: BitLockfileFile = {\n bit: { depsRequiringBuild: [] },\n importers: {\n '.': {},\n 'node_modules/.bit_roots/env': {\n dependencies: Object.fromEntries(\n Array.from({ length: numComponents }, (_, i) => [\n `@my-scope/comp-${i}`,\n { version: `file:comps/comp-${i}`, specifier: '*' },\n ])\n ),\n },\n 'comps/comp-0': {\n dependencies: importerDeps,\n },\n },\n lockfileVersion: '9.0',\n snapshots,\n packages,\n };\n\n return { lockfile, componentIdByPkgName };\n }\n\n it('should handle 1000 packages and 50 components within 500ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(1000, 50);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(500);\n });\n\n it('should handle 5000 packages and 200 components within 2000ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(5000, 200);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(2000);\n });\n\n it('should handle 10000 packages and 500 components within 5000ms', () => {\n const { lockfile, componentIdByPkgName } = generateLargeLockfile(10000, 500);\n\n const start = performance.now();\n const graph = convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n });\n const elapsed = performance.now() - start;\n\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n expect(elapsed).to.be.lessThan(5000);\n });\n\n it('should handle converting 20 lockfiles (1000 pkgs, 100 comps each) within 3000ms', () => {\n const lockfileCount = 20;\n const lockfiles = Array.from({ length: lockfileCount }, () => generateLargeLockfile(1000, 100));\n\n const start = performance.now();\n const graphs = lockfiles.map(({ lockfile, componentIdByPkgName }) =>\n convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n })\n );\n const elapsed = performance.now() - start;\n\n for (const graph of graphs) {\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n }\n expect(elapsed).to.be.lessThan(3000);\n });\n\n it('should handle converting 50 lockfiles (500 pkgs, 50 comps each) within 3000ms', () => {\n const lockfileCount = 50;\n const lockfiles = Array.from({ length: lockfileCount }, () => generateLargeLockfile(500, 50));\n\n const start = performance.now();\n const graphs = lockfiles.map(({ lockfile, componentIdByPkgName }) =>\n convertLockfileToGraph(lockfile, {\n pkgName: '@my-scope/comp-0',\n componentRelativeDir: 'comps/comp-0',\n componentRootDir: 'node_modules/.bit_roots/env',\n componentIdByPkgName,\n })\n );\n const elapsed = performance.now() - start;\n\n for (const graph of graphs) {\n expect(graph.edges.length).to.be.greaterThan(0);\n expect(graph.packages.size).to.be.greaterThan(0);\n }\n expect(elapsed).to.be.lessThan(3000);\n });\n});\n\ndescribe('convertGraphToLockfile on invalid graph', () => {\n // Reproduces the CI failure where a saved deps graph leaks \"@file:\" entries\n // because buildPackages couldn't map them to a workspace component. The\n // directory resolution was deleted and getPkgsToResolve can't recover an\n // integrity for \"file:\" versions (dp.parse puts them in nonSemverVersion,\n // not version), so validation throws \"doesn't have a 'resolution' field\".\n // At install time the orphan can't be salvaged: if its name matches a\n // workspace project pnpm wires it through importers/link entries (so the\n // packages entry would be wrong), and otherwise we have no published\n // version to recover. Dropping it is the only safe outcome.\n it('should drop orphan @file: packages when generating a lockfile', async () => {\n const packages: PackagesMap = new Map([\n ['@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app', {} as any],\n ['foo@1.0.0', { resolution: { integrity: 'sha512-aaa' } } as any],\n ]);\n const edges: DependencyEdge[] = [\n {\n id: DependenciesGraph.ROOT_EDGE_ID,\n neighbours: [\n { id: 'foo@1.0.0', name: 'foo', specifier: '1.0.0', lifecycle: 'runtime' },\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n name: '@teambit/dot-launch.apps.whats-new-app',\n specifier: '*',\n lifecycle: 'runtime',\n },\n ],\n },\n {\n id: 'foo@1.0.0',\n neighbours: [\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n optional: false,\n },\n ],\n },\n {\n id: '@teambit/dot-launch.apps.whats-new-app@file:dot-launch/apps/whats-new-app',\n neighbours: [],\n },\n ];\n const graph = new DependenciesGraph({ packages, edges });\n const lockfile = await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: { foo: '1.0.0' },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: { integrity: '0000' } }) as any,\n });\n expect(Object.keys(lockfile.packages!)).to.eql(['foo@1.0.0']);\n expect(Object.keys(lockfile.snapshots!)).to.eql(['foo@1.0.0']);\n // The dangling snapshot neighbour pointing at the orphan must also be\n // filtered out so pnpm doesn't try to resolve a dep that no longer exists.\n expect(lockfile.snapshots!['foo@1.0.0']).to.eql({});\n });\n\n it('should throw an error if resolution is missing', async () => {\n const packages: PackagesMap = new Map([['foo@1.0.0', {} as any]]);\n const edges: DependencyEdge[] = [\n {\n id: DependenciesGraph.ROOT_EDGE_ID,\n neighbours: [\n {\n id: 'foo@1.0.0',\n name: 'foo',\n specifier: '1.0.0',\n lifecycle: 'runtime',\n },\n ],\n },\n {\n id: 'foo@1.0.0',\n neighbours: [],\n },\n ];\n const graph = new DependenciesGraph({\n packages,\n edges,\n });\n let error: Error | undefined;\n try {\n await convertGraphToLockfile(new DependenciesGraph(graph), {\n manifests: {\n [path.resolve('comps/comp1')]: {\n dependencies: {\n foo: '1.0.0',\n },\n },\n },\n rootDir: process.cwd(),\n resolve: () => ({ resolution: {} }) as any,\n });\n } catch (_error) {\n error = _error as Error;\n }\n expect(error?.message).eq(\n `Failed to generate a valid lockfile. The \"packages['foo@1.0.0'] entry doesn't have a \"resolution\" field.`\n );\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_pnpm@1.0.1016/dist/pnpm.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_pnpm@1.0.1016/dist/pnpm.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_pnpm@1.0.1018/dist/pnpm.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.dependencies_pnpm@1.0.1018/dist/pnpm.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/pnpm",
3
- "version": "1.0.1016",
3
+ "version": "1.0.1018",
4
4
  "homepage": "https://bit.cloud/teambit/dependencies/pnpm",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.dependencies",
8
8
  "name": "pnpm",
9
- "version": "1.0.1016"
9
+ "version": "1.0.1018"
10
10
  },
11
11
  "dependencies": {
12
12
  "@pnpm/config": "1004.11.0",
@@ -40,21 +40,21 @@
40
40
  "@teambit/toolbox.string.strip-trailing-char": "0.0.508",
41
41
  "@teambit/bit-error": "0.0.404",
42
42
  "@teambit/component-package-version": "0.0.449",
43
+ "@teambit/logger": "0.0.1418",
43
44
  "@teambit/dependencies.pnpm.dep-path": "1.0.1",
44
45
  "@teambit/legacy.constants": "0.0.26",
45
46
  "@teambit/pkg.config.auth": "0.0.3",
46
47
  "@teambit/pkg.entities.registry": "0.0.4",
47
48
  "@teambit/harmony": "0.4.7",
49
+ "@teambit/cli": "0.0.1325",
48
50
  "@teambit/harmony.modules.feature-toggle": "0.0.36",
49
51
  "@teambit/legacy.logger": "0.0.38",
50
52
  "@teambit/ui-foundation.ui.use-box.menu": "1.0.16",
51
- "@teambit/dependency-resolver": "1.0.987",
52
- "@teambit/objects": "0.0.494",
53
- "@teambit/logger": "0.0.1418",
54
- "@teambit/cli": "0.0.1325",
55
- "@teambit/cloud": "0.0.1280",
56
- "@teambit/component": "1.0.987",
57
- "@teambit/ui": "1.0.987"
53
+ "@teambit/dependency-resolver": "1.0.989",
54
+ "@teambit/objects": "0.0.496",
55
+ "@teambit/cloud": "0.0.1282",
56
+ "@teambit/component": "1.0.989",
57
+ "@teambit/ui": "1.0.989"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@types/lodash": "4.14.165",