@elaraai/east-c-cli 1.0.83 → 1.0.84
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 +27 -10
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -43,23 +43,40 @@ dict or fold it emits into), and where to write the output and a typed
|
|
|
43
43
|
result: the outcome (`ok`, or `failed` with the message and its source
|
|
44
44
|
locations), the peak memory, and the time spent loading, compiling, executing
|
|
45
45
|
and writing. Paths in a unit may be relative to its file, so a unit and the
|
|
46
|
-
files it names replay wherever they are moved together.
|
|
47
|
-
|
|
48
|
-
time went and the peak
|
|
46
|
+
files it names replay wherever they are moved together. A run unit says how its
|
|
47
|
+
inputs are read (`decode`, below). It exits 0 when the outcome is `ok` and 1
|
|
48
|
+
when the result records a failure; `-v` prints where the time went and the peak
|
|
49
|
+
memory.
|
|
50
|
+
|
|
51
|
+
### How inputs are read
|
|
52
|
+
|
|
53
|
+
A collection input opens lazily, whatever it weighs: an indexed beast2 file is
|
|
54
|
+
mapped, and a read decodes only the segments it reaches — its size, a keyed
|
|
55
|
+
read and the `$.for` loop decode a segment at a time, and an operation the
|
|
56
|
+
pager cannot serve decodes the input whole, once, when it first needs it.
|
|
57
|
+
`--decode whole` decodes every input before the program runs instead, which
|
|
58
|
+
suits a program that reads most of an input at random: lazily, a read beyond
|
|
59
|
+
the segments the pager keeps (64 MiB of them, `EAST_PAGED_CACHE_BYTES`)
|
|
60
|
+
decodes its segment again. `exec` reads the same choice from its unit's
|
|
61
|
+
`decode`. A value that is not a collection, and a collection whose elements
|
|
62
|
+
hold a Ref or a function, is decoded whole either way.
|
|
49
63
|
|
|
50
|
-
|
|
64
|
+
```bash
|
|
65
|
+
east-c run task.beast2 -i rows.beast2 --decode whole -o out.beast2
|
|
66
|
+
```
|
|
51
67
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
68
|
+
With `-v` the runner says how each input opened, and what reading it came to:
|
|
69
|
+
the segments a lazy input decoded, or what an input decoded whole holds in
|
|
70
|
+
memory — the growth in resident memory across its decode, beside the size it
|
|
71
|
+
weighs on disk, since a nested collection decodes at many times that size.
|
|
72
|
+
Reads that decode segments again are said to, with what decoding the input
|
|
73
|
+
whole would do instead.
|
|
56
74
|
|
|
57
75
|
A collection input may also be a manifest directory, the form e3 stages a
|
|
58
76
|
stored collection in: the input file holds a manifest, and each segment it
|
|
59
77
|
names is a standalone blob in `<file>.segments/<sha256>.beast2`. It opens
|
|
60
78
|
over those files — lazily, a read opening only the segments it reaches, or
|
|
61
|
-
whole — and
|
|
62
|
-
whether to open it lazily.
|
|
79
|
+
whole — and weighs its segments in the `-v` account.
|
|
63
80
|
|
|
64
81
|
### Exiting with the parent
|
|
65
82
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elaraai/east-c-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.84",
|
|
4
4
|
"description": "Provides the `east-c` bin. A tiny launcher resolves the native binary for your platform from the matching per-platform package (@elaraai/east-c-cli-<target>), pulled in via optional dependencies.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"east-c": "bin/east-c.mjs"
|
|
@@ -32,14 +32,14 @@
|
|
|
32
32
|
"node": ">=18.0.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@elaraai/east": "1.0.
|
|
35
|
+
"@elaraai/east": "1.0.84"
|
|
36
36
|
},
|
|
37
37
|
"optionalDependencies": {
|
|
38
|
-
"@elaraai/east-c-cli-linux-x64": "1.0.
|
|
39
|
-
"@elaraai/east-c-cli-linux-arm64": "1.0.
|
|
40
|
-
"@elaraai/east-c-cli-darwin-arm64": "1.0.
|
|
41
|
-
"@elaraai/east-c-cli-darwin-x64": "1.0.
|
|
42
|
-
"@elaraai/east-c-cli-win32-x64": "1.0.
|
|
38
|
+
"@elaraai/east-c-cli-linux-x64": "1.0.84",
|
|
39
|
+
"@elaraai/east-c-cli-linux-arm64": "1.0.84",
|
|
40
|
+
"@elaraai/east-c-cli-darwin-arm64": "1.0.84",
|
|
41
|
+
"@elaraai/east-c-cli-darwin-x64": "1.0.84",
|
|
42
|
+
"@elaraai/east-c-cli-win32-x64": "1.0.84"
|
|
43
43
|
},
|
|
44
44
|
"scripts": {}
|
|
45
45
|
}
|