@lage-run/target-graph
Advanced tools
Comparing version 0.5.2 to 0.5.3
@@ -5,3 +5,18 @@ { | ||
{ | ||
"date": "Tue, 01 Nov 2022 20:42:50 GMT", | ||
"date": "Tue, 01 Nov 2022 22:25:35 GMT", | ||
"tag": "@lage-run/target-graph_v0.5.3", | ||
"version": "0.5.3", | ||
"comments": { | ||
"patch": [ | ||
{ | ||
"author": "kchau@microsoft.com", | ||
"package": "@lage-run/target-graph", | ||
"commit": "1664f38eca34da2d51b6a581c92caba5fc51e5fd", | ||
"comment": "adds import extensions of .js to prepare of esmodule switchover" | ||
} | ||
] | ||
} | ||
}, | ||
{ | ||
"date": "Tue, 01 Nov 2022 20:43:17 GMT", | ||
"tag": "@lage-run/target-graph_v0.5.2", | ||
@@ -8,0 +23,0 @@ "version": "0.5.2", |
# Change Log - @lage-run/target-graph | ||
This log was last generated on Tue, 01 Nov 2022 20:42:50 GMT and should not be manually modified. | ||
This log was last generated on Tue, 01 Nov 2022 22:25:35 GMT and should not be manually modified. | ||
<!-- Start content --> | ||
## 0.5.3 | ||
Tue, 01 Nov 2022 22:25:35 GMT | ||
### Patches | ||
- adds import extensions of .js to prepare of esmodule switchover (kchau@microsoft.com) | ||
## 0.5.2 | ||
Tue, 01 Nov 2022 20:42:50 GMT | ||
Tue, 01 Nov 2022 20:43:17 GMT | ||
@@ -11,0 +19,0 @@ ### Patches |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "./types/Target"; | ||
import type { Target } from "./types/Target.js"; | ||
/** | ||
@@ -3,0 +3,0 @@ * Checks for any cycles in the dependency graph, returning `{ hasCycle: false }` if no cycles were detected. |
@@ -1,3 +0,3 @@ | ||
import type { Target } from "./types/Target"; | ||
import type { DependencyMap } from "workspace-tools/lib/graph/createDependencyMap"; | ||
import type { Target } from "./types/Target.js"; | ||
import type { DependencyMap } from "workspace-tools/lib/graph/createDependencyMap.js"; | ||
/** | ||
@@ -4,0 +4,0 @@ * Expands the dependency graph by adding all transitive dependencies of the given targets. |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.expandDepSpecs = void 0; | ||
const targetId_1 = require("./targetId"); | ||
const targetId_js_1 = require("./targetId.js"); | ||
/** | ||
@@ -41,3 +41,3 @@ * Expands the dependency graph by adding all transitive dependencies of the given targets. | ||
// because any node could potentially be part of the entry point in building the scoped target subgraph | ||
dependencies.push([(0, targetId_1.getStartTargetId)(), to]); | ||
dependencies.push([(0, targetId_js_1.getStartTargetId)(), to]); | ||
// Skip any targets that have no "deps" specified | ||
@@ -65,4 +65,4 @@ if (!depSpecs || depSpecs.length === 0) { | ||
// (e.g. "build": ["build-tool#build"]) | ||
const { packageName, task } = (0, targetId_1.getPackageAndTask)(dependencyTargetId); | ||
const normalizedDependencyTargetId = (0, targetId_1.getTargetId)(packageName, task); | ||
const { packageName, task } = (0, targetId_js_1.getPackageAndTask)(dependencyTargetId); | ||
const normalizedDependencyTargetId = (0, targetId_js_1.getTargetId)(packageName, task); | ||
addDependency(normalizedDependencyTargetId, to); | ||
@@ -92,4 +92,4 @@ } | ||
const task = dependencyTargetId; | ||
if (targets.has((0, targetId_1.getTargetId)(packageName, task))) { | ||
addDependency((0, targetId_1.getTargetId)(packageName, task), to); | ||
if (targets.has((0, targetId_js_1.getTargetId)(packageName, task))) { | ||
addDependency((0, targetId_js_1.getTargetId)(packageName, task), to); | ||
} | ||
@@ -96,0 +96,0 @@ } |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "./types/Target"; | ||
import type { Target } from "./types/Target.js"; | ||
export declare function getWeight(target: Target, weight: number | ((target: Target, maxWorkers?: number) => number) | undefined, maxWorkers?: number): number; |
@@ -1,7 +0,7 @@ | ||
export type { Target } from "./types/Target"; | ||
export type { TargetGraph } from "./types/TargetGraph"; | ||
export type { TargetConfig } from "./types/TargetConfig"; | ||
export { sortTargetsByPriority } from "./sortTargetsByPriority"; | ||
export { getPackageAndTask, getTargetId, getStartTargetId } from "./targetId"; | ||
export { detectCycles } from "./detectCycles"; | ||
export { TargetGraphBuilder } from "./TargetGraphBuilder"; | ||
export type { Target } from "./types/Target.js"; | ||
export type { TargetGraph } from "./types/TargetGraph.js"; | ||
export type { TargetConfig } from "./types/TargetConfig.js"; | ||
export { sortTargetsByPriority } from "./sortTargetsByPriority.js"; | ||
export { getPackageAndTask, getTargetId, getStartTargetId } from "./targetId.js"; | ||
export { detectCycles } from "./detectCycles.js"; | ||
export { TargetGraphBuilder } from "./TargetGraphBuilder.js"; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.TargetGraphBuilder = exports.detectCycles = exports.getStartTargetId = exports.getTargetId = exports.getPackageAndTask = exports.sortTargetsByPriority = void 0; | ||
var sortTargetsByPriority_1 = require("./sortTargetsByPriority"); | ||
Object.defineProperty(exports, "sortTargetsByPriority", { enumerable: true, get: function () { return sortTargetsByPriority_1.sortTargetsByPriority; } }); | ||
var targetId_1 = require("./targetId"); | ||
Object.defineProperty(exports, "getPackageAndTask", { enumerable: true, get: function () { return targetId_1.getPackageAndTask; } }); | ||
Object.defineProperty(exports, "getTargetId", { enumerable: true, get: function () { return targetId_1.getTargetId; } }); | ||
Object.defineProperty(exports, "getStartTargetId", { enumerable: true, get: function () { return targetId_1.getStartTargetId; } }); | ||
var detectCycles_1 = require("./detectCycles"); | ||
Object.defineProperty(exports, "detectCycles", { enumerable: true, get: function () { return detectCycles_1.detectCycles; } }); | ||
var TargetGraphBuilder_1 = require("./TargetGraphBuilder"); | ||
Object.defineProperty(exports, "TargetGraphBuilder", { enumerable: true, get: function () { return TargetGraphBuilder_1.TargetGraphBuilder; } }); | ||
var sortTargetsByPriority_js_1 = require("./sortTargetsByPriority.js"); | ||
Object.defineProperty(exports, "sortTargetsByPriority", { enumerable: true, get: function () { return sortTargetsByPriority_js_1.sortTargetsByPriority; } }); | ||
var targetId_js_1 = require("./targetId.js"); | ||
Object.defineProperty(exports, "getPackageAndTask", { enumerable: true, get: function () { return targetId_js_1.getPackageAndTask; } }); | ||
Object.defineProperty(exports, "getTargetId", { enumerable: true, get: function () { return targetId_js_1.getTargetId; } }); | ||
Object.defineProperty(exports, "getStartTargetId", { enumerable: true, get: function () { return targetId_js_1.getStartTargetId; } }); | ||
var detectCycles_js_1 = require("./detectCycles.js"); | ||
Object.defineProperty(exports, "detectCycles", { enumerable: true, get: function () { return detectCycles_js_1.detectCycles; } }); | ||
var TargetGraphBuilder_js_1 = require("./TargetGraphBuilder.js"); | ||
Object.defineProperty(exports, "TargetGraphBuilder", { enumerable: true, get: function () { return TargetGraphBuilder_js_1.TargetGraphBuilder; } }); | ||
//# sourceMappingURL=index.js.map |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "./types/Target"; | ||
import type { Target } from "./types/Target.js"; | ||
/** | ||
@@ -3,0 +3,0 @@ * Priorities for a target is actually the MAX of all the priorities of the targets that depend on it. |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "./types/Target"; | ||
import type { Target } from "./types/Target.js"; | ||
export declare function sortTargetsByPriority(targets: Target[]): Target[]; |
import type { PackageInfos } from "workspace-tools"; | ||
import type { Target } from "./types/Target"; | ||
import type { TargetConfig } from "./types/TargetConfig"; | ||
import type { Target } from "./types/Target.js"; | ||
import type { TargetConfig } from "./types/TargetConfig.js"; | ||
/** | ||
@@ -5,0 +5,0 @@ * TargetGraphBuilder class provides a builder API for registering target configs. It exposes a method called `generateTargetGraph` to |
@@ -7,9 +7,9 @@ "use strict"; | ||
exports.TargetGraphBuilder = void 0; | ||
const createDependencyMap_1 = require("workspace-tools/lib/graph/createDependencyMap"); | ||
const targetId_1 = require("./targetId"); | ||
const prioritize_1 = require("./prioritize"); | ||
const expandDepSpecs_1 = require("./expandDepSpecs"); | ||
const createDependencyMap_js_1 = require("workspace-tools/lib/graph/createDependencyMap.js"); | ||
const targetId_js_1 = require("./targetId.js"); | ||
const prioritize_js_1 = require("./prioritize.js"); | ||
const expandDepSpecs_js_1 = require("./expandDepSpecs.js"); | ||
const path_1 = __importDefault(require("path")); | ||
const detectCycles_1 = require("./detectCycles"); | ||
const getWeight_1 = require("./getWeight"); | ||
const detectCycles_js_1 = require("./detectCycles.js"); | ||
const getWeight_js_1 = require("./getWeight.js"); | ||
/** | ||
@@ -41,3 +41,3 @@ * TargetGraphBuilder class provides a builder API for registering target configs. It exposes a method called `generateTargetGraph` to | ||
this.dependencies = []; | ||
this.dependencyMap = (0, createDependencyMap_1.createDependencyMap)(packageInfos, { withDevDependencies: true, withPeerDependencies: false }); | ||
this.dependencyMap = (0, createDependencyMap_js_1.createDependencyMap)(packageInfos, { withDevDependencies: true, withPeerDependencies: false }); | ||
} | ||
@@ -53,4 +53,4 @@ /** | ||
const { options, dependsOn, deps, inputs, outputs, priority, maxWorkers, environmentGlob } = config; | ||
const { task } = (0, targetId_1.getPackageAndTask)(id); | ||
const targetId = (0, targetId_1.getTargetId)(undefined, task); | ||
const { task } = (0, targetId_js_1.getPackageAndTask)(id); | ||
const targetId = (0, targetId_js_1.getTargetId)(undefined, task); | ||
const target = { | ||
@@ -76,3 +76,3 @@ id: targetId, | ||
}; | ||
target.weight = (0, getWeight_1.getWeight)(target, config.weight, maxWorkers); | ||
target.weight = (0, getWeight_js_1.getWeight)(target, config.weight, maxWorkers); | ||
return target; | ||
@@ -92,3 +92,3 @@ } | ||
const target = { | ||
id: (0, targetId_1.getTargetId)(packageName, task), | ||
id: (0, targetId_js_1.getTargetId)(packageName, task), | ||
label: `${packageName} - ${task}`, | ||
@@ -111,3 +111,3 @@ type: config.type, | ||
}; | ||
target.weight = (0, getWeight_1.getWeight)(target, config.weight, maxWorkers); | ||
target.weight = (0, getWeight_js_1.getWeight)(target, config.weight, maxWorkers); | ||
return target; | ||
@@ -141,5 +141,5 @@ } | ||
for (const pkg of scope) { | ||
if (this.targets.has((0, targetId_1.getTargetId)(pkg, task))) { | ||
queue.push((0, targetId_1.getTargetId)(pkg, task)); | ||
addTargetGraphEdge((0, targetId_1.getStartTargetId)(), (0, targetId_1.getTargetId)(pkg, task)); | ||
if (this.targets.has((0, targetId_js_1.getTargetId)(pkg, task))) { | ||
queue.push((0, targetId_js_1.getTargetId)(pkg, task)); | ||
addTargetGraphEdge((0, targetId_js_1.getStartTargetId)(), (0, targetId_js_1.getTargetId)(pkg, task)); | ||
} | ||
@@ -151,3 +151,3 @@ } | ||
queue.push(target.id); | ||
addTargetGraphEdge((0, targetId_1.getStartTargetId)(), target.id); | ||
addTargetGraphEdge((0, targetId_js_1.getStartTargetId)(), target.id); | ||
} | ||
@@ -190,3 +190,3 @@ } | ||
else if (id.includes("#")) { | ||
const { packageName, task } = (0, targetId_1.getPackageAndTask)(id); | ||
const { packageName, task } = (0, targetId_js_1.getPackageAndTask)(id); | ||
const target = this.createPackageTarget(packageName, task, config); | ||
@@ -219,4 +219,4 @@ this.targets.set(target.id, target); | ||
var _a, _b; | ||
this.dependencies = (0, expandDepSpecs_1.expandDepSpecs)(this.targets, this.dependencyMap); | ||
const startId = (0, targetId_1.getStartTargetId)(); | ||
this.dependencies = (0, expandDepSpecs_js_1.expandDepSpecs)(this.targets, this.dependencyMap); | ||
const startId = (0, targetId_js_1.getStartTargetId)(); | ||
this.targets.set(startId, { | ||
@@ -252,3 +252,3 @@ id: startId, | ||
// Ensure we do not have cycles in the subgraph | ||
const cycleInfo = (0, detectCycles_1.detectCycles)(this.targets); | ||
const cycleInfo = (0, detectCycles_js_1.detectCycles)(this.targets); | ||
if (cycleInfo.hasCycle) { | ||
@@ -259,3 +259,3 @@ throw new Error("Cycles detected in the target graph: " + cycleInfo.cycle.concat(cycleInfo.cycle[0]).join(" -> ")); | ||
// The full graph might produce a different aggregated priority value for a target | ||
(0, prioritize_1.prioritize)(subGraphTargets); | ||
(0, prioritize_js_1.prioritize)(subGraphTargets); | ||
return { | ||
@@ -262,0 +262,0 @@ targets: subGraphTargets, |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "./Target"; | ||
import type { Target } from "./Target.js"; | ||
/** | ||
@@ -3,0 +3,0 @@ * Target configuration - to be used inside `lage.config.js` options.pipeline configurations |
@@ -1,2 +0,2 @@ | ||
import type { Target } from "../types/Target"; | ||
import type { Target } from "../types/Target.js"; | ||
export interface TargetGraph { | ||
@@ -3,0 +3,0 @@ targets: Map<string, Target>; |
{ | ||
"name": "@lage-run/target-graph", | ||
"version": "0.5.2", | ||
"version": "0.5.3", | ||
"description": "Target for Lage", | ||
@@ -5,0 +5,0 @@ "repository": { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
71283
1304