@teambit/workspace 1.0.540 → 1.0.541
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.
|
@@ -214,29 +214,30 @@ class GraphIdsFromFsBuilder {
|
|
|
214
214
|
this.graph.setEdge(new (_graph().Edge)(idStr, depId.toString(), lifecycleToDepType(dep)));
|
|
215
215
|
}
|
|
216
216
|
async loadManyComponents(componentsIds, dependenciesOf) {
|
|
217
|
-
const components = await (0, _pMapSeries().default)(componentsIds, async
|
|
218
|
-
const
|
|
219
|
-
const fromCache = this.loadedComponents[
|
|
217
|
+
const components = await (0, _pMapSeries().default)(componentsIds, async compId => {
|
|
218
|
+
const idStrPotentiallyWithoutVersion = compId.toString();
|
|
219
|
+
const fromCache = this.loadedComponents[idStrPotentiallyWithoutVersion];
|
|
220
220
|
if (fromCache) return fromCache;
|
|
221
221
|
try {
|
|
222
|
-
const component = await this.workspace.get(
|
|
222
|
+
const component = await this.workspace.get(compId);
|
|
223
|
+
const idStr = component.id.toString();
|
|
223
224
|
this.loadedComponents[idStr] = component;
|
|
224
225
|
this.graph.setNode(new (_graph().Node)(idStr, component.id));
|
|
225
226
|
return component;
|
|
226
227
|
} catch (err) {
|
|
227
228
|
if (err instanceof _legacy2().ComponentNotFound || err instanceof _scope().ComponentNotFound || err instanceof _legacy2().ScopeNotFound) {
|
|
228
229
|
if (dependenciesOf && !this.shouldThrowOnMissingDep) {
|
|
229
|
-
this.logger.warn(`component ${
|
|
230
|
+
this.logger.warn(`component ${idStrPotentiallyWithoutVersion}, dependency of ${dependenciesOf} was not found. continuing without it`);
|
|
230
231
|
return null;
|
|
231
232
|
}
|
|
232
|
-
throw new (_bitError().BitError)(`error: component "${
|
|
233
|
+
throw new (_bitError().BitError)(`error: component "${idStrPotentiallyWithoutVersion}" was not found.\nthis component is a dependency of "${dependenciesOf || '<none>'}" and is needed as part of the graph generation`);
|
|
233
234
|
}
|
|
234
235
|
if (_legacy().ConsumerComponent.isComponentInvalidByErrorType(err)) {
|
|
235
236
|
if (dependenciesOf && !this.shouldThrowOnInvalidDeps) {
|
|
236
|
-
this.logger.warn(`component ${
|
|
237
|
+
this.logger.warn(`component ${idStrPotentiallyWithoutVersion}, dependency of ${dependenciesOf} is invalid. continuing without it`);
|
|
237
238
|
return null;
|
|
238
239
|
}
|
|
239
|
-
throw new (_bitError().BitError)(`error: component "${
|
|
240
|
+
throw new (_bitError().BitError)(`error: component "${idStrPotentiallyWithoutVersion}" is invalid (${err.message}).\nthis component is a dependency of "${dependenciesOf || '<none>'}" and is needed as part of the graph generation`);
|
|
240
241
|
}
|
|
241
242
|
if (dependenciesOf) this.logger.error(`failed loading dependencies of ${dependenciesOf}`);
|
|
242
243
|
throw err;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_graph","_lodash","_legacy","_componentId","_legacy2","_scope","_lodash2","_bitError","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","lifecycleToDepType","compDep","isExtension","lifecycle","Error","GraphIdsFromFsBuilder","constructor","workspace","logger","dependencyResolver","shouldThrowOnMissingDep","Graph","consumer","shouldThrowOnInvalidDeps","buildGraph","ids","debug","length","start","Date","now","components","loadManyComponents","processManyComponents","graph","depth","importObjects","allDependencies","mapSeries","component","processOneComponent","allDependenciesFlattened","flatten","workspaceIds","listIds","compOnWorkspaceOnly","filter","comp","find","id","isEqual","notImported","map","c","importedIds","includes","toString","exportedDeps","dep","isExported","scopeComponentsImporter","scope","scopeImporter","importMany","ComponentIdList","uniqFromArray","throwForDependencyNotFound","throwForSeederNotFound","reFetchUnBuiltVersion","lane","getCurrentLaneObject","reason","push","idStr","completed","graphFromScope","getSavedGraphOfComponentIfExist","edges","isOnWorkspace","hasId","allDependenciesComps","processCompFromWorkspaceWithGraph","merge","deps","getComponentDependencies","allDepsIds","d","componentId","forEach","addDepEdge","workspaceIdsStr","depsInScopeGraph","depsNotInScopeGraph","partition","hasNode","depsInScopeGraphIds","depsInScopeGraphIdsNotCompleted","subGraphs","successorsSubgraph","edge","sourceId","deleteEdge","targetId","depId","warn","setEdge","Edge","componentsIds","dependenciesOf","fromCache","loadedComponents","get","setNode","Node","err","ComponentNotFound","ComponentNotFoundInScope","ScopeNotFound","BitError","ConsumerComponent","isComponentInvalidByErrorType","message","error","compact","exports"],"sources":["build-graph-ids-from-fs.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { flatten, partition } from 'lodash';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { Component, ComponentID } from '@teambit/component';\nimport { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { ComponentIdList } from '@teambit/component-id';\nimport { ComponentDependency, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { CompIdGraph, DepEdgeType } from '@teambit/graph';\nimport { ComponentNotFound, ScopeNotFound } from '@teambit/legacy.scope';\nimport { ComponentNotFound as ComponentNotFoundInScope } from '@teambit/scope';\nimport compact from 'lodash.compact';\nimport { Logger } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport { Workspace } from './workspace';\n\nexport function lifecycleToDepType(compDep: ComponentDependency): DepEdgeType {\n if (compDep.isExtension) return 'ext';\n switch (compDep.lifecycle) {\n case 'dev':\n return 'dev';\n case 'runtime':\n return 'prod';\n case 'peer':\n return 'peer';\n default:\n throw new Error(`lifecycle ${compDep.lifecycle} is not support`);\n }\n}\n\nexport class GraphIdsFromFsBuilder {\n private graph = new Graph<ComponentID, DepEdgeType>();\n private completed: string[] = [];\n private depth = 1;\n private consumer: Consumer;\n private loadedComponents: { [idStr: string]: Component } = {};\n private importedIds: string[] = [];\n private shouldThrowOnInvalidDeps = true; // for now it has the same value as shouldThrowOnMissingDep. change if needed\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private dependencyResolver: DependencyResolverMain,\n private shouldThrowOnMissingDep = true\n ) {\n this.consumer = this.workspace.consumer;\n this.shouldThrowOnInvalidDeps = this.shouldThrowOnMissingDep;\n }\n\n /**\n * create a graph with all dependencies and flattened dependencies of the given components.\n * the nodes are component-ids and the edges has a label of the dependency type.\n * to get some info about this the graph build take a look into build-graph-from-fs.buildGraph() docs.\n */\n async buildGraph(ids: ComponentID[]): Promise<Graph<ComponentID, DepEdgeType>> {\n this.logger.debug(`GraphIdsFromFsBuilder, buildGraph with ${ids.length} seeders`);\n const start = Date.now();\n const components = await this.loadManyComponents(ids);\n await this.processManyComponents(components);\n this.logger.debug(\n `GraphIdsFromFsBuilder, buildGraph with ${ids.length} seeders completed (${(Date.now() - start) / 1000} sec)`\n );\n return this.graph;\n }\n\n private async processManyComponents(components: Component[]) {\n this.logger.debug(\n `GraphIdsFromFsBuilder.processManyComponents depth ${this.depth}, ${components.length} components`\n );\n this.depth += 1;\n await this.importObjects(components);\n const allDependencies = await mapSeries(components, (component) => this.processOneComponent(component));\n const allDependenciesFlattened = flatten(allDependencies);\n if (allDependenciesFlattened.length) await this.processManyComponents(allDependenciesFlattened);\n }\n\n /**\n * only for components from the workspace that can be modified to add/remove dependencies, we need to make sure that\n * all their dependencies are imported.\n * once a component from scope is imported, we know that either we have its dependency graph or all flattened deps\n */\n private async importObjects(components: Component[]) {\n const workspaceIds = this.workspace.listIds();\n const compOnWorkspaceOnly = components.filter((comp) => workspaceIds.find((id) => id.isEqual(comp.id)));\n const notImported = compOnWorkspaceOnly.map((c) => c.id).filter((id) => !this.importedIds.includes(id.toString()));\n const exportedDeps = notImported.filter((dep) => this.workspace.isExported(dep));\n const scopeComponentsImporter = this.consumer.scope.scopeImporter;\n await scopeComponentsImporter.importMany({\n ids: ComponentIdList.uniqFromArray(exportedDeps),\n throwForDependencyNotFound: this.shouldThrowOnMissingDep,\n throwForSeederNotFound: this.shouldThrowOnMissingDep,\n reFetchUnBuiltVersion: false,\n lane: await this.workspace.getCurrentLaneObject(),\n reason: 'for building graph-ids from the workspace',\n });\n notImported.map((id) => this.importedIds.push(id.toString()));\n }\n\n private async processOneComponent(component: Component) {\n const idStr = component.id.toString();\n if (this.completed.includes(idStr)) return [];\n const graphFromScope = await this.workspace.getSavedGraphOfComponentIfExist(component);\n if (graphFromScope?.edges.length) {\n const isOnWorkspace = await this.workspace.hasId(component.id);\n if (isOnWorkspace) {\n const allDependenciesComps = await this.processCompFromWorkspaceWithGraph(graphFromScope, component);\n this.completed.push(idStr);\n return allDependenciesComps;\n }\n this.graph.merge([graphFromScope]);\n this.completed.push(idStr);\n return [];\n }\n\n const deps = this.dependencyResolver.getComponentDependencies(component);\n const allDepsIds = deps.map((d) => d.componentId);\n const allDependenciesComps = await this.loadManyComponents(allDepsIds, idStr);\n\n deps.forEach((dep) => this.addDepEdge(idStr, dep));\n this.completed.push(idStr);\n\n return allDependenciesComps;\n }\n\n /**\n * this is tricky.\n * the component is in the workspace so it can be modified. dependencies can be added/removed/updated/downgraded.\n * we have the graph-dependencies from the last snap, so we prefer to use it whenever possible for performance reasons.\n * if we can't use it, we have to recursively load dependencies components and get the data from there.\n * to maximize the performance, we iterate the direct dependencies, if we find a dep with the same id in the graph,\n * and that id is not in the workspace then ask the graph for all its successors. otherwise, if it's not there, or\n * it's there but it's also in the workspace (which therefore can be modified), we recursively load the dep components\n * and get its dependencies.\n */\n private async processCompFromWorkspaceWithGraph(\n graphFromScope: CompIdGraph,\n component: Component\n ): Promise<Component[]> {\n const deps = this.dependencyResolver.getComponentDependencies(component);\n const workspaceIds = this.workspace.listIds();\n const workspaceIdsStr = workspaceIds.map((id) => id.toString());\n const [depsInScopeGraph, depsNotInScopeGraph] = partition(\n deps,\n (dep) =>\n graphFromScope.hasNode(dep.componentId.toString()) && !workspaceIdsStr.includes(dep.componentId.toString())\n );\n\n const depsInScopeGraphIds = depsInScopeGraph.map((dep) => dep.componentId.toString());\n const depsInScopeGraphIdsNotCompleted = depsInScopeGraphIds.filter((id) => !this.completed.includes(id));\n if (depsInScopeGraphIdsNotCompleted.length) {\n const subGraphs = graphFromScope.successorsSubgraph(depsInScopeGraphIdsNotCompleted);\n // delete any edge that its source is from the workspace. if this component is modified, this edge could be\n // incorrect. we don't need these edges anyway because we add them directly.\n subGraphs.edges.forEach((edge) => {\n if (workspaceIdsStr.includes(edge.sourceId)) subGraphs.deleteEdge(edge.sourceId, edge.targetId);\n });\n this.graph.merge([subGraphs]);\n this.completed.push(...depsInScopeGraphIdsNotCompleted);\n }\n\n const allDepsIds = depsNotInScopeGraph.map((d) => d.componentId);\n const idStr = component.id.toString();\n const allDependenciesComps = await this.loadManyComponents(allDepsIds, idStr);\n deps.forEach((dep) => this.addDepEdge(idStr, dep));\n return allDependenciesComps;\n }\n\n private addDepEdge(idStr: string, dep: ComponentDependency) {\n const depId = dep.componentId;\n if (!this.graph.hasNode(depId.toString())) {\n if (this.shouldThrowOnMissingDep) {\n throw new Error(`buildOneComponent: missing node of ${depId.toString()}`);\n }\n this.logger.warn(`ignoring missing ${depId.toString()}`);\n return;\n }\n this.graph.setEdge(new Edge(idStr, depId.toString(), lifecycleToDepType(dep)));\n }\n\n private async loadManyComponents(componentsIds: ComponentID[], dependenciesOf?: string): Promise<Component[]> {\n const components = await mapSeries(componentsIds, async (comp) => {\n const idStr = comp.toString();\n const fromCache = this.loadedComponents[idStr];\n if (fromCache) return fromCache;\n try {\n const component = await this.workspace.get(comp);\n this.loadedComponents[idStr] = component;\n this.graph.setNode(new Node(idStr, component.id));\n return component;\n } catch (err: any) {\n if (\n err instanceof ComponentNotFound ||\n err instanceof ComponentNotFoundInScope ||\n err instanceof ScopeNotFound\n ) {\n if (dependenciesOf && !this.shouldThrowOnMissingDep) {\n this.logger.warn(\n `component ${idStr}, dependency of ${dependenciesOf} was not found. continuing without it`\n );\n return null;\n }\n throw new BitError(\n `error: component \"${idStr}\" was not found.\\nthis component is a dependency of \"${\n dependenciesOf || '<none>'\n }\" and is needed as part of the graph generation`\n );\n }\n if (ConsumerComponent.isComponentInvalidByErrorType(err)) {\n if (dependenciesOf && !this.shouldThrowOnInvalidDeps) {\n this.logger.warn(`component ${idStr}, dependency of ${dependenciesOf} is invalid. continuing without it`);\n return null;\n }\n throw new BitError(\n `error: component \"${idStr}\" is invalid (${err.message}).\\nthis component is a dependency of \"${\n dependenciesOf || '<none>'\n }\" and is needed as part of the graph generation`\n );\n }\n if (dependenciesOf) this.logger.error(`failed loading dependencies of ${dependenciesOf}`);\n throw err;\n }\n });\n return compact(components);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_graph","_lodash","_legacy","_componentId","_legacy2","_scope","_lodash2","_bitError","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","lifecycleToDepType","compDep","isExtension","lifecycle","Error","GraphIdsFromFsBuilder","constructor","workspace","logger","dependencyResolver","shouldThrowOnMissingDep","Graph","consumer","shouldThrowOnInvalidDeps","buildGraph","ids","debug","length","start","Date","now","components","loadManyComponents","processManyComponents","graph","depth","importObjects","allDependencies","mapSeries","component","processOneComponent","allDependenciesFlattened","flatten","workspaceIds","listIds","compOnWorkspaceOnly","filter","comp","find","id","isEqual","notImported","map","c","importedIds","includes","toString","exportedDeps","dep","isExported","scopeComponentsImporter","scope","scopeImporter","importMany","ComponentIdList","uniqFromArray","throwForDependencyNotFound","throwForSeederNotFound","reFetchUnBuiltVersion","lane","getCurrentLaneObject","reason","push","idStr","completed","graphFromScope","getSavedGraphOfComponentIfExist","edges","isOnWorkspace","hasId","allDependenciesComps","processCompFromWorkspaceWithGraph","merge","deps","getComponentDependencies","allDepsIds","d","componentId","forEach","addDepEdge","workspaceIdsStr","depsInScopeGraph","depsNotInScopeGraph","partition","hasNode","depsInScopeGraphIds","depsInScopeGraphIdsNotCompleted","subGraphs","successorsSubgraph","edge","sourceId","deleteEdge","targetId","depId","warn","setEdge","Edge","componentsIds","dependenciesOf","compId","idStrPotentiallyWithoutVersion","fromCache","loadedComponents","get","setNode","Node","err","ComponentNotFound","ComponentNotFoundInScope","ScopeNotFound","BitError","ConsumerComponent","isComponentInvalidByErrorType","message","error","compact","exports"],"sources":["build-graph-ids-from-fs.ts"],"sourcesContent":["import mapSeries from 'p-map-series';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { flatten, partition } from 'lodash';\nimport { Consumer } from '@teambit/legacy.consumer';\nimport { Component, ComponentID } from '@teambit/component';\nimport { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { ComponentIdList } from '@teambit/component-id';\nimport { ComponentDependency, DependencyResolverMain } from '@teambit/dependency-resolver';\nimport { CompIdGraph, DepEdgeType } from '@teambit/graph';\nimport { ComponentNotFound, ScopeNotFound } from '@teambit/legacy.scope';\nimport { ComponentNotFound as ComponentNotFoundInScope } from '@teambit/scope';\nimport compact from 'lodash.compact';\nimport { Logger } from '@teambit/logger';\nimport { BitError } from '@teambit/bit-error';\nimport { Workspace } from './workspace';\n\nexport function lifecycleToDepType(compDep: ComponentDependency): DepEdgeType {\n if (compDep.isExtension) return 'ext';\n switch (compDep.lifecycle) {\n case 'dev':\n return 'dev';\n case 'runtime':\n return 'prod';\n case 'peer':\n return 'peer';\n default:\n throw new Error(`lifecycle ${compDep.lifecycle} is not support`);\n }\n}\n\nexport class GraphIdsFromFsBuilder {\n private graph = new Graph<ComponentID, DepEdgeType>();\n private completed: string[] = [];\n private depth = 1;\n private consumer: Consumer;\n private loadedComponents: { [idStr: string]: Component } = {};\n private importedIds: string[] = [];\n private shouldThrowOnInvalidDeps = true; // for now it has the same value as shouldThrowOnMissingDep. change if needed\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private dependencyResolver: DependencyResolverMain,\n private shouldThrowOnMissingDep = true\n ) {\n this.consumer = this.workspace.consumer;\n this.shouldThrowOnInvalidDeps = this.shouldThrowOnMissingDep;\n }\n\n /**\n * create a graph with all dependencies and flattened dependencies of the given components.\n * the nodes are component-ids and the edges has a label of the dependency type.\n * to get some info about this the graph build take a look into build-graph-from-fs.buildGraph() docs.\n */\n async buildGraph(ids: ComponentID[]): Promise<Graph<ComponentID, DepEdgeType>> {\n this.logger.debug(`GraphIdsFromFsBuilder, buildGraph with ${ids.length} seeders`);\n const start = Date.now();\n const components = await this.loadManyComponents(ids);\n await this.processManyComponents(components);\n this.logger.debug(\n `GraphIdsFromFsBuilder, buildGraph with ${ids.length} seeders completed (${(Date.now() - start) / 1000} sec)`\n );\n return this.graph;\n }\n\n private async processManyComponents(components: Component[]) {\n this.logger.debug(\n `GraphIdsFromFsBuilder.processManyComponents depth ${this.depth}, ${components.length} components`\n );\n this.depth += 1;\n await this.importObjects(components);\n const allDependencies = await mapSeries(components, (component) => this.processOneComponent(component));\n const allDependenciesFlattened = flatten(allDependencies);\n if (allDependenciesFlattened.length) await this.processManyComponents(allDependenciesFlattened);\n }\n\n /**\n * only for components from the workspace that can be modified to add/remove dependencies, we need to make sure that\n * all their dependencies are imported.\n * once a component from scope is imported, we know that either we have its dependency graph or all flattened deps\n */\n private async importObjects(components: Component[]) {\n const workspaceIds = this.workspace.listIds();\n const compOnWorkspaceOnly = components.filter((comp) => workspaceIds.find((id) => id.isEqual(comp.id)));\n const notImported = compOnWorkspaceOnly.map((c) => c.id).filter((id) => !this.importedIds.includes(id.toString()));\n const exportedDeps = notImported.filter((dep) => this.workspace.isExported(dep));\n const scopeComponentsImporter = this.consumer.scope.scopeImporter;\n await scopeComponentsImporter.importMany({\n ids: ComponentIdList.uniqFromArray(exportedDeps),\n throwForDependencyNotFound: this.shouldThrowOnMissingDep,\n throwForSeederNotFound: this.shouldThrowOnMissingDep,\n reFetchUnBuiltVersion: false,\n lane: await this.workspace.getCurrentLaneObject(),\n reason: 'for building graph-ids from the workspace',\n });\n notImported.map((id) => this.importedIds.push(id.toString()));\n }\n\n private async processOneComponent(component: Component) {\n const idStr = component.id.toString();\n if (this.completed.includes(idStr)) return [];\n const graphFromScope = await this.workspace.getSavedGraphOfComponentIfExist(component);\n if (graphFromScope?.edges.length) {\n const isOnWorkspace = await this.workspace.hasId(component.id);\n if (isOnWorkspace) {\n const allDependenciesComps = await this.processCompFromWorkspaceWithGraph(graphFromScope, component);\n this.completed.push(idStr);\n return allDependenciesComps;\n }\n this.graph.merge([graphFromScope]);\n this.completed.push(idStr);\n return [];\n }\n\n const deps = this.dependencyResolver.getComponentDependencies(component);\n const allDepsIds = deps.map((d) => d.componentId);\n const allDependenciesComps = await this.loadManyComponents(allDepsIds, idStr);\n\n deps.forEach((dep) => this.addDepEdge(idStr, dep));\n this.completed.push(idStr);\n\n return allDependenciesComps;\n }\n\n /**\n * this is tricky.\n * the component is in the workspace so it can be modified. dependencies can be added/removed/updated/downgraded.\n * we have the graph-dependencies from the last snap, so we prefer to use it whenever possible for performance reasons.\n * if we can't use it, we have to recursively load dependencies components and get the data from there.\n * to maximize the performance, we iterate the direct dependencies, if we find a dep with the same id in the graph,\n * and that id is not in the workspace then ask the graph for all its successors. otherwise, if it's not there, or\n * it's there but it's also in the workspace (which therefore can be modified), we recursively load the dep components\n * and get its dependencies.\n */\n private async processCompFromWorkspaceWithGraph(\n graphFromScope: CompIdGraph,\n component: Component\n ): Promise<Component[]> {\n const deps = this.dependencyResolver.getComponentDependencies(component);\n const workspaceIds = this.workspace.listIds();\n const workspaceIdsStr = workspaceIds.map((id) => id.toString());\n const [depsInScopeGraph, depsNotInScopeGraph] = partition(\n deps,\n (dep) =>\n graphFromScope.hasNode(dep.componentId.toString()) && !workspaceIdsStr.includes(dep.componentId.toString())\n );\n\n const depsInScopeGraphIds = depsInScopeGraph.map((dep) => dep.componentId.toString());\n const depsInScopeGraphIdsNotCompleted = depsInScopeGraphIds.filter((id) => !this.completed.includes(id));\n if (depsInScopeGraphIdsNotCompleted.length) {\n const subGraphs = graphFromScope.successorsSubgraph(depsInScopeGraphIdsNotCompleted);\n // delete any edge that its source is from the workspace. if this component is modified, this edge could be\n // incorrect. we don't need these edges anyway because we add them directly.\n subGraphs.edges.forEach((edge) => {\n if (workspaceIdsStr.includes(edge.sourceId)) subGraphs.deleteEdge(edge.sourceId, edge.targetId);\n });\n this.graph.merge([subGraphs]);\n this.completed.push(...depsInScopeGraphIdsNotCompleted);\n }\n\n const allDepsIds = depsNotInScopeGraph.map((d) => d.componentId);\n const idStr = component.id.toString();\n const allDependenciesComps = await this.loadManyComponents(allDepsIds, idStr);\n deps.forEach((dep) => this.addDepEdge(idStr, dep));\n return allDependenciesComps;\n }\n\n private addDepEdge(idStr: string, dep: ComponentDependency) {\n const depId = dep.componentId;\n if (!this.graph.hasNode(depId.toString())) {\n if (this.shouldThrowOnMissingDep) {\n throw new Error(`buildOneComponent: missing node of ${depId.toString()}`);\n }\n this.logger.warn(`ignoring missing ${depId.toString()}`);\n return;\n }\n this.graph.setEdge(new Edge(idStr, depId.toString(), lifecycleToDepType(dep)));\n }\n\n private async loadManyComponents(componentsIds: ComponentID[], dependenciesOf?: string): Promise<Component[]> {\n const components = await mapSeries(componentsIds, async (compId) => {\n const idStrPotentiallyWithoutVersion = compId.toString();\n const fromCache = this.loadedComponents[idStrPotentiallyWithoutVersion];\n if (fromCache) return fromCache;\n try {\n const component = await this.workspace.get(compId);\n const idStr = component.id.toString();\n this.loadedComponents[idStr] = component;\n this.graph.setNode(new Node(idStr, component.id));\n return component;\n } catch (err: any) {\n if (\n err instanceof ComponentNotFound ||\n err instanceof ComponentNotFoundInScope ||\n err instanceof ScopeNotFound\n ) {\n if (dependenciesOf && !this.shouldThrowOnMissingDep) {\n this.logger.warn(\n `component ${idStrPotentiallyWithoutVersion}, dependency of ${dependenciesOf} was not found. continuing without it`\n );\n return null;\n }\n throw new BitError(\n `error: component \"${idStrPotentiallyWithoutVersion}\" was not found.\\nthis component is a dependency of \"${\n dependenciesOf || '<none>'\n }\" and is needed as part of the graph generation`\n );\n }\n if (ConsumerComponent.isComponentInvalidByErrorType(err)) {\n if (dependenciesOf && !this.shouldThrowOnInvalidDeps) {\n this.logger.warn(`component ${idStrPotentiallyWithoutVersion}, dependency of ${dependenciesOf} is invalid. continuing without it`);\n return null;\n }\n throw new BitError(\n `error: component \"${idStrPotentiallyWithoutVersion}\" is invalid (${err.message}).\\nthis component is a dependency of \"${\n dependenciesOf || '<none>'\n }\" and is needed as part of the graph generation`\n );\n }\n if (dependenciesOf) this.logger.error(`failed loading dependencies of ${dependenciesOf}`);\n throw err;\n }\n });\n return compact(components);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.541/dist/workspace.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.workspace_workspace@1.0.541/dist/workspace.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [compositions_0];
|
|
5
5
|
export const overview = [overview_0];
|
package/dist/workspace.js
CHANGED
|
@@ -680,11 +680,11 @@ class Workspace {
|
|
|
680
680
|
return this.scope.getLogs(id, shortHash, startsFrom);
|
|
681
681
|
}
|
|
682
682
|
async getGraph(ids, shouldThrowOnMissingDep = true) {
|
|
683
|
-
if (!ids || ids.length < 1) ids =
|
|
683
|
+
if (!ids || ids.length < 1) ids = this.listIds();
|
|
684
684
|
return this.buildOneGraphForComponents(ids, undefined, undefined, shouldThrowOnMissingDep);
|
|
685
685
|
}
|
|
686
686
|
async getGraphIds(ids, shouldThrowOnMissingDep = true) {
|
|
687
|
-
if (!ids || ids.length < 1) ids =
|
|
687
|
+
if (!ids || ids.length < 1) ids = this.listIds();
|
|
688
688
|
const graphIdsFromFsBuilder = new (_buildGraphIdsFromFs().GraphIdsFromFsBuilder)(this, this.logger, this.dependencyResolver, shouldThrowOnMissingDep);
|
|
689
689
|
return graphIdsFromFsBuilder.buildGraph(ids);
|
|
690
690
|
}
|