@teambit/dependency-resolver 1.0.27 → 1.0.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dependencies/component-dependency/component-dependency-factory.ts +7 -6
- package/dependencies/component-dependency/component-dependency.ts +1 -1
- package/dependencies/dependency-list.ts +19 -3
- package/dist/dependencies/component-dependency/component-dependency-factory.js +6 -5
- package/dist/dependencies/component-dependency/component-dependency-factory.js.map +1 -1
- package/dist/dependencies/component-dependency/component-dependency.js +1 -1
- package/dist/dependencies/component-dependency/component-dependency.js.map +1 -1
- package/dist/dependencies/dependency-list.js +18 -4
- package/dist/dependencies/dependency-list.js.map +1 -1
- package/dist/dependency-installer.js +1 -1
- package/dist/dependency-installer.js.map +1 -1
- package/dist/dependency-resolver.main.runtime.d.ts +8 -9
- package/dist/dependency-resolver.main.runtime.js +60 -33
- package/dist/dependency-resolver.main.runtime.js.map +1 -1
- package/dist/dependency-resolver.main.runtime.spec.js +5 -1
- package/dist/dependency-resolver.main.runtime.spec.js.map +1 -1
- package/dist/manifest/workspace-manifest-factory.js +3 -3
- package/dist/manifest/workspace-manifest-factory.js.map +1 -1
- package/dist/policy/env-policy/env-policy.d.ts +2 -2
- package/dist/policy/env-policy/env-policy.js +23 -3
- package/dist/policy/env-policy/env-policy.js.map +1 -1
- package/dist/policy/variant-policy/index.d.ts +1 -1
- package/dist/policy/variant-policy/index.js +6 -0
- package/dist/policy/variant-policy/index.js.map +1 -1
- package/dist/policy/variant-policy/variant-policy.d.ts +7 -1
- package/dist/policy/variant-policy/variant-policy.js +5 -1
- package/dist/policy/variant-policy/variant-policy.js.map +1 -1
- package/dist/{preview-1697628054879.js → preview-1697841196686.js} +2 -2
- package/manifest/workspace-manifest-factory.ts +4 -4
- package/package.json +20 -20
- package/policy/env-policy/env-policy.ts +22 -4
- package/policy/variant-policy/index.ts +1 -0
- package/policy/variant-policy/variant-policy.ts +11 -1
|
@@ -408,7 +408,9 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
|
|
|
408
408
|
});
|
|
409
409
|
describe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {
|
|
410
410
|
it('should throw an error if the env policy has a peer with an empty string set for the supportedRange', async () => {
|
|
411
|
-
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {
|
|
411
|
+
const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({}, {}, {}, {
|
|
412
|
+
isCoreEnv: () => false
|
|
413
|
+
}, {}, {}, {}, {}, {}, {}, {}, {}, {});
|
|
412
414
|
await expect(depResolver.getComponentEnvPolicyFromEnv({
|
|
413
415
|
getDependencies: () => ({
|
|
414
416
|
peers: [{
|
|
@@ -417,6 +419,8 @@ describe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {
|
|
|
417
419
|
version: ''
|
|
418
420
|
}]
|
|
419
421
|
})
|
|
422
|
+
}, {
|
|
423
|
+
envId: 'teambit.test/test'
|
|
420
424
|
}) // @ts-ignore
|
|
421
425
|
).rejects.toThrowError('Peer "@teambit/community.ui.bit-cli.commands-provider" has an empty supportedRange');
|
|
422
426
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_component","data","require","_path","_interopRequireDefault","_http","_dependencyResolverMain","obj","__esModule","default","jest","mock","Http","getNetworkConfig","fn","getProxyConfig","logger","debug","describe","packageManagerSlot","get","it","depResolver","DependencyResolverMain","globalConfig","fetchTimeout","fetchRetries","fetchRetryFactor","fetchRetryMintimeout","fetchRetryMaxtimeout","networkConcurrency","maxSockets","mockReturnValue","Promise","resolve","expect","toEqual","pmConfig","config","cafile","path","join","__dirname","ca","toStrictEqual","createDependencyResolverMain","resolveRemoteVersion","policy","setStatusLine","consoleSuccess","getSync","spec","Error","version","dependencies","peerDependencies","outdatedPkgs","getOutdatedPkgsFromPolicies","rootDir","variantPoliciesByPatterns","devDependencies","componentPolicies","componentId","ComponentID","fromString","components","currentRange","latestRange","name","source","variantPattern","targetField","dep1","dep2","dep3","forceVersionBump","getComponentEnvPolicyFromEnv","getDependencies","peers","supportedRange","rejects","toThrowError"],"sources":["dependency-resolver.main.runtime.spec.ts"],"sourcesContent":["// @ts-ignore\njest.mock('@teambit/legacy/dist/scope/network/http', () => ({\n Http: {\n // @ts-ignore\n getNetworkConfig: jest.fn(),\n // @ts-ignore\n getProxyConfig: jest.fn(),\n },\n}));\n\n/* eslint-disable import/first */\nimport { ComponentID } from '@teambit/component';\nimport path from 'path';\nimport { Http } from '@teambit/legacy/dist/scope/network/http';\nimport { DependencyResolverMain } from './dependency-resolver.main.runtime';\n\nconst logger = {\n debug: () => {},\n};\n\ndescribe('DepenendencyResolverMain.getNetworkConfig()', () => {\n const packageManagerSlot = {\n // @ts-ignore\n get: jest.fn(() => ({\n getNetworkConfig: () => ({}),\n })),\n };\n it('should return settings from global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 3,\n fetchRetryMintimeout: 4,\n fetchRetryMaxtimeout: 5,\n networkConcurrency: 6,\n maxSockets: 7,\n };\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n expect(await depResolver.getNetworkConfig()).toEqual(globalConfig);\n });\n it('should return settings from package manager config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n const pmConfig = {\n fetchTimeout: 11,\n fetchRetries: 22,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 55,\n networkConcurrency: 66,\n maxSockets: 77,\n };\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n expect(await depResolver.getNetworkConfig()).toEqual(pmConfig);\n });\n it('should return settings from aspect config', async () => {\n const config = {\n fetchTimeout: 111,\n fetchRetries: 222,\n fetchRetryFactor: 333,\n fetchRetryMintimeout: 444,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual(config);\n });\n it('should merge settings from global config, package manager config, and aspect config', async () => {\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n };\n const pmConfig = {\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n };\n const config = {\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual({\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n });\n });\n it('should read cafile when it is returned by the global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n { debug: jest.fn() } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(\n Promise.resolve({\n cafile: path.join(__dirname, 'fixtures/cafile.txt'),\n })\n );\n // @ts-ignore\n expect((await depResolver.getNetworkConfig()).ca).toStrictEqual([\n `-----BEGIN CERTIFICATE-----\nXXXX\n-----END CERTIFICATE-----`,\n ]);\n });\n});\n\ndescribe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {\n function createDependencyResolverMain(\n resolveRemoteVersion: (spec: string) => { version: string | undefined },\n policy: any\n ) {\n const packageManagerSlot = {\n // @ts-ignore\n get: () => ({\n resolveRemoteVersion,\n getNetworkConfig: () => ({}),\n }),\n };\n return new DependencyResolverMain(\n { policy } as any,\n {} as any,\n {} as any,\n {} as any,\n {\n // @ts-ignore\n debug: jest.fn(),\n // @ts-ignore\n setStatusLine: jest.fn(),\n // @ts-ignore\n consoleSuccess: jest.fn(),\n } as any,\n {} as any,\n {} as any,\n {\n getSync: () => false,\n } as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n }\n describe('without options', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');\n return {\n version: {\n 'root-runtime-dep1@latest': '2.0.0',\n 'root-peer-dep1@latest': '2.0.0',\n 'variant1-runtime-dep1@latest': '2.0.0',\n 'variant1-runtime-dep3@latest': '2.0.0',\n 'variant1-dev-dep1@latest': '2.0.0',\n 'variant1-dev-dep3@latest': '2.0.0',\n 'variant1-peer-dep1@latest': '2.0.0',\n 'variant1-peer-dep3@latest': '2.0.0',\n 'component1-runtime-dep1@latest': '2.0.0',\n 'component1-runtime-dep3@latest': '2.0.0',\n 'component1-dev-dep1@latest': '2.0.0',\n 'component1-dev-dep3@latest': '2.0.0',\n 'component1-peer-dep1@latest': '2.0.0',\n 'component1-peer-dep3@latest': '2.0.0',\n 'pkg-with-old-latest@latest': '0.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n 'root-runtime-dep1': '1.0.0',\n 'root-runtime-dep2': '1.0.0',\n },\n peerDependencies: {\n 'root-peer-dep1': '1.0.0',\n 'root-peer-dep2': '1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {\n '{variant1/*}': {\n dependencies: {\n 'variant1-runtime-dep1': '1.0.0',\n 'variant1-runtime-dep2': '1.0.0',\n 'variant1-runtime-dep3': '-',\n },\n devDependencies: {\n 'variant1-dev-dep1': '1.0.0',\n 'variant1-dev-dep2': '1.0.0',\n 'variant1-dev-dep3': '-',\n },\n peerDependencies: {\n 'variant1-peer-dep1': '1.0.0',\n 'variant1-peer-dep2': '1.0.0',\n 'variant1-peer-dep3': '-',\n },\n },\n },\n componentPolicies: [\n {\n componentId: ComponentID.fromString('scope/component1'),\n policy: {\n dependencies: {\n 'pkg-with-old-latest': '1.0.0',\n 'cannot-resolve': '1.0.0',\n 'component1-runtime-dep1': '1.0.0',\n 'component1-runtime-dep2': '1.0.0',\n 'component1-runtime-dep3': '-',\n },\n devDependencies: {\n 'component1-dev-dep1': '1.0.0',\n 'component1-dev-dep2': '1.0.0',\n 'component1-dev-dep3': '-',\n },\n peerDependencies: {\n 'component1-peer-dep1': '1.0.0',\n 'component1-peer-dep2': '1.0.0',\n 'component1-peer-dep3': '-',\n },\n },\n },\n ],\n components: [],\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-runtime-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-peer-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-runtime-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-dev-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-peer-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-runtime-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-dev-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-peer-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'peerDependencies',\n },\n ]);\n });\n });\n describe('forced version bump', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n return {\n version: {\n 'dep1@>=0.0.1 <0.1.0': '0.0.2',\n 'dep1@>=0.0.1 <1.0.0': '0.0.2',\n 'dep1@latest': '0.0.2',\n\n 'dep2@>=0.1.0 <0.2.0': '0.1.0',\n 'dep2@>=0.1.0 <1.0.0': '0.2.0',\n 'dep2@latest': '0.2.0',\n\n 'dep3@>=1.0.0 <1.1.0': '1.0.0',\n 'dep3@>=1.0.0 <2.0.0': '1.0.0',\n 'dep3@latest': '2.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n dep1: '0.0.1',\n dep2: '^0.1.0',\n dep3: '^1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies when forcedVersionBump is set to patch', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'patch',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to minor', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'minor',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to major', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'major',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^1.0.0',\n latestRange: '^2.0.0',\n name: 'dep3',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n });\n});\n\ndescribe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {\n it('should throw an error if the env policy has a peer with an empty string set for the supportedRange', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n await expect(\n depResolver.getComponentEnvPolicyFromEnv({\n getDependencies: () => ({\n peers: [\n {\n name: '@teambit/community.ui.bit-cli.commands-provider',\n supportedRange: '',\n version: '',\n },\n ],\n }),\n }) // @ts-ignore\n ).rejects.toThrowError('Peer \"@teambit/community.ui.bit-cli.commands-provider\" has an empty supportedRange');\n });\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_component","data","require","_path","_interopRequireDefault","_http","_dependencyResolverMain","obj","__esModule","default","jest","mock","Http","getNetworkConfig","fn","getProxyConfig","logger","debug","describe","packageManagerSlot","get","it","depResolver","DependencyResolverMain","globalConfig","fetchTimeout","fetchRetries","fetchRetryFactor","fetchRetryMintimeout","fetchRetryMaxtimeout","networkConcurrency","maxSockets","mockReturnValue","Promise","resolve","expect","toEqual","pmConfig","config","cafile","path","join","__dirname","ca","toStrictEqual","createDependencyResolverMain","resolveRemoteVersion","policy","setStatusLine","consoleSuccess","getSync","spec","Error","version","dependencies","peerDependencies","outdatedPkgs","getOutdatedPkgsFromPolicies","rootDir","variantPoliciesByPatterns","devDependencies","componentPolicies","componentId","ComponentID","fromString","components","currentRange","latestRange","name","source","variantPattern","targetField","dep1","dep2","dep3","forceVersionBump","isCoreEnv","getComponentEnvPolicyFromEnv","getDependencies","peers","supportedRange","envId","rejects","toThrowError"],"sources":["dependency-resolver.main.runtime.spec.ts"],"sourcesContent":["// @ts-ignore\njest.mock('@teambit/legacy/dist/scope/network/http', () => ({\n Http: {\n // @ts-ignore\n getNetworkConfig: jest.fn(),\n // @ts-ignore\n getProxyConfig: jest.fn(),\n },\n}));\n\n/* eslint-disable import/first */\nimport { ComponentID } from '@teambit/component';\nimport path from 'path';\nimport { Http } from '@teambit/legacy/dist/scope/network/http';\nimport { DependencyResolverMain } from './dependency-resolver.main.runtime';\n\nconst logger = {\n debug: () => {},\n};\n\ndescribe('DepenendencyResolverMain.getNetworkConfig()', () => {\n const packageManagerSlot = {\n // @ts-ignore\n get: jest.fn(() => ({\n getNetworkConfig: () => ({}),\n })),\n };\n it('should return settings from global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 3,\n fetchRetryMintimeout: 4,\n fetchRetryMaxtimeout: 5,\n networkConcurrency: 6,\n maxSockets: 7,\n };\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n expect(await depResolver.getNetworkConfig()).toEqual(globalConfig);\n });\n it('should return settings from package manager config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n const pmConfig = {\n fetchTimeout: 11,\n fetchRetries: 22,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 55,\n networkConcurrency: 66,\n maxSockets: 77,\n };\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n expect(await depResolver.getNetworkConfig()).toEqual(pmConfig);\n });\n it('should return settings from aspect config', async () => {\n const config = {\n fetchTimeout: 111,\n fetchRetries: 222,\n fetchRetryFactor: 333,\n fetchRetryMintimeout: 444,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve({}));\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual(config);\n });\n it('should merge settings from global config, package manager config, and aspect config', async () => {\n const globalConfig = {\n fetchTimeout: 1,\n fetchRetries: 2,\n };\n const pmConfig = {\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n };\n const config = {\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n } as any;\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(Promise.resolve(globalConfig));\n packageManagerSlot.get.mockReturnValue({\n getNetworkConfig: () => pmConfig,\n });\n const depResolver = new DependencyResolverMain(\n config,\n {} as any,\n {} as any,\n {} as any,\n logger as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n expect(await depResolver.getNetworkConfig()).toEqual({\n fetchTimeout: 1,\n fetchRetries: 2,\n fetchRetryFactor: 33,\n fetchRetryMintimeout: 44,\n fetchRetryMaxtimeout: 555,\n networkConcurrency: 666,\n maxSockets: 777,\n });\n });\n it('should read cafile when it is returned by the global config', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n { debug: jest.fn() } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n // @ts-ignore\n Http.getNetworkConfig.mockReturnValue(\n Promise.resolve({\n cafile: path.join(__dirname, 'fixtures/cafile.txt'),\n })\n );\n // @ts-ignore\n expect((await depResolver.getNetworkConfig()).ca).toStrictEqual([\n `-----BEGIN CERTIFICATE-----\nXXXX\n-----END CERTIFICATE-----`,\n ]);\n });\n});\n\ndescribe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {\n function createDependencyResolverMain(\n resolveRemoteVersion: (spec: string) => { version: string | undefined },\n policy: any\n ) {\n const packageManagerSlot = {\n // @ts-ignore\n get: () => ({\n resolveRemoteVersion,\n getNetworkConfig: () => ({}),\n }),\n };\n return new DependencyResolverMain(\n { policy } as any,\n {} as any,\n {} as any,\n {} as any,\n {\n // @ts-ignore\n debug: jest.fn(),\n // @ts-ignore\n setStatusLine: jest.fn(),\n // @ts-ignore\n consoleSuccess: jest.fn(),\n } as any,\n {} as any,\n {} as any,\n {\n getSync: () => false,\n } as any,\n {} as any,\n packageManagerSlot as any,\n {} as any,\n {} as any,\n {} as any\n );\n }\n describe('without options', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');\n return {\n version: {\n 'root-runtime-dep1@latest': '2.0.0',\n 'root-peer-dep1@latest': '2.0.0',\n 'variant1-runtime-dep1@latest': '2.0.0',\n 'variant1-runtime-dep3@latest': '2.0.0',\n 'variant1-dev-dep1@latest': '2.0.0',\n 'variant1-dev-dep3@latest': '2.0.0',\n 'variant1-peer-dep1@latest': '2.0.0',\n 'variant1-peer-dep3@latest': '2.0.0',\n 'component1-runtime-dep1@latest': '2.0.0',\n 'component1-runtime-dep3@latest': '2.0.0',\n 'component1-dev-dep1@latest': '2.0.0',\n 'component1-dev-dep3@latest': '2.0.0',\n 'component1-peer-dep1@latest': '2.0.0',\n 'component1-peer-dep3@latest': '2.0.0',\n 'pkg-with-old-latest@latest': '0.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n 'root-runtime-dep1': '1.0.0',\n 'root-runtime-dep2': '1.0.0',\n },\n peerDependencies: {\n 'root-peer-dep1': '1.0.0',\n 'root-peer-dep2': '1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {\n '{variant1/*}': {\n dependencies: {\n 'variant1-runtime-dep1': '1.0.0',\n 'variant1-runtime-dep2': '1.0.0',\n 'variant1-runtime-dep3': '-',\n },\n devDependencies: {\n 'variant1-dev-dep1': '1.0.0',\n 'variant1-dev-dep2': '1.0.0',\n 'variant1-dev-dep3': '-',\n },\n peerDependencies: {\n 'variant1-peer-dep1': '1.0.0',\n 'variant1-peer-dep2': '1.0.0',\n 'variant1-peer-dep3': '-',\n },\n },\n },\n componentPolicies: [\n {\n componentId: ComponentID.fromString('scope/component1'),\n policy: {\n dependencies: {\n 'pkg-with-old-latest': '1.0.0',\n 'cannot-resolve': '1.0.0',\n 'component1-runtime-dep1': '1.0.0',\n 'component1-runtime-dep2': '1.0.0',\n 'component1-runtime-dep3': '-',\n },\n devDependencies: {\n 'component1-dev-dep1': '1.0.0',\n 'component1-dev-dep2': '1.0.0',\n 'component1-dev-dep3': '-',\n },\n peerDependencies: {\n 'component1-peer-dep1': '1.0.0',\n 'component1-peer-dep2': '1.0.0',\n 'component1-peer-dep3': '-',\n },\n },\n },\n ],\n components: [],\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-runtime-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'root-peer-dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-runtime-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-dev-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'variant1-peer-dep1',\n source: 'variants',\n variantPattern: '{variant1/*}',\n targetField: 'peerDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-runtime-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'dependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-dev-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'devDependencies',\n },\n {\n currentRange: '1.0.0',\n latestRange: '2.0.0',\n name: 'component1-peer-dep1',\n source: 'component',\n componentId: ComponentID.fromString('scope/component1'),\n targetField: 'peerDependencies',\n },\n ]);\n });\n });\n describe('forced version bump', () => {\n function resolveRemoteVersion(spec: string): { version: string | undefined } {\n return {\n version: {\n 'dep1@>=0.0.1 <0.1.0': '0.0.2',\n 'dep1@>=0.0.1 <1.0.0': '0.0.2',\n 'dep1@latest': '0.0.2',\n\n 'dep2@>=0.1.0 <0.2.0': '0.1.0',\n 'dep2@>=0.1.0 <1.0.0': '0.2.0',\n 'dep2@latest': '0.2.0',\n\n 'dep3@>=1.0.0 <1.1.0': '1.0.0',\n 'dep3@>=1.0.0 <2.0.0': '1.0.0',\n 'dep3@latest': '2.0.0',\n }[spec],\n };\n }\n const policy = {\n dependencies: {\n dep1: '0.0.1',\n dep2: '^0.1.0',\n dep3: '^1.0.0',\n },\n };\n const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);\n it('should return outdated dependencies when forcedVersionBump is set to patch', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'patch',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to minor', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'minor',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n it('should return outdated dependencies when forcedVersionBump is set to major', async () => {\n const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({\n rootDir: '',\n variantPoliciesByPatterns: {},\n componentPolicies: [],\n components: [],\n forceVersionBump: 'major',\n });\n // @ts-ignore\n expect(outdatedPkgs).toStrictEqual([\n {\n currentRange: '0.0.1',\n latestRange: '0.0.2',\n name: 'dep1',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^0.1.0',\n latestRange: '^0.2.0',\n name: 'dep2',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n {\n currentRange: '^1.0.0',\n latestRange: '^2.0.0',\n name: 'dep3',\n source: 'rootPolicy',\n variantPattern: null,\n targetField: 'dependencies',\n },\n ]);\n });\n });\n});\n\ndescribe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {\n it('should throw an error if the env policy has a peer with an empty string set for the supportedRange', async () => {\n const depResolver = new DependencyResolverMain(\n {} as any,\n {} as any,\n {} as any,\n {\n isCoreEnv: () => false,\n } as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any,\n {} as any\n );\n await expect(\n depResolver.getComponentEnvPolicyFromEnv(\n {\n getDependencies: () => ({\n peers: [\n {\n name: '@teambit/community.ui.bit-cli.commands-provider',\n supportedRange: '',\n version: '',\n },\n ],\n }),\n },\n { envId: 'teambit.test/test' }\n ) // @ts-ignore\n ).rejects.toThrowError('Peer \"@teambit/community.ui.bit-cli.commands-provider\" has an empty supportedRange');\n });\n});\n"],"mappings":"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"}
|
|
@@ -316,11 +316,11 @@ function filterComponents(dependencyList, componentsToFilterOut) {
|
|
|
316
316
|
ignoreVersion: true
|
|
317
317
|
});
|
|
318
318
|
}
|
|
319
|
-
// We are checking against both component.id
|
|
320
|
-
// Because during tag operation, the component.id
|
|
319
|
+
// We are checking against both component.id and component.state._consumer.id
|
|
320
|
+
// Because during tag operation, the component.id has the current version (before the tag)
|
|
321
321
|
// while the component.state._consumer.id has the upcoming version (the version that will be after the tag)
|
|
322
322
|
// The dependency in some cases is already updated to the upcoming version
|
|
323
|
-
return component.id.
|
|
323
|
+
return component.id.isEqualWithoutVersion(dep.componentId) || component.state._consumer.id.isEqualWithoutVersion(dep.componentId);
|
|
324
324
|
});
|
|
325
325
|
if (existingComponent) return false;
|
|
326
326
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_componentIssues","data","require","_componentIdToPackageName","_interopRequireDefault","_dependencyResolver","_lodash","_semver","_pMapSeries","_componentPackageVersion","_dependencies","_policy","_componentManifest","_deduping","_updateDependencyVersion","_workspaceManifest","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","DEFAULT_CREATE_OPTIONS","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","resolveVersionsFromDependenciesOnly","excludeExtensionsDependencies","WorkspaceManifestFactory","constructor","dependencyResolver","aspectLoader","createFromComponents","name","version","rootPolicy","rootDir","components","options","optsWithDefaults","assign","hasRootComponents","componentDependenciesMap","buildComponentDependenciesMap","dependencyFilterFn","referenceLocalPackages","rootDependencies","toManifest","dependencies","dedupedDependencies","getEmptyDedupedDependencies","dep","dependencyId","dedupeDependencies","dedupePeerDependencies","mapValues","deps","excludeWorkspaceDependencies","componentsManifestsMap","getComponentsManifests","envSelfPeers","getEnvsSelfPeersPolicy","workspaceManifest","WorkspaceManifest","foundEnvs","component","values","envPolicy","peersPolicies","map","policy","selfPolicy","mergedPolicies","VariantPolicy","mergePolices","buildResultsP","packageName","componentIdToPackageName","state","_consumer","depList","getDependencies","includeHidden","additionalDeps","coreAspectIds","getCoreAspectIds","comp","toTypeArray","compIdWithoutVersion","id","split","isExtension","includes","some","c","isEqual","componentId","pkgName","getPackageName","depManifestBeforeFiltering","toDependenciesManifest","filterComponents","filterExtensions","updateDependenciesVersions","depManifest","devMissings","runtimeMissings","getMissingPackages","unresolvedRuntimeMissingRootDeps","pickBy","_version","rootPackageName","devDependencies","peerDependencies","unresolvedDevMissingRootDeps","result","Map","results","Promise","all","currResult","set","dependencyList","getPolicy","updateDependencyVersion","componentsManifests","pMapSeries","has","blankDependencies","get","getVersion","hasVersion","snapToSemver","getComponentEnvPolicy","manifest","ComponentManifest","SemVer","exports","filtered","ComponentDependency","componentsToFilterOut","_dep$getPackageName","depPkgName","existingComponent","find","toString","ignoreVersion","_legacy","isEqualWithoutVersion","versionSpec","startsWith","_component$state$issu","missingPackagesData","issues","getIssue","IssuesClasses","MissingPackagesDependenciesOnFs","devFiles","DependencyResolver","getDevFiles","entries","fileName","packages","uniq","difference"],"sources":["workspace-manifest-factory.ts"],"sourcesContent":["import { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Component } from '@teambit/component';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { DependencyResolver } from '@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver';\nimport { pickBy, mapValues, uniq, difference } from 'lodash';\nimport { SemVer } from 'semver';\nimport pMapSeries from 'p-map-series';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { ComponentDependency, DependencyList, PackageName } from '../dependencies';\nimport { VariantPolicy, WorkspacePolicy, EnvPolicy } from '../policy';\nimport { DependencyResolverMain } from '../dependency-resolver.main.runtime';\nimport { ComponentsManifestsMap } from '../types';\nimport { ComponentManifest } from './component-manifest';\nimport { dedupeDependencies, DedupedDependencies, getEmptyDedupedDependencies } from './deduping';\nimport { ManifestToJsonOptions, ManifestDependenciesObject, DepObjectValue } from './manifest';\nimport { updateDependencyVersion } from './update-dependency-version';\nimport { WorkspaceManifest } from './workspace-manifest';\n\nexport type DepsFilterFn = (dependencies: DependencyList) => DependencyList;\n\nexport type ComponentDependenciesMap = Map<PackageName, ManifestDependenciesObject>;\nexport interface WorkspaceManifestToJsonOptions extends ManifestToJsonOptions {\n includeDir?: boolean;\n}\n\nexport type CreateFromComponentsOptions = {\n filterComponentsFromManifests: boolean;\n createManifestForComponentsWithoutDependencies: boolean;\n dedupe?: boolean;\n dependencyFilterFn?: DepsFilterFn;\n resolveVersionsFromDependenciesOnly?: boolean;\n referenceLocalPackages?: boolean;\n hasRootComponents?: boolean;\n excludeExtensionsDependencies?: boolean;\n};\n\nconst DEFAULT_CREATE_OPTIONS: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: true,\n resolveVersionsFromDependenciesOnly: false,\n excludeExtensionsDependencies: false,\n};\nexport class WorkspaceManifestFactory {\n constructor(private dependencyResolver: DependencyResolverMain, private aspectLoader: AspectLoaderMain) {}\n\n async createFromComponents(\n name: string,\n version: SemVer,\n rootPolicy: WorkspacePolicy,\n rootDir: string,\n components: Component[],\n options: CreateFromComponentsOptions = DEFAULT_CREATE_OPTIONS\n ): Promise<WorkspaceManifest> {\n // Make sure to take other default if passed options with only one option\n const optsWithDefaults = Object.assign({}, DEFAULT_CREATE_OPTIONS, options);\n const hasRootComponents = options.hasRootComponents ?? this.dependencyResolver.hasRootComponents();\n const componentDependenciesMap: ComponentDependenciesMap = await this.buildComponentDependenciesMap(components, {\n filterComponentsFromManifests: optsWithDefaults.filterComponentsFromManifests,\n rootPolicy: optsWithDefaults.resolveVersionsFromDependenciesOnly ? undefined : rootPolicy,\n dependencyFilterFn: optsWithDefaults.dependencyFilterFn,\n excludeExtensionsDependencies: optsWithDefaults.excludeExtensionsDependencies,\n referenceLocalPackages: optsWithDefaults.referenceLocalPackages && hasRootComponents,\n rootDependencies: hasRootComponents ? rootPolicy.toManifest().dependencies : undefined,\n });\n let dedupedDependencies = getEmptyDedupedDependencies();\n rootPolicy = rootPolicy.filter((dep) => dep.dependencyId !== '@teambit/legacy');\n if (hasRootComponents) {\n const { rootDependencies } = dedupeDependencies(rootPolicy, componentDependenciesMap, {\n dedupePeerDependencies: hasRootComponents,\n });\n // We hoist dependencies in order for the IDE to work.\n // For runtime, the peer dependencies are installed inside:\n // <ws root>/node_module/<comp name>/node_module/<comp name>/node_modules\n dedupedDependencies.rootDependencies = mapValues(\n rootDependencies,\n (deps) => deps && excludeWorkspaceDependencies(deps)\n );\n dedupedDependencies.componentDependenciesMap = componentDependenciesMap;\n } else if (options.dedupe) {\n dedupedDependencies = dedupeDependencies(rootPolicy, componentDependenciesMap);\n } else {\n dedupedDependencies.rootDependencies = rootPolicy.toManifest();\n dedupedDependencies.componentDependenciesMap = componentDependenciesMap;\n }\n const componentsManifestsMap = await this.getComponentsManifests(\n dedupedDependencies,\n components,\n optsWithDefaults.createManifestForComponentsWithoutDependencies\n );\n const envSelfPeers = this.getEnvsSelfPeersPolicy(componentsManifestsMap);\n const workspaceManifest = new WorkspaceManifest(\n name,\n version,\n dedupedDependencies.rootDependencies,\n envSelfPeers,\n rootDir,\n componentsManifestsMap\n );\n return workspaceManifest;\n }\n\n private getEnvsSelfPeersPolicy(componentsManifestsMap: ComponentsManifestsMap) {\n const foundEnvs: EnvPolicy[] = [];\n for (const component of componentsManifestsMap.values()) {\n foundEnvs.push(component.envPolicy);\n }\n const peersPolicies = foundEnvs.map((policy) => policy.selfPolicy);\n // TODO: At the moment we are just merge everything, so in case of conflicts one will be taken\n // TODO: once we have root for each env, we should know to handle it differently\n const mergedPolicies = VariantPolicy.mergePolices(peersPolicies);\n return mergedPolicies;\n }\n\n /**\n * Get the components and build a map with the package name (from the component) as key and the dependencies as values\n *\n * @param {Component[]} components\n * @param {boolean} [filterComponentsFromManifests=true] - filter existing components from the dep graphs\n * @returns\n */\n private async buildComponentDependenciesMap(\n components: Component[],\n {\n dependencyFilterFn,\n filterComponentsFromManifests,\n excludeExtensionsDependencies,\n referenceLocalPackages,\n rootDependencies,\n rootPolicy,\n }: {\n dependencyFilterFn?: DepsFilterFn;\n filterComponentsFromManifests?: boolean;\n excludeExtensionsDependencies?: boolean;\n referenceLocalPackages?: boolean;\n rootDependencies?: Record<string, string>;\n rootPolicy?: WorkspacePolicy;\n }\n ): Promise<ComponentDependenciesMap> {\n const buildResultsP = components.map(async (component) => {\n const packageName = componentIdToPackageName(component.state._consumer);\n let depList = await this.dependencyResolver.getDependencies(component, { includeHidden: true });\n const additionalDeps = {};\n if (referenceLocalPackages) {\n const coreAspectIds = this.aspectLoader.getCoreAspectIds();\n for (const comp of depList.toTypeArray('component') as ComponentDependency[]) {\n const [compIdWithoutVersion] = comp.id.split('@');\n if (\n !comp.isExtension &&\n !coreAspectIds.includes(compIdWithoutVersion) &&\n components.some((c) => c.id.isEqual(comp.componentId))\n ) {\n const pkgName = comp.getPackageName();\n if (pkgName !== '@teambit/harmony') {\n additionalDeps[pkgName] = `workspace:*`;\n }\n }\n }\n }\n const depManifestBeforeFiltering = depList.toDependenciesManifest();\n\n if (filterComponentsFromManifests ?? true) {\n depList = filterComponents(depList, components);\n }\n if (excludeExtensionsDependencies) {\n depList = filterExtensions(depList);\n }\n // Remove bit bin from dep list\n depList = depList.filter((dep) => dep.id !== '@teambit/legacy');\n if (dependencyFilterFn) {\n depList = dependencyFilterFn(depList);\n }\n await this.updateDependenciesVersions(component, rootPolicy, depList);\n const depManifest = depList.toDependenciesManifest();\n const { devMissings, runtimeMissings } = await getMissingPackages(component);\n // Only add missing root deps that are not already in the component manifest\n // We are using depManifestBeforeFiltering to support (rare) cases when a dependency is both:\n // a component in the workspace (bitmap) and a dependency in the workspace.jsonc / package.json\n // this happens for the bit repo itself for the @teambit/component-version component\n // in this case we don't want to add that to the manifest when it's missing, because it will be linked from the\n // workspace\n const unresolvedRuntimeMissingRootDeps = pickBy(rootDependencies, (_version, rootPackageName) => {\n return (\n runtimeMissings.includes(rootPackageName) &&\n !depManifestBeforeFiltering.dependencies[rootPackageName] &&\n !depManifestBeforeFiltering.devDependencies[rootPackageName] &&\n !depManifestBeforeFiltering.peerDependencies[rootPackageName]\n );\n });\n // Only add missing root deps that are not already in the component manifest\n const unresolvedDevMissingRootDeps = pickBy(rootDependencies, (_version, rootPackageName) => {\n return (\n devMissings.includes(rootPackageName) &&\n !depManifestBeforeFiltering.dependencies[rootPackageName] &&\n !depManifestBeforeFiltering.devDependencies[rootPackageName] &&\n !depManifestBeforeFiltering.peerDependencies[rootPackageName]\n );\n });\n depManifest.dependencies = {\n ...unresolvedRuntimeMissingRootDeps,\n ...additionalDeps,\n ...depManifest.dependencies,\n };\n\n depManifest.devDependencies = {\n ...unresolvedDevMissingRootDeps,\n ...depManifest.devDependencies,\n };\n\n return { packageName, depManifest };\n });\n const result: ComponentDependenciesMap = new Map();\n\n if (buildResultsP.length) {\n const results = await Promise.all(buildResultsP);\n results.forEach((currResult) => {\n result.set(currResult.packageName, currResult.depManifest);\n });\n }\n\n return result;\n }\n\n private async updateDependenciesVersions(\n component: Component,\n rootPolicy: WorkspacePolicy | undefined,\n dependencyList: DependencyList\n ): Promise<void> {\n // If root policy is not passed, it means that installation happens in a capsule\n // and we only resolve versions from the dependencies, not any policies.\n const mergedPolicies = rootPolicy && (await this.dependencyResolver.getPolicy(component));\n dependencyList.forEach((dep) => {\n updateDependencyVersion(dep, rootPolicy, mergedPolicies);\n });\n }\n\n /**\n * Get the components manifests based on the calculated dedupedDependencies\n *\n * @param {DedupedDependencies} dedupedDependencies\n * @param {Component[]} components\n * @returns {ComponentsManifestsMap}\n */\n async getComponentsManifests(\n dedupedDependencies: DedupedDependencies,\n components: Component[],\n createManifestForComponentsWithoutDependencies = true\n ): Promise<ComponentsManifestsMap> {\n const componentsManifests: ComponentsManifestsMap = new Map();\n // don't use Promise.all, along the road this code might import an env from a remote, which can't be done in parallel.\n // otherwise, it may import the same component multiple times, and if fails, the ref (remote-lane) files may be corrupted.\n await pMapSeries(components, async (component) => {\n const packageName = componentIdToPackageName(component.state._consumer);\n if (\n dedupedDependencies.componentDependenciesMap.has(packageName) ||\n createManifestForComponentsWithoutDependencies\n ) {\n const blankDependencies: ManifestDependenciesObject = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n let dependencies = blankDependencies;\n if (dedupedDependencies.componentDependenciesMap.has(packageName)) {\n dependencies = dedupedDependencies.componentDependenciesMap.get(packageName) as ManifestDependenciesObject;\n }\n\n const getVersion = (): string => {\n if (!component.id.hasVersion()) return '0.0.1-new';\n return snapToSemver(component.id.version as string);\n };\n\n const version = getVersion();\n const envPolicy = await this.dependencyResolver.getComponentEnvPolicy(component);\n const manifest = new ComponentManifest(packageName, new SemVer(version), dependencies, component, envPolicy);\n componentsManifests.set(packageName, manifest);\n }\n });\n return componentsManifests;\n }\n}\n\nfunction filterExtensions(dependencyList: DependencyList): DependencyList {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n return true;\n }\n return !dep.isExtension;\n });\n return filtered;\n}\n\nfunction filterComponents(dependencyList: DependencyList, componentsToFilterOut: Component[]): DependencyList {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n const depPkgName = dep.getPackageName?.();\n if (!depPkgName) return true;\n // If the package is already in the workspace as a local component,\n // then we don't want to install that package as a dependency to node_modules.\n // Otherwise, it would rewrite the local component inside the root node_modules that is created by bit link.\n return !componentsToFilterOut.some(\n (component) => depPkgName === componentIdToPackageName(component.state._consumer)\n );\n }\n // Remove dependencies which has no version (they are new in the workspace)\n if (!dep.componentId.hasVersion()) return false;\n const existingComponent = componentsToFilterOut.find((component) => {\n // For new components, the component has no version but the dependency id has version 0.0.1\n if (!component.id.hasVersion()) {\n return component.id.toString() === dep.componentId.toString({ ignoreVersion: true });\n }\n // We are checking against both component.id._legacy and component.state._consumer.id\n // Because during tag operation, the component.id._legacy has the current version (before the tag)\n // while the component.state._consumer.id has the upcoming version (the version that will be after the tag)\n // The dependency in some cases is already updated to the upcoming version\n return (\n component.id._legacy.isEqualWithoutVersion(dep.componentId._legacy) ||\n component.state._consumer.id.isEqualWithoutVersion(dep.componentId._legacy)\n );\n });\n if (existingComponent) return false;\n return true;\n });\n return filtered;\n}\n\nfunction excludeWorkspaceDependencies(deps: DepObjectValue): DepObjectValue {\n return pickBy(deps, (versionSpec) => !versionSpec.startsWith('file:') && !versionSpec.startsWith('workspace:'));\n}\n\nasync function getMissingPackages(component: Component): Promise<{ devMissings: string[]; runtimeMissings: string[] }> {\n const missingPackagesData = component.state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs)?.data;\n if (!missingPackagesData) return { devMissings: [], runtimeMissings: [] };\n // TODO: this is a hack to get it from the legacy, we should take it from the dev files aspect\n // TODO: the reason we don't is that it will make circular dependency between the dep resolver and the dev files aspect\n const devFiles = await DependencyResolver.getDevFiles(component.state._consumer);\n let devMissings: string[] = [];\n let runtimeMissings: string[] = [];\n Object.entries(missingPackagesData).forEach(([fileName, packages]) => {\n if (devFiles.includes(fileName)) {\n devMissings = uniq([...devMissings, ...packages]);\n } else {\n runtimeMissings = uniq([...runtimeMissings, ...packages]);\n }\n });\n // Remove dev missing which are also runtime missing\n devMissings = difference(devMissings, runtimeMissings);\n return {\n devMissings,\n runtimeMissings,\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_componentIssues","data","require","_componentIdToPackageName","_interopRequireDefault","_dependencyResolver","_lodash","_semver","_pMapSeries","_componentPackageVersion","_dependencies","_policy","_componentManifest","_deduping","_updateDependencyVersion","_workspaceManifest","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","DEFAULT_CREATE_OPTIONS","filterComponentsFromManifests","createManifestForComponentsWithoutDependencies","dedupe","resolveVersionsFromDependenciesOnly","excludeExtensionsDependencies","WorkspaceManifestFactory","constructor","dependencyResolver","aspectLoader","createFromComponents","name","version","rootPolicy","rootDir","components","options","optsWithDefaults","assign","hasRootComponents","componentDependenciesMap","buildComponentDependenciesMap","dependencyFilterFn","referenceLocalPackages","rootDependencies","toManifest","dependencies","dedupedDependencies","getEmptyDedupedDependencies","dep","dependencyId","dedupeDependencies","dedupePeerDependencies","mapValues","deps","excludeWorkspaceDependencies","componentsManifestsMap","getComponentsManifests","envSelfPeers","getEnvsSelfPeersPolicy","workspaceManifest","WorkspaceManifest","foundEnvs","component","values","envPolicy","peersPolicies","map","policy","selfPolicy","mergedPolicies","VariantPolicy","mergePolices","buildResultsP","packageName","componentIdToPackageName","state","_consumer","depList","getDependencies","includeHidden","additionalDeps","coreAspectIds","getCoreAspectIds","comp","toTypeArray","compIdWithoutVersion","id","split","isExtension","includes","some","c","isEqual","componentId","pkgName","getPackageName","depManifestBeforeFiltering","toDependenciesManifest","filterComponents","filterExtensions","updateDependenciesVersions","depManifest","devMissings","runtimeMissings","getMissingPackages","unresolvedRuntimeMissingRootDeps","pickBy","_version","rootPackageName","devDependencies","peerDependencies","unresolvedDevMissingRootDeps","result","Map","results","Promise","all","currResult","set","dependencyList","getPolicy","updateDependencyVersion","componentsManifests","pMapSeries","has","blankDependencies","get","getVersion","hasVersion","snapToSemver","getComponentEnvPolicy","manifest","ComponentManifest","SemVer","exports","filtered","ComponentDependency","componentsToFilterOut","_dep$getPackageName","depPkgName","existingComponent","find","toString","ignoreVersion","isEqualWithoutVersion","versionSpec","startsWith","_component$state$issu","missingPackagesData","issues","getIssue","IssuesClasses","MissingPackagesDependenciesOnFs","devFiles","DependencyResolver","getDevFiles","entries","fileName","packages","uniq","difference"],"sources":["workspace-manifest-factory.ts"],"sourcesContent":["import { AspectLoaderMain } from '@teambit/aspect-loader';\nimport { IssuesClasses } from '@teambit/component-issues';\nimport { Component } from '@teambit/component';\nimport componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';\nimport { DependencyResolver } from '@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver';\nimport { pickBy, mapValues, uniq, difference } from 'lodash';\nimport { SemVer } from 'semver';\nimport pMapSeries from 'p-map-series';\nimport { snapToSemver } from '@teambit/component-package-version';\nimport { ComponentDependency, DependencyList, PackageName } from '../dependencies';\nimport { VariantPolicy, WorkspacePolicy, EnvPolicy } from '../policy';\nimport { DependencyResolverMain } from '../dependency-resolver.main.runtime';\nimport { ComponentsManifestsMap } from '../types';\nimport { ComponentManifest } from './component-manifest';\nimport { dedupeDependencies, DedupedDependencies, getEmptyDedupedDependencies } from './deduping';\nimport { ManifestToJsonOptions, ManifestDependenciesObject, DepObjectValue } from './manifest';\nimport { updateDependencyVersion } from './update-dependency-version';\nimport { WorkspaceManifest } from './workspace-manifest';\n\nexport type DepsFilterFn = (dependencies: DependencyList) => DependencyList;\n\nexport type ComponentDependenciesMap = Map<PackageName, ManifestDependenciesObject>;\nexport interface WorkspaceManifestToJsonOptions extends ManifestToJsonOptions {\n includeDir?: boolean;\n}\n\nexport type CreateFromComponentsOptions = {\n filterComponentsFromManifests: boolean;\n createManifestForComponentsWithoutDependencies: boolean;\n dedupe?: boolean;\n dependencyFilterFn?: DepsFilterFn;\n resolveVersionsFromDependenciesOnly?: boolean;\n referenceLocalPackages?: boolean;\n hasRootComponents?: boolean;\n excludeExtensionsDependencies?: boolean;\n};\n\nconst DEFAULT_CREATE_OPTIONS: CreateFromComponentsOptions = {\n filterComponentsFromManifests: true,\n createManifestForComponentsWithoutDependencies: true,\n dedupe: true,\n resolveVersionsFromDependenciesOnly: false,\n excludeExtensionsDependencies: false,\n};\nexport class WorkspaceManifestFactory {\n constructor(private dependencyResolver: DependencyResolverMain, private aspectLoader: AspectLoaderMain) {}\n\n async createFromComponents(\n name: string,\n version: SemVer,\n rootPolicy: WorkspacePolicy,\n rootDir: string,\n components: Component[],\n options: CreateFromComponentsOptions = DEFAULT_CREATE_OPTIONS\n ): Promise<WorkspaceManifest> {\n // Make sure to take other default if passed options with only one option\n const optsWithDefaults = Object.assign({}, DEFAULT_CREATE_OPTIONS, options);\n const hasRootComponents = options.hasRootComponents ?? this.dependencyResolver.hasRootComponents();\n const componentDependenciesMap: ComponentDependenciesMap = await this.buildComponentDependenciesMap(components, {\n filterComponentsFromManifests: optsWithDefaults.filterComponentsFromManifests,\n rootPolicy: optsWithDefaults.resolveVersionsFromDependenciesOnly ? undefined : rootPolicy,\n dependencyFilterFn: optsWithDefaults.dependencyFilterFn,\n excludeExtensionsDependencies: optsWithDefaults.excludeExtensionsDependencies,\n referenceLocalPackages: optsWithDefaults.referenceLocalPackages && hasRootComponents,\n rootDependencies: hasRootComponents ? rootPolicy.toManifest().dependencies : undefined,\n });\n let dedupedDependencies = getEmptyDedupedDependencies();\n rootPolicy = rootPolicy.filter((dep) => dep.dependencyId !== '@teambit/legacy');\n if (hasRootComponents) {\n const { rootDependencies } = dedupeDependencies(rootPolicy, componentDependenciesMap, {\n dedupePeerDependencies: hasRootComponents,\n });\n // We hoist dependencies in order for the IDE to work.\n // For runtime, the peer dependencies are installed inside:\n // <ws root>/node_module/<comp name>/node_module/<comp name>/node_modules\n dedupedDependencies.rootDependencies = mapValues(\n rootDependencies,\n (deps) => deps && excludeWorkspaceDependencies(deps)\n );\n dedupedDependencies.componentDependenciesMap = componentDependenciesMap;\n } else if (options.dedupe) {\n dedupedDependencies = dedupeDependencies(rootPolicy, componentDependenciesMap);\n } else {\n dedupedDependencies.rootDependencies = rootPolicy.toManifest();\n dedupedDependencies.componentDependenciesMap = componentDependenciesMap;\n }\n const componentsManifestsMap = await this.getComponentsManifests(\n dedupedDependencies,\n components,\n optsWithDefaults.createManifestForComponentsWithoutDependencies\n );\n const envSelfPeers = this.getEnvsSelfPeersPolicy(componentsManifestsMap);\n const workspaceManifest = new WorkspaceManifest(\n name,\n version,\n dedupedDependencies.rootDependencies,\n envSelfPeers,\n rootDir,\n componentsManifestsMap\n );\n return workspaceManifest;\n }\n\n private getEnvsSelfPeersPolicy(componentsManifestsMap: ComponentsManifestsMap) {\n const foundEnvs: EnvPolicy[] = [];\n for (const component of componentsManifestsMap.values()) {\n foundEnvs.push(component.envPolicy);\n }\n const peersPolicies = foundEnvs.map((policy) => policy.selfPolicy);\n // TODO: At the moment we are just merge everything, so in case of conflicts one will be taken\n // TODO: once we have root for each env, we should know to handle it differently\n const mergedPolicies = VariantPolicy.mergePolices(peersPolicies);\n return mergedPolicies;\n }\n\n /**\n * Get the components and build a map with the package name (from the component) as key and the dependencies as values\n *\n * @param {Component[]} components\n * @param {boolean} [filterComponentsFromManifests=true] - filter existing components from the dep graphs\n * @returns\n */\n private async buildComponentDependenciesMap(\n components: Component[],\n {\n dependencyFilterFn,\n filterComponentsFromManifests,\n excludeExtensionsDependencies,\n referenceLocalPackages,\n rootDependencies,\n rootPolicy,\n }: {\n dependencyFilterFn?: DepsFilterFn;\n filterComponentsFromManifests?: boolean;\n excludeExtensionsDependencies?: boolean;\n referenceLocalPackages?: boolean;\n rootDependencies?: Record<string, string>;\n rootPolicy?: WorkspacePolicy;\n }\n ): Promise<ComponentDependenciesMap> {\n const buildResultsP = components.map(async (component) => {\n const packageName = componentIdToPackageName(component.state._consumer);\n let depList = await this.dependencyResolver.getDependencies(component, { includeHidden: true });\n const additionalDeps = {};\n if (referenceLocalPackages) {\n const coreAspectIds = this.aspectLoader.getCoreAspectIds();\n for (const comp of depList.toTypeArray('component') as ComponentDependency[]) {\n const [compIdWithoutVersion] = comp.id.split('@');\n if (\n !comp.isExtension &&\n !coreAspectIds.includes(compIdWithoutVersion) &&\n components.some((c) => c.id.isEqual(comp.componentId))\n ) {\n const pkgName = comp.getPackageName();\n if (pkgName !== '@teambit/harmony') {\n additionalDeps[pkgName] = `workspace:*`;\n }\n }\n }\n }\n const depManifestBeforeFiltering = depList.toDependenciesManifest();\n\n if (filterComponentsFromManifests ?? true) {\n depList = filterComponents(depList, components);\n }\n if (excludeExtensionsDependencies) {\n depList = filterExtensions(depList);\n }\n // Remove bit bin from dep list\n depList = depList.filter((dep) => dep.id !== '@teambit/legacy');\n if (dependencyFilterFn) {\n depList = dependencyFilterFn(depList);\n }\n await this.updateDependenciesVersions(component, rootPolicy, depList);\n const depManifest = depList.toDependenciesManifest();\n const { devMissings, runtimeMissings } = await getMissingPackages(component);\n // Only add missing root deps that are not already in the component manifest\n // We are using depManifestBeforeFiltering to support (rare) cases when a dependency is both:\n // a component in the workspace (bitmap) and a dependency in the workspace.jsonc / package.json\n // this happens for the bit repo itself for the @teambit/component-version component\n // in this case we don't want to add that to the manifest when it's missing, because it will be linked from the\n // workspace\n const unresolvedRuntimeMissingRootDeps = pickBy(rootDependencies, (_version, rootPackageName) => {\n return (\n runtimeMissings.includes(rootPackageName) &&\n !depManifestBeforeFiltering.dependencies[rootPackageName] &&\n !depManifestBeforeFiltering.devDependencies[rootPackageName] &&\n !depManifestBeforeFiltering.peerDependencies[rootPackageName]\n );\n });\n // Only add missing root deps that are not already in the component manifest\n const unresolvedDevMissingRootDeps = pickBy(rootDependencies, (_version, rootPackageName) => {\n return (\n devMissings.includes(rootPackageName) &&\n !depManifestBeforeFiltering.dependencies[rootPackageName] &&\n !depManifestBeforeFiltering.devDependencies[rootPackageName] &&\n !depManifestBeforeFiltering.peerDependencies[rootPackageName]\n );\n });\n depManifest.dependencies = {\n ...unresolvedRuntimeMissingRootDeps,\n ...additionalDeps,\n ...depManifest.dependencies,\n };\n\n depManifest.devDependencies = {\n ...unresolvedDevMissingRootDeps,\n ...depManifest.devDependencies,\n };\n\n return { packageName, depManifest };\n });\n const result: ComponentDependenciesMap = new Map();\n\n if (buildResultsP.length) {\n const results = await Promise.all(buildResultsP);\n results.forEach((currResult) => {\n result.set(currResult.packageName, currResult.depManifest);\n });\n }\n\n return result;\n }\n\n private async updateDependenciesVersions(\n component: Component,\n rootPolicy: WorkspacePolicy | undefined,\n dependencyList: DependencyList\n ): Promise<void> {\n // If root policy is not passed, it means that installation happens in a capsule\n // and we only resolve versions from the dependencies, not any policies.\n const mergedPolicies = rootPolicy && (await this.dependencyResolver.getPolicy(component));\n dependencyList.forEach((dep) => {\n updateDependencyVersion(dep, rootPolicy, mergedPolicies);\n });\n }\n\n /**\n * Get the components manifests based on the calculated dedupedDependencies\n *\n * @param {DedupedDependencies} dedupedDependencies\n * @param {Component[]} components\n * @returns {ComponentsManifestsMap}\n */\n async getComponentsManifests(\n dedupedDependencies: DedupedDependencies,\n components: Component[],\n createManifestForComponentsWithoutDependencies = true\n ): Promise<ComponentsManifestsMap> {\n const componentsManifests: ComponentsManifestsMap = new Map();\n // don't use Promise.all, along the road this code might import an env from a remote, which can't be done in parallel.\n // otherwise, it may import the same component multiple times, and if fails, the ref (remote-lane) files may be corrupted.\n await pMapSeries(components, async (component) => {\n const packageName = componentIdToPackageName(component.state._consumer);\n if (\n dedupedDependencies.componentDependenciesMap.has(packageName) ||\n createManifestForComponentsWithoutDependencies\n ) {\n const blankDependencies: ManifestDependenciesObject = {\n dependencies: {},\n devDependencies: {},\n peerDependencies: {},\n };\n let dependencies = blankDependencies;\n if (dedupedDependencies.componentDependenciesMap.has(packageName)) {\n dependencies = dedupedDependencies.componentDependenciesMap.get(packageName) as ManifestDependenciesObject;\n }\n\n const getVersion = (): string => {\n if (!component.id.hasVersion()) return '0.0.1-new';\n return snapToSemver(component.id.version as string);\n };\n\n const version = getVersion();\n const envPolicy = await this.dependencyResolver.getComponentEnvPolicy(component);\n const manifest = new ComponentManifest(packageName, new SemVer(version), dependencies, component, envPolicy);\n componentsManifests.set(packageName, manifest);\n }\n });\n return componentsManifests;\n }\n}\n\nfunction filterExtensions(dependencyList: DependencyList): DependencyList {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n return true;\n }\n return !dep.isExtension;\n });\n return filtered;\n}\n\nfunction filterComponents(dependencyList: DependencyList, componentsToFilterOut: Component[]): DependencyList {\n const filtered = dependencyList.filter((dep) => {\n if (!(dep instanceof ComponentDependency)) {\n const depPkgName = dep.getPackageName?.();\n if (!depPkgName) return true;\n // If the package is already in the workspace as a local component,\n // then we don't want to install that package as a dependency to node_modules.\n // Otherwise, it would rewrite the local component inside the root node_modules that is created by bit link.\n return !componentsToFilterOut.some(\n (component) => depPkgName === componentIdToPackageName(component.state._consumer)\n );\n }\n // Remove dependencies which has no version (they are new in the workspace)\n if (!dep.componentId.hasVersion()) return false;\n const existingComponent = componentsToFilterOut.find((component) => {\n // For new components, the component has no version but the dependency id has version 0.0.1\n if (!component.id.hasVersion()) {\n return component.id.toString() === dep.componentId.toString({ ignoreVersion: true });\n }\n // We are checking against both component.id and component.state._consumer.id\n // Because during tag operation, the component.id has the current version (before the tag)\n // while the component.state._consumer.id has the upcoming version (the version that will be after the tag)\n // The dependency in some cases is already updated to the upcoming version\n return (\n component.id.isEqualWithoutVersion(dep.componentId) ||\n component.state._consumer.id.isEqualWithoutVersion(dep.componentId)\n );\n });\n if (existingComponent) return false;\n return true;\n });\n return filtered;\n}\n\nfunction excludeWorkspaceDependencies(deps: DepObjectValue): DepObjectValue {\n return pickBy(deps, (versionSpec) => !versionSpec.startsWith('file:') && !versionSpec.startsWith('workspace:'));\n}\n\nasync function getMissingPackages(component: Component): Promise<{ devMissings: string[]; runtimeMissings: string[] }> {\n const missingPackagesData = component.state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs)?.data;\n if (!missingPackagesData) return { devMissings: [], runtimeMissings: [] };\n // TODO: this is a hack to get it from the legacy, we should take it from the dev files aspect\n // TODO: the reason we don't is that it will make circular dependency between the dep resolver and the dev files aspect\n const devFiles = await DependencyResolver.getDevFiles(component.state._consumer);\n let devMissings: string[] = [];\n let runtimeMissings: string[] = [];\n Object.entries(missingPackagesData).forEach(([fileName, packages]) => {\n if (devFiles.includes(fileName)) {\n devMissings = uniq([...devMissings, ...packages]);\n } else {\n runtimeMissings = uniq([...runtimeMissings, ...packages]);\n }\n });\n // Remove dev missing which are also runtime missing\n devMissings = difference(devMissings, runtimeMissings);\n return {\n devMissings,\n runtimeMissings,\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { VariantPolicyEntry, VariantPolicy, VariantPolicyConfigObject } from '../variant-policy';
|
|
1
|
+
import { VariantPolicyEntry, VariantPolicy, VariantPolicyConfigObject, VariantPolicyFromConfigObjectOptions } from '../variant-policy';
|
|
2
2
|
declare type EnvJsoncPolicyEntry = {
|
|
3
3
|
name: string;
|
|
4
4
|
version: string;
|
|
@@ -29,7 +29,7 @@ export declare type EnvPolicyConfigObject = EnvPolicyEnvJsoncConfigObject | EnvP
|
|
|
29
29
|
export declare class EnvPolicy extends VariantPolicy {
|
|
30
30
|
readonly selfPolicy: VariantPolicy;
|
|
31
31
|
constructor(_policiesEntries: VariantPolicyEntry[], selfPolicy: VariantPolicy);
|
|
32
|
-
static fromConfigObject(configObject: any): EnvPolicy;
|
|
32
|
+
static fromConfigObject(configObject: any, { includeLegacyPeersInSelfPolicy }?: VariantPolicyFromConfigObjectOptions): EnvPolicy;
|
|
33
33
|
static getEmpty(): EnvPolicy;
|
|
34
34
|
}
|
|
35
35
|
export {};
|
|
@@ -27,14 +27,21 @@ class EnvPolicy extends _variantPolicy().VariantPolicy {
|
|
|
27
27
|
super(_policiesEntries);
|
|
28
28
|
this.selfPolicy = selfPolicy;
|
|
29
29
|
}
|
|
30
|
-
static fromConfigObject(configObject
|
|
30
|
+
static fromConfigObject(configObject, {
|
|
31
|
+
includeLegacyPeersInSelfPolicy
|
|
32
|
+
} = {}) {
|
|
31
33
|
(0, _validateEnvPolicy().validateEnvPolicyConfigObject)(configObject);
|
|
32
34
|
|
|
33
35
|
/**
|
|
34
36
|
* Calculate the policy for the env itself.
|
|
35
37
|
* Always force it for the env itself
|
|
36
38
|
*/
|
|
37
|
-
|
|
39
|
+
let selfPeersEntries;
|
|
40
|
+
if (includeLegacyPeersInSelfPolicy && !configObject.peers && configObject.peerDependencies) {
|
|
41
|
+
selfPeersEntries = handleLegacyPeers(configObject);
|
|
42
|
+
} else {
|
|
43
|
+
selfPeersEntries = entriesFromKey(configObject, 'peers', 'version', 'runtime', 'env-own', true);
|
|
44
|
+
}
|
|
38
45
|
const selfPolicy = _variantPolicy().VariantPolicy.fromArray(selfPeersEntries);
|
|
39
46
|
|
|
40
47
|
/**
|
|
@@ -42,7 +49,11 @@ class EnvPolicy extends _variantPolicy().VariantPolicy {
|
|
|
42
49
|
* when we used to configure dependencies, devDependencies, peerDependencies as objects of dependencyId: version
|
|
43
50
|
* Those were always forced on the components as visible dependencies.
|
|
44
51
|
*/
|
|
45
|
-
const legacyPolicy = _variantPolicy().VariantPolicy.fromConfigObject(configObject,
|
|
52
|
+
const legacyPolicy = _variantPolicy().VariantPolicy.fromConfigObject(configObject, {
|
|
53
|
+
source: 'env',
|
|
54
|
+
force: true,
|
|
55
|
+
hidden: false
|
|
56
|
+
});
|
|
46
57
|
const componentPeersEntries = entriesFromKey(configObject, 'peers', 'supportedRange', 'peer', 'env');
|
|
47
58
|
const otherKeyNames = ['dev', 'runtime'];
|
|
48
59
|
const otherEntries = otherKeyNames.reduce((acc, keyName) => {
|
|
@@ -58,6 +69,15 @@ class EnvPolicy extends _variantPolicy().VariantPolicy {
|
|
|
58
69
|
}
|
|
59
70
|
}
|
|
60
71
|
exports.EnvPolicy = EnvPolicy;
|
|
72
|
+
function handleLegacyPeers(configObject) {
|
|
73
|
+
if (!configObject.peerDependencies) {
|
|
74
|
+
return [];
|
|
75
|
+
}
|
|
76
|
+
const entries = Object.entries(configObject.peerDependencies).map(([packageName, version]) => {
|
|
77
|
+
return (0, _variantPolicy().createVariantPolicyEntry)(packageName, version, 'runtime', 'env-own', false, true);
|
|
78
|
+
});
|
|
79
|
+
return entries;
|
|
80
|
+
}
|
|
61
81
|
function entriesFromKey(configObject, keyName, versionKey = 'version', lifecycleType, source = 'env', force) {
|
|
62
82
|
const configEntries = configObject[keyName];
|
|
63
83
|
if (!configEntries) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_validateEnvPolicy","data","require","_variantPolicy","EnvPolicy","VariantPolicy","constructor","_policiesEntries","selfPolicy","fromConfigObject","configObject","validateEnvPolicyConfigObject","selfPeersEntries","entriesFromKey","fromArray","legacyPolicy","componentPeersEntries","otherKeyNames","otherEntries","reduce","acc","keyName","currEntries","concat","newPolicy","finalComponentPolicy","mergePolices","entries","getEmpty","exports","
|
|
1
|
+
{"version":3,"names":["_validateEnvPolicy","data","require","_variantPolicy","EnvPolicy","VariantPolicy","constructor","_policiesEntries","selfPolicy","fromConfigObject","configObject","includeLegacyPeersInSelfPolicy","validateEnvPolicyConfigObject","selfPeersEntries","peers","peerDependencies","handleLegacyPeers","entriesFromKey","fromArray","legacyPolicy","source","force","hidden","componentPeersEntries","otherKeyNames","otherEntries","reduce","acc","keyName","currEntries","concat","newPolicy","finalComponentPolicy","mergePolices","entries","getEmpty","exports","Object","map","packageName","version","createVariantPolicyEntry","versionKey","lifecycleType","configEntries","entry","name"],"sources":["env-policy.ts"],"sourcesContent":["import { validateEnvPolicyConfigObject } from './validate-env-policy';\nimport {\n createVariantPolicyEntry,\n DependencySource,\n VariantPolicyEntry,\n VariantPolicy,\n VariantPolicyConfigObject,\n VariantPolicyFromConfigObjectOptions,\n} from '../variant-policy';\nimport { DependencyLifecycleType } from '../../dependencies';\n\ntype EnvJsoncPolicyEntry = {\n name: string;\n version: string;\n /**\n * hide the dependency from the component's package.json / dependencies list\n */\n hidden?: boolean;\n /**\n * force add to component dependencies even if it's not used by the component.\n */\n force?: boolean;\n};\n\nexport type EnvJsoncPolicyPeerEntry = EnvJsoncPolicyEntry & {\n supportedRange: string;\n};\n\nexport type VersionKeyName = 'version' | 'supportedRange';\n\nexport type EnvJsoncPolicyConfigKey = 'peers' | 'dev' | 'runtime';\n\nexport type EnvPolicyEnvJsoncConfigObject = {\n peers?: EnvJsoncPolicyPeerEntry[];\n dev?: EnvJsoncPolicyEntry[];\n runtime?: EnvJsoncPolicyEntry[];\n};\n\n/**\n * Config that is used before the new env.jsonc format was introduced.\n */\nexport type EnvPolicyLegacyConfigObject = Pick<EnvPolicyEnvJsoncConfigObject, 'peers'> & VariantPolicyConfigObject;\n\nexport type EnvPolicyConfigObject = EnvPolicyEnvJsoncConfigObject | EnvPolicyLegacyConfigObject;\n\nexport class EnvPolicy extends VariantPolicy {\n constructor(_policiesEntries: VariantPolicyEntry[], readonly selfPolicy: VariantPolicy) {\n super(_policiesEntries);\n }\n\n static fromConfigObject(\n configObject,\n { includeLegacyPeersInSelfPolicy }: VariantPolicyFromConfigObjectOptions = {}\n ): EnvPolicy {\n validateEnvPolicyConfigObject(configObject);\n\n /**\n * Calculate the policy for the env itself.\n * Always force it for the env itself\n */\n let selfPeersEntries: VariantPolicyEntry[];\n if (includeLegacyPeersInSelfPolicy && !configObject.peers && configObject.peerDependencies) {\n selfPeersEntries = handleLegacyPeers(configObject);\n } else {\n selfPeersEntries = entriesFromKey(configObject, 'peers', 'version', 'runtime', 'env-own', true);\n }\n const selfPolicy = VariantPolicy.fromArray(selfPeersEntries);\n\n /**\n * Legacy policy used by the old getDependencies function on the env aspect.\n * when we used to configure dependencies, devDependencies, peerDependencies as objects of dependencyId: version\n * Those were always forced on the components as visible dependencies.\n */\n const legacyPolicy = VariantPolicy.fromConfigObject(configObject, { source: 'env', force: true, hidden: false });\n const componentPeersEntries = entriesFromKey(configObject, 'peers', 'supportedRange', 'peer', 'env');\n const otherKeyNames: EnvJsoncPolicyConfigKey[] = ['dev', 'runtime'];\n const otherEntries: VariantPolicyEntry[] = otherKeyNames.reduce(\n (acc: VariantPolicyEntry[], keyName: EnvJsoncPolicyConfigKey) => {\n const currEntries = entriesFromKey(configObject, keyName, 'version', keyName as DependencyLifecycleType, 'env');\n return acc.concat(currEntries);\n },\n []\n );\n const newPolicy = VariantPolicy.fromArray(componentPeersEntries.concat(otherEntries));\n const finalComponentPolicy = VariantPolicy.mergePolices([legacyPolicy, newPolicy]);\n return new EnvPolicy(finalComponentPolicy.entries, selfPolicy);\n }\n\n static getEmpty(): EnvPolicy {\n return new EnvPolicy([], VariantPolicy.getEmpty());\n }\n}\n\nfunction handleLegacyPeers(configObject: VariantPolicyConfigObject): VariantPolicyEntry[] {\n if (!configObject.peerDependencies) {\n return [];\n }\n const entries = Object.entries(configObject.peerDependencies).map(([packageName, version]) => {\n return createVariantPolicyEntry(packageName, version, 'runtime', 'env-own', false, true);\n });\n return entries;\n}\n\nfunction entriesFromKey(\n configObject: VariantPolicyConfigObject,\n keyName: EnvJsoncPolicyConfigKey,\n versionKey: VersionKeyName = 'version',\n lifecycleType: DependencyLifecycleType,\n source: DependencySource = 'env',\n force?: boolean\n): VariantPolicyEntry[] {\n const configEntries: Array<EnvJsoncPolicyPeerEntry | EnvJsoncPolicyEntry> = configObject[keyName];\n if (!configEntries) {\n return [];\n }\n const entries = configEntries.map((entry) => {\n return createVariantPolicyEntry(\n entry.name,\n entry[versionKey],\n lifecycleType,\n source,\n entry.hidden,\n // allow override the entry's force value (used for the env itself)\n force ?? !!entry.force\n );\n });\n return entries;\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { VariantPolicy, VariantPolicyConfigObject, SerializedVariantPolicy, VariantPolicyEntry, createVariantPolicyEntry, DependencySource, } from './variant-policy';
|
|
1
|
+
export { VariantPolicy, VariantPolicyConfigObject, VariantPolicyFromConfigObjectOptions, SerializedVariantPolicy, VariantPolicyEntry, createVariantPolicyEntry, DependencySource, } from './variant-policy';
|
|
@@ -33,6 +33,12 @@ Object.defineProperty(exports, "VariantPolicyEntry", {
|
|
|
33
33
|
return _variantPolicy().VariantPolicyEntry;
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
+
Object.defineProperty(exports, "VariantPolicyFromConfigObjectOptions", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _variantPolicy().VariantPolicyFromConfigObjectOptions;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
36
42
|
Object.defineProperty(exports, "createVariantPolicyEntry", {
|
|
37
43
|
enumerable: true,
|
|
38
44
|
get: function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_variantPolicy","data","require"],"sources":["index.ts"],"sourcesContent":["export {\n VariantPolicy,\n VariantPolicyConfigObject,\n SerializedVariantPolicy,\n VariantPolicyEntry,\n createVariantPolicyEntry,\n DependencySource,\n} from './variant-policy';\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_variantPolicy","data","require"],"sources":["index.ts"],"sourcesContent":["export {\n VariantPolicy,\n VariantPolicyConfigObject,\n VariantPolicyFromConfigObjectOptions,\n SerializedVariantPolicy,\n VariantPolicyEntry,\n createVariantPolicyEntry,\n DependencySource,\n} from './variant-policy';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAAA,eAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,cAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA"}
|
|
@@ -29,6 +29,12 @@ export declare type VariantPolicyEntry = PolicyEntry & {
|
|
|
29
29
|
};
|
|
30
30
|
export declare type SerializedVariantPolicyEntry = VariantPolicyEntry;
|
|
31
31
|
export declare type SerializedVariantPolicy = SerializedVariantPolicyEntry[];
|
|
32
|
+
export interface VariantPolicyFromConfigObjectOptions {
|
|
33
|
+
includeLegacyPeersInSelfPolicy?: boolean;
|
|
34
|
+
source?: DependencySource;
|
|
35
|
+
hidden?: boolean;
|
|
36
|
+
force?: boolean;
|
|
37
|
+
}
|
|
32
38
|
export declare class VariantPolicy implements Policy<VariantPolicyConfigObject> {
|
|
33
39
|
private _policiesEntries;
|
|
34
40
|
constructor(_policiesEntries: VariantPolicyEntry[]);
|
|
@@ -70,7 +76,7 @@ export declare class VariantPolicy implements Policy<VariantPolicyConfigObject>
|
|
|
70
76
|
*/
|
|
71
77
|
toLegacyAutoDetectOverrides(): DependenciesOverridesData;
|
|
72
78
|
toLegacyDepsOverrides(): DependenciesOverridesData;
|
|
73
|
-
static fromConfigObject(configObject: any, source
|
|
79
|
+
static fromConfigObject(configObject: any, { source, hidden, force }?: VariantPolicyFromConfigObjectOptions): VariantPolicy;
|
|
74
80
|
static fromArray(entries: VariantPolicyEntry[]): VariantPolicy;
|
|
75
81
|
static parse(serializedEntries: SerializedVariantPolicy): VariantPolicy;
|
|
76
82
|
static getEmpty(): VariantPolicy;
|
|
@@ -187,7 +187,11 @@ class VariantPolicy {
|
|
|
187
187
|
}, res);
|
|
188
188
|
return res;
|
|
189
189
|
}
|
|
190
|
-
static fromConfigObject(configObject,
|
|
190
|
+
static fromConfigObject(configObject, {
|
|
191
|
+
source,
|
|
192
|
+
hidden,
|
|
193
|
+
force
|
|
194
|
+
} = {}) {
|
|
191
195
|
const runtimeEntries = entriesFromKey(configObject, 'dependencies', source, hidden, force);
|
|
192
196
|
const devEntries = entriesFromKey(configObject, 'devDependencies', source, hidden, force);
|
|
193
197
|
const peerEntries = entriesFromKey(configObject, 'peerDependencies', source, hidden, force);
|