@elaraai/e3-cli 1.0.80 → 1.0.82
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/README.md +20 -4
- package/dist/src/cli.js +3 -1
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/dataset-status.d.ts.map +1 -1
- package/dist/src/commands/dataset-status.js +4 -1
- package/dist/src/commands/dataset-status.js.map +1 -1
- package/dist/src/commands/set.d.ts +2 -1
- package/dist/src/commands/set.d.ts.map +1 -1
- package/dist/src/commands/set.js +52 -13
- package/dist/src/commands/set.js.map +1 -1
- package/dist/src/commands/workspace.d.ts.map +1 -1
- package/dist/src/commands/workspace.js +69 -23
- package/dist/src/commands/workspace.js.map +1 -1
- package/dist/src/intake.d.ts +109 -0
- package/dist/src/intake.d.ts.map +1 -0
- package/dist/src/intake.js +290 -0
- package/dist/src/intake.js.map +1 -0
- package/dist/src/intake.spec.d.ts +6 -0
- package/dist/src/intake.spec.d.ts.map +1 -0
- package/dist/src/intake.spec.js +162 -0
- package/dist/src/intake.spec.js.map +1 -0
- package/dist/src/progress.d.ts +1 -1
- package/dist/src/progress.d.ts.map +1 -1
- package/dist/src/progress.js +10 -10
- package/dist/src/progress.js.map +1 -1
- package/dist/src/progress.spec.js +17 -1
- package/dist/src/progress.spec.js.map +1 -1
- package/package.json +6 -6
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2025 Elara AI Pty Ltd
|
|
3
|
+
* Licensed under BSL 1.1. See LICENSE for details.
|
|
4
|
+
*/
|
|
5
|
+
import { test } from 'node:test';
|
|
6
|
+
import assert from 'node:assert';
|
|
7
|
+
import { createHash } from 'node:crypto';
|
|
8
|
+
import { mkdtempSync, rmSync, writeFileSync } from 'node:fs';
|
|
9
|
+
import { tmpdir } from 'node:os';
|
|
10
|
+
import { join } from 'node:path';
|
|
11
|
+
import { variant } from '@elaraai/east';
|
|
12
|
+
import { createProgress } from './progress.js';
|
|
13
|
+
import { commitText, deployJobText, hashDelivery, intakeReporter, uploadReporter } from './intake.js';
|
|
14
|
+
function fakeStream(tty) {
|
|
15
|
+
const chunks = [];
|
|
16
|
+
return { chunks, isTTY: tty, write: (c) => { chunks.push(c); return true; } };
|
|
17
|
+
}
|
|
18
|
+
const MB = 1024 * 1024;
|
|
19
|
+
const sources = { count: 3, bytes: 30 * MB };
|
|
20
|
+
const event = (path, rest) => ({ path, file: `/deliveries/${path.split('/').pop()}.beast2`, sources, phase: 'hash', bytes: 0, total: 10 * MB, ...rest });
|
|
21
|
+
test('a line per file as it finishes, naming the runner that took it in, and a summary once the last is in', () => {
|
|
22
|
+
const stream = fakeStream(false);
|
|
23
|
+
let clock = 0;
|
|
24
|
+
const intake = intakeReporter(createProgress({ stream }), () => clock);
|
|
25
|
+
intake.report(event('inputs/a', { phase: 'hash', bytes: 5 * MB }));
|
|
26
|
+
intake.report(event('inputs/b', { phase: 'hash', bytes: 5 * MB }));
|
|
27
|
+
clock = 1000;
|
|
28
|
+
intake.report(event('inputs/a', { phase: 'take-in', bytes: 10 * MB }));
|
|
29
|
+
clock = 2000;
|
|
30
|
+
intake.report(event('inputs/a', { phase: 'done', bytes: 10 * MB, taken: 'carried' }));
|
|
31
|
+
intake.report(event('inputs/b', { phase: 'done', bytes: 10 * MB, taken: 'known' }));
|
|
32
|
+
intake.report(event('inputs/c', { phase: 'take-in', bytes: 0, pieces: { done: 0, total: 4 } }));
|
|
33
|
+
clock = 4000;
|
|
34
|
+
intake.report(event('inputs/c', { phase: 'done', bytes: 10 * MB, taken: 'taken', runners: ['east-c'] }));
|
|
35
|
+
assert.deepStrictEqual(stream.chunks.join('').split('\n').filter(Boolean), [
|
|
36
|
+
'taking in 3 files (30.0 MB) …',
|
|
37
|
+
'✔ a 10.0 MB in 2.0 s (5.0 MB/s), carried',
|
|
38
|
+
'✔ b 10.0 MB in 2.0 s (5.0 MB/s), unchanged, already in the store',
|
|
39
|
+
'✔ c 10.0 MB in 2.0 s (5.0 MB/s), taken in by east-c',
|
|
40
|
+
'✔ took in 3 files, 30.0 MB in 4.0 s (7.5 MB/s): 1 unchanged, 1 carried, 1 taken in',
|
|
41
|
+
]);
|
|
42
|
+
});
|
|
43
|
+
test('a runner that fell back says why once, on the first file it took in', () => {
|
|
44
|
+
const stream = fakeStream(false);
|
|
45
|
+
const intake = intakeReporter(createProgress({ stream }), () => 0);
|
|
46
|
+
const fallback = 'east-c exited 2 without recording a result for the intake unit (Unknown command: exec)';
|
|
47
|
+
for (const path of ['inputs/a', 'inputs/b']) {
|
|
48
|
+
intake.report(event(path, { phase: 'done', bytes: 10 * MB, taken: 'taken', runners: ['east-node'], fallback }));
|
|
49
|
+
}
|
|
50
|
+
intake.report(event('inputs/c', { phase: 'done', bytes: 10 * MB, taken: 'taken', runners: [] }));
|
|
51
|
+
assert.deepStrictEqual(stream.chunks.join('').split('\n').filter(Boolean).slice(1, 4), [
|
|
52
|
+
`✔ a 10.0 MB in 0.0 s, taken in by east-node, since ${fallback}`,
|
|
53
|
+
'✔ b 10.0 MB in 0.0 s, taken in by east-node',
|
|
54
|
+
'✔ c 10.0 MB in 0.0 s, taken in from the pieces an earlier intake finished',
|
|
55
|
+
]);
|
|
56
|
+
});
|
|
57
|
+
test('on a terminal, the live line names the files in flight, their pieces, and the pace across them', () => {
|
|
58
|
+
const stream = fakeStream(true);
|
|
59
|
+
let clock = 0;
|
|
60
|
+
const intake = intakeReporter(createProgress({ stream }), () => clock);
|
|
61
|
+
intake.report(event('inputs/a', { phase: 'hash', bytes: 2 * MB }));
|
|
62
|
+
clock = 1000;
|
|
63
|
+
intake.report(event('inputs/a', { phase: 'take-in', bytes: 5 * MB, pieces: { done: 2, total: 4 } }));
|
|
64
|
+
const out = stream.chunks.join('');
|
|
65
|
+
assert.ok(out.includes('taking in 0/3 files, 5.0 MB/30.0 MB, 5.0 MB/s, 5.0 s left: a 5.0 MB/10.0 MB (2/4 pieces)'), out);
|
|
66
|
+
});
|
|
67
|
+
test('a failed intake ends its live line without a summary', () => {
|
|
68
|
+
const stream = fakeStream(false);
|
|
69
|
+
const intake = intakeReporter(createProgress({ stream }), () => 0);
|
|
70
|
+
intake.report(event('inputs/a', { phase: 'hash', bytes: MB }));
|
|
71
|
+
intake.fail();
|
|
72
|
+
assert.strictEqual(stream.chunks.join('').includes('took in'), false);
|
|
73
|
+
});
|
|
74
|
+
test('uploads side by side: a line per file as it finishes, and a summary once the last is in', () => {
|
|
75
|
+
const stream = fakeStream(false);
|
|
76
|
+
let clock = 0;
|
|
77
|
+
const upload = uploadReporter(createProgress({ stream }), 2, 20 * MB, () => clock);
|
|
78
|
+
const a = upload.start('a', 10 * MB);
|
|
79
|
+
const b = upload.start('b', 10 * MB);
|
|
80
|
+
a.hashing(5 * MB);
|
|
81
|
+
b.sending();
|
|
82
|
+
clock = 1000;
|
|
83
|
+
b.done('uploaded ws.b (10.0 MB, 0123456789ab...)');
|
|
84
|
+
clock = 2000;
|
|
85
|
+
a.done('uploaded ws.a (10.0 MB, ba9876543210...)');
|
|
86
|
+
assert.deepStrictEqual(stream.chunks.join('').split('\n').filter(Boolean), [
|
|
87
|
+
'uploading 2 files (20.0 MB) …',
|
|
88
|
+
'✔ uploaded ws.b (10.0 MB, 0123456789ab...)',
|
|
89
|
+
'✔ uploaded ws.a (10.0 MB, ba9876543210...)',
|
|
90
|
+
'✔ uploaded 2 files, 20.0 MB in 2.0 s (10.0 MB/s)',
|
|
91
|
+
]);
|
|
92
|
+
});
|
|
93
|
+
test('on a terminal, the upload line names the files in flight and what each is doing', () => {
|
|
94
|
+
const stream = fakeStream(true);
|
|
95
|
+
let clock = 0;
|
|
96
|
+
const upload = uploadReporter(createProgress({ stream }), 5, 50 * MB, () => clock);
|
|
97
|
+
const [a, b, c] = ['a', 'b', 'c', 'd'].map((name) => upload.start(name, 10 * MB));
|
|
98
|
+
clock = 1000;
|
|
99
|
+
a.hashing(4 * MB);
|
|
100
|
+
b.sending();
|
|
101
|
+
clock = 2000;
|
|
102
|
+
c.committing({ path: 'inputs/c', step: variant('taking_in', { pieces: 4n, done: 1n }), bytes: BigInt(3 * MB), total: BigInt(10 * MB) });
|
|
103
|
+
upload.fail();
|
|
104
|
+
const out = stream.chunks.join('');
|
|
105
|
+
assert.ok(out.includes('uploading 0/5 files: a hashing 4.0 MB/10.0 MB, b sending 10.0 MB, c server taking in 3.0 MB/10.0 MB (1/4 pieces), 1 more'), out);
|
|
106
|
+
});
|
|
107
|
+
test('a failed upload ends the live line without a summary, and the uploads still in flight are no longer heard', () => {
|
|
108
|
+
const stream = fakeStream(false);
|
|
109
|
+
const upload = uploadReporter(createProgress({ stream }), 2, 20 * MB, () => 0);
|
|
110
|
+
const a = upload.start('a', 10 * MB);
|
|
111
|
+
const b = upload.start('b', 10 * MB);
|
|
112
|
+
upload.fail();
|
|
113
|
+
a.done('uploaded ws.a (10.0 MB, 0123456789ab...)');
|
|
114
|
+
b.done('uploaded ws.b (10.0 MB, ba9876543210...)');
|
|
115
|
+
assert.deepStrictEqual(stream.chunks.join('').split('\n').filter(Boolean), ['uploading 2 files (20.0 MB) …']);
|
|
116
|
+
});
|
|
117
|
+
test('an upload hashes its delivery first, saying how far the read has got, at most every tenth of a second', async () => {
|
|
118
|
+
const dir = mkdtempSync(join(tmpdir(), 'e3-intake-'));
|
|
119
|
+
try {
|
|
120
|
+
const file = join(dir, 'table.beast2');
|
|
121
|
+
const bytes = new Uint8Array(3 * MB).fill(7);
|
|
122
|
+
writeFileSync(file, bytes);
|
|
123
|
+
const lines = () => {
|
|
124
|
+
const updates = [];
|
|
125
|
+
return { updates, step: { update: (text) => { updates.push(text); }, done: () => { }, fail: () => { } } };
|
|
126
|
+
};
|
|
127
|
+
// The clock moves a tenth of a second between reads: every read is said.
|
|
128
|
+
const paced = lines();
|
|
129
|
+
let clock = 0;
|
|
130
|
+
const hash = await hashDelivery(file, bytes.length, 'table', paced.step, () => (clock += 100));
|
|
131
|
+
assert.strictEqual(hash, createHash('sha256').update(bytes).digest('hex'));
|
|
132
|
+
assert.deepStrictEqual(paced.updates, ['hashing table: 1.0 MB/3.0 MB', 'hashing table: 2.0 MB/3.0 MB', 'hashing table: 3.0 MB/3.0 MB']);
|
|
133
|
+
// It stands still: the first read is said, and the rest wait for the clock.
|
|
134
|
+
const still = lines();
|
|
135
|
+
await hashDelivery(file, bytes.length, 'table', still.step, () => 100);
|
|
136
|
+
assert.deepStrictEqual(still.updates, ['hashing table: 1.0 MB/3.0 MB']);
|
|
137
|
+
}
|
|
138
|
+
finally {
|
|
139
|
+
rmSync(dir, { recursive: true, force: true });
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
test("a server's commit says what it is doing with the file", () => {
|
|
143
|
+
const at = (step) => commitText({ path: 'inputs/a', step, bytes: BigInt(4 * MB), total: BigInt(10 * MB) });
|
|
144
|
+
assert.strictEqual(at(variant('hashing', null)), 'the server is hashing it: 4.0 MB/10.0 MB');
|
|
145
|
+
assert.strictEqual(at(variant('taking_in', { pieces: 1n, done: 0n })), 'the server is taking it in: 4.0 MB/10.0 MB');
|
|
146
|
+
assert.strictEqual(at(variant('taking_in', { pieces: 4n, done: 1n })), 'the server is taking it in (1/4 pieces): 4.0 MB/10.0 MB');
|
|
147
|
+
});
|
|
148
|
+
test("a server's deploy job says its files, then the record it migrates or indexes, then finishing", () => {
|
|
149
|
+
const file = (step) => ({ path: 'inputs/a', step, bytes: 0n, total: 1n });
|
|
150
|
+
const job = (files, step) => ({
|
|
151
|
+
package: { name: 'p', version: '1.0.0' },
|
|
152
|
+
startedAt: new Date(0),
|
|
153
|
+
files,
|
|
154
|
+
records: [{ plan: { record: 'records/orders', action: variant('migrate', { steps: ['a', 'b'] }) }, indexes: ['by_customer'], step }],
|
|
155
|
+
});
|
|
156
|
+
const done = file(variant('done', variant('carried', null)));
|
|
157
|
+
assert.strictEqual(deployJobText(job([done, file(variant('waiting', null))], variant('waiting', null))), 'taking in 1/2 files');
|
|
158
|
+
assert.strictEqual(deployJobText(job([done], variant('migrating', { name: 'b', step: 2n, steps: 2n }))), 'migrating orders: b (2/2)');
|
|
159
|
+
assert.strictEqual(deployJobText(job([], variant('indexing', { index: 'by_customer', build: 1n, builds: 1n }))), 'building orders.by_customer (1/1)');
|
|
160
|
+
assert.strictEqual(deployJobText(job([done], variant('done', null))), 'finishing');
|
|
161
|
+
});
|
|
162
|
+
//# sourceMappingURL=intake.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intake.spec.js","sourceRoot":"","sources":["../../src/intake.spec.ts"],"names":[],"mappings":"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"}
|
package/dist/src/progress.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export declare function createProgress(options?: {
|
|
|
52
52
|
stream?: ProgressStream;
|
|
53
53
|
}): Progress;
|
|
54
54
|
/**
|
|
55
|
-
* Format a byte count for progress lines (`812 kB`, `1.2 MB`).
|
|
55
|
+
* Format a byte count for progress lines (`812 kB`, `1.2 MB`, `7.5 GB`).
|
|
56
56
|
*
|
|
57
57
|
* @param bytes - The byte count
|
|
58
58
|
* @returns Human-readable size
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/progress.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;GAcG;AAEH,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,kFAAkF;IAClF,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wEAAwE;IACxE,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,8EAA8E;IAC9E,IAAI,IAAI,IAAI,CAAC;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,4EAA4E;IAC5E,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAC/B,gDAAgD;IAChD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,qDAAqD;AACrD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7B;AAKD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"progress.d.ts","sourceRoot":"","sources":["../../src/progress.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;GAcG;AAEH,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,kFAAkF;IAClF,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,wEAAwE;IACxE,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,8EAA8E;IAC9E,IAAI,IAAI,IAAI,CAAC;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,4EAA4E;IAC5E,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;IAC/B,gDAAgD;IAChD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,qDAAqD;AACrD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7B;AAKD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GAAG,QAAQ,CA2E/F;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKjD"}
|
package/dist/src/progress.js
CHANGED
|
@@ -37,15 +37,13 @@ export function createProgress(options) {
|
|
|
37
37
|
const phase = (text) => {
|
|
38
38
|
if (quiet)
|
|
39
39
|
return;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
// A phase can complete while a step is still spinning (a captured member,
|
|
41
|
+
// a file taken in): its line goes above the step's, which carries on — the
|
|
42
|
+
// same step, so its handle still updates and completes it.
|
|
43
|
+
clearLine();
|
|
43
44
|
stream.write(`✔ ${text}\n`);
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
if (hadActive && activeText !== undefined) {
|
|
47
|
-
startStepInternal(activeText);
|
|
48
|
-
}
|
|
45
|
+
if (tty)
|
|
46
|
+
renderSpinner();
|
|
49
47
|
};
|
|
50
48
|
const startStepInternal = (text) => {
|
|
51
49
|
if (tty) {
|
|
@@ -93,7 +91,7 @@ export function createProgress(options) {
|
|
|
93
91
|
return { phase, step, quiet };
|
|
94
92
|
}
|
|
95
93
|
/**
|
|
96
|
-
* Format a byte count for progress lines (`812 kB`, `1.2 MB`).
|
|
94
|
+
* Format a byte count for progress lines (`812 kB`, `1.2 MB`, `7.5 GB`).
|
|
97
95
|
*
|
|
98
96
|
* @param bytes - The byte count
|
|
99
97
|
* @returns Human-readable size
|
|
@@ -103,6 +101,8 @@ export function formatBytes(bytes) {
|
|
|
103
101
|
return `${bytes} B`;
|
|
104
102
|
if (bytes < 1024 * 1024)
|
|
105
103
|
return `${Math.round(bytes / 1024)} kB`;
|
|
106
|
-
|
|
104
|
+
if (bytes < 1024 * 1024 * 1024)
|
|
105
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
106
|
+
return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)} GB`;
|
|
107
107
|
}
|
|
108
108
|
//# sourceMappingURL=progress.js.map
|
package/dist/src/progress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/progress.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4CH,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1E,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,OAAsD;IACnF,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;IAElC,IAAI,MAAsG,CAAC;IAE3G,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,IAAI,GAAG;YAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAS,EAAE;QAC/B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,KAAK,CAAC,WAAW,cAAc,CAAC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;YAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5D,SAAS,EAAE,CAAC;QACZ,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,IAAY,EAAQ,EAAE;QACnC,IAAI,KAAK;YAAE,OAAO;QAClB,
|
|
1
|
+
{"version":3,"file":"progress.js","sourceRoot":"","sources":["../../src/progress.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4CH,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1E,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,OAAsD;IACnF,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,KAAK,IAAI,CAAC;IACtC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;IAElC,IAAI,MAAsG,CAAC;IAE3G,MAAM,SAAS,GAAG,GAAS,EAAE;QAC3B,IAAI,GAAG;YAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAS,EAAE;QAC/B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,CAAC,KAAK,CAAC,WAAW,cAAc,CAAC,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;YAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5D,SAAS,EAAE,CAAC;QACZ,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,CAAC,IAAY,EAAQ,EAAE;QACnC,IAAI,KAAK;YAAE,OAAO;QAClB,0EAA0E;QAC1E,2EAA2E;QAC3E,2DAA2D;QAC3D,SAAS,EAAE,CAAC;QACZ,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;QAC5B,IAAI,GAAG;YAAE,aAAa,EAAE,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAQ,EAAE;QAC/C,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC9C,aAAa,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;YAC/D,mDAAmD;YAClD,MAAM,CAAC,KAAgC,CAAC,KAAK,EAAE,EAAE,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAc,EAAE;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC;QACnF,CAAC;QACD,UAAU,EAAE,CAAC;QACb,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,CAAC;QACpB,OAAO;YACL,MAAM,CAAC,IAAY;gBACjB,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACvC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;gBACnB,IAAI,GAAG;oBAAE,aAAa,EAAE,CAAC;gBACzB,iEAAiE;YACnE,CAAC;YACD,IAAI,CAAC,SAAkB;gBACrB,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACvC,MAAM,OAAO,GAAG,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC;gBACzC,UAAU,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,IAAI;gBACF,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACvC,UAAU,EAAE,CAAC;YACf,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,KAAK,IAAI,CAAC;IACtC,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACjE,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAClF,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC3D,CAAC"}
|
|
@@ -37,16 +37,31 @@ test('TTY: step renders in place and completes to a ✔ line', () => {
|
|
|
37
37
|
assert.ok(out.includes('pushing objects 23/40'), 'update text rendered');
|
|
38
38
|
assert.ok(out.endsWith('✔ imported demo@1.0.0 (40 objects)\n'), 'completion line last');
|
|
39
39
|
});
|
|
40
|
-
test('TTY: a phase completing mid-step resumes the step line', () => {
|
|
40
|
+
test('TTY: a phase completing mid-step resumes the step line, and the step goes on', () => {
|
|
41
41
|
const stream = fakeStream(true);
|
|
42
42
|
const progress = createProgress({ stream });
|
|
43
43
|
const step = progress.step('capturing package');
|
|
44
44
|
progress.phase('captured pricing (uv build --sdist, 1.2 MB)');
|
|
45
|
+
step.update('capturing package: 2 of 3 members');
|
|
45
46
|
step.done('captured package demo@1.0.0');
|
|
46
47
|
const out = stream.chunks.join('');
|
|
47
48
|
const phaseAt = out.indexOf('✔ captured pricing');
|
|
48
49
|
const resumeAt = out.indexOf('capturing package', phaseAt);
|
|
49
50
|
assert.ok(phaseAt >= 0 && resumeAt > phaseAt, 'step line resumes after the phase line');
|
|
51
|
+
assert.ok(out.indexOf('capturing package: 2 of 3 members', phaseAt) > phaseAt, 'the step updates after the phase');
|
|
52
|
+
assert.ok(out.endsWith('✔ captured package demo@1.0.0\n'), 'the step completes after the phase');
|
|
53
|
+
});
|
|
54
|
+
test('non-TTY: a phase mid-step prints its line, and the step still completes', () => {
|
|
55
|
+
const stream = fakeStream(false);
|
|
56
|
+
const progress = createProgress({ stream });
|
|
57
|
+
const step = progress.step('taking in 2 files');
|
|
58
|
+
progress.phase('wide_a 70.7 MB in 3.1 s (22.8 MB/s), carried');
|
|
59
|
+
step.done('took in 2 files');
|
|
60
|
+
assert.deepStrictEqual(stream.chunks.join('').split('\n').filter(Boolean), [
|
|
61
|
+
'taking in 2 files …',
|
|
62
|
+
'✔ wide_a 70.7 MB in 3.1 s (22.8 MB/s), carried',
|
|
63
|
+
'✔ took in 2 files',
|
|
64
|
+
]);
|
|
50
65
|
});
|
|
51
66
|
test('quiet suppresses everything', () => {
|
|
52
67
|
const stream = fakeStream(true);
|
|
@@ -71,5 +86,6 @@ test('formatBytes picks sensible units', () => {
|
|
|
71
86
|
assert.strictEqual(formatBytes(512), '512 B');
|
|
72
87
|
assert.strictEqual(formatBytes(84 * 1024), '84 kB');
|
|
73
88
|
assert.strictEqual(formatBytes(1.2 * 1024 * 1024), '1.2 MB');
|
|
89
|
+
assert.strictEqual(formatBytes(7.5 * 1024 * 1024 * 1024), '7.5 GB');
|
|
74
90
|
});
|
|
75
91
|
//# sourceMappingURL=progress.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"progress.spec.js","sourceRoot":"","sources":["../../src/progress.spec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AAEjF,SAAS,UAAU,CAAC,GAAY;IAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACxF,CAAC;AAED,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC,wBAAwB;IACrE,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,CAAC,CAAC;IAC1E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,CAAC,CAAC;IAChF,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;QACtD,sCAAsC;QACtC,8BAA8B;QAC9B,oCAAoC;KACrC,CAAC,CAAC;IACH,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,+BAA+B,CAAC,CAAC;AACtF,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAChE,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,uCAAuC,CAAC,CAAC;IACvE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACzE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,sCAAsC,CAAC,EAAE,sBAAsB,CAAC,CAAC;AAC1F,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"progress.spec.js","sourceRoot":"","sources":["../../src/progress.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elaraai/e3-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.82",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "East Execution Engine CLI - Command-line tool for managing e3 repositories and tasks",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"commander": "^12.0.0",
|
|
43
43
|
"esbuild": "^0.27.2",
|
|
44
|
-
"@elaraai/e3": "1.0.
|
|
45
|
-
"@elaraai/e3-
|
|
46
|
-
"@elaraai/e3-
|
|
47
|
-
"@elaraai/e3-
|
|
44
|
+
"@elaraai/e3": "1.0.82",
|
|
45
|
+
"@elaraai/e3-core": "1.0.82",
|
|
46
|
+
"@elaraai/e3-api-client": "1.0.82",
|
|
47
|
+
"@elaraai/e3-types": "1.0.82"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"@elaraai/east": "1.0.
|
|
50
|
+
"@elaraai/east": "1.0.82"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@types/node": "^22.0.0",
|