@visulima/task-runner 0.0.1 → 1.0.0-alpha.10
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/CHANGELOG.md +212 -0
- package/LICENSE.md +21 -0
- package/README.md +307 -29
- package/dist/index.d.ts +3166 -0
- package/dist/index.js +1 -0
- package/dist/packem_chunks/index.js +11 -0
- package/dist/packem_shared/Cache-C540ZPYk.js +2 -0
- package/dist/packem_shared/CompositeLifeCycle-D0zWvAXJ.js +1 -0
- package/dist/packem_shared/FileAccessTracker-DSNf03JW.js +47 -0
- package/dist/packem_shared/FingerprintManager-CYW2EwLc.js +2 -0
- package/dist/packem_shared/HttpRemoteCache-Ch-_9ejF.js +1 -0
- package/dist/packem_shared/INPUT_URI_SCHEMES-Csrd0tlg.js +1 -0
- package/dist/packem_shared/IncrementalFileHasher-jtLxMBKy.js +1 -0
- package/dist/packem_shared/LogReporter-BUPWiXAq.js +13 -0
- package/dist/packem_shared/ReapiRemoteCache-B3uQuVqP.js +251 -0
- package/dist/packem_shared/TaskOrchestrator-BgfOpjuB.js +2 -0
- package/dist/packem_shared/TerminalBuffer-BtZy7TpT.js +3 -0
- package/dist/packem_shared/TrackedTaskExecutor-D3-LNT_d.js +2 -0
- package/dist/packem_shared/V2_ROOT-injxWBrl.js +1 -0
- package/dist/packem_shared/actionDigestForTaskHash-BOL4fZ9v.js +1 -0
- package/dist/packem_shared/archive-CDfGy5Lm.js +1 -0
- package/dist/packem_shared/buildForwardDependencyMap-w1FVPFdv.js +3 -0
- package/dist/packem_shared/collectFiles-W4bnBRpb.js +1 -0
- package/dist/packem_shared/computeTaskHash-C2Iua2DL.js +1 -0
- package/dist/packem_shared/containsBlob-DBWgvkM_.js +1 -0
- package/dist/packem_shared/createInputHandler-CkDCpPYy.js +1 -0
- package/dist/packem_shared/createTaskGraph-CEYYI-DL.js +1 -0
- package/dist/packem_shared/defaultTaskRunner-CGbD4ahu.js +2 -0
- package/dist/packem_shared/detectFrameworks-WVZJOPgN.js +1 -0
- package/dist/packem_shared/detectScriptShell-CaTDk5cW.js +1 -0
- package/dist/packem_shared/digestBuffer-g11aCaDx.js +1 -0
- package/dist/packem_shared/enforceProjectConstraints-X49n3bVL.js +1 -0
- package/dist/packem_shared/expandArguments-4mab7-Ds.js +1 -0
- package/dist/packem_shared/expandShortcut-BErNHNXZ.js +1 -0
- package/dist/packem_shared/expandTokensInString-Cyx0qSFA.js +1 -0
- package/dist/packem_shared/expandWildcard-DE0dOOZF.js +1 -0
- package/dist/packem_shared/extractPackageName-BeL6Gc3a.js +1 -0
- package/dist/packem_shared/findCycle-BY8-jmzB.js +1 -0
- package/dist/packem_shared/formatTimingTable-CP3rsDwf.js +7 -0
- package/dist/packem_shared/generateRunSummary-ep21OCUT.js +1 -0
- package/dist/packem_shared/getCurrentBranch-D-qoZByx.js +1 -0
- package/dist/packem_shared/getMainWorktreeRoot-DRN_i8jA.js +1 -0
- package/dist/packem_shared/isNativeAvailable-BOavFPX1.js +1 -0
- package/dist/packem_shared/parseCommands-b1K2vIxj.js +1 -0
- package/dist/packem_shared/parsePartition-uzPNgtPp.js +1 -0
- package/dist/packem_shared/projectGraphToDot-K5A_CRoW.js +250 -0
- package/dist/packem_shared/resolveCacheMode-XhD7mg7G.js +1 -0
- package/dist/packem_shared/resolveOutputs-BBjdaraf.js +1 -0
- package/dist/packem_shared/runConcurrentFallback-CShJ7HUp.js +3 -0
- package/dist/packem_shared/runConcurrently-B471CUHO.js +1 -0
- package/dist/packem_shared/runTeardown-DBBpBAyb.js +1 -0
- package/dist/packem_shared/shell-quote-CksLqyXK.js +1 -0
- package/dist/packem_shared/stripQuotes-jkZb0CL9.js +1 -0
- package/dist/packem_shared/toChromeTrace-DxN5NQIU.js +1 -0
- package/dist/packem_shared/utils-BH2W5Wml.js +1 -0
- package/dist/packem_shared/withRestart-CWO6BKv_.js +1 -0
- package/index.js +775 -0
- package/package.json +86 -7
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
var E=Object.defineProperty;var h=(e,t)=>E(e,"name",{value:t,configurable:!0});var y=Object.freeze,v=Object.defineProperty,p=h((e,t)=>v(e,"name",{value:t,configurable:!0}),"g"),A=h((e,t)=>y(v(e,"raw",{value:y(t||e.slice())})),"b");const b=p((e,t,s)=>{if(t&&!t.has(e))return"#eeeeee";switch(s?.get(e)){case"failure":return"#FFB6C1";case"local-cache":case"local-cache-kept-existing":case"remote-cache":return"#87CEEB";case"running":return"#FFD700";case"skipped":return"#D3D3D3";case"success":return"#90EE90";default:return"#FFFFFF"}},"getNodeColor"),w=p(e=>{switch(e){case"failure":return"[FAIL] ";case"local-cache":case"local-cache-kept-existing":case"remote-cache":return"[cache] ";case"running":return"[...] ";case"skipped":return"[skip] ";case"success":return"[ok] ";default:return""}},"getStatusIcon"),C=p((e,t)=>`${w(t?.get(e))}${e}`,"formatTaskLine"),k=p((e,t,s,r,o,a,i)=>{let d;t===""?d="":s?d="└── ":d="├── ";const c=o.has(e),n=c?" (*)":"",l=w(i?.get(e));if(a.push(`${t}${d}${l}${e}${n}`),c)return;o.add(e);const g=r.dependencies[e]??[];let u;t===""?u="":s?u=`${t} `:u=`${t}│ `;for(let f=0;f<g.length;f+=1){const j=f===g.length-1,x=g[f];x&&k(x,u,j,r,o,a,i)}},"printTree"),S=p((e,t={})=>{const{focusedTasks:s,groupByProject:r=!0,taskStatuses:o}=t,a=s?new Set(s):void 0,i=["digraph TaskGraph {"," rankdir=LR;",' node [shape=box, style=filled, fontname="monospace"];'];if(r){const d=new Map;for(const c of Object.values(e.tasks)){const{project:n}=c.target,l=d.get(n)??[];l.push(c),d.set(n,l)}for(const[c,n]of d){i.push(` subgraph "cluster_${c}" {`,` label="${c}";`," style=dashed;",' color="#888888";');for(const l of n){const g=b(l.id,a,o);i.push(` "${l.id}" [label="${l.target.target}", fillcolor="${g}"];`)}i.push(" }")}}else for(const d of Object.values(e.tasks)){const c=b(d.id,a,o);i.push(` "${d.id}" [fillcolor="${c}"];`)}for(const[d,c]of Object.entries(e.dependencies))for(const n of c){const l=a&&!a.has(d)?"#cccccc":"#333333";i.push(` "${d}" -> "${n}" [color="${l}"];`)}return i.push("}"),i.join(`
|
|
2
|
+
`)},"toGraphvizDot"),M=p((e,t)=>{const s=Object.values(e.tasks).map(o=>({configuration:o.target.configuration,id:o.id,project:o.target.project,status:t?.get(o.id),target:o.target.target})),r=[];for(const[o,a]of Object.entries(e.dependencies))for(const i of a)r.push({source:o,target:i});return{edges:r,nodes:s,roots:e.roots}},"toGraphJson");var m;const G=p((e,t={})=>{const s=M(e,t.taskStatuses);if(t.focusedTasks&&t.focusedTasks.length>0){const r=new Set(t.focusedTasks);s.nodes=s.nodes.filter(o=>r.has(o.id)),s.edges=s.edges.filter(o=>r.has(o.source)&&r.has(o.target)),s.roots=s.roots.filter(o=>r.has(o))}return String.raw(m||(m=A([`<!DOCTYPE html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
<head>
|
|
5
|
+
<meta charset="UTF-8">
|
|
6
|
+
<title>Task Graph</title>
|
|
7
|
+
<style>
|
|
8
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
9
|
+
body { font-family: system-ui, -apple-system, sans-serif; background: #1a1a2e; color: #eee; }
|
|
10
|
+
svg { width: 100vw; height: 100vh; }
|
|
11
|
+
.node rect { rx: 6; ry: 6; stroke: #555; stroke-width: 1.5; cursor: pointer; }
|
|
12
|
+
.node text { font-size: 11px; fill: #1a1a2e; font-weight: 600; pointer-events: none; }
|
|
13
|
+
.node:hover rect { stroke: #fff; stroke-width: 2; }
|
|
14
|
+
.edge { stroke: #444; stroke-width: 1.5; fill: none; marker-end: url(#arrow); }
|
|
15
|
+
.label { font-size: 10px; fill: #888; }
|
|
16
|
+
#info { position: fixed; top: 12px; right: 12px; background: #16213e; padding: 12px 16px; border-radius: 8px; font-size: 13px; }
|
|
17
|
+
#info b { color: #e94560; }
|
|
18
|
+
</style>
|
|
19
|
+
</head>
|
|
20
|
+
<body>
|
|
21
|
+
<div id="info">
|
|
22
|
+
<b>`,"</b> tasks · <b>","</b> dependencies · <b>",`</b> roots
|
|
23
|
+
</div>
|
|
24
|
+
<svg id="graph">
|
|
25
|
+
<defs>
|
|
26
|
+
<marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto">
|
|
27
|
+
<path d="M 0 0 L 10 5 L 0 10 z" fill="#666"/>
|
|
28
|
+
</marker>
|
|
29
|
+
</defs>
|
|
30
|
+
</svg>
|
|
31
|
+
<script>
|
|
32
|
+
const data = `,`;
|
|
33
|
+
const svg = document.getElementById('graph');
|
|
34
|
+
const W = window.innerWidth, H = window.innerHeight;
|
|
35
|
+
const statusColors = {
|
|
36
|
+
success: '#2ecc71', 'local-cache': '#3498db', 'remote-cache': '#9b59b6',
|
|
37
|
+
failure: '#e74c3c', running: '#f39c12', skipped: '#95a5a6', pending: '#ecf0f1'
|
|
38
|
+
};
|
|
39
|
+
const projectColors = {};
|
|
40
|
+
const palette = ['#e94560','#0f3460','#533483','#16c79a','#f39c12','#2ecc71','#3498db','#e67e22','#9b59b6','#1abc9c'];
|
|
41
|
+
let ci = 0;
|
|
42
|
+
data.nodes.forEach(n => {
|
|
43
|
+
if (!projectColors[n.project]) {
|
|
44
|
+
projectColors[n.project] = palette[ci++ % palette.length];
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
// Simple force-directed layout
|
|
49
|
+
const nodes = data.nodes.map((n, i) => ({
|
|
50
|
+
...n, x: W/2 + (Math.random()-0.5)*400, y: H/2 + (Math.random()-0.5)*300, vx: 0, vy: 0
|
|
51
|
+
}));
|
|
52
|
+
const nodeMap = new Map(nodes.map(n => [n.id, n]));
|
|
53
|
+
const edges = data.edges.map(e => ({ source: nodeMap.get(e.source), target: nodeMap.get(e.target) }));
|
|
54
|
+
|
|
55
|
+
function simulate() {
|
|
56
|
+
for (let iter = 0; iter < 300; iter++) {
|
|
57
|
+
// Repulsion
|
|
58
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
59
|
+
for (let j = i+1; j < nodes.length; j++) {
|
|
60
|
+
let dx = nodes[j].x - nodes[i].x, dy = nodes[j].y - nodes[i].y;
|
|
61
|
+
let d = Math.sqrt(dx*dx + dy*dy) || 1;
|
|
62
|
+
let f = 8000 / (d * d);
|
|
63
|
+
nodes[i].vx -= dx/d * f; nodes[i].vy -= dy/d * f;
|
|
64
|
+
nodes[j].vx += dx/d * f; nodes[j].vy += dy/d * f;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
// Attraction (edges)
|
|
68
|
+
edges.forEach(e => {
|
|
69
|
+
if (!e.source || !e.target) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
let dx = e.target.x - e.source.x, dy = e.target.y - e.source.y;
|
|
73
|
+
let d = Math.sqrt(dx*dx + dy*dy) || 1;
|
|
74
|
+
let f = (d - 150) * 0.01;
|
|
75
|
+
e.source.vx += dx/d * f; e.source.vy += dy/d * f;
|
|
76
|
+
e.target.vx -= dx/d * f; e.target.vy -= dy/d * f;
|
|
77
|
+
});
|
|
78
|
+
// Gravity
|
|
79
|
+
nodes.forEach(n => {
|
|
80
|
+
n.vx += (W/2 - n.x) * 0.001;
|
|
81
|
+
n.vy += (H/2 - n.y) * 0.001;
|
|
82
|
+
n.x += n.vx * 0.3; n.y += n.vy * 0.3;
|
|
83
|
+
n.vx *= 0.8; n.vy *= 0.8;
|
|
84
|
+
n.x = Math.max(60, Math.min(W-60, n.x));
|
|
85
|
+
n.y = Math.max(30, Math.min(H-30, n.y));
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
simulate();
|
|
90
|
+
|
|
91
|
+
// Render
|
|
92
|
+
edges.forEach(e => {
|
|
93
|
+
if (!e.source || !e.target) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const line = document.createElementNS('http://www.w3.org/2000/svg','line');
|
|
97
|
+
line.setAttribute('x1', e.source.x); line.setAttribute('y1', e.source.y);
|
|
98
|
+
line.setAttribute('x2', e.target.x); line.setAttribute('y2', e.target.y);
|
|
99
|
+
line.setAttribute('class','edge');
|
|
100
|
+
svg.appendChild(line);
|
|
101
|
+
});
|
|
102
|
+
nodes.forEach(n => {
|
|
103
|
+
const g = document.createElementNS('http://www.w3.org/2000/svg','g');
|
|
104
|
+
g.setAttribute('class','node');
|
|
105
|
+
g.setAttribute('transform','translate('+(n.x-50)+','+(n.y-14)+')');
|
|
106
|
+
const rect = document.createElementNS('http://www.w3.org/2000/svg','rect');
|
|
107
|
+
rect.setAttribute('width','100'); rect.setAttribute('height','28');
|
|
108
|
+
rect.setAttribute('fill', n.status ? (statusColors[n.status]||'#ecf0f1') : projectColors[n.project]);
|
|
109
|
+
g.appendChild(rect);
|
|
110
|
+
const text = document.createElementNS('http://www.w3.org/2000/svg','text');
|
|
111
|
+
text.setAttribute('x','50'); text.setAttribute('y','18'); text.setAttribute('text-anchor','middle');
|
|
112
|
+
text.textContent = n.id.length > 14 ? n.target : n.id;
|
|
113
|
+
g.appendChild(text);
|
|
114
|
+
g.addEventListener('click', () => {
|
|
115
|
+
const deps = data.edges.filter(e => e.source === n.id).map(e => e.target);
|
|
116
|
+
const rdeps = data.edges.filter(e => e.target === n.id).map(e => e.source);
|
|
117
|
+
alert(n.id + '
|
|
118
|
+
|
|
119
|
+
Depends on: ' + (deps.join(', ')||'none') + '
|
|
120
|
+
Required by: ' + (rdeps.join(', ')||'none'));
|
|
121
|
+
});
|
|
122
|
+
svg.appendChild(g);
|
|
123
|
+
});
|
|
124
|
+
<\/script>
|
|
125
|
+
</body>
|
|
126
|
+
</html>`],[`<!DOCTYPE html>
|
|
127
|
+
<html lang="en">
|
|
128
|
+
<head>
|
|
129
|
+
<meta charset="UTF-8">
|
|
130
|
+
<title>Task Graph</title>
|
|
131
|
+
<style>
|
|
132
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
133
|
+
body { font-family: system-ui, -apple-system, sans-serif; background: #1a1a2e; color: #eee; }
|
|
134
|
+
svg { width: 100vw; height: 100vh; }
|
|
135
|
+
.node rect { rx: 6; ry: 6; stroke: #555; stroke-width: 1.5; cursor: pointer; }
|
|
136
|
+
.node text { font-size: 11px; fill: #1a1a2e; font-weight: 600; pointer-events: none; }
|
|
137
|
+
.node:hover rect { stroke: #fff; stroke-width: 2; }
|
|
138
|
+
.edge { stroke: #444; stroke-width: 1.5; fill: none; marker-end: url(#arrow); }
|
|
139
|
+
.label { font-size: 10px; fill: #888; }
|
|
140
|
+
#info { position: fixed; top: 12px; right: 12px; background: #16213e; padding: 12px 16px; border-radius: 8px; font-size: 13px; }
|
|
141
|
+
#info b { color: #e94560; }
|
|
142
|
+
</style>
|
|
143
|
+
</head>
|
|
144
|
+
<body>
|
|
145
|
+
<div id="info">
|
|
146
|
+
<b>`,"</b> tasks · <b>","</b> dependencies · <b>",`</b> roots
|
|
147
|
+
</div>
|
|
148
|
+
<svg id="graph">
|
|
149
|
+
<defs>
|
|
150
|
+
<marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto">
|
|
151
|
+
<path d="M 0 0 L 10 5 L 0 10 z" fill="#666"/>
|
|
152
|
+
</marker>
|
|
153
|
+
</defs>
|
|
154
|
+
</svg>
|
|
155
|
+
<script>
|
|
156
|
+
const data = `,`;
|
|
157
|
+
const svg = document.getElementById('graph');
|
|
158
|
+
const W = window.innerWidth, H = window.innerHeight;
|
|
159
|
+
const statusColors = {
|
|
160
|
+
success: '#2ecc71', 'local-cache': '#3498db', 'remote-cache': '#9b59b6',
|
|
161
|
+
failure: '#e74c3c', running: '#f39c12', skipped: '#95a5a6', pending: '#ecf0f1'
|
|
162
|
+
};
|
|
163
|
+
const projectColors = {};
|
|
164
|
+
const palette = ['#e94560','#0f3460','#533483','#16c79a','#f39c12','#2ecc71','#3498db','#e67e22','#9b59b6','#1abc9c'];
|
|
165
|
+
let ci = 0;
|
|
166
|
+
data.nodes.forEach(n => {
|
|
167
|
+
if (!projectColors[n.project]) {
|
|
168
|
+
projectColors[n.project] = palette[ci++ % palette.length];
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
// Simple force-directed layout
|
|
173
|
+
const nodes = data.nodes.map((n, i) => ({
|
|
174
|
+
...n, x: W/2 + (Math.random()-0.5)*400, y: H/2 + (Math.random()-0.5)*300, vx: 0, vy: 0
|
|
175
|
+
}));
|
|
176
|
+
const nodeMap = new Map(nodes.map(n => [n.id, n]));
|
|
177
|
+
const edges = data.edges.map(e => ({ source: nodeMap.get(e.source), target: nodeMap.get(e.target) }));
|
|
178
|
+
|
|
179
|
+
function simulate() {
|
|
180
|
+
for (let iter = 0; iter < 300; iter++) {
|
|
181
|
+
// Repulsion
|
|
182
|
+
for (let i = 0; i < nodes.length; i++) {
|
|
183
|
+
for (let j = i+1; j < nodes.length; j++) {
|
|
184
|
+
let dx = nodes[j].x - nodes[i].x, dy = nodes[j].y - nodes[i].y;
|
|
185
|
+
let d = Math.sqrt(dx*dx + dy*dy) || 1;
|
|
186
|
+
let f = 8000 / (d * d);
|
|
187
|
+
nodes[i].vx -= dx/d * f; nodes[i].vy -= dy/d * f;
|
|
188
|
+
nodes[j].vx += dx/d * f; nodes[j].vy += dy/d * f;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// Attraction (edges)
|
|
192
|
+
edges.forEach(e => {
|
|
193
|
+
if (!e.source || !e.target) {
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
let dx = e.target.x - e.source.x, dy = e.target.y - e.source.y;
|
|
197
|
+
let d = Math.sqrt(dx*dx + dy*dy) || 1;
|
|
198
|
+
let f = (d - 150) * 0.01;
|
|
199
|
+
e.source.vx += dx/d * f; e.source.vy += dy/d * f;
|
|
200
|
+
e.target.vx -= dx/d * f; e.target.vy -= dy/d * f;
|
|
201
|
+
});
|
|
202
|
+
// Gravity
|
|
203
|
+
nodes.forEach(n => {
|
|
204
|
+
n.vx += (W/2 - n.x) * 0.001;
|
|
205
|
+
n.vy += (H/2 - n.y) * 0.001;
|
|
206
|
+
n.x += n.vx * 0.3; n.y += n.vy * 0.3;
|
|
207
|
+
n.vx *= 0.8; n.vy *= 0.8;
|
|
208
|
+
n.x = Math.max(60, Math.min(W-60, n.x));
|
|
209
|
+
n.y = Math.max(30, Math.min(H-30, n.y));
|
|
210
|
+
});
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
simulate();
|
|
214
|
+
|
|
215
|
+
// Render
|
|
216
|
+
edges.forEach(e => {
|
|
217
|
+
if (!e.source || !e.target) {
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
const line = document.createElementNS('http://www.w3.org/2000/svg','line');
|
|
221
|
+
line.setAttribute('x1', e.source.x); line.setAttribute('y1', e.source.y);
|
|
222
|
+
line.setAttribute('x2', e.target.x); line.setAttribute('y2', e.target.y);
|
|
223
|
+
line.setAttribute('class','edge');
|
|
224
|
+
svg.appendChild(line);
|
|
225
|
+
});
|
|
226
|
+
nodes.forEach(n => {
|
|
227
|
+
const g = document.createElementNS('http://www.w3.org/2000/svg','g');
|
|
228
|
+
g.setAttribute('class','node');
|
|
229
|
+
g.setAttribute('transform','translate('+(n.x-50)+','+(n.y-14)+')');
|
|
230
|
+
const rect = document.createElementNS('http://www.w3.org/2000/svg','rect');
|
|
231
|
+
rect.setAttribute('width','100'); rect.setAttribute('height','28');
|
|
232
|
+
rect.setAttribute('fill', n.status ? (statusColors[n.status]||'#ecf0f1') : projectColors[n.project]);
|
|
233
|
+
g.appendChild(rect);
|
|
234
|
+
const text = document.createElementNS('http://www.w3.org/2000/svg','text');
|
|
235
|
+
text.setAttribute('x','50'); text.setAttribute('y','18'); text.setAttribute('text-anchor','middle');
|
|
236
|
+
text.textContent = n.id.length > 14 ? n.target : n.id;
|
|
237
|
+
g.appendChild(text);
|
|
238
|
+
g.addEventListener('click', () => {
|
|
239
|
+
const deps = data.edges.filter(e => e.source === n.id).map(e => e.target);
|
|
240
|
+
const rdeps = data.edges.filter(e => e.target === n.id).map(e => e.source);
|
|
241
|
+
alert(n.id + '\\n\\nDepends on: ' + (deps.join(', ')||'none') + '\\nRequired by: ' + (rdeps.join(', ')||'none'));
|
|
242
|
+
});
|
|
243
|
+
svg.appendChild(g);
|
|
244
|
+
});
|
|
245
|
+
<\/script>
|
|
246
|
+
</body>
|
|
247
|
+
</html>`])),s.nodes.length,s.edges.length,s.roots.length,JSON.stringify(s).replaceAll("</",String.raw`<\/`))},"toGraphHtml"),O=p((e,t={})=>{const{taskStatuses:s}=t,r=[],o=Object.keys(e.tasks).length,a=Object.values(e.dependencies).reduce((n,l)=>n+l.length,0);r.push(`Task Graph (${o} tasks, ${a} dependencies)`,"");const i=new Set;for(const n of Object.values(e.dependencies))for(const l of n)i.add(l);const d=Object.keys(e.tasks).filter(n=>!i.has(n));if(d.length===0){for(const n of Object.keys(e.tasks))r.push(C(n,s));return r.join(`
|
|
248
|
+
`)}const c=new Set;for(const n of d)k(n,"",!0,e,c,r,s);return c.size<o&&r.push("","(*) = already shown above"),r.join(`
|
|
249
|
+
`)},"toGraphAscii"),T=p(e=>{const t=["digraph ProjectGraph {"," rankdir=LR;",' node [shape=box, style=filled, fillcolor="#87CEEB", fontname="monospace"];'];for(const s of Object.values(e.nodes)){const r=s.type==="application"?"#FFD700":"#87CEEB";t.push(` "${s.name}" [fillcolor="${r}"];`)}for(const[s,r]of Object.entries(e.dependencies))for(const o of r){const a=[];switch(o.type){case"devDependency":{a.push("style=dotted",'color="#888888"');break}case"implicit":{a.push("style=dashed");break}case"peerDependency":{a.push("style=dashed",'color="#CC8800"');break}default:a.push("style=solid")}t.push(` "${s}" -> "${o.target}" [${a.join(", ")}];`)}return t.push("}"),t.join(`
|
|
250
|
+
`)},"projectGraphToDot");export{T as projectGraphToDot,O as toGraphAscii,G as toGraphHtml,M as toGraphJson,S as toGraphvizDot};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var n=Object.defineProperty;var a=(e,t)=>n(e,"name",{value:t,configurable:!0});import{HttpRemoteCache as o}from"./HttpRemoteCache-Ch-_9ejF.js";import{ReapiRemoteCache as m}from"./ReapiRemoteCache-B3uQuVqP.js";var d=Object.defineProperty,c=a((e,t)=>d(e,"name",{value:t,configurable:!0}),"c");const h=c(e=>e.mode??"readwrite","resolveCacheMode"),u=c(e=>{const t=h(e),r={...e,mode:t};switch(e.backend??"http"){case"http":return new o(r);case"reapi":return new m(r);default:return new o(r)}},"createRemoteCacheBackend");export{u as createRemoteCacheBackend,h as resolveCacheMode};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _=Object.defineProperty;var u=(t,e)=>_(t,"name",{value:e,configurable:!0});import{createRequire as v}from"node:module";import{isAbsolute as P,resolve as m,relative as O,join as T}from"@visulima/path";const b=v(import.meta.url),c=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,d=u(t=>{if(typeof c<"u"&&c.versions&&c.versions.node){const[e,s]=c.versions.node.split(".").map(Number);if(e>22||e===22&&s>=3||e===20&&s>=16)return c.getBuiltinModule(t)}return b(t)},"__cjs_getBuiltinModule"),{stat:y,glob:j}=d("node:fs/promises"),{matchesGlob:w}=d("node:path");var q=Object.defineProperty,l=u((t,e)=>q(t,"name",{value:e,configurable:!0}),"c");const R=/[*?[\]{}]/,f=l((t,e)=>{const s=O(t,e);if(!(s.length===0||s.startsWith("..")))return s},"toWorkspaceRelative"),M=l(async(t,e,s)=>{if(!e||e.length===0)return[];const r=[],n=[];let p=!1;for(const o of e){if(typeof o!="string"){o.auto&&(p=!0);continue}if(o.length!==0){if(o.startsWith("!")){const i=o.slice(1);i.length>0&&n.push(i);continue}r.push(o)}}const a=new Set;if(p&&s)for(const o of s){const i=P(o)?o:m(t,o),h=f(t,i);h&&a.add(h)}const g=await Promise.all(r.map(o=>W(t,o)));for(const o of g)for(const i of o)a.add(i);return n.length===0?[...a].sort():[...a].filter(o=>!n.some(i=>w(o,i))).sort()},"resolveOutputs"),W=l(async(t,e)=>{if(!R.test(e)){const r=m(t,e),n=f(t,r);if(!n)return[];try{return await y(r),[n]}catch{return[]}}const s=[];for await(const r of j(e,{cwd:t,withFileTypes:!0})){if(!r.isFile())continue;const n=f(t,T(r.parentPath,r.name));n&&s.push(n)}return s},"expandPattern");export{M as resolveOutputs};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var b=Object.defineProperty;var S=(s,e)=>b(s,"name",{value:e,configurable:!0});import{createRequire as M}from"node:module";import{spawn as F}from"@lydell/node-pty";const I=M(import.meta.url),T=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,P=S(s=>{if(typeof T<"u"&&T.versions&&T.versions.node){const[e,l]=T.versions.node.split(".").map(Number);if(e>22||e===22&&l>=3||e===20&&l>=16)return T.getBuiltinModule(s)}return I(s)},"__cjs_getBuiltinModule"),{spawn:_}=P("node:child_process");var L=Object.defineProperty,a=S((s,e)=>L(s,"name",{value:e,configurable:!0}),"d");const j=a((s,e)=>{if(s.length===0)return!0;const l=e.trim().toLowerCase();if(l==="first")return s[0].exitCode===0;if(l==="last")return s.at(-1).exitCode===0;const m=/^(!?)command-(.+)$/.exec(l);if(m){const[,v,C]=m,g=v==="!",u=s.filter(t=>t.name===C||String(t.index)===C);return g?s.filter(t=>!u.includes(t)).every(t=>t.exitCode===0):u.length>0&&u.every(t=>t.exitCode===0)}return s.every(v=>v.exitCode===0)},"evaluateSuccess"),E=a((s,e)=>{try{process.platform==="win32"?_("taskkill",["/F","/T","/PID",String(s)],{stdio:"ignore"}):process.kill(-s,e)}catch{}},"killTree"),G=a((s,e,l,m,v)=>{const C=process.hrtime(),g=e.shell!==!1,u=e.stdin??"null",t=u==="inherit"?"inherit":u==="pipe"?"pipe":"ignore";let o;if(g){let i,c,x=!1;l?(i=l,c=["-c",e.command]):process.platform==="win32"?(i="cmd.exe",c=["/s","/c",`"${e.command}"`],x=!0):(i="/bin/sh",c=["-c",e.command]),o=_(i,c,{cwd:e.cwd,detached:process.platform!=="win32",env:{...process.env,...e.env,FORCE_COLOR:process.env.FORCE_COLOR??"1"},stdio:[t,"pipe","pipe"],windowsVerbatimArguments:x})}else{const i=e.command.split(/\s+/),c=i[0],x=i.slice(1);o=_(c,x,{cwd:e.cwd,detached:process.platform!=="win32",env:{...process.env,...e.env,FORCE_COLOR:process.env.FORCE_COLOR??"1"},stdio:[t,"pipe","pipe"]})}m({index:s,kill:o.pid?i=>{E(o.pid,i??"SIGTERM")}:void 0,kind:"started",write:o.stdin?i=>o.stdin.write(i):void 0});let d="",n;const k=a(()=>{d&&(m({index:s,kind:"stdout",text:d}),d="")},"flushStdoutBuffer");o.stdout?.on("data",i=>{n&&(clearTimeout(n),n=void 0),d+=i.toString();const c=d.split(`
|
|
2
|
+
`);d=c.pop()??"";for(const x of c)m({index:s,kind:"stdout",text:x});d&&(n=setTimeout(k,100))}),o.stdout?.on("end",()=>{n&&(clearTimeout(n),n=void 0),k()});let f="",h;const O=a(()=>{f&&(m({index:s,kind:"stderr",text:f}),f="")},"flushStderrBuffer");return o.stderr?.on("data",i=>{h&&(clearTimeout(h),h=void 0),f+=i.toString();const c=f.split(`
|
|
3
|
+
`);f=c.pop()??"";for(const x of c)m({index:s,kind:"stderr",text:x});f&&(h=setTimeout(O,100))}),o.stderr?.on("end",()=>{h&&(clearTimeout(h),h=void 0),O()}),o.on("error",i=>{m({index:s,kind:"error",message:i.message})}),o.on("close",(i,c)=>{n&&(clearTimeout(n),n=void 0),h&&(clearTimeout(h),h=void 0),k(),O();const x=process.hrtime(C),y=x[0]*1e3+x[1]/1e6,r=i??(c?1:-1),p={command:e.command,durationMs:y,exitCode:r,index:s,killed:c!==null,name:e.name};m({commandName:e.name,durationMs:y,exitCode:r,index:s,killed:c!==null,kind:"close"}),v(p)}),{child:o,index:s,startTime:C}},"spawnCommand"),z=a((s,e,l,m,v)=>{const C=process.hrtime();let g,u;l?(g=l,u=["-c",e.command]):process.platform==="win32"?(g="cmd.exe",u=["/s","/c",e.command]):(g="/bin/sh",u=["-c",e.command]);const t=F(g,u,{cols:e.ptySize?.cols??80,cwd:e.cwd??process.cwd(),env:Object.fromEntries(Object.entries({...process.env,...e.env,FORCE_COLOR:process.env.FORCE_COLOR??"1",TERM:"xterm-256color"}).filter(o=>typeof o[1]=="string")),name:"xterm-256color",rows:e.ptySize?.rows??24});return m({index:s,kill:a(o=>{t.kill(o)},"kill"),kind:"started",resize:a((o,d)=>{t.resize(o,d)},"resize"),write:a(o=>{t.write(o)},"write")}),t.onData(o=>{m({index:s,kind:"stdout",text:o})}),t.onExit(({exitCode:o,signal:d})=>{const n=process.hrtime(C),k=n[0]*1e3+n[1]/1e6,f=o??(d?1:-1),h={command:e.command,durationMs:k,exitCode:f,index:s,killed:d!==void 0&&d!==0,name:e.name};m({commandName:e.name,durationMs:k,exitCode:f,index:s,killed:d!==void 0&&d!==0,kind:"close"}),v(h)}),{index:s,pty:t,startTime:C}},"spawnCommandPty"),$=a((s,e)=>new Promise(l=>{if(s.length===0){l({closeEvents:[],success:!0});return}const m=e.maxProcesses&&e.maxProcesses>0?e.maxProcesses:s.length,v=e.killSignal??"SIGTERM",C=e.killOthers??[],g=e.successCondition??"all",u=e.onEvent??(()=>{}),t=[],o=[],d=s.map((r,p)=>p);let n=!1,k=!1;const f=a(()=>{for(const r of t)r.pty?r.pty.kill(v):r.child?.pid&&E(r.child.pid,v)},"killAll"),h=a(r=>{for(const p of C)if(p==="failure"&&r.exitCode!==0||p==="success"&&r.exitCode===0)return!0;return!1},"shouldKillOthers"),O=a((r,p)=>{const R=t.findIndex(w=>w.index===r);if(R!==-1&&t.splice(R,1),n&&(p.killed=!0,k&&(p.exitCode=0)),o.push(p),!n&&h(p)&&(n=!0,f()),n||i(),t.length===0&&d.length===0){const w=j(o,g);l({closeEvents:o,success:w})}},"handleClose"),i=a(()=>{for(;t.length<m&&d.length>0;){const r=d.shift(),p=s[r],R=p.stdin==="pty"?z(r,p,e.shellPath,u,w=>{O(r,w)}):G(r,p,e.shellPath,u,w=>{O(r,w)});t.push(R)}},"maybeSpawnMore"),c=a(()=>{n||(n=!0,k=!0,f())},"handleSigint"),x=a(()=>{n||(n=!0,f())},"handleSigterm");process.on("SIGINT",c),process.on("SIGTERM",x);const y=l;l=a((r=>{process.removeListener("SIGINT",c),process.removeListener("SIGTERM",x),y(r)}),"resolve"),i()}),"runConcurrentFallback");export{$ as runConcurrentFallback};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var d=Object.defineProperty;var l=(e,t)=>d(e,"name",{value:t,configurable:!0});import{runConcurrentFallback as u}from"./runConcurrentFallback-CShJ7HUp.js";import{detectScriptShell as h}from"./detectScriptShell-CaTDk5cW.js";import{logTimings as p}from"./formatTimingTable-CP3rsDwf.js";import{withRestart as w}from"./withRestart-CWO6BKv_.js";import{runTeardown as f}from"./runTeardown-DBBpBAyb.js";import{loadNativeBindings as g}from"./isNativeAvailable-BOavFPX1.js";var v=Object.defineProperty,n=l((e,t)=>v(e,"name",{value:t,configurable:!0}),"m");const y=n(e=>e.map(t=>typeof t=="string"?{command:t}:t),"normalizeCommands"),c=n(async(e,t)=>{const o=t.shellPath??h(),r=g(),i=e.some(a=>a.stdin==="pipe"||a.stdin==="pty")||!!t.onEvent;if(r&&!i){const a={killOthers:t.killOthers,killSignal:t.killSignal,killTimeout:t.killTimeout,maxProcesses:t.maxProcesses,shellPath:o,successCondition:t.successCondition},m=e.map(s=>({command:s.command,cwd:s.cwd,env:s.env,name:s.name,shell:s.shell,stdin:s.stdin}));return r.runConcurrentBatch(m,a)}return u(e,{...t,shellPath:o})},"coreRun"),E=n(async(e,t={})=>{const o=y(e);if(o.length===0)return{closeEvents:[],success:!0};let r;return t.restart&&t.restart.tries!==0?r=await w((i,a)=>c(i,a),o,t,{delay:t.restart.delay??0,tries:t.restart.tries}):r=await c(o,t),t.timings&&p(r.closeEvents),t.teardown&&t.teardown.length>0&&await f({commands:t.teardown,cwd:t.teardownCwd}),r},"runConcurrently");export{E as runConcurrently};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var u=Object.defineProperty;var i=(e,o)=>u(e,"name",{value:o,configurable:!0});import{createRequire as p}from"node:module";const m=p(import.meta.url),r=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,l=i(e=>{if(typeof r<"u"&&r.versions&&r.versions.node){const[o,s]=r.versions.node.split(".").map(Number);if(o>22||o===22&&s>=3||o===20&&s>=16)return r.getBuiltinModule(e)}return m(e)},"__cjs_getBuiltinModule"),{spawn:f}=l("node:child_process");var w=Object.defineProperty,a=i((e,o)=>w(e,"name",{value:o,configurable:!0}),"c");const h=a(async e=>{const{commands:o,cwd:s}=e,n=[];for(const c of o){const t=await _(c,s);n.push(t)}return n},"runTeardown"),_=a((e,o)=>new Promise(s=>{const n=process.platform==="win32"?"cmd.exe":"/bin/sh",c=process.platform==="win32"?["/s","/c",`"${e}"`]:["-c",e],t=f(n,c,{cwd:o,stdio:"inherit",windowsVerbatimArguments:process.platform==="win32"});t.on("close",d=>{s(d??1)}),t.on("error",()=>{s(1)})}),"runTeardownCommand");export{h as runTeardown};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var t=Object.defineProperty;var r=(e,l)=>t(e,"name",{value:l,configurable:!0});var a=Object.defineProperty,o=r((e,l)=>a(e,"name",{value:l,configurable:!0}),"t");const s=o(e=>`'${e.replaceAll("'",String.raw`'\''`)}'`,"shellQuote");export{s};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o=Object.defineProperty;var r=(e,t)=>o(e,"name",{value:t,configurable:!0});var n=Object.defineProperty,s=r((e,t)=>n(e,"name",{value:t,configurable:!0}),"o");const c=s(e=>{const{command:t}=e;return/^".+?"$/.test(t)||/^'.+?'$/.test(t)?{...e,command:t.slice(1,-1)}:e},"stripQuotes");export{c as stripQuotes};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var k=Object.defineProperty;var u=(t,s)=>k(t,"name",{value:s,configurable:!0});import{createRequire as b}from"node:module";const j=b(import.meta.url),o=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,v=u(t=>{if(typeof o<"u"&&o.versions&&o.versions.node){const[s,i]=o.versions.node.split(".").map(Number);if(s>22||s===22&&i>=3||s===20&&i>=16)return o.getBuiltinModule(t)}return j(t)},"__cjs_getBuiltinModule"),{writeFile:N}=v("node:fs/promises");var D=Object.defineProperty,I=u((t,s)=>D(t,"name",{value:s,configurable:!0}),"p");const y="task",h="dep",d=1,C=I(t=>{const s=[],i=Date.parse(t.startTime),g=[...t.tasks].sort((e,n)=>{const r=e.startTime?Date.parse(e.startTime):Number.POSITIVE_INFINITY,a=n.startTime?Date.parse(n.startTime):Number.POSITIVE_INFINITY;return r-a}),c=[],m=new Map;for(const e of g){if(!e.startTime||!e.endTime)continue;const n=Date.parse(e.startTime),r=Date.parse(e.endTime);let a=c.findIndex(p=>p<=n);a===-1?(a=c.length,c.push(r)):c[a]=r,m.set(e.taskId,a),s.push({args:{cacheStatus:e.cacheStatus,exitCode:e.exitCode,hash:e.hash,project:e.target.project,target:e.target.target},cat:y,dur:Math.max(0,(r-n)*1e3),name:e.taskId,ph:"X",pid:d,tid:a,ts:(n-i)*1e3})}let f=1;for(const e of t.tasks){if(!e.startTime||!e.endTime)continue;const n=e.dependencies??[];for(const r of n){const a=t.tasks.find(_=>_.taskId===r);if(!a?.endTime||!e.startTime)continue;const p=(Date.parse(a.endTime)-i)*1e3,l=(Date.parse(e.startTime)-i)*1e3,T=f;f+=1,s.push({cat:h,id:T,name:`${r} → ${e.taskId}`,ph:"s",pid:d,tid:m.get(r)??0,ts:p},{cat:h,id:T,name:`${r} → ${e.taskId}`,ph:"f",pid:d,tid:m.get(e.taskId)??0,ts:l})}}return s.unshift({args:{name:`vis run (${t.id})`},cat:"__metadata",name:"process_name",ph:"M",pid:d,tid:0,ts:0}),s},"toChromeTrace"),M=I(async(t,s)=>{const i=C(t);await N(s,JSON.stringify({traceEvents:i}))},"writeChromeTrace");export{C as toChromeTrace,M as writeChromeTrace};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var J=Object.defineProperty;var E=(n,e)=>J(n,"name",{value:e,configurable:!0});import{createRequire as K}from"node:module";import{join as k}from"@visulima/path";const V=K(import.meta.url),U=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,O=E(n=>{if(typeof U<"u"&&U.versions&&U.versions.node){const[e,t]=U.versions.node.split(".").map(Number);if(e>22||e===22&&t>=3||e===20&&t>=16)return U.getBuiltinModule(n)}return V(n)},"__cjs_getBuiltinModule"),{randomUUID:z}=O("node:crypto"),{stat:A,realpath:G,readdir:Q,readFile:$}=O("node:fs/promises");var W=Object.defineProperty,c=E((n,e)=>W(n,"name",{value:e,configurable:!0}),"f");const p=(1n<<128n)-1n,o=(1n<<64n)-1n,x=(1n<<32n)-1n,M=0x9E3779B1n,P=0x85EBCA77n,Y=0xC2B2AE3Dn,B=0x9E3779B185EBCA87n,y=0xC2B2AE3D27D4EB4Fn,R=0x165667B19E3779F9n,v=0x85EBCA77C2B2AE63n,Z=0x27D4EB2F165667C5n,ee=0x165667919E3779F9n,ne=0x9FB21C651E98DF25n,l=64,q=l/8,te=8,u=Buffer.from("b8fe6c3923a44bbe7c01812cf721ad1cded46de9839097db7240a4a4b7b3671fcb79e64eccc0e578825ad07dccff7221b8084674f743248ee03590e6813a264c3c2852bb91c300cb88d0658b1b532ea371644897a20df94e3819ef46a9deacd8a8fa763fe39c343ff9dcbbc7c70b4f1d8a51e04bcdb45931c89f7ec9d9787364eac5ac8334d3ebc3c581a0fffa1363eb170ddd51b7f0da49d316552629d4689e2b16be587d47a1fc8ff8b8d17ad031ce45cb3a8f95160428afd7fbcabb4b407e","hex"),g=c((n,e=0)=>Buffer.from(n.buffer,n.byteOffset+e,n.length-e),"getView"),re=c(n=>{const e=Buffer.allocUnsafe(8);return e.writeBigUInt64LE(n),e.readBigUInt64BE()},"bswap64"),ae=c(n=>{let e=n;return e=(e&0x0000FFFFn)<<16n|(e&0xFFFF0000n)>>16n,e=(e&0x00FF00FFn)<<8n|(e&0xFF00FF00n)>>8n,e},"bswap32"),oe=c((n,e)=>(n&x)*(e&x)&o,"multU32ToU64"),se=c((n,e)=>(n<<e|n>>32n-e)&x,"rotl32"),_=c((n,e)=>n^n>>e,"xorshift64"),j=c(n=>~n+1n&o,"inv64"),H=c((n,e)=>{const t=n*e&p;return t&o^t>>64n},"mul128Fold64"),b=c(n=>{let e=n;return e^=e>>37n,e=e*ee&o,e^=e>>32n,e},"avalanche"),w=c(n=>{let e=n;return e^=e>>33n,e=e*y&o,e^=e>>29n,e=e*R&o,e^=e>>32n,e},"avalanche64"),N=c((n,e,t)=>{for(let r=0;r<q;r++){const a=e.readBigUInt64LE(r*8),i=a^t.readBigUInt64LE(r*8);n[r^1]+=a,n[r]+=oe(i,i>>32n)}return n},"accumulate512"),D=c((n,e,t,r)=>{for(let a=0;a<r;a++)N(n,g(e,a*l),g(t,a*8));return n},"accumulate"),ie=c((n,e)=>{for(let t=0;t<q;t++){const r=e.readBigUInt64LE(t*8);let a=n[t];a=_(a,47n),a^=r,a*=M,n[t]=a&o}return n},"scrambleAcc"),m=c((n,e)=>H(n[0]^e.readBigUInt64LE(0),n[1]^e.readBigUInt64LE(te)),"mix2Accs"),S=c((n,e,t)=>{let r=t;return r+=m(n.slice(0),g(e,0)),r+=m(n.slice(2),g(e,16)),r+=m(n.slice(4),g(e,32)),r+=m(n.slice(6),g(e,48)),b(r&o)},"mergeAccs"),ce=c((n,e,t)=>{const r=Math.floor((t.byteLength-l)/8),a=l*r,i=Math.floor((e.byteLength-1)/a);for(let f=0;f<i;f++)D(n,g(e,f*a),t,r),ie(n,g(t,t.byteLength-l));const s=Math.floor((e.byteLength-1-a*i)/l);return D(n,g(e,i*a),t,s),N(n,g(e,e.byteLength-l),g(t,t.byteLength-l-7)),n},"hashLong"),de=c((n,e)=>{const t=new BigUint64Array([Y,B,y,R,v,P,Z,M]);ce(t,n,e);const r=S(t,g(e,11),BigInt(n.byteLength)*B&o);return S(t,g(e,e.byteLength-l-11),~(BigInt(n.byteLength)*y)&o)<<64n|r},"hashLong128b"),T=c((n,e,t)=>H((n.readBigUInt64LE(0)^e.readBigUInt64LE(0)+t)&o,(n.readBigUInt64LE(8)^e.readBigUInt64LE(8)-t)&o),"mix16B"),F=c((n,e,t,r,a)=>{let i=n&o,s=n>>64n&o;return i+=T(e,r,a),i^=t.readBigUInt64LE(0)+t.readBigUInt64LE(8),i&=o,s+=T(t,g(r,16),a),s^=e.readBigUInt64LE(0)+e.readBigUInt64LE(8),s&=o,s<<64n|i},"mix32B"),ge=c((n,e,t)=>{const r=n.byteLength,a=BigInt(n.readUInt8(r-1))|BigInt(r<<8)|BigInt(n.readUInt8(0)<<16)|BigInt(n.readUInt8(r>>1)<<24),i=(BigInt(e.readUInt32LE(0))^BigInt(e.readUInt32LE(4)))+t,s=(a^i)&o,f=(BigInt(e.readUInt32LE(8))^BigInt(e.readUInt32LE(12)))-t,d=(se(ae(a),13n)^f)&o;return(w(d)&o)<<64n|w(s)},"len1to3_128b"),fe=c((n,e,t)=>{const r=n.byteLength,a=n.readUInt32LE(0),i=n.readUInt32LE(r-4),s=BigInt(a)|BigInt(i)<<32n,f=(e.readBigUInt64LE(16)^e.readBigUInt64LE(24))+t&o;let d=(s^f)*(B+(BigInt(r)<<2n))&p;return d+=(d&o)<<65n,d&=p,d^=d>>67n,_(_(d&o,35n)*ne&o,28n)|b(d>>64n)<<64n},"len4to8_128b"),ue=c((n,e,t)=>{const r=n.byteLength,a=(e.readBigUInt64LE(32)^e.readBigUInt64LE(40))+t&o,i=(e.readBigUInt64LE(48)^e.readBigUInt64LE(56))-t&o,s=n.readBigUInt64LE();let f=n.readBigUInt64LE(r-8),d=(s^f^a)*B;const L=(d&o)+(BigInt(r-1)<<54n);d=d&(p^o)|L,f^=i,d+=f+(f&x)*(P-1n)<<64n,d&=p,d^=re(d>>64n);let I=(d&o)*y;return I+=(d>>64n)*y<<64n,I&=p,b(I&o)|b(I>>64n)<<64n},"len9to16_128b"),be=c((n,e)=>{const t=n.byteLength;return t>8?ue(n,u,e):t>=4?fe(n,u,e):t>0?ge(n,u,e):w(e^u.readBigUInt64LE(64)^u.readBigUInt64LE(72))|w(e^u.readBigUInt64LE(80)^u.readBigUInt64LE(88))<<64n},"len0to16_128b"),le=c((n,e,t)=>{let r=BigInt(n.byteLength)*B&o,a=BigInt(n.byteLength-1)/32n;for(;a>=0n;){const f=Number(a);r=F(r,g(n,16*f),g(n,n.byteLength-16*(f+1)),g(e,32*f),t),a--}let i=r+(r>>64n)&o;i=b(i);let s=(r&o)*B+(r>>64n)*v+(BigInt(n.byteLength)-t&o)*y;return s&=o,s=j(b(s)),i|s<<64n},"len17to128_128b"),Be=c((n,e,t)=>{let r=BigInt(n.byteLength)*B&o;for(let s=32;s<160;s+=32)r=F(r,g(n,s-32),g(n,s-16),g(e,s-32),t);r=b(r&o)|b(r>>64n)<<64n;for(let s=160;s<=n.byteLength;s+=32)r=F(r,g(n,s-32),g(n,s-16),g(e,3+s-160),t);r=F(r,g(n,n.byteLength-16),g(n,n.byteLength-32),g(e,103),j(t));let a=r+(r>>64n)&o;a=b(a);let i=(r&o)*B+(r>>64n)*v+(BigInt(n.byteLength)-t&o)*y;return i&=o,i=j(b(i)),a|i<<64n},"len129to240_128b"),he=c((n,e=0n)=>{const t=n.byteLength;return t<=16?be(n,e):t<=128?le(n,u,e):t<=240?Be(n,u,e):de(n,u)},"xxh3_128"),Le=c(n=>{const e=n>>64n&o,t=n&o;return e.toString(16).padStart(16,"0")+t.toString(16).padStart(16,"0")},"bigintToHex"),X=c(n=>Le(he(n)),"xxh3Hash");class Ie{static{E(this,"gn")}static{c(this,"Xxh3Hasher")}#e=[];update(e){return typeof e=="string"?this.#e.push(Buffer.from(e)):this.#e.push(e),this}digest(){return X(Buffer.concat(this.#e))}}const ye=c(()=>new Ie,"createXxh3Hasher");var pe=Object.defineProperty,h=E((n,e)=>pe(n,"name",{value:e,configurable:!0}),"r");const we=h(async n=>{try{const e=await $(n);return X(e)}catch{return}},"hashFile"),_e=h((...n)=>{const e=ye();for(const t of n)e.update(t),e.update("\0");return e.digest()},"hashStrings"),Ee=h(n=>{const e={};for(const t of Object.keys(n).toSorted()){const r=n[t];e[t]=r!=null&&typeof r=="object"&&!Array.isArray(r)?Ee(r):r}return e},"sortObjectKeys"),C=h(async(n,e,t)=>{const r=t??new Set,a=[];try{if((await A(n)).isFile())return[n];const i=await G(n);if(r.has(i))return[];r.add(i);const s=(await Q(n,{withFileTypes:!0})).map(async d=>{if(e.has(d.name))return[];const L=k(n,d.name);if(d.isDirectory())return C(L,e,r);if(d.isFile())return[L];if(d.isSymbolicLink())try{const I=await A(L);if(I.isFile())return[L];if(I.isDirectory())return C(L,e,r)}catch{}return[]}),f=await Promise.all(s);for(const d of f)a.push(...d)}catch{}return a},"collectFiles"),je=h((n,e)=>e.projectRoot?k(n,e.projectRoot):n,"resolveTaskCwd"),ve=h((n,e,t)=>({code:1,endTime:Date.now(),startTime:t,status:"failure",task:n,terminalOutput:e instanceof Error?e.message:String(e)}),"createFailureResult"),Ue={optional:!0,peer:!0},Ae=h(async(n,e=Ue)=>{try{const t=await $(n,"utf8"),r=JSON.parse(t),a=new Set,i=[r.dependencies,r.devDependencies];e.peer!==!1&&i.push(r.peerDependencies),e.optional!==!1&&i.push(r.optionalDependencies);for(const s of i)if(s)for(const f of Object.keys(s))a.add(f);return a}catch{return}},"readPackageDeps"),De=h(()=>z(),"uniqueId");export{Ae as E,De as O,we as T,X,_e as b,C as d,ye as f,Ee as h,ve as j,je as v};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var E=Object.defineProperty;var l=(e,t)=>E(e,"name",{value:t,configurable:!0});var y=Object.defineProperty,d=l((e,t)=>y(e,"name",{value:t,configurable:!0}),"a");const C=d(async(e,t,i,v)=>{const{delay:m,tries:r}=v;if(r===0)return e(t,i);const p=new Map,c=[],x=i.onEvent;let s=[...t],u=0;for(;s.length>0;){const o=s;s=[];const w=await e(o,{...i,onEvent:d(n=>{x?.(n)},"onEvent")});for(const n of w.closeEvents){if(n.exitCode!==0){const a=p.get(n.index)??{attempts:0,commandIndex:n.index};if(a.attempts++,p.set(n.index,a),r===-1||a.attempts<=r){const f=m==="exponential"?Math.min(2**(a.attempts-1)*1e3,3e4):m;f>0&&await b(f),s.push(o[n.index]);continue}}c.push(n)}if(u++,u>1e3)break}const h=c.every(o=>o.exitCode===0);return{closeEvents:c,success:h}},"withRestart"),b=d(e=>new Promise(t=>{setTimeout(t,e)}),"sleep");export{C as withRestart};
|