@elaraai/east-node-cli 1.0.84 → 1.0.86

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 CHANGED
@@ -219,12 +219,15 @@ Options:
219
219
  Indexed `.beast2` collection inputs (Array/Set/Dict) open **lazily**, whatever
220
220
  they weigh: size, iteration and keyed reads are served from the blob's segment
221
221
  index with O(segment) decoded memory, and any other operation transparently
222
- decodes the whole value once. `--decode whole` decodes every input before the
223
- program runs instead, which suits a program that reads most of an input at
224
- random: lazily, a read beyond the segments the pager keeps decodes its segment
225
- again. `exec` reads the same choice from its unit's `decode`, and east-c and
226
- east-py take it alike. Semantics are identical either way: it is a memory and
227
- time choice, not a behavior toggle.
222
+ decodes the whole value once. A loop holds only the segment it walks. Keyed
223
+ reads keep the segments they decode, up to 256 MiB of decoded weight per input
224
+ (`EAST_PAGED_CACHE_BYTES`; `1` keeps one segment), and reads in key order keep
225
+ about two. `--decode whole` decodes every input before the program runs
226
+ instead, which suits a program that reads at random across more than that, or
227
+ loops over an input more than once: lazily, a read beyond the segments the
228
+ pager keeps decodes its segment again. `exec` reads the same choice from its
229
+ unit's `decode`, and east-c and east-py take it alike. Semantics are identical
230
+ either way: it is a memory and time choice, not a behavior toggle.
228
231
 
