@agoric/xsnap 0.14.3-mainnet1B-dev-26244e8.0 → 0.14.3-orchestration-dev-096c4e8.0
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 +3 -3
- package/api.js +3 -1
- package/package.json +25 -18
- package/src/avaAssertXS.js +4 -2
- package/src/avaXS.js +7 -7
- package/src/build.js +24 -20
- package/src/replay.js +0 -3
- package/src/xsnap.js +12 -16
- package/src/xsrepl.js +3 -3
- package/CHANGELOG.md +0 -638
package/README.md
CHANGED
|
@@ -22,7 +22,7 @@ Some time later, possibly on a different computer…
|
|
|
22
22
|
|
|
23
23
|
```js
|
|
24
24
|
const decoder = new TextDecoder();
|
|
25
|
-
const worker = await xsnap({
|
|
25
|
+
const worker = await xsnap({
|
|
26
26
|
snapshotStream: fs.createFileStream('bootstrap.xss'),
|
|
27
27
|
});
|
|
28
28
|
const response = await worker.issueCommand('1');
|
|
@@ -57,7 +57,7 @@ The REPL supports special commands `load` and `save` for snapshots, and `quit`
|
|
|
57
57
|
to quit.
|
|
58
58
|
Load and save don't take arguments; just type the file name on the next prompt.
|
|
59
59
|
|
|
60
|
-
```
|
|
60
|
+
```console
|
|
61
61
|
$ xsrepl
|
|
62
62
|
xs> globalThis.x = 42;
|
|
63
63
|
xs> x
|
|
@@ -67,7 +67,7 @@ file> temp.xss
|
|
|
67
67
|
xs> quit
|
|
68
68
|
```
|
|
69
69
|
|
|
70
|
-
```
|
|
70
|
+
```console
|
|
71
71
|
$ xsrepl
|
|
72
72
|
xs> load
|
|
73
73
|
file> temp.xss
|
package/api.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Also, update golden master test/test-xs-perf.js to reflect new meter
|
|
8
8
|
* version.
|
|
9
9
|
*/
|
|
10
|
-
export const METER_TYPE = 'xs-meter-
|
|
10
|
+
export const METER_TYPE = 'xs-meter-25';
|
|
11
11
|
|
|
12
12
|
export const ExitCode = {
|
|
13
13
|
E_UNKNOWN_ERROR: -1,
|
|
@@ -43,6 +43,7 @@ export class ErrorSignal extends Error {
|
|
|
43
43
|
this.code = signal;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
+
harden(ErrorSignal);
|
|
46
47
|
|
|
47
48
|
export class ErrorCode extends Error {
|
|
48
49
|
/**
|
|
@@ -55,3 +56,4 @@ export class ErrorCode extends Error {
|
|
|
55
56
|
this.code = code;
|
|
56
57
|
}
|
|
57
58
|
}
|
|
59
|
+
harden(ErrorCode);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agoric/xsnap",
|
|
3
|
-
"version": "0.14.3-
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.14.3-orchestration-dev-096c4e8.0+096c4e8",
|
|
4
|
+
"description": "Snapshotting VM worker based on Moddable's XS Javascript engine",
|
|
5
5
|
"author": "Agoric",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"type": "module",
|
|
@@ -12,37 +12,38 @@
|
|
|
12
12
|
},
|
|
13
13
|
"scripts": {
|
|
14
14
|
"repl": "node src/xsrepl.js",
|
|
15
|
-
"build:bin": "if
|
|
16
|
-
"build:env": "
|
|
15
|
+
"build:bin": "if test -d ./test; then node src/build.js; else yarn build:from-env; fi",
|
|
16
|
+
"build:env": "test -d ./test && node src/build.js --show-env > build.env",
|
|
17
17
|
"build:from-env": "{ cat build.env; echo node src/build.js; } | xargs env",
|
|
18
18
|
"build": "yarn build:bin && yarn build:env",
|
|
19
19
|
"postinstall": "yarn build:from-env",
|
|
20
20
|
"clean": "rm -rf xsnap-native/xsnap/build",
|
|
21
21
|
"lint": "run-s --continue-on-error lint:*",
|
|
22
22
|
"lint:js": "eslint 'src/**/*.js' 'test/**/*.js' api.js",
|
|
23
|
-
"lint:types": "tsc
|
|
23
|
+
"lint:types": "tsc",
|
|
24
24
|
"lint-fix": "eslint --fix 'src/**/*.js' 'test/**/*.js' api.js",
|
|
25
25
|
"test": "ava",
|
|
26
26
|
"test:c8": "c8 $C8_OPTIONS ava --config=ava-nesm.config.js",
|
|
27
27
|
"test:xs": "exit 0"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@agoric/assert": "0.6.1-
|
|
31
|
-
"@agoric/internal": "0.
|
|
32
|
-
"@agoric/xsnap-lockdown": "0.14.1-
|
|
33
|
-
"@endo/bundle-source": "
|
|
34
|
-
"@endo/eventual-send": "
|
|
35
|
-
"@endo/init": "0.
|
|
36
|
-
"@endo/netstring": "0.
|
|
37
|
-
"@endo/promise-kit": "0.
|
|
38
|
-
"@endo/stream": "
|
|
39
|
-
"@endo/stream-node": "0.
|
|
30
|
+
"@agoric/assert": "0.6.1-orchestration-dev-096c4e8.0+096c4e8",
|
|
31
|
+
"@agoric/internal": "0.3.3-orchestration-dev-096c4e8.0+096c4e8",
|
|
32
|
+
"@agoric/xsnap-lockdown": "0.14.1-orchestration-dev-096c4e8.0+096c4e8",
|
|
33
|
+
"@endo/bundle-source": "^3.1.0",
|
|
34
|
+
"@endo/eventual-send": "^1.1.2",
|
|
35
|
+
"@endo/init": "^1.0.4",
|
|
36
|
+
"@endo/netstring": "^1.0.4",
|
|
37
|
+
"@endo/promise-kit": "^1.0.4",
|
|
38
|
+
"@endo/stream": "^1.1.0",
|
|
39
|
+
"@endo/stream-node": "^1.0.4",
|
|
40
40
|
"glob": "^7.1.6",
|
|
41
41
|
"tmp": "^0.2.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@endo/base64": "0.2
|
|
45
|
-
"
|
|
44
|
+
"@endo/base64": "^1.0.2",
|
|
45
|
+
"@types/glob": "^8.1.0",
|
|
46
|
+
"ava": "^5.3.0",
|
|
46
47
|
"c8": "^7.13.0"
|
|
47
48
|
},
|
|
48
49
|
"files": [
|
|
@@ -58,8 +59,14 @@
|
|
|
58
59
|
"files": [
|
|
59
60
|
"test/**/test-*.js"
|
|
60
61
|
],
|
|
62
|
+
"require": [
|
|
63
|
+
"@endo/init/debug.js"
|
|
64
|
+
],
|
|
61
65
|
"timeout": "2m",
|
|
62
66
|
"workerThreads": false
|
|
63
67
|
},
|
|
64
|
-
"
|
|
68
|
+
"typeCoverage": {
|
|
69
|
+
"atLeast": 94.44
|
|
70
|
+
},
|
|
71
|
+
"gitHead": "096c4e8fce80e9a509b0e1a30fda11736c4570e1"
|
|
65
72
|
}
|
package/src/avaAssertXS.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/* global globalThis */
|
|
2
|
-
/* eslint-disable no-await-in-loop, @jessie.js/no-nested-await -- test code */
|
|
3
2
|
/** global print */
|
|
4
3
|
|
|
5
4
|
const { assign, freeze, keys } = Object;
|
|
@@ -67,7 +66,7 @@ function deepDifference(x, y) {
|
|
|
67
66
|
* @param {(msg: TapMessage) => void} send
|
|
68
67
|
*
|
|
69
68
|
* @typedef { ReturnType<typeof tapFormat> } TapFormat
|
|
70
|
-
* @typedef {import('./avaXS').TapMessage} TapMessage
|
|
69
|
+
* @typedef {import('./avaXS.js').TapMessage} TapMessage
|
|
71
70
|
*/
|
|
72
71
|
function tapFormat(send) {
|
|
73
72
|
return freeze({
|
|
@@ -300,6 +299,7 @@ function makeTester(htest, out) {
|
|
|
300
299
|
expectation,
|
|
301
300
|
message = `should reject like ${expectation}`,
|
|
302
301
|
) {
|
|
302
|
+
await null;
|
|
303
303
|
try {
|
|
304
304
|
await (typeof thrower === 'function' ? thrower() : thrower);
|
|
305
305
|
assert(false, message);
|
|
@@ -310,6 +310,7 @@ function makeTester(htest, out) {
|
|
|
310
310
|
},
|
|
311
311
|
/** @type {(thrower: () => Promise<unknown>, message?: string) => Promise<void> } */
|
|
312
312
|
async notThrowsAsync(nonThrower, message) {
|
|
313
|
+
await null;
|
|
313
314
|
try {
|
|
314
315
|
await (typeof nonThrower === 'function' ? nonThrower() : nonThrower);
|
|
315
316
|
} catch (ex) {
|
|
@@ -335,6 +336,7 @@ const test = (label, run, htestOpt) => {
|
|
|
335
336
|
htest.queue(label, async () => {
|
|
336
337
|
const out = tapFormat(htest.send);
|
|
337
338
|
const t = makeTester(htest, out);
|
|
339
|
+
await null;
|
|
338
340
|
try {
|
|
339
341
|
// out.diagnostic('start', label);
|
|
340
342
|
await run(t);
|
package/src/avaXS.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* eslint @typescript-eslint/no-floating-promises: "warn" */
|
|
1
2
|
/* avaXS - ava style test runner for XS
|
|
2
3
|
|
|
3
4
|
Usage:
|
|
@@ -6,7 +7,6 @@ Usage:
|
|
|
6
7
|
|
|
7
8
|
*/
|
|
8
9
|
|
|
9
|
-
/* eslint-disable no-await-in-loop, @jessie.js/no-nested-await -- test code */
|
|
10
10
|
import '@endo/init';
|
|
11
11
|
|
|
12
12
|
import fs from 'fs';
|
|
@@ -69,8 +69,6 @@ function isMatch(specimen, pattern) {
|
|
|
69
69
|
*
|
|
70
70
|
* It also calls back if a test calls `bundleSource`.
|
|
71
71
|
*
|
|
72
|
-
* @typedef {{ moduleFormat: string, source: string }} Bundle
|
|
73
|
-
*
|
|
74
72
|
* And finally it reports back a summary of assertion results.
|
|
75
73
|
*
|
|
76
74
|
* @typedef {{
|
|
@@ -84,7 +82,7 @@ function isMatch(specimen, pattern) {
|
|
|
84
82
|
* @param {{ verbose?: boolean, titleMatch?: string }} options
|
|
85
83
|
* @param {{
|
|
86
84
|
* spawnXSnap: (opts: object) => XSnap,
|
|
87
|
-
* bundleSource: (
|
|
85
|
+
* bundleSource: import('@endo/bundle-source').BundleSource,
|
|
88
86
|
* resolve: ResolveFn,
|
|
89
87
|
* dirname: typeof import('path').dirname,
|
|
90
88
|
* basename: typeof import('path').basename,
|
|
@@ -93,7 +91,7 @@ function isMatch(specimen, pattern) {
|
|
|
93
91
|
*
|
|
94
92
|
* @typedef {{ total: number, pass: number, fail: { filename: string, name: string }[] }} TestResults
|
|
95
93
|
* @typedef { 'ok' | 'not ok' | 'SKIP' } Status
|
|
96
|
-
* @typedef {ReturnType<typeof import('./xsnap').xsnap>} XSnap
|
|
94
|
+
* @typedef {ReturnType<typeof import('./xsnap.js').xsnap>} XSnap
|
|
97
95
|
*/
|
|
98
96
|
async function runTestScript(
|
|
99
97
|
filename,
|
|
@@ -120,7 +118,7 @@ async function runTestScript(
|
|
|
120
118
|
/**
|
|
121
119
|
* See also send() in avaHandler.cjs
|
|
122
120
|
*
|
|
123
|
-
* @type { TapMessage | { testNames: string[] } | { bundleSource:
|
|
121
|
+
* @type { TapMessage | { testNames: string[] } | { bundleSource: Parameters<import('@endo/bundle-source').BundleSource> } | Summary }
|
|
124
122
|
*/
|
|
125
123
|
const msg = JSON.parse(decoder.decode(message));
|
|
126
124
|
// console.log(input, msg, qty, byStatus);
|
|
@@ -129,6 +127,7 @@ async function runTestScript(
|
|
|
129
127
|
testNames = msg.testNames;
|
|
130
128
|
}
|
|
131
129
|
|
|
130
|
+
await null;
|
|
132
131
|
if ('bundleSource' in msg) {
|
|
133
132
|
const [startFilename, ...rest] = msg.bundleSource;
|
|
134
133
|
// see also makeBundleResolve() below
|
|
@@ -244,6 +243,7 @@ async function avaConfig(args, options, { glob, readFile }) {
|
|
|
244
243
|
let debug = false;
|
|
245
244
|
let verbose = false;
|
|
246
245
|
let titleMatch;
|
|
246
|
+
await null;
|
|
247
247
|
while (args.length > 0) {
|
|
248
248
|
const arg = args.shift();
|
|
249
249
|
assert.typeof(arg, 'string');
|
|
@@ -301,7 +301,7 @@ async function avaConfig(args, options, { glob, readFile }) {
|
|
|
301
301
|
/**
|
|
302
302
|
* @param {string[]} args - CLI args (excluding node interpreter, script name)
|
|
303
303
|
* @param {{
|
|
304
|
-
* bundleSource:
|
|
304
|
+
* bundleSource: import('@endo/bundle-source').BundleSource,
|
|
305
305
|
* spawn: typeof import('child_process')['spawn'],
|
|
306
306
|
* osType: typeof import('os')['type'],
|
|
307
307
|
* readFile: typeof import('fs')['promises']['readFile'],
|
package/src/build.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/* global process */
|
|
3
|
-
/* eslint-disable @jessie.js/no-nested-await -- test/build code */
|
|
4
3
|
import * as childProcessTop from 'child_process';
|
|
5
4
|
import fsTop from 'fs';
|
|
6
5
|
import osTop from 'os';
|
|
@@ -176,13 +175,13 @@ async function main(args, { env, stdout, spawn, fs, os }) {
|
|
|
176
175
|
},
|
|
177
176
|
];
|
|
178
177
|
|
|
178
|
+
await null;
|
|
179
179
|
if (args.includes('--show-env')) {
|
|
180
180
|
for (const submodule of submodules) {
|
|
181
181
|
const { path, envPrefix, commitHash } = submodule;
|
|
182
182
|
if (!commitHash) {
|
|
183
183
|
// We need to glean the commitHash and url from Git.
|
|
184
184
|
const sm = makeSubmodule(path, '?', { git });
|
|
185
|
-
// eslint-disable-next-line no-await-in-loop
|
|
186
185
|
const [[{ hash }], url] = await Promise.all([
|
|
187
186
|
sm.status(),
|
|
188
187
|
sm.config('url'),
|
|
@@ -208,13 +207,10 @@ async function main(args, { env, stdout, spawn, fs, os }) {
|
|
|
208
207
|
// ignore
|
|
209
208
|
}
|
|
210
209
|
if (!fs.existsSync(submodule.path)) {
|
|
211
|
-
// eslint-disable-next-line no-await-in-loop
|
|
212
210
|
await submodule.clone();
|
|
213
211
|
}
|
|
214
|
-
// eslint-disable-next-line no-await-in-loop
|
|
215
212
|
await submodule.checkout(commitHash);
|
|
216
213
|
} else {
|
|
217
|
-
// eslint-disable-next-line no-await-in-loop
|
|
218
214
|
await submodule.init();
|
|
219
215
|
}
|
|
220
216
|
}
|
|
@@ -229,7 +225,6 @@ async function main(args, { env, stdout, spawn, fs, os }) {
|
|
|
229
225
|
|
|
230
226
|
const make = makeCLI(platform.make || 'make', { spawn });
|
|
231
227
|
for (const goal of ModdableSDK.buildGoals) {
|
|
232
|
-
// eslint-disable-next-line no-await-in-loop
|
|
233
228
|
await make.run(
|
|
234
229
|
[
|
|
235
230
|
`MODDABLE=${ModdableSDK.MODDABLE}`,
|
|
@@ -246,19 +241,28 @@ async function main(args, { env, stdout, spawn, fs, os }) {
|
|
|
246
241
|
}
|
|
247
242
|
}
|
|
248
243
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
244
|
+
const run = () =>
|
|
245
|
+
main(process.argv.slice(2), {
|
|
246
|
+
env: { ...process.env },
|
|
247
|
+
stdout: process.stdout,
|
|
248
|
+
spawn: childProcessTop.spawn,
|
|
249
|
+
fs: {
|
|
250
|
+
readFile: fsTop.promises.readFile,
|
|
251
|
+
existsSync: fsTop.existsSync,
|
|
252
|
+
rmdirSync: fsTop.rmdirSync,
|
|
253
|
+
},
|
|
254
|
+
os: {
|
|
255
|
+
type: osTop.type,
|
|
256
|
+
},
|
|
257
|
+
});
|
|
258
|
+
|
|
259
|
+
process.exitCode = 1;
|
|
260
|
+
run().then(
|
|
261
|
+
() => {
|
|
262
|
+
process.exitCode = 0;
|
|
257
263
|
},
|
|
258
|
-
|
|
259
|
-
|
|
264
|
+
err => {
|
|
265
|
+
console.error('Failed with', err);
|
|
266
|
+
process.exit(process.exitCode || 1);
|
|
260
267
|
},
|
|
261
|
-
|
|
262
|
-
console.error(e);
|
|
263
|
-
process.exit(1);
|
|
264
|
-
});
|
|
268
|
+
);
|
package/src/replay.js
CHANGED
|
@@ -227,14 +227,12 @@ export async function replayXSnap(
|
|
|
227
227
|
const seq = parseInt(digits, 10);
|
|
228
228
|
console.log(folder, seq, kind);
|
|
229
229
|
if (running && !['command', 'reply'].includes(kind)) {
|
|
230
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
231
230
|
await running;
|
|
232
231
|
running = undefined;
|
|
233
232
|
}
|
|
234
233
|
const file = rd.file(step);
|
|
235
234
|
switch (kind) {
|
|
236
235
|
case 'isReady':
|
|
237
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
238
236
|
await it.isReady();
|
|
239
237
|
break;
|
|
240
238
|
case 'evaluate':
|
|
@@ -254,7 +252,6 @@ export async function replayXSnap(
|
|
|
254
252
|
console.log(folder, step, 'ignoring remaining steps from', folder);
|
|
255
253
|
return;
|
|
256
254
|
} else {
|
|
257
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
258
255
|
await (async () => {
|
|
259
256
|
const snapshotPath = file.getText();
|
|
260
257
|
const snapFile = await opts.fs.open(snapshotPath, 'w');
|
package/src/xsnap.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/* global process */
|
|
2
|
+
/* eslint @typescript-eslint/no-floating-promises: "warn" */
|
|
2
3
|
/* eslint no-await-in-loop: ["off"] */
|
|
3
4
|
|
|
4
5
|
/**
|
|
@@ -8,7 +9,7 @@
|
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* @template T
|
|
11
|
-
* @typedef {import('./defer').Deferred<T>} Deferred
|
|
12
|
+
* @typedef {import('./defer.js').Deferred<T>} Deferred
|
|
12
13
|
*/
|
|
13
14
|
|
|
14
15
|
import { finished } from 'stream/promises';
|
|
@@ -119,17 +120,13 @@ export async function xsnap(options) {
|
|
|
119
120
|
const cleanup = async () => fs.unlink(snapPath);
|
|
120
121
|
|
|
121
122
|
try {
|
|
122
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
123
123
|
const tmpSnap = await fs.open(snapPath, 'w');
|
|
124
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
125
124
|
await tmpSnap.writeFile(
|
|
126
125
|
// @ts-expect-error incorrect typings, does support AsyncIterable
|
|
127
126
|
snapshotStream,
|
|
128
127
|
);
|
|
129
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
130
128
|
await tmpSnap.close();
|
|
131
129
|
} catch (e) {
|
|
132
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
133
130
|
await cleanup();
|
|
134
131
|
throw e;
|
|
135
132
|
}
|
|
@@ -155,7 +152,7 @@ export async function xsnap(options) {
|
|
|
155
152
|
sourceStream.pipe(destStream, { end: false });
|
|
156
153
|
|
|
157
154
|
done = finished(sourceStream);
|
|
158
|
-
done.catch(noop).then(() => sourceStream.unpipe(destStream));
|
|
155
|
+
void done.catch(noop).then(() => sourceStream.unpipe(destStream));
|
|
159
156
|
};
|
|
160
157
|
|
|
161
158
|
return harden({
|
|
@@ -261,7 +258,7 @@ export async function xsnap(options) {
|
|
|
261
258
|
await loadSnapshotHandler?.afterSpawn(snapshotLoadStream);
|
|
262
259
|
|
|
263
260
|
if (loadSnapshotHandler) {
|
|
264
|
-
vatExit.promise.catch(noop).then(() => {
|
|
261
|
+
void vatExit.promise.catch(noop).then(() => {
|
|
265
262
|
if (loadSnapshotHandler) {
|
|
266
263
|
const { cleanup } = loadSnapshotHandler;
|
|
267
264
|
loadSnapshotHandler = undefined;
|
|
@@ -289,7 +286,6 @@ export async function xsnap(options) {
|
|
|
289
286
|
if (loadSnapshotHandler) {
|
|
290
287
|
const { cleanup } = loadSnapshotHandler;
|
|
291
288
|
loadSnapshotHandler = undefined;
|
|
292
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
293
289
|
await cleanup();
|
|
294
290
|
}
|
|
295
291
|
if (iteration.done) {
|
|
@@ -328,9 +324,7 @@ export async function xsnap(options) {
|
|
|
328
324
|
)}`,
|
|
329
325
|
);
|
|
330
326
|
} else if (message[0] === QUERY) {
|
|
331
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
332
327
|
const commandResult = await handleCommand(message.subarray(1));
|
|
333
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
334
328
|
await messagesToXsnap.next([QUERY_RESPONSE_BUF, commandResult]);
|
|
335
329
|
} else {
|
|
336
330
|
// unrecognized responses also kill the process
|
|
@@ -429,6 +423,7 @@ export async function xsnap(options) {
|
|
|
429
423
|
let snapshotReadSize = 0;
|
|
430
424
|
/** @type {number | undefined} */
|
|
431
425
|
let snapshotSize;
|
|
426
|
+
await null;
|
|
432
427
|
try {
|
|
433
428
|
/** @type {string} */
|
|
434
429
|
let snapPath;
|
|
@@ -444,7 +439,6 @@ export async function xsnap(options) {
|
|
|
444
439
|
|
|
445
440
|
if (snapshotUseFs) {
|
|
446
441
|
// TODO: Refactor to use tmpFile rather than tmpName.
|
|
447
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
448
442
|
snapPath = await ptmpName({
|
|
449
443
|
template: `make-snapshot-${safeHintFromDescription(
|
|
450
444
|
description,
|
|
@@ -461,14 +455,16 @@ export async function xsnap(options) {
|
|
|
461
455
|
// then wait for the command response to pipe the file stream into the
|
|
462
456
|
// output, causing the file read to begin.
|
|
463
457
|
|
|
464
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
465
458
|
const handle = await fs.open(snapPath, 'w+');
|
|
466
459
|
// @ts-expect-error 'close' event added in Node 15.4
|
|
467
460
|
handle.on('close', () => {
|
|
468
|
-
|
|
461
|
+
// Safe to ignore the result because we are skipping to to clean up the temp directory.
|
|
462
|
+
void fs.unlink(snapPath);
|
|
469
463
|
});
|
|
470
464
|
sourceStream = handle.createReadStream();
|
|
471
|
-
finished(output)
|
|
465
|
+
finished(output)
|
|
466
|
+
.finally(() => sourceStream.destroy())
|
|
467
|
+
.catch(noop);
|
|
472
468
|
} else {
|
|
473
469
|
sourceStream = snapshotSaveStream;
|
|
474
470
|
snapPath = `@${SNAPSHOT_SAVE_FD}`;
|
|
@@ -477,7 +473,7 @@ export async function xsnap(options) {
|
|
|
477
473
|
// ensuring that any previous save stream usage has ended. However we
|
|
478
474
|
// must start the flow before receiving the command's response or the
|
|
479
475
|
// xsnap process would block on a full pipe, causing an IPC deadlock.
|
|
480
|
-
batonKit.promise.then(maybePipe);
|
|
476
|
+
batonKit.promise.then(maybePipe, noop);
|
|
481
477
|
}
|
|
482
478
|
|
|
483
479
|
const cleanup = () => {
|
|
@@ -522,7 +518,6 @@ export async function xsnap(options) {
|
|
|
522
518
|
|
|
523
519
|
yield* output;
|
|
524
520
|
} finally {
|
|
525
|
-
// eslint-disable-next-line @jessie.js/no-nested-await
|
|
526
521
|
await done;
|
|
527
522
|
(piped && snapshotReadSize === snapshotSize) ||
|
|
528
523
|
Fail`Snapshot size does not match. saved=${q(snapshotSize)}, read=${q(
|
|
@@ -530,6 +525,7 @@ export async function xsnap(options) {
|
|
|
530
525
|
)}`;
|
|
531
526
|
}
|
|
532
527
|
}
|
|
528
|
+
harden(makeSnapshotInternal);
|
|
533
529
|
|
|
534
530
|
/**
|
|
535
531
|
* @param {string} [description]
|
package/src/xsrepl.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
/* eslint @typescript-eslint/no-floating-promises: "warn" */
|
|
1
2
|
/* global process */
|
|
2
3
|
/* We make exceptions for test code. This is a test utility. */
|
|
3
|
-
/* eslint-disable @jessie.js/no-nested-await */
|
|
4
4
|
/* eslint no-await-in-loop: ["off"] */
|
|
5
5
|
|
|
6
6
|
import '@endo/init';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @template T
|
|
10
|
-
* @typedef {import('./defer').Deferred<T>} Deferred
|
|
10
|
+
* @typedef {import('./defer.js').Deferred<T>} Deferred
|
|
11
11
|
*/
|
|
12
12
|
import * as childProcess from 'child_process';
|
|
13
13
|
import fs from 'fs';
|
|
@@ -97,4 +97,4 @@ async function main() {
|
|
|
97
97
|
return vat.close();
|
|
98
98
|
}
|
|
99
99
|
|
|
100
|
-
main();
|
|
100
|
+
await main().catch(err => console.log(err));
|
package/CHANGELOG.md
DELETED
|
@@ -1,638 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
### [0.14.3-u12.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.14.3-u11wf.0...@agoric/xsnap@0.14.3-u12.0) (2023-11-10)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
### [0.14.3-u11wf.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.14.3-u11.0...@agoric/xsnap@0.14.3-u11wf.0) (2023-09-23)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
### [0.14.3-u11.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.14.2...@agoric/xsnap@0.14.3-u11.0) (2023-08-24)
|
|
23
|
-
|
|
24
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
### [0.14.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.14.1...@agoric/xsnap@0.14.2) (2023-06-02)
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
### Bug Fixes
|
|
34
|
-
|
|
35
|
-
* **xsnap:** update Moddable SDK to fix BigInt arithmetic ([a71f2f2](https://github.com/Agoric/agoric-sdk/commit/a71f2f2c76ed6da9c9fac25e1aa8974d1451588c))
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
### [0.14.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.14.0...@agoric/xsnap@0.14.1) (2023-05-24)
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
### Bug Fixes
|
|
43
|
-
|
|
44
|
-
* **xsnap:** agd checks 'xsnap -n' for agoric-upgrade-10 ([842b440](https://github.com/Agoric/agoric-sdk/commit/842b4402eb857d09856cd8a77159db3a464d86f9)), closes [#7012](https://github.com/Agoric/agoric-sdk/issues/7012)
|
|
45
|
-
* **xsnap:** use newer xsnap-pub, with requirement for __has_builtin ([99de101](https://github.com/Agoric/agoric-sdk/commit/99de101cfe2a7d44464d64c8c55bbc71151b1f2f)), closes [#7829](https://github.com/Agoric/agoric-sdk/issues/7829)
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
## [0.14.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.13.2...@agoric/xsnap@0.14.0) (2023-05-19)
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
### ⚠ BREAKING CHANGES
|
|
53
|
-
|
|
54
|
-
* **xsnap:** start xsnap takes snapshot stream
|
|
55
|
-
* **xsnap:** makeSnapshot yields snapshot data
|
|
56
|
-
* **xsnap:** Update Moddable SDK and xsnap-native
|
|
57
|
-
* **xsnap:** Update Moddable SDK and xsnap-native (#6920)
|
|
58
|
-
|
|
59
|
-
### Features
|
|
60
|
-
|
|
61
|
-
* **xsnap:** Handle snapshot written size in command response ([6dfe7b0](https://github.com/Agoric/agoric-sdk/commit/6dfe7b0461a6c45b00b80cbb847985dbce1709e3))
|
|
62
|
-
* **xsnap:** makeSnapshot yields snapshot data ([348bbd2](https://github.com/Agoric/agoric-sdk/commit/348bbd2d9c251e7ec0f0aa109034d4bdb5ce89e4))
|
|
63
|
-
* **xsnap:** makeSnapshotStream over process pipe ([c0be80d](https://github.com/Agoric/agoric-sdk/commit/c0be80d5964748e2dabe1903bef5b7b1c6eb8e85))
|
|
64
|
-
* **xsnap:** start xsnap takes snapshot stream ([ed87de1](https://github.com/Agoric/agoric-sdk/commit/ed87de12e46095aa18f56b7d0118c6c76d5bef64))
|
|
65
|
-
* **xsnap:** stream start snapshot over pipe ([3f77ff9](https://github.com/Agoric/agoric-sdk/commit/3f77ff90e918280fb07055c602b56871f342365d))
|
|
66
|
-
* **xsnap:** Update Moddable SDK and xsnap-native ([2095474](https://github.com/Agoric/agoric-sdk/commit/2095474ed69ff0e6aa3a4fa7edcefe988011513d))
|
|
67
|
-
* **xsnap:** Update Moddable SDK and xsnap-native ([#6920](https://github.com/Agoric/agoric-sdk/issues/6920)) ([ddb745b](https://github.com/Agoric/agoric-sdk/commit/ddb745bb1a940cd81dae34c642eb357faca0150b))
|
|
68
|
-
* **xsnap:** use XS native harden ([037167f](https://github.com/Agoric/agoric-sdk/commit/037167fd9d071f8525401b15e13809ebf910f106))
|
|
69
|
-
* create new xsnap-lockdown package ([2af831d](https://github.com/Agoric/agoric-sdk/commit/2af831d9683a4080168ee267e8d57227d2167f37)), closes [#6596](https://github.com/Agoric/agoric-sdk/issues/6596)
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
### Bug Fixes
|
|
73
|
-
|
|
74
|
-
* **xsnap:** add untracked build-env file ([223a74b](https://github.com/Agoric/agoric-sdk/commit/223a74bd0fb6139e6240c57d63297080293cfcd5))
|
|
75
|
-
* **xsnap:** cleanly close using message ([ae54724](https://github.com/Agoric/agoric-sdk/commit/ae54724e7c1882d5dd235f2207dd0a1a7794d35a))
|
|
76
|
-
* **xsnap:** makeSnapshot synchronously takes baton ([8d511e8](https://github.com/Agoric/agoric-sdk/commit/8d511e82b50a4226d3da22dc3c6d0df95609dfaf))
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
### [0.13.3](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.13.2...@agoric/xsnap@0.13.3) (2023-02-17)
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
### Bug Fixes
|
|
84
|
-
|
|
85
|
-
* **xsnap:** Update Moddable SDK with divergence fixes ([#6758](https://github.com/Agoric/agoric-sdk/issues/6758)) ([fc6afec](https://github.com/Agoric/agoric-sdk/commit/fc6afecb6b752a019c34377a863eb58108944dc3))
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
### [0.13.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.13.1...@agoric/xsnap@0.13.2) (2022-10-05)
|
|
90
|
-
|
|
91
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
### [0.13.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.13.0...@agoric/xsnap@0.13.1) (2022-09-20)
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
### Bug Fixes
|
|
101
|
-
|
|
102
|
-
* lints ([23d64ea](https://github.com/Agoric/agoric-sdk/commit/23d64eaa65feb858e3f49d483a94950eaa64e834))
|
|
103
|
-
* xsnap parent kills worker upon receipt of unrecognized response ([5489221](https://github.com/Agoric/agoric-sdk/commit/548922158de572f2eb651eb2a08313559b9bfe35)), closes [#6257](https://github.com/Agoric/agoric-sdk/issues/6257)
|
|
104
|
-
* **SwingSet:** Apply netstring limit to xsnap workers ([f8365b2](https://github.com/Agoric/agoric-sdk/commit/f8365b26dd79967895a4d88966521d067b982206))
|
|
105
|
-
* **xsnap:** bump METER_TYPE to match recent XS udpate ([32e9509](https://github.com/Agoric/agoric-sdk/commit/32e950944420de4900c5f671e054524f3a0ae377)), closes [#5338](https://github.com/Agoric/agoric-sdk/issues/5338)
|
|
106
|
-
* **xsnap:** do not leak through vat termination race ([#5643](https://github.com/Agoric/agoric-sdk/issues/5643)) ([8201050](https://github.com/Agoric/agoric-sdk/commit/8201050103b1b2c76736b80ac4db9ec7f78dfdc7))
|
|
107
|
-
* **xsnap:** fix test which reused a mutable ArrayBuffer ([5606b52](https://github.com/Agoric/agoric-sdk/commit/5606b529b2c143cdb4e8d0f0cf28dd043fa4bdb1))
|
|
108
|
-
* **xsnap:** Handle endo init vetted shims in ava-xs ([cd7b880](https://github.com/Agoric/agoric-sdk/commit/cd7b880592578502b71c0297cad37be2672e0680))
|
|
109
|
-
* **xsnap:** prevent out of command execution ([84cf363](https://github.com/Agoric/agoric-sdk/commit/84cf363fb83c7d96046e5540b4857cc5f584ba89))
|
|
110
|
-
* **xsnap:** prohibit leading hyphen in options.name ([a3db601](https://github.com/Agoric/agoric-sdk/commit/a3db60172ae21ec57f3456bac9243aa732cfeba5))
|
|
111
|
-
* **xsnap:** upgrade to latest xsnap, now with timestamps ([c857cc8](https://github.com/Agoric/agoric-sdk/commit/c857cc83b744213cfa962ac5e250c977e18df48e)), closes [#5152](https://github.com/Agoric/agoric-sdk/issues/5152)
|
|
112
|
-
* **xsnap:** upgrade to xsnap-native with exit on unknown command ([37a01a4](https://github.com/Agoric/agoric-sdk/commit/37a01a41c60338d4d7614d68b5913126956e4630))
|
|
113
|
-
* **xsnap:** Use Moddable SDK and xsnap with WeakRef and snapshot patch ([374e7d5](https://github.com/Agoric/agoric-sdk/commit/374e7d5bcea922734ab347af5e4e98bd682e8099))
|
|
114
|
-
* **xsnap:** use patched XS to fix heap-snapshot-writing memory leak ([#5987](https://github.com/Agoric/agoric-sdk/issues/5987)) ([9e2c1da](https://github.com/Agoric/agoric-sdk/commit/9e2c1da92d865ce02dc766b1072c8c3209b0cfe9)), closes [#5975](https://github.com/Agoric/agoric-sdk/issues/5975)
|
|
115
|
-
* **xsnap:** Use xsnap with fixed timestamps ([#6151](https://github.com/Agoric/agoric-sdk/issues/6151)) ([9ba7842](https://github.com/Agoric/agoric-sdk/commit/9ba78424a4bd587d0009a6816b7ffcedd5d7f972))
|
|
116
|
-
* **xsnap:** workaround unexpected worker exit ([267f83c](https://github.com/Agoric/agoric-sdk/commit/267f83c06bcd87ad02d45502a4e3a5c744a3c533))
|
|
117
|
-
* Use new `||` assert style, but when TS confused use `if` instead ([#6174](https://github.com/Agoric/agoric-sdk/issues/6174)) ([94625d3](https://github.com/Agoric/agoric-sdk/commit/94625d38c3bb5333b00a69dd3086b1ac13490f62))
|
|
118
|
-
* **xsnap:** XS error stack behavior change ([444d6cb](https://github.com/Agoric/agoric-sdk/commit/444d6cbd4cd276a9cd9af48ceb9513c81d83b475))
|
|
119
|
-
* **xsnap:** xsnap process drops context after exit ([26766f6](https://github.com/Agoric/agoric-sdk/commit/26766f6623cc5d07aa1c52257cf54310543e13ea))
|
|
120
|
-
* tests use debug settings ([#5567](https://github.com/Agoric/agoric-sdk/issues/5567)) ([83d751f](https://github.com/Agoric/agoric-sdk/commit/83d751fb3dd8d47942fc69cfde863e6b21f1b04e))
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
## [0.13.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.12.0...@agoric/xsnap@0.13.0) (2022-05-28)
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
### Features
|
|
128
|
-
|
|
129
|
-
* **vaultManager:** expose liquidation metrics ([#5393](https://github.com/Agoric/agoric-sdk/issues/5393)) ([47d4823](https://github.com/Agoric/agoric-sdk/commit/47d48236ee1702d8b0a903e39143132b56cfd096))
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
### Bug Fixes
|
|
133
|
-
|
|
134
|
-
* **xsnap:** Regarding unhandled exceptions ([29f7d93](https://github.com/Agoric/agoric-sdk/commit/29f7d9398be8f01447aa3083c6956242a6e3a54f))
|
|
135
|
-
* **xsnap:** trace should not overwrite existing files ([5ab59a9](https://github.com/Agoric/agoric-sdk/commit/5ab59a9c6671a5aa6a81ad6a736fb95a3cf3c64b))
|
|
136
|
-
* **xsnap:** Use mxNoConsole=1 ([a592439](https://github.com/Agoric/agoric-sdk/commit/a592439b4c5680fa4a81138571e769cae888a587))
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
## [0.12.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.11.2...@agoric/xsnap@0.12.0) (2022-04-18)
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
### ⚠ BREAKING CHANGES
|
|
144
|
-
|
|
145
|
-
* **xsnap:** METER_TYPE -> 13
|
|
146
|
-
|
|
147
|
-
### Features
|
|
148
|
-
|
|
149
|
-
* **object-inspect:** group bigint digits in threes ([a21d3b4](https://github.com/Agoric/agoric-sdk/commit/a21d3b4d0e12ecd761ba8ec00296df4a42a80c51))
|
|
150
|
-
* **xsnap:** load object-inspect in its own Compartment ([05ceb87](https://github.com/Agoric/agoric-sdk/commit/05ceb873f91a926b344a7be53814345b4aa64cc0))
|
|
151
|
-
* implement the durable kind API ([56bad98](https://github.com/Agoric/agoric-sdk/commit/56bad985275787d18c34ac14b377a4d0348d699b)), closes [#4495](https://github.com/Agoric/agoric-sdk/issues/4495)
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
### Bug Fixes
|
|
155
|
-
|
|
156
|
-
* **xsnap:** adopt `src/object-inspect.js` ([4f23da2](https://github.com/Agoric/agoric-sdk/commit/4f23da29ae19eefb786bb810e44d7b534de91664))
|
|
157
|
-
* **xsnap:** METER_TYPE -> 13 ([ae8d18f](https://github.com/Agoric/agoric-sdk/commit/ae8d18f76e6463ef7c41d974d28696c66b4dfcb4))
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
### [0.11.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.11.1...@agoric/xsnap@0.11.2) (2022-02-24)
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
### Features
|
|
165
|
-
|
|
166
|
-
* overhaul the virtual object API ([e40674b](https://github.com/Agoric/agoric-sdk/commit/e40674b0b19f29adde2f5e6a460bafb7340d42b6)), closes [#4606](https://github.com/Agoric/agoric-sdk/issues/4606)
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
### [0.11.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.11.0...@agoric/xsnap@0.11.1) (2022-02-21)
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
### Features
|
|
174
|
-
|
|
175
|
-
* implement persistent stores ([e1050b0](https://github.com/Agoric/agoric-sdk/commit/e1050b010e095b23547a38d48a12e5c8841a7466))
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
### Bug Fixes
|
|
179
|
-
|
|
180
|
-
* **xsnap:** Lint followup ([4ef61f7](https://github.com/Agoric/agoric-sdk/commit/4ef61f723166ff1439d97eacc4ba8181f14323f5))
|
|
181
|
-
* Remove extraneous eslint globals ([17087e4](https://github.com/Agoric/agoric-sdk/commit/17087e4605db7d3b30dfccf2434b2850b45e3408))
|
|
182
|
-
* **xsnap:** Pin xsnap moddable submodule for textencoder ([de8604c](https://github.com/Agoric/agoric-sdk/commit/de8604c1bcd0b7e632500479d4083cbcbb1480ea))
|
|
183
|
-
* **xsnap:** Run tests with eventual-send JavaScript ([fc6f0a5](https://github.com/Agoric/agoric-sdk/commit/fc6f0a503256c0a20dc9a1750be80ef27a9d4f6a))
|
|
184
|
-
* **xsnap:** use `object-inspect` to render `print` output better ([3c3a353](https://github.com/Agoric/agoric-sdk/commit/3c3a353bb67b8b623e5b931632d28d96a535f215))
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
## [0.11.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.10.0...@agoric/xsnap@0.11.0) (2021-12-02)
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
### ⚠ BREAKING CHANGES
|
|
192
|
-
|
|
193
|
-
* METER_TYPE -> xs-meter-12
|
|
194
|
-
|
|
195
|
-
- update metering tests
|
|
196
|
-
|
|
197
|
-
### Features
|
|
198
|
-
|
|
199
|
-
* expose XS the->currentHeapCount to metering/delivery results ([a031d79](https://github.com/Agoric/agoric-sdk/commit/a031d7900440ee3717c15e7c5be4ae8226ef5530)), closes [#3910](https://github.com/Agoric/agoric-sdk/issues/3910)
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
### Bug Fixes
|
|
203
|
-
|
|
204
|
-
* have main entry points use `@endo/init`, not `ses` ([dce92ac](https://github.com/Agoric/agoric-sdk/commit/dce92acfac4dd0a5de048f7d7865e0e3cdc14396))
|
|
205
|
-
* **ava-xs:** allow test file globs as arguments, just like AVA ([3d12770](https://github.com/Agoric/agoric-sdk/commit/3d127708000b017aef1e994f424b566e07d04626))
|
|
206
|
-
* **xsnap:** get ordering right so that ses loads before most shims ([80d00bf](https://github.com/Agoric/agoric-sdk/commit/80d00bf9046d2b0f23a2a509a6a8a127b613d802))
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
## [0.10.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.9.1...@agoric/xsnap@0.10.0) (2021-10-13)
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
### ⚠ BREAKING CHANGES
|
|
214
|
-
|
|
215
|
-
* **xsnap:** upgrade XS to fix memory leak
|
|
216
|
-
|
|
217
|
-
### Bug Fixes
|
|
218
|
-
|
|
219
|
-
* **xsnap:** upgrade XS to fix memory leak ([9a70831](https://github.com/Agoric/agoric-sdk/commit/9a70831cbc02edea7721b9a521492c030b097f2c)), closes [#3839](https://github.com/Agoric/agoric-sdk/issues/3839) [#3877](https://github.com/Agoric/agoric-sdk/issues/3877) [#3889](https://github.com/Agoric/agoric-sdk/issues/3889)
|
|
220
|
-
* **xsnap:** work around stricter TS checking of globalThis ([942ae90](https://github.com/Agoric/agoric-sdk/commit/942ae905454a87a1739b14b49609eaeddebffcde))
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
### [0.9.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.9.0...@agoric/xsnap@0.9.1) (2021-09-23)
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
### Bug Fixes
|
|
228
|
-
|
|
229
|
-
* **xsnap:** format objects nicely in console using SES assert.quote ([#3856](https://github.com/Agoric/agoric-sdk/issues/3856)) ([a3306d0](https://github.com/Agoric/agoric-sdk/commit/a3306d01d8e87c4bc7483a61e42cc30b006feb81)), closes [#3844](https://github.com/Agoric/agoric-sdk/issues/3844)
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
## [0.9.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.8.2...@agoric/xsnap@0.9.0) (2021-09-15)
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
### ⚠ BREAKING CHANGES
|
|
237
|
-
|
|
238
|
-
* **xsnap:** moddable resync for stack-trace changes metering
|
|
239
|
-
|
|
240
|
-
### Features
|
|
241
|
-
|
|
242
|
-
* **xsnap:** Add base 64 bindings ([a8279a4](https://github.com/Agoric/agoric-sdk/commit/a8279a43ef6f4686efba301fe2cb93e1d4e9b156))
|
|
243
|
-
* **xsnap:** integrate native TextEncoder / TextDecoder ([9d65dbe](https://github.com/Agoric/agoric-sdk/commit/9d65dbe2410e1856c3ac1fa6ff7eb921bb24ec0c))
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
### Bug Fixes
|
|
247
|
-
|
|
248
|
-
* **xsnap:** moddable resync for stack-trace changes metering ([34e5e18](https://github.com/Agoric/agoric-sdk/commit/34e5e1877eb74cf39fc32cf1cc53524c3f365635))
|
|
249
|
-
* **xsnap:** supply missing file, line numbers based on sourceURL ([be3386c](https://github.com/Agoric/agoric-sdk/commit/be3386cbcd2255c469791830984fc385856226cc)), closes [#2578](https://github.com/Agoric/agoric-sdk/issues/2578)
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
### [0.8.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.8.1...@agoric/xsnap@0.8.2) (2021-08-18)
|
|
254
|
-
|
|
255
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
### [0.8.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.8.0...@agoric/xsnap@0.8.1) (2021-08-17)
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
### Bug Fixes
|
|
265
|
-
|
|
266
|
-
* Remove dregs of node -r esm ([#3710](https://github.com/Agoric/agoric-sdk/issues/3710)) ([e30c934](https://github.com/Agoric/agoric-sdk/commit/e30c934a9de19e930677c7b65ad98abe0be16d56))
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
## [0.8.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.9...@agoric/xsnap@0.8.0) (2021-08-15)
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
### ⚠ BREAKING CHANGES
|
|
274
|
-
|
|
275
|
-
* **xsnap:** don't rely on diagnostic meters
|
|
276
|
-
* **xsnap:** avoid O(n^2) Array, Map, Set growth
|
|
277
|
-
|
|
278
|
-
### Features
|
|
279
|
-
|
|
280
|
-
* **xsnap:** make name available on xsnap object ([8c4a16b](https://github.com/Agoric/agoric-sdk/commit/8c4a16bc203722d594f09bf7c5acd09c4209ba1c))
|
|
281
|
-
* **xsnap:** record upstream commands as well as replies ([fc9332f](https://github.com/Agoric/agoric-sdk/commit/fc9332fc52f626b884e4998e780dbfbf87cb854d))
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
### Bug Fixes
|
|
285
|
-
|
|
286
|
-
* **deployment:** use proper path to build.js ([78d2d73](https://github.com/Agoric/agoric-sdk/commit/78d2d73e33311ee09eaec17fa3b5c4d393a73621))
|
|
287
|
-
* **swingset:** delete unused snapshots ([#3505](https://github.com/Agoric/agoric-sdk/issues/3505)) ([317959d](https://github.com/Agoric/agoric-sdk/commit/317959d77ca669c8e4bbf504d89fe55bdd383253)), closes [#3374](https://github.com/Agoric/agoric-sdk/issues/3374) [#3431](https://github.com/Agoric/agoric-sdk/issues/3431)
|
|
288
|
-
* **xsnap:** 1st field of `git submodule status` is 1 char ([5448675](https://github.com/Agoric/agoric-sdk/commit/54486754d77bf7d65bcc590146ffce359eef955d))
|
|
289
|
-
* **xsnap:** Allow for an absent package.json ava.require ([2d30a11](https://github.com/Agoric/agoric-sdk/commit/2d30a11de0e1a8f167aa033af40dd34309bf65d5))
|
|
290
|
-
* **xsnap:** avoid O(n^2) Array, Map, Set growth ([11e7c1c](https://github.com/Agoric/agoric-sdk/commit/11e7c1cdbc12a0a53477be3e81cf86cc6407cd28)), closes [#3012](https://github.com/Agoric/agoric-sdk/issues/3012)
|
|
291
|
-
* **xsnap:** build needs to await checkout ([a2f4861](https://github.com/Agoric/agoric-sdk/commit/a2f4861b3e1469f26baae8ce9326068f9d513195))
|
|
292
|
-
* **xsnap:** don't rely on diagnostic meters ([8148c13](https://github.com/Agoric/agoric-sdk/commit/8148c13c5f4810c5fe92e05ced57ebf56302404d))
|
|
293
|
-
* **xsnap:** tolerate Symbols in console.log() arguments ([#3618](https://github.com/Agoric/agoric-sdk/issues/3618)) ([314ee93](https://github.com/Agoric/agoric-sdk/commit/314ee93ee8fc5e97e8c40a640b94ffa770a046bc))
|
|
294
|
-
|
|
295
|
-
### 0.26.10 (2021-07-28)
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
### Features
|
|
299
|
-
|
|
300
|
-
* **xsnap:** FFI to enable/disable metering ([#3480](https://github.com/Agoric/agoric-sdk/issues/3480)) ([94d9417](https://github.com/Agoric/agoric-sdk/commit/94d941707583a4c145ace144cf82bedc330979a3)), closes [#3457](https://github.com/Agoric/agoric-sdk/issues/3457)
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
### Bug Fixes
|
|
304
|
-
|
|
305
|
-
* tolerate endo pre and post [#822](https://github.com/Agoric/agoric-sdk/issues/822) ([#3472](https://github.com/Agoric/agoric-sdk/issues/3472)) ([e872c0c](https://github.com/Agoric/agoric-sdk/commit/e872c0c77a146a746066de583021d8c9f1721b93))
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
## [0.7.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.9...@agoric/xsnap@0.7.0) (2021-08-14)
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
### ⚠ BREAKING CHANGES
|
|
313
|
-
|
|
314
|
-
* **xsnap:** don't rely on diagnostic meters
|
|
315
|
-
* **xsnap:** avoid O(n^2) Array, Map, Set growth
|
|
316
|
-
|
|
317
|
-
### Features
|
|
318
|
-
|
|
319
|
-
* **xsnap:** make name available on xsnap object ([8c4a16b](https://github.com/Agoric/agoric-sdk/commit/8c4a16bc203722d594f09bf7c5acd09c4209ba1c))
|
|
320
|
-
* **xsnap:** record upstream commands as well as replies ([fc9332f](https://github.com/Agoric/agoric-sdk/commit/fc9332fc52f626b884e4998e780dbfbf87cb854d))
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
### Bug Fixes
|
|
324
|
-
|
|
325
|
-
* **swingset:** delete unused snapshots ([#3505](https://github.com/Agoric/agoric-sdk/issues/3505)) ([317959d](https://github.com/Agoric/agoric-sdk/commit/317959d77ca669c8e4bbf504d89fe55bdd383253)), closes [#3374](https://github.com/Agoric/agoric-sdk/issues/3374) [#3431](https://github.com/Agoric/agoric-sdk/issues/3431)
|
|
326
|
-
* **xsnap:** Allow for an absent package.json ava.require ([2d30a11](https://github.com/Agoric/agoric-sdk/commit/2d30a11de0e1a8f167aa033af40dd34309bf65d5))
|
|
327
|
-
* **xsnap:** avoid O(n^2) Array, Map, Set growth ([11e7c1c](https://github.com/Agoric/agoric-sdk/commit/11e7c1cdbc12a0a53477be3e81cf86cc6407cd28)), closes [#3012](https://github.com/Agoric/agoric-sdk/issues/3012)
|
|
328
|
-
* **xsnap:** don't rely on diagnostic meters ([8148c13](https://github.com/Agoric/agoric-sdk/commit/8148c13c5f4810c5fe92e05ced57ebf56302404d))
|
|
329
|
-
* **xsnap:** tolerate Symbols in console.log() arguments ([#3618](https://github.com/Agoric/agoric-sdk/issues/3618)) ([314ee93](https://github.com/Agoric/agoric-sdk/commit/314ee93ee8fc5e97e8c40a640b94ffa770a046bc))
|
|
330
|
-
|
|
331
|
-
### 0.26.10 (2021-07-28)
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
### Features
|
|
335
|
-
|
|
336
|
-
* **xsnap:** FFI to enable/disable metering ([#3480](https://github.com/Agoric/agoric-sdk/issues/3480)) ([94d9417](https://github.com/Agoric/agoric-sdk/commit/94d941707583a4c145ace144cf82bedc330979a3)), closes [#3457](https://github.com/Agoric/agoric-sdk/issues/3457)
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
### Bug Fixes
|
|
340
|
-
|
|
341
|
-
* tolerate endo pre and post [#822](https://github.com/Agoric/agoric-sdk/issues/822) ([#3472](https://github.com/Agoric/agoric-sdk/issues/3472)) ([e872c0c](https://github.com/Agoric/agoric-sdk/commit/e872c0c77a146a746066de583021d8c9f1721b93))
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
### [0.6.10](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.9...@agoric/xsnap@0.6.10) (2021-07-28)
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
### Features
|
|
349
|
-
|
|
350
|
-
* **xsnap:** FFI to enable/disable metering ([#3480](https://github.com/Agoric/agoric-sdk/issues/3480)) ([94d9417](https://github.com/Agoric/agoric-sdk/commit/94d941707583a4c145ace144cf82bedc330979a3)), closes [#3457](https://github.com/Agoric/agoric-sdk/issues/3457)
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
### Bug Fixes
|
|
354
|
-
|
|
355
|
-
* tolerate endo pre and post [#822](https://github.com/Agoric/agoric-sdk/issues/822) ([#3472](https://github.com/Agoric/agoric-sdk/issues/3472)) ([e872c0c](https://github.com/Agoric/agoric-sdk/commit/e872c0c77a146a746066de583021d8c9f1721b93))
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
### [0.6.9](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.8...@agoric/xsnap@0.6.9) (2021-07-01)
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
### Features
|
|
363
|
-
|
|
364
|
-
* **xsnap:** isReady() eliminates need for .evaluate('null') ([a0493d7](https://github.com/Agoric/agoric-sdk/commit/a0493d7c34c66d008e295ac2b0b86e312a36b5da))
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
### [0.6.8](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.7...@agoric/xsnap@0.6.8) (2021-06-28)
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
### Features
|
|
372
|
-
|
|
373
|
-
* demand-paged vats are reloaded from heap snapshots ([#2848](https://github.com/Agoric/agoric-sdk/issues/2848)) ([cb239cb](https://github.com/Agoric/agoric-sdk/commit/cb239cbb27943ad58c304d85ee9b61ba917af79c)), closes [#2273](https://github.com/Agoric/agoric-sdk/issues/2273) [#2277](https://github.com/Agoric/agoric-sdk/issues/2277) [#2422](https://github.com/Agoric/agoric-sdk/issues/2422)
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
### Bug Fixes
|
|
377
|
-
|
|
378
|
-
* snapStore tmp files were kept for debugging ([#3420](https://github.com/Agoric/agoric-sdk/issues/3420)) ([9d9560d](https://github.com/Agoric/agoric-sdk/commit/9d9560db488b67c8dfbc8dbba23967d5059dd071))
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
### [0.6.7](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.6...@agoric/xsnap@0.6.7) (2021-06-25)
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
### Bug Fixes
|
|
386
|
-
|
|
387
|
-
* **xsnap:** update XS: new WeakMap design, fixed Promise drops ([8eeec28](https://github.com/Agoric/agoric-sdk/commit/8eeec2808ee7596d0b08a362d182c65a8828fba3)), closes [#3406](https://github.com/Agoric/agoric-sdk/issues/3406) [#3118](https://github.com/Agoric/agoric-sdk/issues/3118)
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
### [0.6.6](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.5...@agoric/xsnap@0.6.6) (2021-06-24)
|
|
392
|
-
|
|
393
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
### [0.6.5](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.4...@agoric/xsnap@0.6.5) (2021-06-23)
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
### Features
|
|
403
|
-
|
|
404
|
-
* **xsnap:** record / replay xsnap protcol ([616a752](https://github.com/Agoric/agoric-sdk/commit/616a752289d87ae71fd21a0f9533b158667d2d89))
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
### Bug Fixes
|
|
408
|
-
|
|
409
|
-
* **xsnap:** 1e7 was too small for crank meter limit ([95c52ab](https://github.com/Agoric/agoric-sdk/commit/95c52ab62f7be855d084b70626b67e8ca516714f))
|
|
410
|
-
* **xsnap:** Account for TypedArray and subarrays in Text shim ([3531132](https://github.com/Agoric/agoric-sdk/commit/35311325cdb76c4981cffaffbc9d9b1f8701662a))
|
|
411
|
-
* **xsnap:** don't risk NULL in gxSnapshotCallbacks ([3a6ddbb](https://github.com/Agoric/agoric-sdk/commit/3a6ddbb4b2ab1ab551888ad7e4ec86d32189caf0))
|
|
412
|
-
* **xsnap:** fxMeterHostFunction is no more ([67e6a51](https://github.com/Agoric/agoric-sdk/commit/67e6a512d5c16ec32734e2fb4c046182142b85a0))
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
### [0.6.4](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.3...@agoric/xsnap@0.6.4) (2021-06-16)
|
|
417
|
-
|
|
418
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
### [0.6.3](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.2...@agoric/xsnap@0.6.3) (2021-06-15)
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
### Features
|
|
428
|
-
|
|
429
|
-
* use 'engine-gc.js' to get the Node.js garbage collector ([0153529](https://github.com/Agoric/agoric-sdk/commit/0153529cbfc0b7da2d1ec434b32b2171bc246f93))
|
|
430
|
-
* **xsnap:** add gcAndFinalize, tests ([343d908](https://github.com/Agoric/agoric-sdk/commit/343d9081b84205902e47e4f4f4fef3b97e6dfe45)), closes [#2660](https://github.com/Agoric/agoric-sdk/issues/2660)
|
|
431
|
-
* **xsnap:** refined metering: stack, arrays ([9c48919](https://github.com/Agoric/agoric-sdk/commit/9c4891948c0ba3e8edc564035ad16a949e8b6bd0))
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
### Bug Fixes
|
|
435
|
-
|
|
436
|
-
* be more explicit when gc() is not enabled, but not repetitive ([b3f7757](https://github.com/Agoric/agoric-sdk/commit/b3f775704a2a9373623d3c6f24726e14ec8d0056))
|
|
437
|
-
* Pin ESM to forked version ([54dbb55](https://github.com/Agoric/agoric-sdk/commit/54dbb55d64d7ff7adb395bc4bd9d1461dd2d3c17))
|
|
438
|
-
* Preinitialize Babel ([bb76808](https://github.com/Agoric/agoric-sdk/commit/bb768089c3588e54612d7c9a4528972b5688f4e6))
|
|
439
|
-
* **xs-worker:** respect !managerOptions.metered ([#3078](https://github.com/Agoric/agoric-sdk/issues/3078)) ([84fa8c9](https://github.com/Agoric/agoric-sdk/commit/84fa8c984bc0bccb2482007d69dfb01773de6c74))
|
|
440
|
-
* **xsnap:** free netstring in issueCommand() ([127e58a](https://github.com/Agoric/agoric-sdk/commit/127e58ac45bc9ea316733bbe6790936ba1b28f56))
|
|
441
|
-
* **xsnap:** handle malloc() failure ([67d2581](https://github.com/Agoric/agoric-sdk/commit/67d25812985ce590cda10e2774be885b16fa67fb))
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
## [0.6.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.1...@agoric/xsnap@0.6.2) (2021-05-10)
|
|
446
|
-
|
|
447
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
## [0.6.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.6.0...@agoric/xsnap@0.6.1) (2021-05-05)
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
### Bug Fixes
|
|
457
|
-
|
|
458
|
-
* cope with getting moddable submodule from agoric-labs ([a1a2693](https://github.com/Agoric/agoric-sdk/commit/a1a26931d17ade84ae97aa3a9d0e7c5c58a74491))
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
# [0.6.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.5...@agoric/xsnap@0.6.0) (2021-05-05)
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
### Bug Fixes
|
|
468
|
-
|
|
469
|
-
* **xsnap:** fix the xsnap/moddable git-submodule ([fc34fba](https://github.com/Agoric/agoric-sdk/commit/fc34fba9d28776bd5120831864ef12f71e120766))
|
|
470
|
-
* **xsnap:** start with expected heap (32MB) and grow by 4MB ([2e59868](https://github.com/Agoric/agoric-sdk/commit/2e598684ca009d9575fbe078205396eaf89d06e8))
|
|
471
|
-
* ignore an xsnap build output ([#2887](https://github.com/Agoric/agoric-sdk/issues/2887)) ([646b621](https://github.com/Agoric/agoric-sdk/commit/646b6211618381fe569a2be0820137523a484a6e))
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
### Features
|
|
475
|
-
|
|
476
|
-
* **ava-xs:** provide test script name to xsnap ([05f0637](https://github.com/Agoric/agoric-sdk/commit/05f0637942586b449e516796f1f9881fe218d08c))
|
|
477
|
-
* **xsnap:** $XSNAP_DEBUG_RR for time-travel debugging ([bd4af92](https://github.com/Agoric/agoric-sdk/commit/bd4af925c73ac33e027027f5e56bc65c4c10a38a))
|
|
478
|
-
* **xsnap:** define XSnapOptions type ([1ce5618](https://github.com/Agoric/agoric-sdk/commit/1ce561892e4d1bfb91e8dc6491e1229713619967))
|
|
479
|
-
* **xsnap:** grow heap more slowly ([11795de](https://github.com/Agoric/agoric-sdk/commit/11795deeec15afda3ea96ed8a994243480f97a69))
|
|
480
|
-
* **xsnap:** high resolution timer: performance.now() ([10940f9](https://github.com/Agoric/agoric-sdk/commit/10940f902fef4a47a5fd8b63faeceb9c5c0be4eb))
|
|
481
|
-
* **xsnap:** increase allocation limit to 2GB ([5922cbd](https://github.com/Agoric/agoric-sdk/commit/5922cbdd360a29acaac4fbe00d298b0af8e5e8a4))
|
|
482
|
-
* **xsnap:** meter add/remove on map, set ([327062f](https://github.com/Agoric/agoric-sdk/commit/327062f9f9843ed2f4d8d6e0fa2445d1fa4fdf55))
|
|
483
|
-
* **xsnap:** meter allocation ([eecd58d](https://github.com/Agoric/agoric-sdk/commit/eecd58d503904e0aff24e6850730b165eeac1c9e))
|
|
484
|
-
* **xsnap:** meter calls to allocateChunks, allocateSlots ([5a35842](https://github.com/Agoric/agoric-sdk/commit/5a35842cca71433f7dd2a52cc2750df53a01b269))
|
|
485
|
-
* **xsnap:** meter garbageCollectionCount ([f649ff7](https://github.com/Agoric/agoric-sdk/commit/f649ff7715700a5cf3002fcc332692e2786d9d53))
|
|
486
|
-
* **xsnap:** meter maxBucketSize ([eff98b4](https://github.com/Agoric/agoric-sdk/commit/eff98b4770a4742cb0b9b2d5bc2de1266d38951b))
|
|
487
|
-
* **xsnap:** specify exit codes for meter exhaustion etc. ([db3daaa](https://github.com/Agoric/agoric-sdk/commit/db3daaaeeef1ac81104b8a58922da932ccdbadd9))
|
|
488
|
-
* refcount-based promise GC in the comms vat ([209b034](https://github.com/Agoric/agoric-sdk/commit/209b034f196d46f5d6b499f8b0bf32dbddca1114))
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
## [0.5.5](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.4...@agoric/xsnap@0.5.5) (2021-04-22)
|
|
495
|
-
|
|
496
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
## [0.5.4](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.3...@agoric/xsnap@0.5.4) (2021-04-18)
|
|
503
|
-
|
|
504
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
## [0.5.3](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.2...@agoric/xsnap@0.5.3) (2021-04-16)
|
|
511
|
-
|
|
512
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
## [0.5.2](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.1...@agoric/xsnap@0.5.2) (2021-04-14)
|
|
519
|
-
|
|
520
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
## [0.5.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.5.0...@agoric/xsnap@0.5.1) (2021-04-07)
|
|
527
|
-
|
|
528
|
-
**Note:** Version bump only for package @agoric/xsnap
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
# [0.5.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.4.0...@agoric/xsnap@0.5.0) (2021-04-06)
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
### Bug Fixes
|
|
538
|
-
|
|
539
|
-
* update to depend on ses 0.12.5 ([#2718](https://github.com/Agoric/agoric-sdk/issues/2718)) ([08dbe0d](https://github.com/Agoric/agoric-sdk/commit/08dbe0db5ce06944dc92c710865e441a60b31b5b))
|
|
540
|
-
* update to ses 0.12.7, ses-ava 0.1.1 ([#2820](https://github.com/Agoric/agoric-sdk/issues/2820)) ([6d81775](https://github.com/Agoric/agoric-sdk/commit/6d81775715bc80e6033d75cb65edbfb1452b1608))
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
### Features
|
|
544
|
-
|
|
545
|
-
* **xsnap:** show name on command line ([5b31c23](https://github.com/Agoric/agoric-sdk/commit/5b31c230f81f9e25a53a478de8a66a2f3acfa822))
|
|
546
|
-
* **xsnap:** snapstore with compressed snapshots ([865ba54](https://github.com/Agoric/agoric-sdk/commit/865ba5472b5f43563948f7afe63e85bcc4014888))
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
# [0.4.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.3.0...@agoric/xsnap@0.4.0) (2021-03-24)
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
### Bug Fixes
|
|
556
|
-
|
|
557
|
-
* rename crankStats -> meterUsage ([e0fa380](https://github.com/Agoric/agoric-sdk/commit/e0fa380220a9b0bbc555e55c1d6481c9e48add9b))
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
### Features
|
|
561
|
-
|
|
562
|
-
* **xsnap:** enable gc() in the start compartment ([e407fa2](https://github.com/Agoric/agoric-sdk/commit/e407fa2393dfc8b06111d5353123afd92cd6cab6)), closes [#2682](https://github.com/Agoric/agoric-sdk/issues/2682) [#2660](https://github.com/Agoric/agoric-sdk/issues/2660) [#2615](https://github.com/Agoric/agoric-sdk/issues/2615)
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
# [0.3.0](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.2.1...@agoric/xsnap@0.3.0) (2021-03-16)
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
### Bug Fixes
|
|
572
|
-
|
|
573
|
-
* **ava-xs:** anchor match patterns ([c753779](https://github.com/Agoric/agoric-sdk/commit/c7537799e7feb868fcfe6d916fab626244519d32))
|
|
574
|
-
* make separate 'test:xs' target, remove XS from 'test' target ([b9c1a69](https://github.com/Agoric/agoric-sdk/commit/b9c1a6987093fc8e09e8aba7acd2a1618413bac8)), closes [#2647](https://github.com/Agoric/agoric-sdk/issues/2647)
|
|
575
|
-
* properly pin the Moddable SDK version ([58333e0](https://github.com/Agoric/agoric-sdk/commit/58333e069192267fc96e30bb5272edc03b3faa04))
|
|
576
|
-
* upgrade ses to 0.12.3 to avoid console noise ([#2552](https://github.com/Agoric/agoric-sdk/issues/2552)) ([f59f5f5](https://github.com/Agoric/agoric-sdk/commit/f59f5f58d1567bb11710166b1dbc80f25c39a04f))
|
|
577
|
-
* use git submodule update --init --checkout ([fd3965d](https://github.com/Agoric/agoric-sdk/commit/fd3965de6e578000975fa7cb521689f1872140d2))
|
|
578
|
-
* **avaXS:** notDeepEqual confused false with throwing ([a1b7460](https://github.com/Agoric/agoric-sdk/commit/a1b74604a63b89dc499e58e72b8425effae0b809))
|
|
579
|
-
* **xsnap:** bounds checking in release builds ([c36f040](https://github.com/Agoric/agoric-sdk/commit/c36f04064ddb7c02bee78a1a07c0fe1fcd4b46d3))
|
|
580
|
-
* **xsnap:** freeze API surface ([8c2cc63](https://github.com/Agoric/agoric-sdk/commit/8c2cc63acb78f8a169c53804d64304e8e954f7df))
|
|
581
|
-
* **xsnap:** orderly fail-stop on heap exhaustion ([8ffbaa6](https://github.com/Agoric/agoric-sdk/commit/8ffbaa64bf48a63c34fac3245d117a8a6fa6731a))
|
|
582
|
-
* **xsnap:** shim HandledPromise before lockdown() ([7e8178a](https://github.com/Agoric/agoric-sdk/commit/7e8178aa4ed8bf300a9e20d46e0c6a51848160d7))
|
|
583
|
-
* **xsrepl:** pass command line args thru shell wrapper ([7679200](https://github.com/Agoric/agoric-sdk/commit/7679200fa6b37ec832d72d2662d6f098d4989f37))
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
### Features
|
|
587
|
-
|
|
588
|
-
* **ava-xs:** -m title match support ([e89f1e1](https://github.com/Agoric/agoric-sdk/commit/e89f1e1b716b38f9762d4fef914135c4b0078ced))
|
|
589
|
-
* **ava-xs:** handle some zoe tests ([#2573](https://github.com/Agoric/agoric-sdk/issues/2573)) ([7789834](https://github.com/Agoric/agoric-sdk/commit/7789834f7d232e395a707c5117295b768ed3fcff)), closes [#2503](https://github.com/Agoric/agoric-sdk/issues/2503)
|
|
590
|
-
* **xsnap:** ava work-alike ([2c71b4a](https://github.com/Agoric/agoric-sdk/commit/2c71b4a96b246bcbf89ba1bbb4a44737babccba9))
|
|
591
|
-
* **xsnap:** deep stacks work with updated moddable error stacks ([#2579](https://github.com/Agoric/agoric-sdk/issues/2579)) ([6a8fc76](https://github.com/Agoric/agoric-sdk/commit/6a8fc7646eeab48b176b44ebaca115ed9afa7966))
|
|
592
|
-
* **xsnap:** unhandled rejections are debuggable ([cbf83be](https://github.com/Agoric/agoric-sdk/commit/cbf83beffbbb57d49a9d945b1b1d975731d4f293))
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
## [0.2.1](https://github.com/Agoric/agoric-sdk/compare/@agoric/xsnap@0.2.0...@agoric/xsnap@0.2.1) (2021-02-22)
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
### Bug Fixes
|
|
602
|
-
|
|
603
|
-
* **xsnap:** lib directory was missing from package files ([5bd8eb8](https://github.com/Agoric/agoric-sdk/commit/5bd8eb848a348877c1674fd8ce55bbc1ae37986a))
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
# 0.2.0 (2021-02-16)
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
### Bug Fixes
|
|
613
|
-
|
|
614
|
-
* **xsnap:** Typo in README re order of REPL ops ([#2188](https://github.com/Agoric/agoric-sdk/issues/2188)) ([18b0cac](https://github.com/Agoric/agoric-sdk/commit/18b0cac663c1a822417b43b3fb2f2c8173fd10a1))
|
|
615
|
-
* cleanups and simplifications ([1fe4eae](https://github.com/Agoric/agoric-sdk/commit/1fe4eae27cbe6e97b5f905d921d3e72d167cd108))
|
|
616
|
-
* complain if metering is requested but not compiled in ([857d4ba](https://github.com/Agoric/agoric-sdk/commit/857d4ba44eb93fc4f07608255232ca8c2ede7bc0))
|
|
617
|
-
* don't hardcode XSNAP_VERSION; get it from package.json ([b418db5](https://github.com/Agoric/agoric-sdk/commit/b418db5773f40c695988b27149612835e75fcd44))
|
|
618
|
-
* git should ignore xsnap/dist ([#2312](https://github.com/Agoric/agoric-sdk/issues/2312)) ([097f734](https://github.com/Agoric/agoric-sdk/commit/097f734abd3209ff55d0e78321efb1e0b160af20))
|
|
619
|
-
* missing console methods ([#2254](https://github.com/Agoric/agoric-sdk/issues/2254)) ([79e81b0](https://github.com/Agoric/agoric-sdk/commit/79e81b014ea6e3df1a98ef0d35e7cad2d1d966a6))
|
|
620
|
-
* reenable Docker builds and deployment ([559ea06](https://github.com/Agoric/agoric-sdk/commit/559ea062251d73e3a6921c85f63631a50ddfad35))
|
|
621
|
-
* **xsnap:** Iron out resolution types ([1e2e10d](https://github.com/Agoric/agoric-sdk/commit/1e2e10d78b8e57df6e5eb9ea8f81ba4ded2de8b4))
|
|
622
|
-
* **xsnap:** Make xsrepl executable ([#2197](https://github.com/Agoric/agoric-sdk/issues/2197)) ([bd7d738](https://github.com/Agoric/agoric-sdk/commit/bd7d738010e84db7bfbbf13bc7af1e3787243e7c))
|
|
623
|
-
* **xsnap:** This is not a smog check ([#2190](https://github.com/Agoric/agoric-sdk/issues/2190)) ([437814c](https://github.com/Agoric/agoric-sdk/commit/437814cf6dc78ecb7ee878e574f121b29a1e761f))
|
|
624
|
-
* **xsnap:** Thread spawn and os into xsnap ([619a4de](https://github.com/Agoric/agoric-sdk/commit/619a4dee82a1e63d6b6708dcbb102fa2aced676e))
|
|
625
|
-
* **xsnap:** Update submodules for build and use CURDIR ([#2186](https://github.com/Agoric/agoric-sdk/issues/2186)) ([d0bf5cb](https://github.com/Agoric/agoric-sdk/commit/d0bf5cb4394f0d542020863e72c3eeacd705c3d7))
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
### Features
|
|
629
|
-
|
|
630
|
-
* use xsnap worker CPU meter and start reporting consumption ([62e0d5a](https://github.com/Agoric/agoric-sdk/commit/62e0d5a3b5ff32bd79567bab8fa1b63eb7f9134a))
|
|
631
|
-
* **swingset:** defaultManagerType option in makeSwingsetController ([#2266](https://github.com/Agoric/agoric-sdk/issues/2266)) ([b57f08f](https://github.com/Agoric/agoric-sdk/commit/b57f08f3514e052126a758f949acb5db3cc5a32d)), closes [#2260](https://github.com/Agoric/agoric-sdk/issues/2260)
|
|
632
|
-
* **swingset:** xsnap vat worker ([#2225](https://github.com/Agoric/agoric-sdk/issues/2225)) ([50c8548](https://github.com/Agoric/agoric-sdk/commit/50c8548e4d610e1e32537bc155e4c58d917cd6df)), closes [#2216](https://github.com/Agoric/agoric-sdk/issues/2216) [#2202](https://github.com/Agoric/agoric-sdk/issues/2202)
|
|
633
|
-
* **xs-vat-worker:** bootstrap SES shim on xsnap ([e775a99](https://github.com/Agoric/agoric-sdk/commit/e775a99afae43a8581cdeedd22545c7fa703c691))
|
|
634
|
-
* **xsnap:** Add interactive mode ([42912a7](https://github.com/Agoric/agoric-sdk/commit/42912a7c1d70cb67248f54f43b600165dbe7f624))
|
|
635
|
-
* **xsnap:** Add machinery for an xsrepl binary ([#2187](https://github.com/Agoric/agoric-sdk/issues/2187)) ([fc560d5](https://github.com/Agoric/agoric-sdk/commit/fc560d5ef9f77d85becd3c27edd820695900491f))
|
|
636
|
-
* **xsnap:** Add Node.js shell ([4491145](https://github.com/Agoric/agoric-sdk/commit/4491145cac1ab1d1a15b5b4b61a1c5a0cb975736))
|
|
637
|
-
* **xsnap:** Initial checkin from 34dfa4a ([f083df0](https://github.com/Agoric/agoric-sdk/commit/f083df0b791450eb28c2e43a69e3436f4b38d722))
|
|
638
|
-
* **xsnap:** Pivot terms from syscalls to commands ([3576b5c](https://github.com/Agoric/agoric-sdk/commit/3576b5cbd25c2dcbf0e94d5865c8b39e2cf2a1c7))
|