Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

xs-build-lite: trigger action in dckc/agoric-sdk (WIP) #1

Closed
wants to merge 148 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
148 commits
Select commit Hold shift + click to select a range
19a26ce
ag-solo-xs workflow (WIP)
dckc Dec 26, 2019
edb6dc8
ag-solo-xs: test eventual-send
dckc Dec 26, 2019
17e246b
ag-solo-xs: bump moddable release to get exit handling
dckc Dec 27, 2019
5d414ce
ag-solo-xs: move moddable build to its repo
dckc Dec 27, 2019
bd037f1
ag-solo-xs: build the 2 working packages
dckc Dec 27, 2019
b875ea8
ag-solo: stub imports
dckc Dec 26, 2019
61dde2c
SwingSet: add a couple re-exports to avoid awkward import
dckc Dec 26, 2019
12b7e4d
ses for xs (copy)
dckc Dec 26, 2019
44725ac
toward manifest for ag-solo on xs (WIP)
dckc Dec 26, 2019
9483889
kernel bundle symlink for xs build
dckc Dec 26, 2019
c68b482
ag-solo-xs: don't depend on tape-xs for console, harden
dckc Dec 27, 2019
76dabe9
bin/ag-solo-xs: report exceptions from solo()
dckc Dec 27, 2019
0de9349
ag-solo-todo: provide required exports
dckc Dec 27, 2019
508bf51
xs-nodejs: add console to globalThis
dckc Dec 27, 2019
dd096cb
xs pathlib: reify file access as objects (copy)
dckc Dec 27, 2019
ed4caf1
ag-solo start: use fs.promises instead of util.promisify
dckc Dec 27, 2019
4eb1b7e
xs-nodejs: parts of fs, path based on pathlib, process
dckc Dec 27, 2019
a32107f
n-readlines for xs-npm: stub exports
dckc Dec 27, 2019
c29e1ef
minimist (copy) 4cf45a26
Aug 29, 2015
98901d9
xs-npm/minimist: CommonJS -> ESM for xs import
dckc Dec 27, 2019
219e677
makefile for ag-solo-xs work
dckc Dec 27, 2019
4628454
pathlib: avoid 'read past end of file'
dckc Dec 28, 2019
98d0e01
ag-solo-xs: emulate more nodejs file stuff
dckc Dec 28, 2019
ee21383
ag-solo-xs: more nodejs API: process, timer
dckc Dec 28, 2019
af6db3d
ag-solo-xs: emulate require() using Compartment
dckc Dec 28, 2019
1930551
default-evaluate-options stub
dckc Dec 28, 2019
1fe3142
ag-solo-xs: web stub
dckc Dec 28, 2019
5a5dde8
ag-solo-xs: tidy console stuff
dckc Dec 28, 2019
80a5268
emulate bundles/kernel using xs Resource API
dckc Dec 28, 2019
77cb26e
build-bundle like build-kernel but for devices, etc. (copy)
dckc Dec 29, 2019
abbd88c
bundle-source work-alike ok for scenario3
dckc Dec 29, 2019
d9ebc95
build-bundle: lint
dckc Dec 29, 2019
c460b84
ag-solo-xs.mk: debug build depends on bundling too
dckc Dec 29, 2019
72fdb02
xs-nodejs: much more of fs, path, temp
dckc Dec 29, 2019
ce68660
ag-solo-xs: never mind stubbing the outbound module
dckc Dec 29, 2019
e122893
ag-solo/main: never mind basedir kludge
dckc Dec 30, 2019
5b3b7f2
ag-solo-xs.mk: include --role=three_client
dckc Dec 30, 2019
2125dcf
grumble... bundle-source got ignored
dckc Dec 30, 2019
6f2bb7d
factor out xs-agoric substitutes
dckc Dec 30, 2019
3707fff
refactor xs-nodejs into globals, api
dckc Dec 30, 2019
64716b1
ag-solo/web: require -> import
dckc Dec 30, 2019
6c72485
ag-solo/web: express work-alikes for xs
dckc Dec 30, 2019
cf46fb5
xs-node-global: add URL stub for .protocol, .hostname
dckc Jan 1, 2020
0b9028e
websocket shim between moddable sdk and npm ws (WIP)
dckc Jan 1, 2020
d9e88b4
tone down debug logging in fs, ses, bundle-source
dckc Jan 2, 2020
0ebba2f
ws, http on xs working much better
dckc Jan 2, 2020
e0f0ea5
xs-node: integrate chdir with realpathSync
dckc Jan 2, 2020
80209e5
ag-solo-xs: clean up debug logging
dckc Jan 2, 2020
f981aee
ag-solo-xs: lint
dckc Jan 2, 2020
dbd9ca0
ag-solo-xs: start should run forever
dckc Jan 2, 2020
de9291c
build ag-solo-xs binary
dckc Jan 2, 2020
7e1ef7e
update to moddable SDK v0.1.12-ag for websockets upgrade
dckc Jan 2, 2020
7b832b8
bin/ag-solo-xs: add dependency on bundles
dckc Jan 2, 2020
938df1a
ag-solo-xs.mk: typo
dckc Jan 3, 2020
1f80bd2
ws stub: provide this to xs socket.write
dckc Jan 3, 2020
a1979d1
ws stub: manage readyState
dckc Jan 3, 2020
2899b62
http stub: support async replies
dckc Jan 3, 2020
1d6b4e5
reorg xs-agoric as xs-npm/@agoric
dckc Jan 7, 2020
afdd3b7
introduce moddable-sdk as package name for xs modules
dckc Jan 7, 2020
8ddcfbc
xs-npm/n-readlines: fix pathlib import
dckc Jan 7, 2020
1b88f2c
avoid importing @agoric/harden from preloaded node globals
dckc Jan 7, 2020
e39721a
test-comms: don't rely in index.js
dckc Jan 7, 2020
2131b5f
xs-npm: moddable-sdk
dckc Jan 7, 2020
c754443
xs-node-api: fix temp -> pathlib
dckc Jan 7, 2020
b8394c2
xs-npm: stubs for semver etc.
dckc Jan 8, 2020
abcbff8
xs-npm: misc import / export tweaks
dckc Jan 8, 2020
2b7e231
ag-solo-xs: use Compartment to organize modules
dckc Jan 8, 2020
f11f6e9
ag-solo-xs: make xs-compartments.json module links
dckc Jan 8, 2020
0237f6b
ag-solo xs manifest: move to dir with matching name
dckc Jan 10, 2020
2c29f0c
kernel-resource: get Resource from moddable-sdk
dckc Jan 10, 2020
cf5ab68
ag-solo-xs: oops; prune debugger
dckc Jan 10, 2020
1a9ac13
ag-solo-xs: provide setInterval, URL globals to compartment
dckc Jan 10, 2020
4437046
generate xs-compartments.json for ag-solo/main
dckc Jan 10, 2020
4260f0f
set ag-solo WORKSPACE from github action
dckc Jan 10, 2020
7edd434
ag-solo/xs-compartments: allow bundles/kernel override
dckc Jan 10, 2020
9a85f09
xs test runner (for 3 packages)
dckc Jan 11, 2020
486b25e
xs build: test captp too
dckc Jan 11, 2020
1c83b8d
test-xs: oops! don't hard-code TAPE
dckc Jan 11, 2020
674bcb9
move evaluateExpr etc. from ses to xs-npm/@agoric/evaluate
dckc Jan 16, 2020
ee674be
ag-solo/xs-compartments: resolve package symlinks
dckc Jan 16, 2020
93cac62
xs-node-api/fs: provid write(), close()
dckc Jan 16, 2020
e087bd1
ag-solo/start: fs.promises doesn't have write, close
dckc Jan 16, 2020
3e44ad9
ag-solo-xs: catch errors in creating Compartment
dckc Jan 16, 2020
43ce43e
ws for xs: handle readyState, errors more thoroughly
dckc Jan 16, 2020
e0ff7a9
run SwingSet/test/test*.js on xs
dckc Jan 17, 2020
3161635
controller: ignore ., .. silently
dckc Jan 18, 2020
b7c722a
ag-solo-xs.mk: flesh out SOURCES; fix clean compartments
dckc Jan 18, 2020
5e5054a
ag-solo-xs: only rebuild xs-compartments if manifest changes
dckc Jan 18, 2020
7d72b68
xs-npm/@agoric/evaluate: export default
dckc Jan 18, 2020
a27c9e3
SwingSet/test/test-controller: 50/50
dckc Jan 18, 2020
b844a15
SwingSet/test: xs-compartments for test-controller
dckc Jan 18, 2020
fd696ab
bundle-source: dynamic (cont)
dckc Jan 18, 2020
d21fc81
ag-solo-xs: stub require()
dckc Jan 18, 2020
5b1194d
semver.satisfies stub
dckc Jan 18, 2020
338b6a1
ses require: return the default export
dckc Jan 18, 2020
66db17c
add loopbox to genesis devices
dckc Jan 18, 2020
4f939a4
test-kernel, test-marshal: revert to script (SQUASHME?)
dckc Jan 18, 2020
e64c170
xs bundle-source: refine logging
dckc Jan 18, 2020
539f0a3
xs require: genesis vats, harden, nat, evaluate
dckc Jan 18, 2020
30738ba
SwingSet/test: flesh out xs-compartments
dckc Jan 18, 2020
d29bd75
SwingSet/test: 590/590 pass; skip just a few test scripts
dckc Jan 18, 2020
24efba4
never mind sdk-level xs testing
dckc Jan 18, 2020
799d82a
ag-solo-xs ci: run (most) SwingSet tests
dckc Jan 18, 2020
f0567f2
SwingSet/test: add missing tape symlink dependency
dckc Jan 18, 2020
225bf10
un-hard-code TAPE in test-xs.mk
dckc Jan 18, 2020
3b4a5ac
fix stray dependency on loopbox
dckc Jan 18, 2020
0f8561d
@agoric/evaluate on xs: default and named require() exports
dckc Jan 18, 2020
4fe5019
explicit access to filesystem, network, subprocesses (#4)
dckc Dec 27, 2019
7b38eae
change zoe guide link to agoric.com docs (#372)
hxrts Dec 28, 2019
d0cf7f8
[ERTP] Remove duplicate content from README
katelynsills Dec 28, 2019
83c76ec
fix(ansible): double the stakes
michaelfig Dec 30, 2019
f97994c
fix(docker): cache Go depedency downloads to optimise docker builds
michaelfig Jan 6, 2020
03e1f2b
chore(cosmos-sdk): upgrade to v0.37.4 (#358)
michaelfig Jan 6, 2020
d30aa2a
Validator improvements (#382)
michaelfig Jan 6, 2020
25a8000
fix(pserver): use with-blocks when possible (#384)
michaelfig Jan 7, 2020
86cdd33
xs import tweaks (#377)
dckc Jan 8, 2020
7f7cb8d
Remove extraneous and misleading insist
DavidBruant Dec 4, 2019
a2a2b33
Rename insistOptDescription to insistDescription
DavidBruant Jan 10, 2020
331012e
run workflows on: [push, pull_request] (#402)
katelynsills Jan 10, 2020
d5b7f69
update to `on: [pull_request]` (#404)
katelynsills Jan 11, 2020
118e6ec
Add and fix some kdebug statements
Chris-Hibbert Jan 9, 2020
f95fb11
whitespace cleanups
Chris-Hibbert Jan 13, 2020
db56d5a
BUGFIX: deliverOneMessage() accidentally skipped insist() msgs.
Chris-Hibbert Jan 10, 2020
43ba1c2
Extract functions in kernel that will be re-used by dynamic vat creat…
Chris-Hibbert Jan 10, 2020
3df139b
extract provideUnusedVatID(), which will be used in dynamic vat creat…
Chris-Hibbert Jan 10, 2020
94b49b7
feat(fluentd): support Loki log store
michaelfig Jan 16, 2020
c99a602
chore(cosmos-sdk): upgrade to v0.37.5
michaelfig Jan 16, 2020
39508d5
chore(deployment): bump version
michaelfig Jan 16, 2020
d5cbade
fix(fluentd): update cache before running apt
michaelfig Jan 16, 2020
af50a26
fix(fluentd): update Loki store format
michaelfig Jan 16, 2020
c7f19c6
fix(fluentd): tweak the Loki records
michaelfig Jan 16, 2020
c43c642
fix(cosmic-swingset): reduce unnecessary logs (#425)
michaelfig Jan 16, 2020
a57ace0
feat(cosmic-swingset): use a fake chain for scenario3 (#322)
michaelfig Jan 17, 2020
ba20df4
timerWrapper on xs: update ag-solo/manifest, build-bundle
dckc Jan 18, 2020
dbad577
kernel-resource: revert .js in kernel Resource name
dckc Jan 18, 2020
d3aa4b4
xs makefiles: refine bundle dependencies
dckc Jan 18, 2020
c832e3d
ag-solo/xs-compartments: update for fake-chain etc.
dckc Jan 18, 2020
11dd443
provide setTimeout, readFile, writeFile as used in fake-chain
dckc Jan 18, 2020
c58db3e
escrow: expand function source code at design-time
dckc Jan 19, 2020
5c302ea
ag-solo/manifest: increase parser.buffer for ERTP escrow fn source
dckc Jan 19, 2020
01dcca6
pathlib: prune bundleSource
dckc Jan 19, 2020
319ec92
ag-solo-xs: role=two_client
dckc Jan 19, 2020
73593a2
sort directory entries when looking for vats
dckc Dec 21, 2019
5df242c
xs-main: lint fix (untabify)
dckc Jan 19, 2020
a4670f1
Merge branch 'master' into xs-build-lite
dckc Jan 20, 2020
d524fcf
never mind ag-solo-todo (SQUASHME?)
dckc Jan 20, 2020
c3b7fc3
never mind bundles/kernel.js symlink (SQUASHME?)
dckc Jan 20, 2020
9bbbe4d
xs manifest: timer modules
dckc Jan 28, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 20 additions & 16 deletions .github/workflows/ag-solo-xs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,33 +18,37 @@ jobs:
run: yarn install
- name: yarn build
run: yarn build
- name: install moddable linux CLI SDK ag08
- name: install moddable linux CLI SDK v0.1.15-ag
run: |
cd $HOME
curl -L https://github.com/dckc/moddable/releases/download/ag08/moddable-linux-sdk.tgz | tar xzf -
- name: install tape-xs
curl -L https://github.com/dckc/moddable/releases/download/v0.1.15-ag/moddable-linux-sdk.tgz | tar xzf -
- name: install tape-xs v0.1.3
# ISSUE: merge into agoric-sdk?
run: |
cd $HOME
curl -L https://github.com/dckc/tape-xs/archive/ag01.tar.gz | tar xzf -
mv tape-xs-ag01 tape-xs
curl -L https://github.com/dckc/tape-xs/archive/v0.1.3.tar.gz | tar xzf -
mv tape-xs-0.1.3 tape-xs
cd tape-xs
yarn install
- name: test eventual-send on xs
- name: run (most) SwingSet tests
run: |
export MODDABLE=$HOME/moddable
export WORKSPACE=$GITHUB_WORKSPACE
export PATH=$MODDABLE/build/bin/lin/release:$PATH
export TAPE=$HOME/tape-xs
cd packages/eventual-send
node -r esm $TAPE/bin/tape-xs-build.js $PWD test/test*.js
mcconfig -m -p x-cli-lin test-xs-manifest.json
$MODDABLE/build/bin/lin/release/eventual-send
- name: test marshal on xs
cd packages/SwingSet/test
make -f test-xs.mk
- name: build ag-solo for xs
run: |
export MODDABLE=$HOME/moddable
export PATH=$MODDABLE/build/bin/lin/release:$PATH
export TAPE=$HOME/tape-xs
cd packages/marshal
node -r esm $TAPE/bin/tape-xs-build.js $PWD test/test*.js
mcconfig -m -p x-cli-lin test-xs-manifest.json
$MODDABLE/build/bin/lin/release/marshal
export WORKSPACE=$GITHUB_WORKSPACE
cd packages/cosmic-swingset
make -f ag-solo-xs.mk MODDABLE=$MODDABLE
- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: packages/cosmic-swingset/bin/ag-solo-xs
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
17 changes: 14 additions & 3 deletions packages/ERTP/core/escrow.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,10 +124,21 @@ const escrowExchange = harden({
},
});

// generated using func2lit.js
const escrowExchangeSrcs = harden({
start: `${escrowExchange.start}`,
checkUnits: `${escrowExchange.checkUnits}`,
checkPartialUnits: `${escrowExchange.checkPartialUnits}`,
start:
"(terms, inviteMaker) => {\n const { left: moneyNeeded, right: stockNeeded } = terms;\n\n function makeTransfer(units, srcPaymentP) {\n const { assay } = units.label;\n const escrowP = E(assay).claimExactly(units, srcPaymentP, 'escrow');\n const winnings = makePromise();\n const refund = makePromise();\n return harden({\n phase1() {\n return escrowP;\n },\n phase2() {\n winnings.res(escrowP);\n refund.res(null);\n },\n abort(reason) {\n winnings.reject(reason);\n refund.res(escrowP);\n },\n getWinnings() {\n return winnings.p;\n },\n getRefund() {\n return refund.p;\n },\n });\n }\n\n // Promise wiring\n\n const moneyPayment = makePromise();\n const moneyTransfer = makeTransfer(moneyNeeded, moneyPayment.p);\n\n const stockPayment = makePromise();\n const stockTransfer = makeTransfer(stockNeeded, stockPayment.p);\n\n // TODO Use cancellation tokens instead.\n const aliceCancel = makePromise();\n const bobCancel = makePromise();\n\n // Set it all in motion optimistically.\n\n const decisionP = Promise.race([\n Promise.all([moneyTransfer.phase1(), stockTransfer.phase1()]),\n aliceCancel.p,\n bobCancel.p,\n ]);\n decisionP.then(\n _ => {\n moneyTransfer.phase2();\n stockTransfer.phase2();\n },\n reason => {\n moneyTransfer.abort(reason);\n stockTransfer.abort(reason);\n },\n );\n\n // Seats\n\n const aliceSeat = harden({\n offer: moneyPayment.res,\n cancel: aliceCancel.reject,\n getWinnings: stockTransfer.getWinnings,\n getRefund: moneyTransfer.getRefund,\n });\n\n const bobSeat = harden({\n offer: stockPayment.res,\n cancel: bobCancel.reject,\n getWinnings: moneyTransfer.getWinnings,\n getRefund: stockTransfer.getRefund,\n });\n\n return harden({\n left: inviteMaker.make('left', aliceSeat),\n right: inviteMaker.make('right', bobSeat),\n });\n }",
checkUnits:
"(installation, allegedInviteUnits, expectedTerms, seat) => {\n mustBeSameStructure(allegedInviteUnits.extent.seatDesc, seat);\n const allegedTerms = allegedInviteUnits.extent.terms;\n mustBeSameStructure(allegedTerms, expectedTerms, 'Escrow checkUnits');\n mustBeSameStructure(\n allegedInviteUnits.extent.installation,\n installation,\n 'escrow checkUnits installation',\n );\n return true;\n }",
checkPartialUnits:
"(installation, allegedInvite, expectedTerms, seat) => {\n const allegedSeat = allegedInvite.extent.terms;\n mustBeSameStructure(\n allegedSeat[seat],\n expectedTerms,\n 'Escrow checkPartialUnits seat',\n );\n\n mustBeSameStructure(\n allegedInvite.extent.installation,\n installation,\n 'escrow checkPartialUnits installation',\n );\n\n return seat === 'left' ? allegedSeat.right : allegedSeat.left;\n }",
});

/* Check that the literal source is current */
for (const name of Object.keys(escrowExchange)) {
if ((escrowExchangeSrcs[name] !== `${escrowExchange[name]}`, name)) {
console.warn('escrowExchange source out of sync:', name);
}
}

export { escrowExchangeSrcs };
14 changes: 14 additions & 0 deletions packages/ERTP/core/func2lit.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
async function main(argv, { stdout, requireDynamic }) {
const [sourceFileName, exportName] = argv.slice(2);
// TODO: usage
const ex = requireDynamic(sourceFileName);
await stdout.write(JSON.stringify(ex[exportName], null, 2));
}

if (typeof require === 'function' && typeof module === 'object') {
main(process.argv, {
stdout: process.stdout,
// eslint-disable-next-line
requireDynamic: require('esm')(module),
});
}
64 changes: 64 additions & 0 deletions packages/SwingSet/scripts/build-bundle.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
/* eslint-disable no-await-in-loop */
import bundleSource from '@agoric/bundle-source';

async function main(argv, pkg, { open, rollup, resolvePlugin, pathResolve }) {
async function bundle1(startFilename, dest) {
console.log(`bundle: ${startFilename} -> ${dest}`);
const { source, sourceMap } = await bundleSource(
startFilename,
'getExport',
{ rollup, resolvePlugin, pathResolve },
);
const actualSource = `export default ${source}\n${sourceMap}`;
const f = await open(dest, 'w', 0o644);
await f.write(actualSource);
await f.close();
}

if (argv.includes('--vats')) {
for (const src of argv.slice(3)) {
const dest = src.replace(/vat-([^.]+).js$/, 'vat_$1-src.js');
await bundle1(src, dest);
}
} else if (argv.length < 4) {
for (const dev of ['mailbox', 'command', 'timer']) {
const [startFilename, dest] = [
`${pkg}/src/devices/${dev}-src.js`,
`${pkg}/src/bundles/${dev}-src.js`,
];
await bundle1(startFilename, dest);
}
for (const [vat, src] of [
['vattp', 'vat-tp'],
['comms', 'comms/index'],
['timerWrapper', 'vat-timerWrapper'],
]) {
const [startFilename, dest] = [
`${pkg}/src/vats/${src}.js`,
`${pkg}/src/bundles/vat_${vat}-src.js`,
];
await bundle1(startFilename, dest);
}
} else {
const [startFilename, dest] = argv.slice(2, 4);
await bundle1(startFilename, dest);
}
}

/** Access ambient authority only if invoked as script. */
/* eslint-disable global-require */
if (typeof require !== 'undefined' && typeof module !== 'undefined') {
main(process.argv, `${__dirname}/..`, {
open: require('fs').promises.open,
rollup: require('rollup').rollup,
pathResolve: require('path').resolve,
resolvePlugin: require('rollup-plugin-node-resolve'),
}).then(
_ => process.exit(0),
err => {
console.log('error creating bundle:');
console.log(err);
process.exit(1);
},
);
}
13 changes: 12 additions & 1 deletion packages/SwingSet/src/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,23 @@ import { insistCapData } from './capdata';
import { parseVatSlot } from './parseVatSlots';
import { buildStorageInMemory } from './hostStorage';

function byName(a, b) {
if (a.name < b.name) {
return -1;
}
if (a.name > b.name) {
return 1;
}
return 0;
}

export function loadBasedir(basedir) {
console.log(`= loading config from basedir ${basedir}`);
const vats = new Map(); // name -> { sourcepath, options }
const subs = fs.readdirSync(basedir, { withFileTypes: true });
subs.sort(byName);
subs.forEach(dirent => {
if (dirent.name.endsWith('~')) {
if (dirent.name.endsWith('~') || ['.', '..'].includes(dirent.name)) {
return;
}
if (
Expand Down
21 changes: 21 additions & 0 deletions packages/SwingSet/src/kernel-resource.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
import harden from '@agoric/harden';

// eslint-disable-next-line import/no-unresolved
import Resource from 'moddable-sdk/files/resource/Resource';

/**
* In the original node.js approach, the bundles/kernel module exports
* a function and controller coerces it to string to get its
* source.
*
* Here we load the kernel source from "ROM" as a Resource and
* convert from ESM syntax a la getExport from bundle-source.
*/
export default harden({
toString() {
const kernelROM = new Resource('agoric.kernel.js');
const kernelModText = String.fromArrayBuffer(kernelROM.slice(0));
const kernelExpr = kernelModText.slice('export default '.length);
return kernelExpr;
},
});
44 changes: 44 additions & 0 deletions packages/SwingSet/test/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"include": [
"$(MODDABLE)/examples/manifest_base.json",
"xs-compartments.json",
],
"creation": {
"keys": {
"available": 4096
},
"stack": 4096
},
"strip": [],
"preload": [
"xs-node-global/*",
"main",
"xs_npm/tape-promise/tape"
],
"modules": {
"main": "./xs-main",
"*": [
"$(MODULES)/base/timer/timer",
"$(MODULES)/base/timer/lin/*",
],
"moddable-sdk/_MAKEDIR": "$(MODULES)/_MAKEDIR",
"moddable-sdk/files/_MAKEDIR": "$(MODULES)/files/_MAKEDIR",
"moddable-sdk/files/file/*": [ "$(MODULES)/files/file/*", "$(MODULES)/files/file/lin/*" ],
"moddable-sdk/files/resource/*": [ "$(MODULES)/files/resource/*" ],

"workspace/packages/SwingSet/src/bundles/kernel": "../src/kernel-resource",

"xs-node-global/*": "$(WORKSPACE)/packages/cosmic-swingset/lib/xs-node-global/*"
},
"data": {
"agoric.kernel": "../src/bundles/kernel",
"@agoric.mailbox-src": "../src/bundles/mailbox-src",
"@agoric.command-src": "../src/bundles/command-src",
"@agoric.timer-src": "../src/bundles/timer-src",
"@agoric.loopbox-src": "../src/bundles/loopbox-src",
"@agoric.comms": "../src/bundles/vat_comms-src",
"@agoric.vattp": "../src/bundles/vat_vattp-src",
"@agoric.vat-timerWrapper": "../src/bundles/vat_timerWrapper-src",
"xs-compartments": "./xs-compartments"
}
}
2 changes: 1 addition & 1 deletion packages/SwingSet/test/test-comms.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import harden from '@agoric/harden';
import { test } from 'tape-promise/tape';
import buildCommsDispatch from '../src/vats/comms';
import buildCommsDispatch from '../src/vats/comms/index';
import { flipRemoteSlot } from '../src/vats/comms/parseRemoteSlot';
import { makeState } from '../src/vats/comms/state';
import { addRemote } from '../src/vats/comms/remote';
Expand Down
2 changes: 1 addition & 1 deletion packages/SwingSet/test/test-evaluate.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { test } from 'tape';
import { test } from 'tape-promise/tape';
import evaluate from '@agoric/evaluate';

test('basic', t => {
Expand Down
Loading