@teambit/dependency-resolver 1.0.71 → 1.0.72
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/dependency-list-factory.ts +8 -6
- package/dist/dependencies/dependency-list-factory.js +3 -3
- package/dist/dependencies/dependency-list-factory.js.map +1 -1
- package/dist/manifest/workspace-manifest-factory.js +8 -15
- package/dist/manifest/workspace-manifest-factory.js.map +1 -1
- package/dist/{preview-1701384167361.js → preview-1701486939259.js} +2 -2
- package/manifest/workspace-manifest-factory.ts +10 -9
- package/package.json +16 -16
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import mapSeries from 'p-map-series';
|
|
2
|
-
import {
|
|
2
|
+
import type { MissingPackagesData } from '@teambit/component-issues';
|
|
3
|
+
import { get } from 'lodash';
|
|
3
4
|
import LegacyComponent from '@teambit/legacy/dist/consumer/component';
|
|
4
5
|
import { DependencyFactory } from './dependency-factory';
|
|
5
6
|
import { SerializedDependency } from './dependency';
|
|
@@ -47,12 +48,13 @@ export class DependencyListFactory {
|
|
|
47
48
|
* @param legacyComponent
|
|
48
49
|
*/
|
|
49
50
|
private async getMissingDependenciesByComponentFromModel(legacyComponent: LegacyComponent): Promise<DependencyList> {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
// Use getIssueByName to prevent issues when getting different instances while using both bit from bvm and from the repo
|
|
52
|
+
const missingData = (legacyComponent.issues.getIssueByName('MissingPackagesDependenciesOnFs')?.data ||
|
|
53
|
+
[]) as MissingPackagesData[];
|
|
54
|
+
|
|
55
|
+
const missingPackages: string[] = missingData.map((d) => d.missingPackages).flat();
|
|
54
56
|
const componentFromModel = legacyComponent.componentFromModel;
|
|
55
|
-
if (!missingPackages
|
|
57
|
+
if (!missingPackages.length || !componentFromModel) {
|
|
56
58
|
return DependencyList.fromArray([]);
|
|
57
59
|
}
|
|
58
60
|
// All deps defined in model
|
|
@@ -81,11 +81,11 @@ class DependencyListFactory {
|
|
|
81
81
|
*/
|
|
82
82
|
async getMissingDependenciesByComponentFromModel(legacyComponent) {
|
|
83
83
|
var _legacyComponent$issu;
|
|
84
|
-
const missingPackages = (0, _lodash().flatten)(
|
|
85
84
|
// Use getIssueByName to prevent issues when getting different instances while using both bit from bvm and from the repo
|
|
86
|
-
|
|
85
|
+
const missingData = ((_legacyComponent$issu = legacyComponent.issues.getIssueByName('MissingPackagesDependenciesOnFs')) === null || _legacyComponent$issu === void 0 ? void 0 : _legacyComponent$issu.data) || [];
|
|
86
|
+
const missingPackages = missingData.map(d => d.missingPackages).flat();
|
|
87
87
|
const componentFromModel = legacyComponent.componentFromModel;
|
|
88
|
-
if (!missingPackages
|
|
88
|
+
if (!missingPackages.length || !componentFromModel) {
|
|
89
89
|
return _dependencyList().DependencyList.fromArray([]);
|
|
90
90
|
}
|
|
91
91
|
// All deps defined in model
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_lodash","_dependencyList","_exceptions","_dependencyResolver","obj","__esModule","default","DependencyListFactory","constructor","factories","fromSerializedDependencies","serializedDependencies","dependencies","mapSeries","serializedDependency","type","__type","factory","UnknownDepType","dependency","parse","DependencyList","fromLegacyComponent","legacyComponent","lists","Object","values","missingDepsFromModel","getMissingDependenciesByComponentFromModel","push","merge","_legacyComponent$issu","missingPackages","
|
|
1
|
+
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_lodash","_dependencyList","_exceptions","_dependencyResolver","obj","__esModule","default","DependencyListFactory","constructor","factories","fromSerializedDependencies","serializedDependencies","dependencies","mapSeries","serializedDependency","type","__type","factory","UnknownDepType","dependency","parse","DependencyList","fromLegacyComponent","legacyComponent","lists","Object","values","missingDepsFromModel","getMissingDependenciesByComponentFromModel","push","merge","_legacyComponent$issu","missingData","issues","getIssueByName","missingPackages","map","d","flat","componentFromModel","length","fromArray","depListFromModel","getDependenciesFromLegacyModelComponent","filteredDepList","filter","dep","_dep$getPackageName","packageName","getPackageName","call","includes","entry","extensions","findCoreExtension","DependencyResolverAspect","id","get","exports"],"sources":["dependency-list-factory.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport type { MissingPackagesData } from '@teambit/component-issues';\nimport { get } from 'lodash';\nimport LegacyComponent from '@teambit/legacy/dist/consumer/component';\nimport { DependencyFactory } from './dependency-factory';\nimport { SerializedDependency } from './dependency';\nimport { DependencyList } from './dependency-list';\nimport { UnknownDepType } from './exceptions';\nimport { DependencyResolverAspect } from '../dependency-resolver.aspect';\n\nexport class DependencyListFactory {\n constructor(private factories: Record<string, DependencyFactory>) {}\n\n async fromSerializedDependencies(serializedDependencies: SerializedDependency[]): Promise<DependencyList> {\n const dependencies = await mapSeries(serializedDependencies, async (serializedDependency) => {\n const type = serializedDependency.__type;\n const factory = this.factories[type];\n if (!factory) {\n throw new UnknownDepType(type);\n }\n const dependency = await factory.parse(serializedDependency);\n return dependency;\n });\n return new DependencyList(dependencies);\n }\n\n async fromLegacyComponent(legacyComponent: LegacyComponent): Promise<DependencyList> {\n const lists = await mapSeries(Object.values(this.factories), async (factory) => {\n if (factory.fromLegacyComponent && typeof factory.fromLegacyComponent === 'function') {\n return factory.fromLegacyComponent(legacyComponent);\n }\n return new DependencyList([]);\n });\n\n // This is an important step, see comment for the function to better understand\n const missingDepsFromModel = await this.getMissingDependenciesByComponentFromModel(legacyComponent);\n lists.push(missingDepsFromModel);\n return DependencyList.merge(lists);\n }\n\n /**\n * Some time after importing component (for example), there are required dependencies which are not installed yet, they will consider as missing.\n * since the installer it self used the calculated deps for installing we need them to be listed as well.\n * what we do here, is to add deps from the model in case they considered as missing deps in the fs\n * we don't want just to add all of them since some of them might be removed by the user in the fs (in the source code).\n * by intersect the missing deps (deps which are still required in source code) with the deps from model we have a list of deps with all the required\n * data of them\n * @param legacyComponent\n */\n private async getMissingDependenciesByComponentFromModel(legacyComponent: LegacyComponent): Promise<DependencyList> {\n // Use getIssueByName to prevent issues when getting different instances while using both bit from bvm and from the repo\n const missingData = (legacyComponent.issues.getIssueByName('MissingPackagesDependenciesOnFs')?.data ||\n []) as MissingPackagesData[];\n\n const missingPackages: string[] = missingData.map((d) => d.missingPackages).flat();\n const componentFromModel = legacyComponent.componentFromModel;\n if (!missingPackages.length || !componentFromModel) {\n return DependencyList.fromArray([]);\n }\n // All deps defined in model\n const depListFromModel = await this.getDependenciesFromLegacyModelComponent(componentFromModel);\n // Only deps from model which are also required in the current component on fs (currently missing)\n const filteredDepList = depListFromModel.filter((dep) => {\n const packageName = dep.getPackageName?.();\n if (!packageName) {\n return false;\n }\n return missingPackages.includes(packageName);\n });\n return filteredDepList;\n }\n\n /**\n * Get dependencies based on the component from model attached to the legacy (consumer component)\n * @param legacyComponent\n */\n private async getDependenciesFromLegacyModelComponent(legacyComponent: LegacyComponent): Promise<DependencyList> {\n const entry = legacyComponent.extensions.findCoreExtension(DependencyResolverAspect.id);\n if (!entry) {\n return DependencyList.fromArray([]);\n }\n const serializedDependencies: SerializedDependency[] = get(entry, ['data', 'dependencies'], []);\n return this.fromSerializedDependencies(serializedDependencies);\n }\n}\n"],"mappings":"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"}
|
|
@@ -25,13 +25,6 @@ function _componentIdToPackageName() {
|
|
|
25
25
|
};
|
|
26
26
|
return data;
|
|
27
27
|
}
|
|
28
|
-
function _dependencyResolver() {
|
|
29
|
-
const data = require("@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver");
|
|
30
|
-
_dependencyResolver = function () {
|
|
31
|
-
return data;
|
|
32
|
-
};
|
|
33
|
-
return data;
|
|
34
|
-
}
|
|
35
28
|
function _lodash() {
|
|
36
29
|
const data = require("lodash");
|
|
37
30
|
_lodash = function () {
|
|
@@ -353,22 +346,22 @@ function excludeWorkspaceDependencies(deps) {
|
|
|
353
346
|
async function getMissingPackages(component) {
|
|
354
347
|
var _component$state$issu;
|
|
355
348
|
const missingPackagesData = (_component$state$issu = component.state.issues.getIssue(_componentIssues().IssuesClasses.MissingPackagesDependenciesOnFs)) === null || _component$state$issu === void 0 ? void 0 : _component$state$issu.data;
|
|
356
|
-
if (!missingPackagesData) return {
|
|
349
|
+
if (!(missingPackagesData !== null && missingPackagesData !== void 0 && missingPackagesData.length)) return {
|
|
357
350
|
devMissings: [],
|
|
358
351
|
runtimeMissings: []
|
|
359
352
|
};
|
|
360
|
-
// TODO: this is a hack to get it from the legacy, we should take it from the dev files aspect
|
|
361
|
-
// TODO: the reason we don't is that it will make circular dependency between the dep resolver and the dev files aspect
|
|
362
|
-
const devFiles = await _dependencyResolver().DependencyResolver.getDevFiles(component.state._consumer);
|
|
363
353
|
let devMissings = [];
|
|
364
354
|
let runtimeMissings = [];
|
|
365
|
-
|
|
366
|
-
if (
|
|
367
|
-
devMissings
|
|
355
|
+
missingPackagesData.forEach(data => {
|
|
356
|
+
if (data.isDevFile) {
|
|
357
|
+
devMissings.push(...data.missingPackages);
|
|
368
358
|
} else {
|
|
369
|
-
runtimeMissings
|
|
359
|
+
runtimeMissings.push(...data.missingPackages);
|
|
370
360
|
}
|
|
371
361
|
});
|
|
362
|
+
devMissings = (0, _lodash().uniq)(devMissings);
|
|
363
|
+
runtimeMissings = (0, _lodash().uniq)(runtimeMissings);
|
|
364
|
+
|
|
372
365
|
// Remove dev missing which are also runtime missing
|
|
373
366
|
devMissings = (0, _lodash().difference)(devMissings, runtimeMissings);
|
|
374
367
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_aspectLoader","data","require","_componentIssues","_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","filterOutCoreAspects","componentDependenciesMap","buildComponentDependenciesMap","dependencyFilterFn","referenceLocalPackages","rootDependencies","toManifest","dependencies","dedupedDependencies","getEmptyDedupedDependencies","dedupeDependencies","dedupePeerDependencies","mapValues","deps","excludeWorkspaceDependencies","componentsManifestsMap","getComponentsManifests","envSelfPeers","getEnvsSelfPeersPolicy","workspaceManifest","WorkspaceManifest","coreAspectIds","getCoreAspectIds","coreAspectPkgNames","Set","map","coreAspectId","getCoreAspectPackageName","add","dep","has","dependencyId","foundEnvs","component","values","envPolicy","peersPolicies","policy","selfPolicy","mergedPolicies","VariantPolicy","mergePolices","packageNames","getPackageName","buildResultsP","packageName","componentIdToPackageName","state","_consumer","depList","getDependencies","includeHidden","additionalDeps","comp","toTypeArray","compIdWithoutVersion","id","split","isExtension","includes","some","c","isEqual","componentId","pkgName","depManifestBeforeFiltering","toDependenciesManifest","filterComponents","filterExtensions","updateDependenciesVersions","depManifest","devMissings","runtimeMissings","getMissingPackages","unresolvedRuntimeMissingRootDeps","pickBy","_version","rootPackageName","devDependencies","peerDependencies","unresolvedDevMissingRootDeps","defaultPeerDependencies","_getDefaultPeerDependencies","result","Map","results","Promise","all","currResult","set","packageNamesFromWorkspace","getComponentEnvPolicy","selfPolicyWithoutLocal","fromPairs","toNameVersionTuple","dependencyList","getPolicy","updateDependencyVersion","componentsManifests","pMapSeries","blankDependencies","get","getVersion","hasVersion","snapToSemver","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, getCoreAspectPackageName } 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 { fromPairs, 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 rootPolicy = this.filterOutCoreAspects(rootPolicy);\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 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 filterOutCoreAspects(rootPolicy: WorkspacePolicy) {\n const coreAspectIds = this.aspectLoader.getCoreAspectIds();\n const coreAspectPkgNames = new Set(coreAspectIds.map((coreAspectId) => getCoreAspectPackageName(coreAspectId)));\n coreAspectPkgNames.add('@teambit/legacy');\n return rootPolicy.filter((dep) => !coreAspectPkgNames.has(dep.dependencyId));\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 packageNames = components.map((component) => this.dependencyResolver.getPackageName(component));\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\n const defaultPeerDependencies = await this._getDefaultPeerDependencies(component, packageNames);\n\n depManifest.dependencies = {\n ...defaultPeerDependencies,\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 _getDefaultPeerDependencies(\n component: Component,\n packageNamesFromWorkspace: string[]\n ): Promise<Record<string, string>> {\n const envPolicy = await this.dependencyResolver.getComponentEnvPolicy(component);\n const selfPolicyWithoutLocal = envPolicy.selfPolicy.filter(\n (dep) => !packageNamesFromWorkspace.includes(dep.dependencyId)\n );\n return fromPairs(selfPolicyWithoutLocal.toNameVersionTuple());\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
|
+
{"version":3,"names":["_aspectLoader","data","require","_componentIssues","_componentIdToPackageName","_interopRequireDefault","_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","filterOutCoreAspects","componentDependenciesMap","buildComponentDependenciesMap","dependencyFilterFn","referenceLocalPackages","rootDependencies","toManifest","dependencies","dedupedDependencies","getEmptyDedupedDependencies","dedupeDependencies","dedupePeerDependencies","mapValues","deps","excludeWorkspaceDependencies","componentsManifestsMap","getComponentsManifests","envSelfPeers","getEnvsSelfPeersPolicy","workspaceManifest","WorkspaceManifest","coreAspectIds","getCoreAspectIds","coreAspectPkgNames","Set","map","coreAspectId","getCoreAspectPackageName","add","dep","has","dependencyId","foundEnvs","component","values","envPolicy","peersPolicies","policy","selfPolicy","mergedPolicies","VariantPolicy","mergePolices","packageNames","getPackageName","buildResultsP","packageName","componentIdToPackageName","state","_consumer","depList","getDependencies","includeHidden","additionalDeps","comp","toTypeArray","compIdWithoutVersion","id","split","isExtension","includes","some","c","isEqual","componentId","pkgName","depManifestBeforeFiltering","toDependenciesManifest","filterComponents","filterExtensions","updateDependenciesVersions","depManifest","devMissings","runtimeMissings","getMissingPackages","unresolvedRuntimeMissingRootDeps","pickBy","_version","rootPackageName","devDependencies","peerDependencies","unresolvedDevMissingRootDeps","defaultPeerDependencies","_getDefaultPeerDependencies","result","Map","results","Promise","all","currResult","set","packageNamesFromWorkspace","getComponentEnvPolicy","selfPolicyWithoutLocal","fromPairs","toNameVersionTuple","dependencyList","getPolicy","updateDependencyVersion","componentsManifests","pMapSeries","blankDependencies","get","getVersion","hasVersion","snapToSemver","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","isDevFile","missingPackages","uniq","difference"],"sources":["workspace-manifest-factory.ts"],"sourcesContent":["import { AspectLoaderMain, getCoreAspectPackageName } 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 { fromPairs, 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 rootPolicy = this.filterOutCoreAspects(rootPolicy);\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 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 filterOutCoreAspects(rootPolicy: WorkspacePolicy) {\n const coreAspectIds = this.aspectLoader.getCoreAspectIds();\n const coreAspectPkgNames = new Set(coreAspectIds.map((coreAspectId) => getCoreAspectPackageName(coreAspectId)));\n coreAspectPkgNames.add('@teambit/legacy');\n return rootPolicy.filter((dep) => !coreAspectPkgNames.has(dep.dependencyId));\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 packageNames = components.map((component) => this.dependencyResolver.getPackageName(component));\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\n const defaultPeerDependencies = await this._getDefaultPeerDependencies(component, packageNames);\n\n depManifest.dependencies = {\n ...defaultPeerDependencies,\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 _getDefaultPeerDependencies(\n component: Component,\n packageNamesFromWorkspace: string[]\n ): Promise<Record<string, string>> {\n const envPolicy = await this.dependencyResolver.getComponentEnvPolicy(component);\n const selfPolicyWithoutLocal = envPolicy.selfPolicy.filter(\n (dep) => !packageNamesFromWorkspace.includes(dep.dependencyId)\n );\n return fromPairs(selfPolicyWithoutLocal.toNameVersionTuple());\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?.length) return { devMissings: [], runtimeMissings: [] };\n\n let devMissings: string[] = [];\n let runtimeMissings: string[] = [];\n\n missingPackagesData.forEach((data) => {\n if (data.isDevFile) {\n devMissings.push(...data.missingPackages);\n } else {\n runtimeMissings.push(...data.missingPackages);\n }\n });\n devMissings = uniq(devMissings);\n runtimeMissings = uniq(runtimeMissings);\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,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_dependency-resolver@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_dependency-resolver@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_dependency-resolver@1.0.72/dist/dependency-resolver.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.dependencies_dependency-resolver@1.0.72/dist/dependency-resolver.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
|
@@ -2,7 +2,6 @@ import { AspectLoaderMain, getCoreAspectPackageName } from '@teambit/aspect-load
|
|
|
2
2
|
import { IssuesClasses } from '@teambit/component-issues';
|
|
3
3
|
import { Component } from '@teambit/component';
|
|
4
4
|
import componentIdToPackageName from '@teambit/legacy/dist/utils/bit/component-id-to-package-name';
|
|
5
|
-
import { DependencyResolver } from '@teambit/legacy/dist/consumer/component/dependencies/dependency-resolver';
|
|
6
5
|
import { fromPairs, pickBy, mapValues, uniq, difference } from 'lodash';
|
|
7
6
|
import { SemVer } from 'semver';
|
|
8
7
|
import pMapSeries from 'p-map-series';
|
|
@@ -354,19 +353,21 @@ function excludeWorkspaceDependencies(deps: DepObjectValue): DepObjectValue {
|
|
|
354
353
|
|
|
355
354
|
async function getMissingPackages(component: Component): Promise<{ devMissings: string[]; runtimeMissings: string[] }> {
|
|
356
355
|
const missingPackagesData = component.state.issues.getIssue(IssuesClasses.MissingPackagesDependenciesOnFs)?.data;
|
|
357
|
-
if (!missingPackagesData) return { devMissings: [], runtimeMissings: [] };
|
|
358
|
-
|
|
359
|
-
// TODO: the reason we don't is that it will make circular dependency between the dep resolver and the dev files aspect
|
|
360
|
-
const devFiles = await DependencyResolver.getDevFiles(component.state._consumer);
|
|
356
|
+
if (!missingPackagesData?.length) return { devMissings: [], runtimeMissings: [] };
|
|
357
|
+
|
|
361
358
|
let devMissings: string[] = [];
|
|
362
359
|
let runtimeMissings: string[] = [];
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
360
|
+
|
|
361
|
+
missingPackagesData.forEach((data) => {
|
|
362
|
+
if (data.isDevFile) {
|
|
363
|
+
devMissings.push(...data.missingPackages);
|
|
366
364
|
} else {
|
|
367
|
-
runtimeMissings
|
|
365
|
+
runtimeMissings.push(...data.missingPackages);
|
|
368
366
|
}
|
|
369
367
|
});
|
|
368
|
+
devMissings = uniq(devMissings);
|
|
369
|
+
runtimeMissings = uniq(runtimeMissings);
|
|
370
|
+
|
|
370
371
|
// Remove dev missing which are also runtime missing
|
|
371
372
|
devMissings = difference(devMissings, runtimeMissings);
|
|
372
373
|
return {
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/dependency-resolver",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.72",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/dependencies/dependency-resolver",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.dependencies",
|
|
8
8
|
"name": "dependency-resolver",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.72"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"cli-highlight": "2.1.9",
|
|
@@ -36,20 +36,20 @@
|
|
|
36
36
|
"@teambit/component-id": "1.2.0",
|
|
37
37
|
"@teambit/legacy-bit-id": "1.1.0",
|
|
38
38
|
"@teambit/component-version": "1.0.3",
|
|
39
|
-
"@teambit/component": "1.0.
|
|
40
|
-
"@teambit/envs": "1.0.
|
|
41
|
-
"@teambit/aspect-loader": "1.0.
|
|
42
|
-
"@teambit/logger": "0.0.
|
|
43
|
-
"@teambit/graphql": "1.0.
|
|
44
|
-
"@teambit/bit": "1.5.
|
|
45
|
-
"@teambit/cli": "0.0.
|
|
46
|
-
"@teambit/config": "0.0.
|
|
47
|
-
"@teambit/global-config": "0.0.
|
|
39
|
+
"@teambit/component": "1.0.72",
|
|
40
|
+
"@teambit/envs": "1.0.72",
|
|
41
|
+
"@teambit/aspect-loader": "1.0.72",
|
|
42
|
+
"@teambit/logger": "0.0.919",
|
|
43
|
+
"@teambit/graphql": "1.0.72",
|
|
44
|
+
"@teambit/bit": "1.5.3",
|
|
45
|
+
"@teambit/cli": "0.0.826",
|
|
46
|
+
"@teambit/config": "0.0.842",
|
|
47
|
+
"@teambit/global-config": "0.0.828",
|
|
48
48
|
"@teambit/harmony.modules.requireable-component": "0.0.495",
|
|
49
|
-
"@teambit/snapping": "1.0.
|
|
50
|
-
"@teambit/isolator": "1.0.
|
|
51
|
-
"@teambit/component-
|
|
52
|
-
"@teambit/component-
|
|
49
|
+
"@teambit/snapping": "1.0.72",
|
|
50
|
+
"@teambit/isolator": "1.0.72",
|
|
51
|
+
"@teambit/component-issues": "0.0.123",
|
|
52
|
+
"@teambit/component-package-version": "0.0.430"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@types/react": "^17.0.8",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"@teambit/dependencies.aspect-docs.dependency-resolver": "0.0.174"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
|
-
"@teambit/legacy": "1.0.
|
|
69
|
+
"@teambit/legacy": "1.0.610",
|
|
70
70
|
"react": "^16.8.0 || ^17.0.0",
|
|
71
71
|
"react-dom": "^16.8.0 || ^17.0.0"
|
|
72
72
|
},
|