@teambit/dependency-resolver 0.0.1124 → 0.0.1126

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.
@@ -138,36 +138,51 @@ XXXX
138
138
  });
139
139
  });
140
140
  describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
141
- const packageManagerSlot = {
142
- // @ts-ignore
143
- get: () => ({
144
- resolveRemoteVersion: spec => {
145
- if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');
146
- return {
147
- version: {
148
- 'root-runtime-dep1@latest': '2.0.0',
149
- 'root-peer-dep1@latest': '2.0.0',
150
- 'variant1-runtime-dep1@latest': '2.0.0',
151
- 'variant1-runtime-dep3@latest': '2.0.0',
152
- 'variant1-dev-dep1@latest': '2.0.0',
153
- 'variant1-dev-dep3@latest': '2.0.0',
154
- 'variant1-peer-dep1@latest': '2.0.0',
155
- 'variant1-peer-dep3@latest': '2.0.0',
156
- 'component1-runtime-dep1@latest': '2.0.0',
157
- 'component1-runtime-dep3@latest': '2.0.0',
158
- 'component1-dev-dep1@latest': '2.0.0',
159
- 'component1-dev-dep3@latest': '2.0.0',
160
- 'component1-peer-dep1@latest': '2.0.0',
161
- 'component1-peer-dep3@latest': '2.0.0',
162
- 'pkg-with-old-latest@latest': '0.0.0'
163
- }[spec]
164
- };
165
- },
166
- getNetworkConfig: () => ({})
167
- })
168
- };
169
- const depResolver = new (_dependencyResolverMain().DependencyResolverMain)({
170
- policy: {
141
+ function createDependencyResolverMain(resolveRemoteVersion, policy) {
142
+ const packageManagerSlot = {
143
+ // @ts-ignore
144
+ get: () => ({
145
+ resolveRemoteVersion,
146
+ getNetworkConfig: () => ({})
147
+ })
148
+ };
149
+ return new (_dependencyResolverMain().DependencyResolverMain)({
150
+ policy
151
+ }, {}, {}, {}, {
152
+ // @ts-ignore
153
+ debug: jest.fn(),
154
+ // @ts-ignore
155
+ setStatusLine: jest.fn(),
156
+ // @ts-ignore
157
+ consoleSuccess: jest.fn()
158
+ }, {}, {}, {
159
+ getSync: () => false
160
+ }, {}, packageManagerSlot, {}, {}, {});
161
+ }
162
+ describe('without options', () => {
163
+ function resolveRemoteVersion(spec) {
164
+ if (spec === 'cannot-resolve@latest') throw new Error('Cannot resolve latest');
165
+ return {
166
+ version: {
167
+ 'root-runtime-dep1@latest': '2.0.0',
168
+ 'root-peer-dep1@latest': '2.0.0',
169
+ 'variant1-runtime-dep1@latest': '2.0.0',
170
+ 'variant1-runtime-dep3@latest': '2.0.0',
171
+ 'variant1-dev-dep1@latest': '2.0.0',
172
+ 'variant1-dev-dep3@latest': '2.0.0',
173
+ 'variant1-peer-dep1@latest': '2.0.0',
174
+ 'variant1-peer-dep3@latest': '2.0.0',
175
+ 'component1-runtime-dep1@latest': '2.0.0',
176
+ 'component1-runtime-dep3@latest': '2.0.0',
177
+ 'component1-dev-dep1@latest': '2.0.0',
178
+ 'component1-dev-dep3@latest': '2.0.0',
179
+ 'component1-peer-dep1@latest': '2.0.0',
180
+ 'component1-peer-dep3@latest': '2.0.0',
181
+ 'pkg-with-old-latest@latest': '0.0.0'
182
+ }[spec]
183
+ };
184
+ }
185
+ const policy = {
171
186
  dependencies: {
172
187
  'root-runtime-dep1': '1.0.0',
173
188
  'root-runtime-dep2': '1.0.0'
@@ -176,120 +191,212 @@ describe('DepenendencyResolverMain.getOutdatedPkgsFromPolicies()', () => {
176
191
  'root-peer-dep1': '1.0.0',
177
192
  'root-peer-dep2': '1.0.0'
178
193
  }
179
- }
180
- }, {}, {}, {}, {
181
- // @ts-ignore
182
- debug: jest.fn(),
183
- // @ts-ignore
184
- setStatusLine: jest.fn(),
185
- // @ts-ignore
186
- consoleSuccess: jest.fn()
187
- }, {}, {}, {
188
- getSync: () => false
189
- }, {}, packageManagerSlot, {}, {}, {});
190
- it('should return outdated dependencies', async () => {
191
- const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({
192
- rootDir: '',
193
- variantPoliciesByPatterns: {
194
- '{variant1/*}': {
195
- dependencies: {
196
- 'variant1-runtime-dep1': '1.0.0',
197
- 'variant1-runtime-dep2': '1.0.0',
198
- 'variant1-runtime-dep3': '-'
199
- },
200
- devDependencies: {
201
- 'variant1-dev-dep1': '1.0.0',
202
- 'variant1-dev-dep2': '1.0.0',
203
- 'variant1-dev-dep3': '-'
204
- },
205
- peerDependencies: {
206
- 'variant1-peer-dep1': '1.0.0',
207
- 'variant1-peer-dep2': '1.0.0',
208
- 'variant1-peer-dep3': '-'
194
+ };
195
+ const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);
196
+ it('should return outdated dependencies', async () => {
197
+ const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({
198
+ rootDir: '',
199
+ variantPoliciesByPatterns: {
200
+ '{variant1/*}': {
201
+ dependencies: {
202
+ 'variant1-runtime-dep1': '1.0.0',
203
+ 'variant1-runtime-dep2': '1.0.0',
204
+ 'variant1-runtime-dep3': '-'
205
+ },
206
+ devDependencies: {
207
+ 'variant1-dev-dep1': '1.0.0',
208
+ 'variant1-dev-dep2': '1.0.0',
209
+ 'variant1-dev-dep3': '-'
210
+ },
211
+ peerDependencies: {
212
+ 'variant1-peer-dep1': '1.0.0',
213
+ 'variant1-peer-dep2': '1.0.0',
214
+ 'variant1-peer-dep3': '-'
215
+ }
209
216
  }
210
- }
211
- },
212
- componentPoliciesById: {
213
- component1: {
214
- dependencies: {
215
- 'pkg-with-old-latest': '1.0.0',
216
- 'cannot-resolve': '1.0.0',
217
- 'component1-runtime-dep1': '1.0.0',
218
- 'component1-runtime-dep2': '1.0.0',
219
- 'component1-runtime-dep3': '-'
220
- },
221
- devDependencies: {
222
- 'component1-dev-dep1': '1.0.0',
223
- 'component1-dev-dep2': '1.0.0',
224
- 'component1-dev-dep3': '-'
225
- },
226
- peerDependencies: {
227
- 'component1-peer-dep1': '1.0.0',
228
- 'component1-peer-dep2': '1.0.0',
229
- 'component1-peer-dep3': '-'
217
+ },
218
+ componentPoliciesById: {
219
+ component1: {
220
+ dependencies: {
221
+ 'pkg-with-old-latest': '1.0.0',
222
+ 'cannot-resolve': '1.0.0',
223
+ 'component1-runtime-dep1': '1.0.0',
224
+ 'component1-runtime-dep2': '1.0.0',
225
+ 'component1-runtime-dep3': '-'
226
+ },
227
+ devDependencies: {
228
+ 'component1-dev-dep1': '1.0.0',
229
+ 'component1-dev-dep2': '1.0.0',
230
+ 'component1-dev-dep3': '-'
231
+ },
232
+ peerDependencies: {
233
+ 'component1-peer-dep1': '1.0.0',
234
+ 'component1-peer-dep2': '1.0.0',
235
+ 'component1-peer-dep3': '-'
236
+ }
230
237
  }
231
- }
232
- },
233
- components: []
238
+ },
239
+ components: []
240
+ });
241
+ // @ts-ignore
242
+ expect(outdatedPkgs).toStrictEqual([{
243
+ currentRange: '1.0.0',
244
+ latestRange: '2.0.0',
245
+ name: 'root-runtime-dep1',
246
+ source: 'rootPolicy',
247
+ variantPattern: null,
248
+ targetField: 'dependencies'
249
+ }, {
250
+ currentRange: '1.0.0',
251
+ latestRange: '2.0.0',
252
+ name: 'root-peer-dep1',
253
+ source: 'rootPolicy',
254
+ variantPattern: null,
255
+ targetField: 'peerDependencies'
256
+ }, {
257
+ currentRange: '1.0.0',
258
+ latestRange: '2.0.0',
259
+ name: 'variant1-runtime-dep1',
260
+ source: 'variants',
261
+ variantPattern: '{variant1/*}',
262
+ targetField: 'dependencies'
263
+ }, {
264
+ currentRange: '1.0.0',
265
+ latestRange: '2.0.0',
266
+ name: 'variant1-dev-dep1',
267
+ source: 'variants',
268
+ variantPattern: '{variant1/*}',
269
+ targetField: 'devDependencies'
270
+ }, {
271
+ currentRange: '1.0.0',
272
+ latestRange: '2.0.0',
273
+ name: 'variant1-peer-dep1',
274
+ source: 'variants',
275
+ variantPattern: '{variant1/*}',
276
+ targetField: 'peerDependencies'
277
+ }, {
278
+ currentRange: '1.0.0',
279
+ latestRange: '2.0.0',
280
+ name: 'component1-runtime-dep1',
281
+ source: 'component',
282
+ componentId: 'component1',
283
+ targetField: 'dependencies'
284
+ }, {
285
+ currentRange: '1.0.0',
286
+ latestRange: '2.0.0',
287
+ name: 'component1-dev-dep1',
288
+ source: 'component',
289
+ componentId: 'component1',
290
+ targetField: 'devDependencies'
291
+ }, {
292
+ currentRange: '1.0.0',
293
+ latestRange: '2.0.0',
294
+ name: 'component1-peer-dep1',
295
+ source: 'component',
296
+ componentId: 'component1',
297
+ targetField: 'peerDependencies'
298
+ }]);
299
+ });
300
+ });
301
+ describe('forced version bump', () => {
302
+ function resolveRemoteVersion(spec) {
303
+ return {
304
+ version: {
305
+ 'dep1@>=0.0.1 <0.1.0': '0.0.2',
306
+ 'dep1@>=0.0.1 <1.0.0': '0.0.2',
307
+ 'dep1@latest': '0.0.2',
308
+ 'dep2@>=0.1.0 <0.2.0': '0.1.0',
309
+ 'dep2@>=0.1.0 <1.0.0': '0.2.0',
310
+ 'dep2@latest': '0.2.0',
311
+ 'dep3@>=1.0.0 <1.1.0': '1.0.0',
312
+ 'dep3@>=1.0.0 <2.0.0': '1.0.0',
313
+ 'dep3@latest': '2.0.0'
314
+ }[spec]
315
+ };
316
+ }
317
+ const policy = {
318
+ dependencies: {
319
+ dep1: '0.0.1',
320
+ dep2: '^0.1.0',
321
+ dep3: '^1.0.0'
322
+ }
323
+ };
324
+ const depResolver = createDependencyResolverMain(resolveRemoteVersion, policy);
325
+ it('should return outdated dependencies when forcedVersionBump is set to patch', async () => {
326
+ const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({
327
+ rootDir: '',
328
+ variantPoliciesByPatterns: {},
329
+ componentPoliciesById: {},
330
+ components: [],
331
+ forceVersionBump: 'patch'
332
+ });
333
+ // @ts-ignore
334
+ expect(outdatedPkgs).toStrictEqual([{
335
+ currentRange: '0.0.1',
336
+ latestRange: '0.0.2',
337
+ name: 'dep1',
338
+ source: 'rootPolicy',
339
+ variantPattern: null,
340
+ targetField: 'dependencies'
341
+ }]);
342
+ });
343
+ it('should return outdated dependencies when forcedVersionBump is set to minor', async () => {
344
+ const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({
345
+ rootDir: '',
346
+ variantPoliciesByPatterns: {},
347
+ componentPoliciesById: {},
348
+ components: [],
349
+ forceVersionBump: 'minor'
350
+ });
351
+ // @ts-ignore
352
+ expect(outdatedPkgs).toStrictEqual([{
353
+ currentRange: '0.0.1',
354
+ latestRange: '0.0.2',
355
+ name: 'dep1',
356
+ source: 'rootPolicy',
357
+ variantPattern: null,
358
+ targetField: 'dependencies'
359
+ }, {
360
+ currentRange: '^0.1.0',
361
+ latestRange: '^0.2.0',
362
+ name: 'dep2',
363
+ source: 'rootPolicy',
364
+ variantPattern: null,
365
+ targetField: 'dependencies'
366
+ }]);
367
+ });
368
+ it('should return outdated dependencies when forcedVersionBump is set to major', async () => {
369
+ const outdatedPkgs = await depResolver.getOutdatedPkgsFromPolicies({
370
+ rootDir: '',
371
+ variantPoliciesByPatterns: {},
372
+ componentPoliciesById: {},
373
+ components: [],
374
+ forceVersionBump: 'major'
375
+ });
376
+ // @ts-ignore
377
+ expect(outdatedPkgs).toStrictEqual([{
378
+ currentRange: '0.0.1',
379
+ latestRange: '0.0.2',
380
+ name: 'dep1',
381
+ source: 'rootPolicy',
382
+ variantPattern: null,
383
+ targetField: 'dependencies'
384
+ }, {
385
+ currentRange: '^0.1.0',
386
+ latestRange: '^0.2.0',
387
+ name: 'dep2',
388
+ source: 'rootPolicy',
389
+ variantPattern: null,
390
+ targetField: 'dependencies'
391
+ }, {
392
+ currentRange: '^1.0.0',
393
+ latestRange: '^2.0.0',
394
+ name: 'dep3',
395
+ source: 'rootPolicy',
396
+ variantPattern: null,
397
+ targetField: 'dependencies'
398
+ }]);
234
399
  });
235
- // @ts-ignore
236
- expect(outdatedPkgs).toStrictEqual([{
237
- currentRange: '1.0.0',
238
- latestRange: '2.0.0',
239
- name: 'root-runtime-dep1',
240
- source: 'rootPolicy',
241
- variantPattern: null,
242
- targetField: 'dependencies'
243
- }, {
244
- currentRange: '1.0.0',
245
- latestRange: '2.0.0',
246
- name: 'root-peer-dep1',
247
- source: 'rootPolicy',
248
- variantPattern: null,
249
- targetField: 'peerDependencies'
250
- }, {
251
- currentRange: '1.0.0',
252
- latestRange: '2.0.0',
253
- name: 'variant1-runtime-dep1',
254
- source: 'variants',
255
- variantPattern: '{variant1/*}',
256
- targetField: 'dependencies'
257
- }, {
258
- currentRange: '1.0.0',
259
- latestRange: '2.0.0',
260
- name: 'variant1-dev-dep1',
261
- source: 'variants',
262
- variantPattern: '{variant1/*}',
263
- targetField: 'devDependencies'
264
- }, {
265
- currentRange: '1.0.0',
266
- latestRange: '2.0.0',
267
- name: 'variant1-peer-dep1',
268
- source: 'variants',
269
- variantPattern: '{variant1/*}',
270
- targetField: 'peerDependencies'
271
- }, {
272
- currentRange: '1.0.0',
273
- latestRange: '2.0.0',
274
- name: 'component1-runtime-dep1',
275
- source: 'component',
276
- componentId: 'component1',
277
- targetField: 'dependencies'
278
- }, {
279
- currentRange: '1.0.0',
280
- latestRange: '2.0.0',
281
- name: 'component1-dev-dep1',
282
- source: 'component',
283
- componentId: 'component1',
284
- targetField: 'devDependencies'
285
- }, {
286
- currentRange: '1.0.0',
287
- latestRange: '2.0.0',
288
- name: 'component1-peer-dep1',
289
- source: 'component',
290
- componentId: 'component1',
291
- targetField: 'peerDependencies'
292
- }]);
293
400
  });
294
401
  });
295
402
  describe('DepenendencyResolverMain.getComponentEnvPolicyFromEnv()', () => {
@@ -1 +1 @@
1
- {"version":3,"names":["_path","data","_interopRequireDefault","require","_http","_dependencyResolverMain","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","resolveRemoteVersion","spec","Error","version","policy","dependencies","peerDependencies","setStatusLine","consoleSuccess","getSync","outdatedPkgs","getOutdatedPkgsFromPolicies","rootDir","variantPoliciesByPatterns","devDependencies","componentPoliciesById","component1","components","currentRange","latestRange","name","source","variantPattern","targetField","componentId","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 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 const packageManagerSlot = {\n // @ts-ignore\n get: () => ({\n resolveRemoteVersion: (spec: string) => {\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 getNetworkConfig: () => ({}),\n }),\n };\n const depResolver = new DependencyResolverMain(\n {\n 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 } 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 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 componentPoliciesById: {\n component1: {\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 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: '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: '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: 'component1',\n targetField: 'peerDependencies',\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":["_path","data","_interopRequireDefault","require","_http","_dependencyResolverMain","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","componentPoliciesById","component1","components","currentRange","latestRange","name","source","variantPattern","targetField","componentId","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 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 componentPoliciesById: {\n component1: {\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 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: '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: '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: '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 componentPoliciesById: {},\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 componentPoliciesById: {},\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 componentPoliciesById: {},\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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"}
@@ -21,6 +21,7 @@ export declare type CreateFromComponentsOptions = {
21
21
  resolveVersionsFromDependenciesOnly?: boolean;
22
22
  referenceLocalPackages?: boolean;
23
23
  hasRootComponents?: boolean;
24
+ excludeExtensionsDependencies?: boolean;
24
25
  };
25
26
  export declare class WorkspaceManifestFactory {
26
27
  private dependencyResolver;
@@ -112,7 +112,8 @@ const DEFAULT_CREATE_OPTIONS = {
112
112
  filterComponentsFromManifests: true,
113
113
  createManifestForComponentsWithoutDependencies: true,
114
114
  dedupe: true,
115
- resolveVersionsFromDependenciesOnly: false
115
+ resolveVersionsFromDependenciesOnly: false,
116
+ excludeExtensionsDependencies: false
116
117
  };
117
118
  class WorkspaceManifestFactory {
118
119
  constructor(dependencyResolver, aspectLoader) {
@@ -128,6 +129,7 @@ class WorkspaceManifestFactory {
128
129
  filterComponentsFromManifests: optsWithDefaults.filterComponentsFromManifests,
129
130
  rootPolicy: optsWithDefaults.resolveVersionsFromDependenciesOnly ? undefined : rootPolicy,
130
131
  dependencyFilterFn: optsWithDefaults.dependencyFilterFn,
132
+ excludeExtensionsDependencies: optsWithDefaults.excludeExtensionsDependencies,
131
133
  referenceLocalPackages: optsWithDefaults.referenceLocalPackages && hasRootComponents,
132
134
  rootDependencies: hasRootComponents ? rootPolicy.toManifest().dependencies : undefined
133
135
  });
@@ -177,6 +179,7 @@ class WorkspaceManifestFactory {
177
179
  async buildComponentDependenciesMap(components, {
178
180
  dependencyFilterFn,
179
181
  filterComponentsFromManifests,
182
+ excludeExtensionsDependencies,
180
183
  referenceLocalPackages,
181
184
  rootDependencies,
182
185
  rootPolicy
@@ -203,6 +206,9 @@ class WorkspaceManifestFactory {
203
206
  if (filterComponentsFromManifests !== null && filterComponentsFromManifests !== void 0 ? filterComponentsFromManifests : true) {
204
207
  depList = filterComponents(depList, components);
205
208
  }
209
+ if (excludeExtensionsDependencies) {
210
+ depList = filterExtensions(depList);
211
+ }
206
212
  // Remove bit bin from dep list
207
213
  depList = depList.filter(dep => dep.id !== '@teambit/legacy');
208
214
  if (dependencyFilterFn) {
@@ -289,6 +295,15 @@ class WorkspaceManifestFactory {
289
295
  }
290
296
  }
291
297
  exports.WorkspaceManifestFactory = WorkspaceManifestFactory;
298
+ function filterExtensions(dependencyList) {
299
+ const filtered = dependencyList.filter(dep => {
300
+ if (!(dep instanceof _dependencies().ComponentDependency)) {
301
+ return true;
302
+ }
303
+ return !dep.isExtension;
304
+ });
305
+ return filtered;
306
+ }
292
307
  function filterComponents(dependencyList, componentsToFilterOut) {
293
308
  const filtered = dependencyList.filter(dep => {
294
309
  if (!(dep instanceof _dependencies().ComponentDependency)) {