@lage-run/target-graph
Advanced tools
Comparing version 0.4.5 to 0.5.0
@@ -5,3 +5,18 @@ { | ||
{ | ||
"date": "Wed, 26 Oct 2022 00:01:45 GMT", | ||
"date": "Wed, 26 Oct 2022 22:00:56 GMT", | ||
"tag": "@lage-run/target-graph_v0.5.0", | ||
"version": "0.5.0", | ||
"comments": { | ||
"minor": [ | ||
{ | ||
"author": "kchau@microsoft.com", | ||
"package": "@lage-run/target-graph", | ||
"commit": "d4f959e1c46d50725f556f92917f1a1cf3ee0bd9", | ||
"comment": "adds support for weighted targets" | ||
} | ||
] | ||
} | ||
}, | ||
{ | ||
"date": "Wed, 26 Oct 2022 00:02:06 GMT", | ||
"tag": "@lage-run/target-graph_v0.4.5", | ||
@@ -8,0 +23,0 @@ "version": "0.4.5", |
# Change Log - @lage-run/target-graph | ||
This log was last generated on Wed, 26 Oct 2022 00:01:45 GMT and should not be manually modified. | ||
This log was last generated on Wed, 26 Oct 2022 22:00:56 GMT and should not be manually modified. | ||
<!-- Start content --> | ||
## 0.5.0 | ||
Wed, 26 Oct 2022 22:00:56 GMT | ||
### Minor changes | ||
- adds support for weighted targets (kchau@microsoft.com) | ||
## 0.4.5 | ||
Wed, 26 Oct 2022 00:01:45 GMT | ||
Wed, 26 Oct 2022 00:02:06 GMT | ||
@@ -11,0 +19,0 @@ ### Patches |
@@ -13,2 +13,3 @@ "use strict"; | ||
const detectCycles_1 = require("./detectCycles"); | ||
const getWeight_1 = require("./getWeight"); | ||
/** | ||
@@ -70,4 +71,6 @@ * TargetGraphBuilder class provides a builder API for registering target configs. It exposes a method called `generateTargetGraph` to | ||
environmentGlob, | ||
weight: 1, | ||
options, | ||
}; | ||
target.weight = (0, getWeight_1.getWeight)(target, config.weight, maxWorkers); | ||
return target; | ||
@@ -102,4 +105,6 @@ } | ||
environmentGlob, | ||
weight: 1, | ||
options, | ||
}; | ||
target.weight = (0, getWeight_1.getWeight)(target, config.weight, maxWorkers); | ||
return target; | ||
@@ -219,2 +224,3 @@ } | ||
depSpecs: [], | ||
weight: 1, | ||
}); | ||
@@ -221,0 +227,0 @@ const subGraphEdges = this.createSubGraph(tasks, scope); |
@@ -54,2 +54,10 @@ export interface Target { | ||
/** | ||
* Weight of a target - used to determine the number of "worker slots" to dedicate to a target | ||
* | ||
* Even if we have workers "free", we might not want to dedicate them to a target that is very heavy (i.e. takes multiple CPU cores). | ||
* An example is jest targets that can take up multiple cores with its own worker pool. | ||
* | ||
*/ | ||
weight?: number; | ||
/** | ||
* Run options for the Target | ||
@@ -56,0 +64,0 @@ */ |
@@ -0,1 +1,2 @@ | ||
import type { Target } from "./Target"; | ||
/** | ||
@@ -53,2 +54,11 @@ * Target configuration - to be used inside `lage.config.js` options.pipeline configurations | ||
/** | ||
* Weight of a target - used to determine the number of "worker slots" to dedicate to a target | ||
* | ||
* Even if we have workers "free", we might not want to dedicate them to a target that is very heavy (i.e. takes multiple CPU cores). | ||
* An example is jest targets that can take up multiple cores with its own worker pool. | ||
* | ||
* This weight will be "culled" to the max number of workers (concurrency) for the target type. (i.e. maxWorkers above) | ||
*/ | ||
weight?: number | ((target: Target, maxWorkers?: number) => number); | ||
/** | ||
* Run options for the Target Runner. (e.g. `{ env: ...process.env, colors: true, ... }`) | ||
@@ -55,0 +65,0 @@ */ |
{ | ||
"name": "@lage-run/target-graph", | ||
"version": "0.4.5", | ||
"version": "0.5.0", | ||
"description": "Target for Lage", | ||
@@ -5,0 +5,0 @@ "repository": { |
Sorry, the diff of this file is not supported yet
69787
39
1272