@elaraai/e3 1.0.78 → 1.0.80
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 +11 -2
- package/dist/src/browser.d.ts +5 -4
- package/dist/src/browser.d.ts.map +1 -1
- package/dist/src/browser.js +3 -2
- package/dist/src/browser.js.map +1 -1
- package/dist/src/dataset-file.d.ts +17 -19
- package/dist/src/dataset-file.d.ts.map +1 -1
- package/dist/src/dataset-file.js +26 -45
- package/dist/src/dataset-file.js.map +1 -1
- package/dist/src/export.d.ts +2 -3
- package/dist/src/export.d.ts.map +1 -1
- package/dist/src/export.js +150 -80
- package/dist/src/export.js.map +1 -1
- package/dist/src/export.spec.js +177 -57
- package/dist/src/export.spec.js.map +1 -1
- package/dist/src/function.spec.js +29 -58
- package/dist/src/function.spec.js.map +1 -1
- package/dist/src/functions-link.spec.js +19 -17
- package/dist/src/functions-link.spec.js.map +1 -1
- package/dist/src/index.d.ts +56 -8
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -4
- package/dist/src/index.js.map +1 -1
- package/dist/src/input.d.ts +8 -5
- package/dist/src/input.d.ts.map +1 -1
- package/dist/src/input.js +8 -5
- package/dist/src/input.js.map +1 -1
- package/dist/src/migration.d.ts +172 -0
- package/dist/src/migration.d.ts.map +1 -0
- package/dist/src/migration.js +108 -0
- package/dist/src/migration.js.map +1 -0
- package/dist/src/migration.spec.d.ts +6 -0
- package/dist/src/migration.spec.d.ts.map +1 -0
- package/dist/src/migration.spec.js +197 -0
- package/dist/src/migration.spec.js.map +1 -0
- package/dist/src/mutation-programs.spec.d.ts +6 -0
- package/dist/src/mutation-programs.spec.d.ts.map +1 -0
- package/dist/src/mutation-programs.spec.js +310 -0
- package/dist/src/mutation-programs.spec.js.map +1 -0
- package/dist/src/mutation.d.ts +117 -9
- package/dist/src/mutation.d.ts.map +1 -1
- package/dist/src/mutation.js +104 -46
- package/dist/src/mutation.js.map +1 -1
- package/dist/src/open-beast-link.spec.js +10 -8
- package/dist/src/open-beast-link.spec.js.map +1 -1
- package/dist/src/output.d.ts +117 -0
- package/dist/src/output.d.ts.map +1 -0
- package/dist/src/output.js +119 -0
- package/dist/src/output.js.map +1 -0
- package/dist/src/package.d.ts +7 -5
- package/dist/src/package.d.ts.map +1 -1
- package/dist/src/package.js +98 -8
- package/dist/src/package.js.map +1 -1
- package/dist/src/package.spec.d.ts +6 -0
- package/dist/src/package.spec.d.ts.map +1 -0
- package/dist/src/package.spec.js +16 -0
- package/dist/src/package.spec.js.map +1 -0
- package/dist/src/record-guards.d.ts +41 -0
- package/dist/src/record-guards.d.ts.map +1 -0
- package/dist/src/record-guards.js +44 -0
- package/dist/src/record-guards.js.map +1 -0
- package/dist/src/record-index.d.ts +129 -0
- package/dist/src/record-index.d.ts.map +1 -0
- package/dist/src/record-index.js +144 -0
- package/dist/src/record-index.js.map +1 -0
- package/dist/src/record-index.spec.d.ts +6 -0
- package/dist/src/record-index.spec.d.ts.map +1 -0
- package/dist/src/record-index.spec.js +160 -0
- package/dist/src/record-index.spec.js.map +1 -0
- package/dist/src/record-programs.d.ts +128 -0
- package/dist/src/record-programs.d.ts.map +1 -0
- package/dist/src/record-programs.js +480 -0
- package/dist/src/record-programs.js.map +1 -0
- package/dist/src/record.d.ts.map +1 -1
- package/dist/src/record.js +2 -0
- package/dist/src/record.js.map +1 -1
- package/dist/src/record.spec.js +71 -13
- package/dist/src/record.spec.js.map +1 -1
- package/dist/src/runner.d.ts +6 -9
- package/dist/src/runner.d.ts.map +1 -1
- package/dist/src/runner.js +9 -25
- package/dist/src/runner.js.map +1 -1
- package/dist/src/runner.spec.js +16 -34
- package/dist/src/runner.spec.js.map +1 -1
- package/dist/src/sha256.d.ts +4 -3
- package/dist/src/sha256.d.ts.map +1 -1
- package/dist/src/sha256.js +20 -17
- package/dist/src/sha256.js.map +1 -1
- package/dist/src/sha256.spec.js +10 -0
- package/dist/src/sha256.spec.js.map +1 -1
- package/dist/src/task.d.ts +116 -251
- package/dist/src/task.d.ts.map +1 -1
- package/dist/src/task.js +169 -435
- package/dist/src/task.js.map +1 -1
- package/dist/src/task.spec.js +174 -489
- package/dist/src/task.spec.js.map +1 -1
- package/dist/src/types.d.ts +215 -23
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +4 -4
package/dist/src/export.js
CHANGED
|
@@ -6,41 +6,34 @@
|
|
|
6
6
|
* Export functionality for e3 packages.
|
|
7
7
|
*
|
|
8
8
|
* Exports a package definition to a .zip bundle that can be imported
|
|
9
|
-
* into an e3 repository. The bundle
|
|
10
|
-
*
|
|
9
|
+
* into an e3 repository. The bundle holds a repository's own forms, and the
|
|
10
|
+
* release that exported it:
|
|
11
|
+
* - `release.beast2` - the release of e3 that exported it, a String, first
|
|
12
|
+
* - `packages/<name>/<version>.beast2` - the package ref: the package object's hash, a String
|
|
11
13
|
* - `objects/<ab>/<cdef...>.beast2` - content-addressed objects
|
|
12
|
-
* - `data/<path>.ref` - per-dataset reference files (beast2 encoded DatasetRef)
|
|
13
14
|
*/
|
|
14
15
|
import * as fs from 'node:fs';
|
|
15
16
|
import * as nodePath from 'node:path';
|
|
16
17
|
import { createHash } from 'node:crypto';
|
|
17
18
|
import yazl from 'yazl';
|
|
18
|
-
import { variant, some, none, encodeBeast2For, encodeEastIR, EastIR, AsyncEastIR, printIdentifier, SortedMap, toEastTypeValue, decodeFunctionManifest, linkImports } from '@elaraai/east';
|
|
19
|
-
import {
|
|
19
|
+
import { variant, some, none, BlobType, StringType, encodeBeast2For, encodeEastIR, EastIR, AsyncEastIR, printIdentifier, SortedMap, toEastTypeValue, decodeFunctionManifest, linkImports } from '@elaraai/east';
|
|
20
|
+
import { E3_RELEASE, PackageObjectType, TASK_OBJECT_KIND, TaskObjectType, FunctionObjectType, MigrationObjectType, MutationObjectType, RecordIndexObjectType, RecordObjectType, encodeDatasetBlob } from '@elaraai/e3-types';
|
|
21
|
+
import { buildMutationProgram, hasKeyedDelta, indexBuildProgram, migrationProgram } from './record-programs.js';
|
|
20
22
|
import { readDatasetFileHeader } from './dataset-file.js';
|
|
21
23
|
import { runnerProvides, runnerToVariant } from './runner.js';
|
|
22
24
|
import { captureEnvironment, captureAutoEnvironment } from './environment-capture.js';
|
|
23
25
|
import { importedFunctions, resolveFunctionManifests } from './functions-resolve.js';
|
|
26
|
+
/** An environment's files ride the object store as beast2 Blobs of their bytes. */
|
|
27
|
+
const encodeFile = encodeBeast2For(BlobType);
|
|
24
28
|
// Named export_ to avoid conflict with reserved word
|
|
25
29
|
export async function export_(pkg, outputPath, options) {
|
|
26
30
|
const onCapture = options?.onEvent === undefined
|
|
27
31
|
? undefined
|
|
28
32
|
: (e) => options.onEvent({ kind: 'capture', ...e });
|
|
29
33
|
const partialPath = `${outputPath}.partial`;
|
|
30
|
-
// The task a function_ir (or a stream task's merge_ir) dataset belongs to
|
|
31
|
-
// (e3.task lists them first among the task's inputs), so the dataset's IR
|
|
32
|
-
// links against that task's runner.
|
|
33
|
-
const taskOfFunctionIR = new Map();
|
|
34
|
-
for (const item of pkg.contents) {
|
|
35
|
-
if (item.kind === 'task') {
|
|
36
|
-
for (const input of item.inputs) {
|
|
37
|
-
if (input.name === 'function_ir' || input.name === 'merge_ir')
|
|
38
|
-
taskOfFunctionIR.set(input, { name: item.name, runner: item.runner });
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
34
|
// Cross-language imports (#628): every East.importFunction in a task's,
|
|
43
|
-
// function's or
|
|
35
|
+
// function's, mutation's, index's or migration's IR resolves against a
|
|
36
|
+
// manifest and embeds as
|
|
44
37
|
// pure IR — the deployed program needs no exporting language at run
|
|
45
38
|
// time. The manifests are the ones given, plus one produced here for
|
|
46
39
|
// every imported package that is a member of this uv or npm workspace
|
|
@@ -55,16 +48,30 @@ export async function export_(pkg, outputPath, options) {
|
|
|
55
48
|
references.push({ package: name, functions: [...functions], owner, runner });
|
|
56
49
|
};
|
|
57
50
|
for (const item of pkg.contents) {
|
|
58
|
-
if (item.kind
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
51
|
+
if (item.kind !== 'task' || item.body.kind !== 'east')
|
|
52
|
+
continue;
|
|
53
|
+
const owner = `task "${item.name}"`;
|
|
54
|
+
refer(item.body.program, owner, item.runner);
|
|
55
|
+
if (item.outputKind?.kind === 'dict' && item.outputKind.merge !== undefined)
|
|
56
|
+
refer(item.outputKind.merge, owner, item.runner);
|
|
57
|
+
if (item.outputKind?.kind === 'fold')
|
|
58
|
+
refer(item.outputKind.combine, owner, item.runner);
|
|
62
59
|
}
|
|
63
60
|
for (const [fname, fdef] of Object.entries(pkg.functions))
|
|
64
61
|
refer(fdef.body, `function "${fname}"`, fdef.runner);
|
|
65
62
|
for (const [rname, rdef] of Object.entries(pkg.records)) {
|
|
66
|
-
for (const [mname, mdef] of Object.entries(rdef.mutations))
|
|
67
|
-
|
|
63
|
+
for (const [mname, mdef] of Object.entries(rdef.mutations)) {
|
|
64
|
+
if (mdef.body !== undefined)
|
|
65
|
+
refer(mdef.body, `mutation "${rname}.${mname}"`, mdef.runner);
|
|
66
|
+
}
|
|
67
|
+
for (const [iname, idef] of Object.entries(rdef.indexes)) {
|
|
68
|
+
const owner = `index "${rname}.${iname}"`;
|
|
69
|
+
refer(idef.keyFn.toIR(), owner, idef.runner);
|
|
70
|
+
if (idef.valueFn !== undefined)
|
|
71
|
+
refer(idef.valueFn.toIR(), owner, idef.runner);
|
|
72
|
+
}
|
|
73
|
+
for (const step of rdef.migrations)
|
|
74
|
+
refer(step.body, `migration "${rname}.${step.name}"`, step.runner);
|
|
68
75
|
}
|
|
69
76
|
const manifests = resolveFunctionManifests(references, explicit, process.cwd(), options?.onEvent === undefined
|
|
70
77
|
? undefined
|
|
@@ -78,8 +85,10 @@ export async function export_(pkg, outputPath, options) {
|
|
|
78
85
|
linked.source_map = bundle.source_map;
|
|
79
86
|
return linked;
|
|
80
87
|
};
|
|
81
|
-
// Create zip file
|
|
88
|
+
// Create zip file, the release exporting it first, so an import meets it
|
|
89
|
+
// before anything
|
|
82
90
|
const zipfile = new yazl.ZipFile();
|
|
91
|
+
zipfile.addBuffer(Buffer.from(encodeBeast2For(StringType)(E3_RELEASE)), 'release.beast2', { mtime: DETERMINISTIC_MTIME });
|
|
83
92
|
// Initialize empty package object that we'll populate as we iterate
|
|
84
93
|
const tasks = new SortedMap(); // name -> task object hash
|
|
85
94
|
const structures = new Map(); // path -> structure (parallel to tree hierarchy)
|
|
@@ -107,7 +116,7 @@ export async function export_(pkg, outputPath, options) {
|
|
|
107
116
|
const environmentHashFor = (decl, runner, owner) => {
|
|
108
117
|
// An explicit `environment` wins (and is the only path to tools/image).
|
|
109
118
|
if (decl) {
|
|
110
|
-
return cachedEnvHash(`decl:${JSON.stringify(decl)}`, () => captureEnvironment(decl, owner, (
|
|
119
|
+
return cachedEnvHash(`decl:${JSON.stringify(decl)}`, () => captureEnvironment(decl, owner, (file) => addObject(zipfile, Buffer.from(encodeFile(file))), onCapture));
|
|
111
120
|
}
|
|
112
121
|
// Otherwise derive it from the runner's `{ custom }` platform references, so
|
|
113
122
|
// a project split into workspace packages gets per-package change-detection
|
|
@@ -120,7 +129,7 @@ export async function export_(pkg, outputPath, options) {
|
|
|
120
129
|
if (customs.length === 0)
|
|
121
130
|
return null;
|
|
122
131
|
const key = `auto:${runner.runtime}:${[...customs].sort().join(',')}`;
|
|
123
|
-
return cachedEnvHash(key, () => captureAutoEnvironment(runner.runtime, customs, process.cwd(), owner, (
|
|
132
|
+
return cachedEnvHash(key, () => captureAutoEnvironment(runner.runtime, customs, process.cwd(), owner, (file) => addObject(zipfile, Buffer.from(encodeFile(file))), onCapture));
|
|
124
133
|
};
|
|
125
134
|
const resolveEnvironment = (decl, runner, owner) => {
|
|
126
135
|
const hash = environmentHashFor(decl, runner, owner);
|
|
@@ -156,7 +165,8 @@ export async function export_(pkg, outputPath, options) {
|
|
|
156
165
|
structures.set(path, childStructure);
|
|
157
166
|
}
|
|
158
167
|
else if (item.kind === "dataset") {
|
|
159
|
-
// Datasets:
|
|
168
|
+
// Datasets: the value goes to the object store, and its ref into the
|
|
169
|
+
// package object
|
|
160
170
|
// Get parent structure
|
|
161
171
|
const parentPath = item.path.slice(0, -1).map(segment => {
|
|
162
172
|
if (segment.type !== 'field') {
|
|
@@ -181,14 +191,13 @@ export async function export_(pkg, outputPath, options) {
|
|
|
181
191
|
return seg.value;
|
|
182
192
|
}).join('/');
|
|
183
193
|
// An input's initial value comes from its SOURCE variant; `default` is
|
|
184
|
-
// the internal inline-value channel (
|
|
185
|
-
//
|
|
194
|
+
// the internal inline-value channel (record()'s initial state), which
|
|
195
|
+
// is never path-initialised.
|
|
186
196
|
//
|
|
187
|
-
// - `value` and `default` are serialized into the bundle
|
|
188
|
-
//
|
|
189
|
-
//
|
|
190
|
-
//
|
|
191
|
-
// pageable without anyone having to write it first, #584).
|
|
197
|
+
// - `value` and `default` are serialized into the bundle through the
|
|
198
|
+
// store path's own encoder (a collection root ships segmented +
|
|
199
|
+
// indexed, so a deployed input is pageable without anyone having to
|
|
200
|
+
// write it first, #584).
|
|
192
201
|
// - `file` records a DESCRIPTOR and leaves the ref unassigned: the
|
|
193
202
|
// bytes never travel in the package. The file is validated here,
|
|
194
203
|
// from its header, so a schema drift is a build error at the
|
|
@@ -206,14 +215,10 @@ export async function export_(pkg, outputPath, options) {
|
|
|
206
215
|
datasetRef = variant('unassigned', null);
|
|
207
216
|
}
|
|
208
217
|
else if (inline !== undefined) {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
}
|
|
214
|
-
else {
|
|
215
|
-
valueData = encodeDatasetBlob(item.type, inline);
|
|
216
|
-
}
|
|
218
|
+
// A collection root ships as segment objects plus the manifest naming
|
|
219
|
+
// them, exactly as the store's own door writes one, so a deployed
|
|
220
|
+
// input is in the layout before anything writes it.
|
|
221
|
+
const valueData = await encodeDatasetBlob(item.type, inline, (bytes) => Promise.resolve(addObject(zipfile, Buffer.from(bytes))));
|
|
217
222
|
const valueHash = addObject(zipfile, Buffer.from(valueData));
|
|
218
223
|
datasetRef = variant('value', { hash: valueHash, versions: new Map() });
|
|
219
224
|
}
|
|
@@ -222,42 +227,56 @@ export async function export_(pkg, outputPath, options) {
|
|
|
222
227
|
}
|
|
223
228
|
// Store ref in the package-level refs map
|
|
224
229
|
refs.set(refPath, datasetRef);
|
|
225
|
-
// Also write DatasetRef to zip as data/<refPath>.ref (for readability/debugging)
|
|
226
|
-
const refEncoder = encodeBeast2For(DatasetRefType);
|
|
227
|
-
const refData = refEncoder(datasetRef);
|
|
228
|
-
zipfile.addBuffer(Buffer.from(refData), `data/${refPath}.ref`, { mtime: DETERMINISTIC_MTIME });
|
|
229
230
|
// Update structure: add value type with writable flag to parent
|
|
230
231
|
const typeValue = toEastTypeValue(item.type);
|
|
231
232
|
parentStructure.value.set(name, variant('value', { type: typeValue, writable: item.writable }));
|
|
232
233
|
}
|
|
233
234
|
else if (item.kind === "task") {
|
|
234
|
-
// Tasks are serialized and written immediately
|
|
235
|
-
//
|
|
236
|
-
//
|
|
237
|
-
const
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
235
|
+
// Tasks are serialized and written immediately: the program and the
|
|
236
|
+
// functions the output kind folds with are objects of their own, each
|
|
237
|
+
// linked against the task's runner, and the task object names them.
|
|
238
|
+
const owner = `task "${item.name}"`;
|
|
239
|
+
const irObject = (bundle) => addObject(zipfile, Buffer.from(encodeEastIR(link(bundle, owner, item.runner))));
|
|
240
|
+
let outputKind;
|
|
241
|
+
const kind = item.outputKind;
|
|
242
|
+
switch (kind?.kind) {
|
|
243
|
+
case undefined:
|
|
244
|
+
outputKind = variant('value', null);
|
|
245
|
+
break;
|
|
246
|
+
case 'array':
|
|
247
|
+
outputKind = variant('array', null);
|
|
248
|
+
break;
|
|
249
|
+
case 'set':
|
|
250
|
+
outputKind = variant('set', null);
|
|
251
|
+
break;
|
|
252
|
+
case 'dict':
|
|
253
|
+
outputKind = variant('dict', { merge: kind.merge === undefined ? none : some(irObject(kind.merge)) });
|
|
254
|
+
break;
|
|
255
|
+
case 'fold':
|
|
256
|
+
outputKind = variant('fold', {
|
|
257
|
+
zero: addObject(zipfile, Buffer.from(encodeBeast2For(kind.type)(kind.zero))),
|
|
258
|
+
combine: irObject(kind.combine),
|
|
259
|
+
});
|
|
260
|
+
break;
|
|
261
|
+
}
|
|
243
262
|
const taskObject = {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
// customTask leaves TaskDef.runner undefined
|
|
251
|
-
//
|
|
263
|
+
kind: TASK_OBJECT_KIND,
|
|
264
|
+
// A custom task's command builds an argv and calls no function, so it
|
|
265
|
+
// is encoded unlinked.
|
|
266
|
+
body: item.body.kind === 'east'
|
|
267
|
+
? variant('east', { program: irObject(item.body.program) })
|
|
268
|
+
: variant('command', { commandIr: addObject(zipfile, Buffer.from(encodeEastIR(item.body.command))) }),
|
|
269
|
+
// customTask leaves TaskDef.runner undefined: its command is what
|
|
270
|
+
// runs, so the runner is the custom runtime with an empty command.
|
|
252
271
|
runner: item.runner ? runnerToVariant(item.runner) : variant('custom', { command: [] }),
|
|
272
|
+
inputs: item.inputs.map((input) => input.kind === 'partition'
|
|
273
|
+
? { path: input.dataset.path, partition: some({ by: [...input.by] }) }
|
|
274
|
+
: { path: input.path, partition: none }),
|
|
275
|
+
output: { path: item.output.path, kind: outputKind },
|
|
276
|
+
role: item.role,
|
|
253
277
|
environment: resolveEnvironment(item.environment, item.runner, item.name),
|
|
254
278
|
};
|
|
255
|
-
|
|
256
|
-
const taskEncoder = encodeBeast2For(TaskObjectType);
|
|
257
|
-
const taskData = taskEncoder(taskObject);
|
|
258
|
-
const taskHash = addObject(zipfile, Buffer.from(taskData));
|
|
259
|
-
// Add to package tasks map
|
|
260
|
-
tasks.set(item.name, taskHash);
|
|
279
|
+
tasks.set(item.name, addObject(zipfile, Buffer.from(encodeBeast2For(TaskObjectType)(taskObject))));
|
|
261
280
|
}
|
|
262
281
|
else {
|
|
263
282
|
throw new Error(`Unknown package item kind: ${item.kind}`);
|
|
@@ -285,11 +304,14 @@ export async function export_(pkg, outputPath, options) {
|
|
|
285
304
|
}
|
|
286
305
|
// Write record objects. The record's own dataset (initial state value + ref +
|
|
287
306
|
// writable:false structure leaf) is written by the dataset branch above —
|
|
288
|
-
// records are datasets. Here we write the separate RecordObject
|
|
289
|
-
//
|
|
290
|
-
//
|
|
307
|
+
// records are datasets. Here we write the separate RecordObject and the
|
|
308
|
+
// mutation, index and migration objects it names, mirroring how functions
|
|
309
|
+
// are written. Deploy mints the record's `$init` commit from the
|
|
310
|
+
// initial-state ref.
|
|
291
311
|
const records = new SortedMap(); // name -> RecordObject hash
|
|
292
312
|
const mutationEncoder = encodeBeast2For(MutationObjectType);
|
|
313
|
+
const indexEncoder = encodeBeast2For(RecordIndexObjectType);
|
|
314
|
+
const migrationEncoder = encodeBeast2For(MigrationObjectType);
|
|
293
315
|
const recordEncoder = encodeBeast2For(RecordObjectType);
|
|
294
316
|
for (const [rname, rdef] of Object.entries(pkg.records)) {
|
|
295
317
|
const recordRefPath = rdef.path.map(seg => {
|
|
@@ -298,19 +320,68 @@ export async function export_(pkg, outputPath, options) {
|
|
|
298
320
|
}
|
|
299
321
|
return seg.value;
|
|
300
322
|
}).join('/');
|
|
323
|
+
// A mutation ships its author body AND the program built from it: the
|
|
324
|
+
// program is what runs, and it emits the delta the engine applies. A
|
|
325
|
+
// record whose collection has no delta addressed by key keeps the original
|
|
326
|
+
// protocol — the reducer runs and its whole result is the new state — and
|
|
327
|
+
// says so by naming no program.
|
|
301
328
|
const mutations = new SortedMap(); // name -> MutationObject hash
|
|
302
329
|
for (const [mname, mdef] of Object.entries(rdef.mutations)) {
|
|
303
|
-
const
|
|
304
|
-
const
|
|
330
|
+
const owner = `mutation "${rname}.${mname}"`;
|
|
331
|
+
const programIr = hasKeyedDelta(rdef.type)
|
|
332
|
+
? addObject(zipfile, Buffer.from(encodeEastIR(link(buildMutationProgram(rdef, mdef), owner, mdef.runner))))
|
|
333
|
+
: '';
|
|
334
|
+
if (mdef.body === undefined && programIr === '') {
|
|
335
|
+
throw new Error(`${owner} has neither a body nor a program to run`);
|
|
336
|
+
}
|
|
337
|
+
const bodyIr = mdef.body === undefined
|
|
338
|
+
? programIr
|
|
339
|
+
: addObject(zipfile, Buffer.from(encodeEastIR(link(mdef.body, owner, mdef.runner))));
|
|
305
340
|
const mutObject = {
|
|
306
|
-
bodyIr
|
|
341
|
+
bodyIr,
|
|
307
342
|
argTypes: mdef.argTypes.map((t) => toEastTypeValue(t)),
|
|
308
343
|
runner: runnerToVariant(mdef.runner),
|
|
344
|
+
form: variant(mdef.form, null),
|
|
345
|
+
programIr,
|
|
309
346
|
};
|
|
310
347
|
const mutHash = addObject(zipfile, Buffer.from(mutationEncoder(mutObject)));
|
|
311
348
|
mutations.set(mname, mutHash);
|
|
312
349
|
}
|
|
313
|
-
|
|
350
|
+
// An index ships its declared functions AND the program built from them:
|
|
351
|
+
// what runs is the program, and it is linked and encoded like any body.
|
|
352
|
+
const indexes = new SortedMap(); // name -> RecordIndexObject hash
|
|
353
|
+
for (const [iname, idef] of Object.entries(rdef.indexes)) {
|
|
354
|
+
const owner = `index "${rname}.${iname}"`;
|
|
355
|
+
const irHash = (expr) => addObject(zipfile, Buffer.from(encodeEastIR(link(expr.toIR(), owner, idef.runner))));
|
|
356
|
+
const indexObject = {
|
|
357
|
+
keyIr: irHash(idef.keyFn),
|
|
358
|
+
multi: idef.multi,
|
|
359
|
+
valueIr: idef.valueFn === undefined ? none : some(irHash(idef.valueFn)),
|
|
360
|
+
keyType: toEastTypeValue(idef.keyType),
|
|
361
|
+
valueType: toEastTypeValue(idef.valueType),
|
|
362
|
+
buildIr: addObject(zipfile, Buffer.from(encodeEastIR(link(indexBuildProgram(idef.record.type, idef), owner, idef.runner)))),
|
|
363
|
+
runner: runnerToVariant(idef.runner),
|
|
364
|
+
};
|
|
365
|
+
indexes.set(iname, addObject(zipfile, Buffer.from(indexEncoder(indexObject))));
|
|
366
|
+
}
|
|
367
|
+
// A migration ships its function and, for a step split over the state, the
|
|
368
|
+
// program built from it, which is what runs a piece at a time. A `value`
|
|
369
|
+
// step runs its own function over the whole state, and names no program.
|
|
370
|
+
const migrations = [];
|
|
371
|
+
for (const step of rdef.migrations) {
|
|
372
|
+
const owner = `migration "${rname}.${step.name}"`;
|
|
373
|
+
const irObject = (bundle) => addObject(zipfile, Buffer.from(encodeEastIR(link(bundle, owner, step.runner))));
|
|
374
|
+
const migrationObject = {
|
|
375
|
+
form: variant(step.form, null),
|
|
376
|
+
from: toEastTypeValue(step.from),
|
|
377
|
+
to: toEastTypeValue(step.to),
|
|
378
|
+
bodyIr: irObject(step.body),
|
|
379
|
+
programIr: step.form === 'value' ? '' : irObject(migrationProgram(step)),
|
|
380
|
+
runner: runnerToVariant(step.runner),
|
|
381
|
+
};
|
|
382
|
+
migrations.push({ name: step.name, migration: addObject(zipfile, Buffer.from(migrationEncoder(migrationObject))) });
|
|
383
|
+
}
|
|
384
|
+
const recObject = { path: recordRefPath, mutations, indexes, migrations };
|
|
314
385
|
const recHash = addObject(zipfile, Buffer.from(recordEncoder(recObject)));
|
|
315
386
|
records.set(rname, recHash);
|
|
316
387
|
}
|
|
@@ -333,9 +404,8 @@ export async function export_(pkg, outputPath, options) {
|
|
|
333
404
|
const packageObjectEncoder = encodeBeast2For(PackageObjectType);
|
|
334
405
|
const packageObjectData = packageObjectEncoder(packageObject);
|
|
335
406
|
const packageHash = addObject(zipfile, Buffer.from(packageObjectData));
|
|
336
|
-
//
|
|
337
|
-
|
|
338
|
-
zipfile.addBuffer(Buffer.from(packageHash + '\n'), refPath, { mtime: DETERMINISTIC_MTIME });
|
|
407
|
+
// The package ref, as a repository keeps one
|
|
408
|
+
zipfile.addBuffer(Buffer.from(encodeBeast2For(StringType)(packageHash)), `packages/${pkg.name}/${pkg.version}.beast2`, { mtime: DETERMINISTIC_MTIME });
|
|
339
409
|
// Finalize and write zip to disk
|
|
340
410
|
await new Promise((resolve, reject) => {
|
|
341
411
|
const writeStream = fs.createWriteStream(partialPath);
|
package/dist/src/export.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/export.ts"],"names":[],"mappings":"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"}
|