229
232
  ```bash
230
233
  east-node run ./lookup.beast2 -p @elaraai/east-node-std -i table.beast2 --decode whole
package/dist/cli.js CHANGED
@@ -9,7 +9,7 @@ import { createRequire } from 'module';
9
9
  import { EastError } from '@elaraai/east/internal';
10
10
  import { loadPlatforms, loadPlatformWithMetadata } from './loader.js';
11
11
  import { printResult, runProgram, UsageError } from './runner.js';
12
- import { executeUnit, readUnit } from './exec.js';
12
+ import { execUnit, readUnit } from './exec.js';
13
13
  import { encodeRebuilt, isDirectory, transpile, transpileDir } from './transpile.js';
14
14
  import { exportFunctionsFromModule } from './export-functions.js';
15
15
  import { serve as serveLsp } from './lsp.js';
@@ -154,9 +154,9 @@ async function cmdExec(unitPath, options) {
154
154
  startLifeline(options);
155
155
  let result;
156
156
  try {
157
- const read = readUnit(unitPath);
158
- result = await executeUnit(read, options.verbose ?? false);
159
- writeFileSync(read.at(read.unit.result), encodeBeast2For(UnitResultType)(result));
157
+ const unit = readUnit(unitPath);
158
+ result = await execUnit(unit, options.verbose ?? false);
159
+ writeFileSync(unit.result, encodeBeast2For(UnitResultType)(result));
160
160
  }
161
161
  catch (err) {
162
162
  return fail(`Error: exec ${unitPath}: ${err.message ?? String(err)}`, 2);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/exec.d.ts CHANGED
@@ -3,28 +3,21 @@
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
5
  import { type Unit, type UnitResult } from '@elaraai/east';
6
- /** Resolves a path a unit names. */
7
- type Resolve = (path: string) => string;
8
- /** A unit read from its file, and how to find what it names. */
9
- export interface ReadUnit {
10
- /** The unit, as its file holds it. */
11
- unit: Unit;
12
- /** Resolves a path the unit names: a relative one against the unit file's
13
- * directory, so a unit and the files it names move together. */
14
- at: Resolve;
15
- }
16
6
  /**
17
- * Reads a unit file.
7
+ * Reads a unit file, naming every file the unit names by the path it is at: a
8
+ * relative one resolved against the unit file's directory, so a unit and the
9
+ * files it names move together.
18
10
  *
19
11
  * @param unitPath - the unit file
20
- * @returns the unit, and how to resolve the paths it names
12
+ * @returns the unit, its paths resolved
21
13
  * @throws {Error} When the file cannot be read or does not hold a unit.
22
14
  */
23
- export declare function readUnit(unitPath: string): ReadUnit;
15
+ export declare function readUnit(unitPath: string): Unit;
24
16
  /**
25
- * Executes a unit: does its work, writes its output, and reports how it went.
17
+ * Executes a unit over this machine's files: does its work, writes its output,
18
+ * and reports how it went.
26
19
  *
27
- * @param read - the unit, and how to resolve the paths it names
20
+ * @param unit - the unit, its paths resolved ({@link readUnit})
28
21
  * @param verbose - print, on stderr, the account of each input `run -v`
29
22
  * prints — its file and what it weighs, whether it opened lazily or was
30
23
  * decoded whole, and what reading it came to — which is what reaches a
@@ -34,9 +27,11 @@ export declare function readUnit(unitPath: string): ReadUnit;
34
27
  * @remarks
35
28
  * The unit's thread grant caps the frame pool for the rest of the process: a
36
29
  * grant of one frames every output inline. A unit whose host places its
37
- * segments as they are read (`fetch`) has the process's manifest openers ask
38
- * for a segment they find absent.
30
+ * segments as they are read (`fetch`) turns on {@link FETCH_SEGMENTS_ENV} for
31
+ * the process, and has a segment of a staged manifest that is absent asked for
32
+ * as it is first read. A lazy input's pager keeps the segments keyed and index
33
+ * reads decode, up to `EAST_PAGED_CACHE_BYTES` of decoded weight
34
+ * ({@link pagedCacheBytes}).
39
35
  */
40
- export declare function executeUnit({ unit, at }: ReadUnit, verbose?: boolean): Promise<UnitResult>;
41
- export {};
36
+ export declare function execUnit(unit: Unit, verbose?: boolean): Promise<UnitResult>;
42
37
  //# sourceMappingURL=exec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../src/exec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA2BH,OAAO,EAoBH,KAAK,IAAI,EAGT,KAAK,UAAU,EAElB,MAAM,eAAe,CAAC;AAgBvB,oCAAoC;AACpC,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAKxC,gEAAgE;AAChE,MAAM,WAAW,QAAQ;IACrB,sCAAsC;IACtC,IAAI,EAAE,IAAI,CAAC;IACX;qEACiE;IACjE,EAAE,EAAE,OAAO,CAAC;CACf;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAInD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,WAAW,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CA4B9F"}
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../src/exec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAsBH,OAAO,EAA8D,KAAK,IAAI,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAKvH;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI/C;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAW/E"}
package/dist/exec.js CHANGED
@@ -3,50 +3,47 @@
3
3
  * Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
4
  */
5
5
  /**
6
- * `east-node exec <unit.beast2>`: the runner protocol.
6
+ * `east-node exec <unit.beast2>`: the runner protocol, over this machine's
7
+ * files.
7
8
  *
8
9
  * A unit (`UnitType` in `@elaraai/east`) runs a program on its inputs, merges
9
10
  * the parts of one output that earlier units wrote, or takes a delivered
10
- * collection in, and names where its output and its result go. A program's
11
- * output is written by its kind:
12
- * - a value as one blob, or as a manifest directory when it is a collection;
13
- * - an array through the Writer;
14
- * - a set or a dict through the RunSorter, as sorted runs;
15
- * - a fold by folding every emitted value into an accumulator.
16
- *
17
- * A delivery taken in is read a segment at a time from its file, and written
18
- * through the Writer as a manifest directory (`intakeBeast2For`).
19
- *
20
- * Collections are written as manifest directories, which a store takes in by
21
- * linking their files. The result (`UnitResultType`) records the outcome — `ok`,
22
- * or the failure's message and source locations — with the process's peak
23
- * memory and where the time went. east-c and east-py implement the same
24
- * protocol, and the conformance corpus holds the three to the same output
25
- * bytes and outcomes.
11
+ * collection in, and names where its output and its result go. east's
12
+ * `executeUnit` does the work — the one TypeScript unit runner, which a browser
13
+ * runs over the files in memory — and this module is its file wrapper: it
14
+ * reads the unit file, resolves the paths the unit names against the unit
15
+ * file's directory, and hands `executeUnit` this machine's files
16
+ * (`nodeUnitIO`, which asks the host for a segment it finds absent through
17
+ * `<segment>.want`), the platform packages the unit lists, imported by name,
18
+ * and the process's memory. The CLI records the result where the unit says.
19
+ * east-c and east-py implement the same protocol, and the conformance corpus
20
+ * holds the three to the same output bytes and outcomes.
26
21
  */
27
- import { closeSync, fstatSync, mkdirSync, openSync, readdirSync, readFileSync, readSync, writeFileSync } from 'node:fs';
28
- import { dirname, isAbsolute, join, resolve } from 'node:path';
29
- import { Beast2ManifestWriter, Beast2RunSorter, EastError, EastIR, EastTypeValueType, FETCH_SEGMENTS_ENV, SortedMap, SortedSet, UnitType, compareFor, configureFramePool, decodeBeast2For, encodeBeast2For, intakeBeast2For, isTypeValueEqual, variant, } from '@elaraai/east';
30
- import { printTypeValue } from '@elaraai/east/internal';
31
- import { loadEastIR, loadInput, loadPlatforms, segmentDirFor } from './loader.js';
32
- import { mergeBlobs } from './merge.js';
33
- import { formatFileSize, loadMergeFunction, openInputs, peakBytes, reportInput, reportInputReads } from './runner.js';
22
+ import { readFileSync } from 'node:fs';
23
+ import { dirname, isAbsolute, resolve } from 'node:path';
24
+ import { FETCH_SEGMENTS_ENV, UnitType, decodeBeast2For, executeUnit } from '@elaraai/east';
25
+ import { resolveUnitPaths } from '@elaraai/east/internal';
26
+ import { loadPlatform, nodeUnitIO, pagedCacheBytes, residentBytes } from './loader.js';
27
+ import { peakBytes, unitRunReport } from './runner.js';
34
28
  /**
35
- * Reads a unit file.
29
+ * Reads a unit file, naming every file the unit names by the path it is at: a
30
+ * relative one resolved against the unit file's directory, so a unit and the
31
+ * files it names move together.
36
32
  *
37
33
  * @param unitPath - the unit file
38
- * @returns the unit, and how to resolve the paths it names
34
+ * @returns the unit, its paths resolved
39
35
  * @throws {Error} When the file cannot be read or does not hold a unit.
40
36
  */
41
37
  export function readUnit(unitPath) {
42
38
  const unit = decodeBeast2For(UnitType)(readFileSync(unitPath));
43
39
  const base = dirname(resolve(unitPath));
44
- return { unit, at: (path) => (isAbsolute(path) ? path : resolve(base, path)) };
40
+ return resolveUnitPaths(unit, (path) => (isAbsolute(path) ? path : resolve(base, path)));
45
41
  }
46
42
  /**
47
- * Executes a unit: does its work, writes its output, and reports how it went.
43
+ * Executes a unit over this machine's files: does its work, writes its output,
44
+ * and reports how it went.
48
45
  *
49
- * @param read - the unit, and how to resolve the paths it names
46
+ * @param unit - the unit, its paths resolved ({@link readUnit})
50
47
  * @param verbose - print, on stderr, the account of each input `run -v`
51
48
  * prints — its file and what it weighs, whether it opened lazily or was
52
49
  * decoded whole, and what reading it came to — which is what reaches a
@@ -56,311 +53,24 @@ export function readUnit(unitPath) {
56
53
  * @remarks
57
54
  * The unit's thread grant caps the frame pool for the rest of the process: a
58
55
  * grant of one frames every output inline. A unit whose host places its
59
- * segments as they are read (`fetch`) has the process's manifest openers ask
60
- * for a segment they find absent.
56
+ * segments as they are read (`fetch`) turns on {@link FETCH_SEGMENTS_ENV} for
57
+ * the process, and has a segment of a staged manifest that is absent asked for
58
+ * as it is first read. A lazy input's pager keeps the segments keyed and index
59
+ * reads decode, up to `EAST_PAGED_CACHE_BYTES` of decoded weight
60
+ * ({@link pagedCacheBytes}).
61
61
  */
62
- export async function executeUnit({ unit, at }, verbose = false) {
63
- configureFramePool({ workers: Number(unit.threads) });
62
+ export async function execUnit(unit, verbose = false) {
64
63
  if (unit.fetch)
65
64
  process.env[FETCH_SEGMENTS_ENV] = '1';
66
65
  else
67
66
  delete process.env[FETCH_SEGMENTS_ENV];
68
- const timings = { load: 0, compile: 0, execute: 0, output: 0 };
69
- let mark = performance.now();
70
- const lap = (phase) => {
71
- const now = performance.now();
72
- timings[phase] += now - mark;
73
- mark = now;
74
- };
75
- let outcome;
76
- try {
77
- const platformFns = await loadPlatforms(unit.platforms);
78
- if (unit.work.type === 'run') {
79
- await runWork(unit.work.value, platformFns, at, lap, verbose);
80
- }
81
- else if (unit.work.type === 'merge') {
82
- mergeWork(unit.work.value, platformFns, at, lap);
83
- }
84
- else {
85
- intakeWork(unit.work.value, at, lap);
86
- }
87
- outcome = variant('ok', null);
88
- }
89
- catch (err) {
90
- outcome = err instanceof EastError
91
- ? variant('failed', { message: err.eastMessage, locations: err.location })
92
- : variant('failed', { message: err?.message ?? String(err), locations: [] });
93
- }
94
- return { outcome, peakBytes: peakBytes(), timings };
95
- }
96
- /** Runs a program on its inputs and writes what it produces; `verbose` gives
97
- * the account of each input `run -v` gives. */
98
- async function runWork(work, platformFns, at, lap, verbose) {
99
- const program = loadEastIR(at(work.program));
100
- const signature = program.ir.value.type.value;
101
- // Every kind but a value is emitted, through the trailing parameter.
102
- const emitted = work.output.type !== 'value';
103
- if (emitted && signature.inputs.length === 0) {
104
- throw new Error(`exec: a ${work.output.type} output is emitted: the program's trailing parameter must be emit, a function`);
105
- }
106
- const params = emitted ? signature.inputs.slice(0, -1) : signature.inputs;
107
- if (work.inputs.length !== params.length) {
108
- const printed = `(${signature.inputs.map((type) => printTypeValue(type)).join(', ')}) -> ${printTypeValue(signature.output)}`;
109
- throw new Error(`Function expects ${params.length} inputs, got ${work.inputs.length}\nSignature: ${printed}`);
110
- }
111
- // Inputs are frozen: each collection opened lazily, or every input decoded
112
- // whole, as the unit's `decode` says.
113
- const paths = work.inputs.map((input) => at(input));
114
- if (verbose) {
115
- console.error(`Running: ${at(work.program)} (${formatFileSize(at(work.program))})`);
116
- paths.forEach((path, i) => reportInput(i, path, params[i]));
117
- }
118
- const inputs = openInputs(paths, params, work.decode, verbose);
119
- lap('load');
120
- const compiled = program.compile(platformFns);
121
- const output = openOutput(work.output, emitted ? signature.inputs.at(-1) : signature.output, platformFns, at);
122
- lap('compile');
123
- try {
124
- const result = await compiled(...inputs, ...(output.emit !== undefined ? [output.emit] : []));
125
- lap('execute');
126
- output.finish(result);
127
- lap('output');
128
- }
129
- finally {
130
- // What reading each lazy input came to, the output's writing included
131
- // — or up to the failure.
132
- if (verbose)
133
- inputs.forEach((input, i) => reportInputReads(i, paths[i], input));
134
- }
135
- }
136
- /**
137
- * Opens a running program's output.
138
- *
139
- * @param output - the output
140
- * @param type - the program's result type, for a value; its emit parameter's
141
- * type otherwise
142
- * @param platformFns - the platforms a fold's functions compile with
143
- * @param at - resolves the paths the output names
144
- * @returns the sink
145
- * @throws {Error} When the emit parameter does not fit the kind, a fold's
146
- * function does not fit the emitted type, or an output directory holds
147
- * anything already.
148
- */
149
- function openOutput(output, type, platformFns, at) {
150
- if (output.type === 'value') {
151
- const path = at(output.value);
152
- return { finish: (result) => writeValue(path, type, result) };
153
- }
154
- const arity = output.type === 'dict' ? 2 : 1;
155
- const emitInputs = type.type === 'Function' ? type.value.inputs : null;
156
- if (emitInputs === null || emitInputs.length !== arity) {
157
- throw new Error(`exec: a ${output.type} output is emitted: the program's trailing parameter must be emit, a function of ${arity} argument${arity === 1 ? '' : 's'}, got ${printTypeValue(type)}`);
158
- }
159
- const element = emitInputs[0];
160
- switch (output.type) {
161
- case 'array': {
162
- const writer = new Beast2ManifestWriter(variant('Array', element), manifestDirectory(join(outputDirectory(at(output.value)), '0.beast2')), { parallel: true });
163
- return {
164
- emit: (value) => { writer.add(value); return null; },
165
- finish: () => writer.finish(),
166
- };
167
- }
168
- case 'set': {
169
- const dir = outputDirectory(at(output.value));
170
- const sorter = new Beast2RunSorter(variant('Set', element), (run) => manifestDirectory(join(dir, `${run}.beast2`)), { union: true, parallel: true });
171
- return {
172
- emit: (value) => { sorter.add(value); return null; },
173
- finish: () => sorter.finish(),
174
- };
175
- }
176
- case 'dict': {
177
- const value = emitInputs[1];
178
- const merge = output.value.merge.type === 'some'
179
- ? loadMergeFunction(at(output.value.merge.value), element, value, platformFns, 'the emit parameter')
180
- : undefined;
181
- const dir = outputDirectory(at(output.value.dir));
182
- const sorter = new Beast2RunSorter(variant('Dict', { key: element, value }), (run) => manifestDirectory(join(dir, `${run}.beast2`)), { ...(merge !== undefined && { merge }), parallel: true });
183
- return {
184
- emit: (key, entry) => { sorter.add([key, entry]); return null; },
185
- finish: () => sorter.finish(),
186
- };
187
- }
188
- case 'fold': {
189
- const { combine } = loadCombineFunction(at(output.value.combine), element, platformFns);
190
- const path = at(output.value.path);
191
- let acc = loadInput(at(output.value.zero), element);
192
- return {
193
- emit: (value) => { acc = combine(acc, value); return null; },
194
- finish: () => writeValue(path, element, acc),
195
- };
196
- }
197
- }
198
- }
199
- /** Assembles the parts of one output into one. */
200
- function mergeWork(work, platformFns, at, lap) {
201
- const output = work.output;
202
- const parts = work.parts.map((part) => at(part));
203
- switch (output.type) {
204
- case 'set':
205
- case 'dict': {
206
- const dir = outputDirectory(at(output.type === 'set' ? output.value : output.value.dir));
207
- lap('load');
208
- mergeBlobs(parts, manifestDirectory(join(dir, '0.beast2')), {
209
- union: output.type === 'set',
210
- ...(output.type === 'dict' && output.value.merge.type === 'some' && { mergePath: at(output.value.merge.value) }),
211
- ...(work.range.type === 'some' && { rangePath: at(work.range.value) }),
212
- platformFns,
213
- });
214
- lap('execute');
215
- return;
216
- }
217
- case 'fold': {
218
- const { combine, type } = loadCombineFunction(at(output.value.combine), null, platformFns);
219
- let acc = loadInput(at(output.value.zero), type);
220
- lap('compile');
221
- for (const part of parts)
222
- acc = combine(acc, loadInput(part, type));
223
- lap('execute');
224
- writeValue(at(output.value.path), type, acc);
225
- lap('output');
226
- return;
227
- }
228
- case 'array':
229
- throw new Error("exec: an array's parts are concatenated, never merged: a merge unit takes set, dict or fold parts");
230
- case 'value':
231
- throw new Error('exec: a value has no parts: a merge unit takes set, dict or fold parts');
232
- }
233
- }
234
- /**
235
- * Takes a delivered collection in: the file read a segment at a time, through
236
- * positioned reads, and written through the Writer as the manifest directory
237
- * the unit names.
238
- *
239
- * @throws {Error} When the type file does not hold a type, the delivery cannot
240
- * be read, or the intake refuses it — every refusal in the words each runner
241
- * uses.
242
- */
243
- function intakeWork(work, at, lap) {
244
- let type;
245
- try {
246
- type = decodeBeast2For(EastTypeValueType)(readFileSync(at(work.type)));
247
- }
248
- catch {
249
- throw new Error('exec: intake: its type file does not hold a type');
250
- }
251
- const intake = intakeBeast2For(type);
252
- const fd = openSync(at(work.input), 'r');
253
- try {
254
- const delivery = {
255
- size: fstatSync(fd).size,
256
- read: (offset, length) => {
257
- const out = new Uint8Array(length);
258
- let done = 0;
259
- while (done < length) {
260
- const got = readSync(fd, out, done, length - done, offset + done);
261
- if (got === 0)
262
- break;
263
- done += got;
264
- }
265
- return done === length ? out : out.subarray(0, done);
266
- },
267
- };
268
- lap('load');
269
- const segments = work.segments.type === 'some'
270
- ? { segments: { from: Number(work.segments.value.from), to: Number(work.segments.value.to) } }
271
- : {};
272
- intake(delivery, manifestDirectory(at(work.output)), { ...segments, parallel: true });
273
- lap('execute');
274
- }
275
- finally {
276
- closeSync(fd);
277
- }
278
- }
279
- /**
280
- * Loads a fold's `combine`: an IR file holding a `(T, T) -> T` East function,
281
- * compiled with the unit's platforms.
282
- *
283
- * @param path - the IR file
284
- * @param type - the emitted type, or `null` to take `T` from the function —
285
- * a merge of fold partials has no program to say what was emitted
286
- * @param platformFns - the unit's platforms
287
- * @returns the compiled function, and `T`
288
- * @throws {Error} When the IR is not a function of that shape.
289
- */
290
- function loadCombineFunction(path, type, platformFns) {
291
- const bundle = loadEastIR(path);
292
- const fnType = bundle.ir.value.type;
293
- const shape = fnType.type === 'Function' ? fnType.value : null;
294
- const t = type ?? shape?.output;
295
- if (shape === null || t === undefined || shape.inputs.length !== 2 ||
296
- !isTypeValueEqual(shape.inputs[0], t) ||
297
- !isTypeValueEqual(shape.inputs[1], t) ||
298
- !isTypeValueEqual(shape.output, t)) {
299
- const expected = t !== undefined ? ` (T = ${printTypeValue(t)})` : '';
300
- throw new Error(`exec: combine: expected a function (T, T) -> T${expected}, got ${printTypeValue(fnType)}`);
301
- }
302
- return { combine: bundle.compile(platformFns), type: t };
303
- }
304
- /**
305
- * Writes a value output: a collection as a manifest directory at `path`,
306
- * anything else as one blob there.
307
- *
308
- * @param path - the output file
309
- * @param type - the value's type
310
- * @param value - the value
311
- */
312
- function writeValue(path, type, value) {
313
- if (type.type !== 'Array' && type.type !== 'Set' && type.type !== 'Dict') {
314
- writeFileSync(path, encodeBeast2For(type)(value));
315
- return;
316
- }
317
- // A collection goes in canonical order: a Set or Dict an East program
318
- // built is sorted already, and a plain one is sorted first.
319
- const key = (type.type === 'Dict' ? type.value.key : type.value);
320
- const cmp = compareFor(key);
321
- const elements = type.type === 'Array' ? value
322
- : type.type === 'Set' ? (value instanceof SortedSet ? value : [...value].sort(cmp))
323
- : value instanceof SortedMap ? value.entries() : [...value.entries()].sort((a, b) => cmp(a[0], b[0]));
324
- const writer = new Beast2ManifestWriter(type, manifestDirectory(path), { parallel: true });
325
- for (const element of elements)
326
- writer.add(element);
327
- writer.finish();
328
- }
329
- /**
330
- * The sink a manifest directory is written through: the manifest at `path`,
331
- * written last, and every object it names in `<path>.segments/` under its
332
- * SHA-256 — the layout a store takes in by linking, and every runner's opener
333
- * reads.
334
- *
335
- * @param path - the manifest's file
336
- * @returns the sink
337
- */
338
- function manifestDirectory(path) {
339
- const segments = segmentDirFor(path);
340
- let made = false;
341
- return {
342
- object: (hash, bytes) => {
343
- if (!made) {
344
- mkdirSync(segments, { recursive: true });
345
- made = true;
346
- }
347
- writeFileSync(join(segments, `${hash}.beast2`), bytes);
348
- },
349
- manifest: (bytes) => writeFileSync(path, bytes),
350
- };
351
- }
352
- /**
353
- * Creates an output directory of runs, which must hold nothing yet: every
354
- * manifest in it is one of the unit's runs.
355
- *
356
- * @param dir - the directory
357
- * @returns the directory
358
- * @throws {Error} When it holds anything already.
359
- */
360
- function outputDirectory(dir) {
361
- mkdirSync(dir, { recursive: true });
362
- if (readdirSync(dir).length > 0)
363
- throw new Error(`exec: the output directory ${dir} is not empty`);
364
- return dir;
67
+ const cacheBytes = pagedCacheBytes();
68
+ return executeUnit(unit, nodeUnitIO, {
69
+ platforms: loadPlatform,
70
+ resident: residentBytes,
71
+ peakBytes,
72
+ ...(cacheBytes !== undefined && { cacheBytes }),
73
+ ...(verbose && { report: unitRunReport }),
74
+ });
365
75
  }
366
76
  //# sourceMappingURL=exec.js.map
package/dist/exec.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../src/exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../src/exec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAA8B,MAAM,eAAe,CAAC;AACvH,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACrC,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,OAAO,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAU,EAAE,OAAO,GAAG,KAAK;IACtD,IAAI,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,GAAG,GAAG,CAAC;;QACjD,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,OAAO,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE;QACjC,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,aAAa;QACvB,SAAS;QACT,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,CAAC;QAC/C,GAAG,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;KAC5C,CAAC,CAAC;AACP,CAAC"}