Skip to content

Latest commit

 

History

History
3137 lines (2270 loc) · 316 KB

CHANGELOG.md

File metadata and controls

3137 lines (2270 loc) · 316 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

Unreleased

  • Cosmos-SDK updates
    • Consensus library to cometbft/cometbft v0.34.27
    • Cosmos library to cosmos/cosmos-sdk v0.45.16
    • IBC module to cosmos/ibc-go v4.5.1

Mainnet1B (agoric-upgrade-10)

  • Vaults
    • Contract to mint IST from locked collateral
    • Contract for auctions liquidating vaults with insufficient collateral
    • A client for bidding in liquidation auctions
    • Econ committee levers for adjusting vaults parameters
  • Oracle network
    • External oracles push a stream of asset prices
    • The Vaults contract observe the prices and might trigger liquidation
  • Contracts are now upgradeable
    • Virtualization and durability reduce the memory footprint
  • “Bulldozer” upgrade
    • Rebuilds Swingset state from scratch
    • Future upgrades will preserve stored Swingset state
  • State sync
    • Cosmos state sync now works for Swingset state
    • Much faster synchronization for new or recovering validator nodes
  • Bundles
    • higher fee for bytes in permanent storage
    • compressed in transit to surpass 1MB transaction size limit
  • Significant scalability and performance improvements throughout
  • Critical messages are prioritized in the Swingset inbound queue
  • liveslots, xsnap-lockdown, xsnap-supervisor moved to separate packages
    • old vats keep using old versions despite those packages being upgraded
    • new/upgraded vats automatically use latest liveslots/lockdown/supervisor code
  • swing-store consolidated into a single SQLite DB
    • XS/xsnap heap snapshots included in DB and in consensus
    • bundles and transcript items moved from kvStore to separate SQL table
    • prepare for compressing/deleting old transcript spans, old snapshots
  • swing-store import/export to support state-sync
    • a swing-store can be exported to a hashed tree, and imported from the same
    • this supports cosmos-sdk state-sync snapshots
  • overhaul transcript handling
    • add incarnation number to transcript store records
    • include init-worker, load/save-snapshot in transcripts
  • switch to smallcaps encoding for all serialized data: smaller, faster
  • vat userspace -visible changes:
    • buildRootObject() must return an ephemeral, not a durable
    • remotables are accepted in virtual-collection keyShape/valueShape
    • also in virtual-object stateShape, and they are now refcounted correctly
    • Kind upgrades can add new facets (but only to already-multi-faceted Kinds)
  • vat liveslots-layer changes:
    • vatstore.getNext() replaces .getAfter()
    • rewrite VOM LRU cache, remove virtualObjectCacheSize
    • changes vatstore access patterns to remove syscall sensitivity to GC timing
    • vref format now includes virtual/durable annotation, helps kernel do cleanup
  • vat upgrade no longer relies on stopVat, but does a final BOYD to clean up
  • XS workers are reloaded during save-snapshot, to re-optimize memory layout
    • this "spring cleaning" should let the worker run faster
  • vat-timer now emits branded timestamps, API overhauled
    • only uses one device wakeup, to avoid memory leaks in device-timer
  • kernel only preloads maxVatsOnline/2 vats, let sleeping vats lie
  • removed Meter-underflow Notifiers until we can make them durable
  • remove unused worker types: node-worker and subprocess-node
  • all swingset built-in vats (at least the ones we use) are upgradable
  • defaultManagerType xsnap is preferred to xs-worker
  • tell runPolicy about computrons in BOYD and failed deliveries
  • A bin/agd script transparently builds the system for use with Cosmovisor
  • Golang version 1.20 required
  • The smart wallet provisioning account will be converted to a module account
  • Cosmos-SDK updates
    • Still based on cosmos/cosmos-sdk v0.45.11
    • Cosmovisor enhancements to handle Github zip archives
    • Various changes to support state sync
    • Barberry security patch
  • Tendermint and IBC unchanged from pismoC release

Pismo-C (agoric-upgrade-9)

  • SwingSet: improve transcript replay tools
  • XS/xsnap: improve the snapshot reload determinism that was previously mitigated in agoric-upgrade-8-1
  • cosmic-swingset: support for single-block "agd rollback", optimize smart-wallet message processing
  • golang/cosmos:
    • ibc-go: upgrade to v3.4.0
      • incorporates fix for predictable interchain account addresses
    • cosmos-sdk: upgrade to v0.45.11
    • tendermint: upgrade to v0.34.23
    • Pick up gossip fix from informalsystems fork of tendermint

Pismo-B (agoric-upgrade-8-1)

  • To be documented

Pismo-A (agoric-upgrade-8)

  • To be documented

Earlier ag0 releases (agoric-upgrade-7 and earlier)

13.0.0 (2022-02-21)

⚠ BREAKING CHANGES

  • pegasus: make more robust and remove public state
  • SwingSet: fill out addresses in attempt.accept
  • vats: use pegasus port for Pegasus implementation
  • agoric-cli: use transfer port for ibc-go.transfer
  • agoric-cli: start Docker for --docker-tag, not --sdk

Features

  • agoric: allow non-SDK agoric-cli to install packages in dapps (5ca243c)
  • agoric: honour agoric start local-solo --no-restart (53fd973)
  • agoric: implement agoric run script -- script-args... (fd3938e)
  • cosmic-swingset: honour CHAIN_BOOTSTRAP_VAT_CONFIG (cf93481)
  • cosmic-swingset: use bootMsg.params.bootstrap_vat_config (28d3efd)
  • cosmos: set swingset.params.bootstrap_vat_config at genesis (63e6e67)
  • deployment: include short loadgen test in CI (bae4ce8)
  • eventual-send: harden eventual-send arguments, like SwingSet (dd0f48b)
  • ibc: reimplement relativeTimeoutNs, per ibc-go (4673493)
  • pegasus: implement correct result and denom trace handling (aacf1c3)
  • pegasus: make more robust and remove public state (a5413f7)
  • pegasus: properly abort on connection close (1b17f7a)
  • pegasus: rejectStuckTransfers, getRemoteDenomSubscription (54bf0bc)
  • run-protocol: interest charging O(1) for all vaults in a manager (#4527) (58103ac)
  • run-protocol: variable rate vault/loan (54d509e)
  • solo: create ag-solo-mnemonic in preparation for CosmJS (1091a9b)
  • solo: run sim-chain in a separate process (a9bc83d)
  • solo: skip agoric deploy ... if 0 wallet deploys (d68b472)
  • swing-store: enable LMDB_MAP_SIZE and SOLO_LMDB_MAP_SIZE (77f67a8)
  • swingset: devices.bundle, install-bundle, bundlecaps, createVat(bundlecap) (1c39ebd), closes #4372 #3269 #4373
  • support element deletion during iteration over a store (8bb9770), closes #4503
  • swingset: support raw devices (e74cf17), closes #1346 #1346
  • SwingSet: allow slogSender to process all slog messages (ca4b5bc)
  • SwingSet: fill out addresses in attempt.accept (bc69f80)
  • telemetry: frcat script to extract flight-recorder.bin (7ee4091)
  • telemetry: add @agoric/telemetry/src/flight-recorder.js (b02b0c8)
  • telemetry: use makeSlogSenderFromModule (2892da9)
  • example txn (2cc8a45)
  • agoric: automatically build for agoric cosmos ... (0e0e193)
  • cosmos: charge SwingSet fees at the Cosmos level (5da6fec)
  • telemetry: introduce for opentelemetry.io integration (4e382dc)
  • vats: add attestationMaker to home (WIP) (ad5501b)
  • vats: agoricNames, namesByAddress, myAddressNameAdmin (4535c8d)
  • vats: assign client properties on a per-address basis (48194ed)
  • vats: boostrap-core connects vattp<->mailbox (WIP) (2be2939)
  • vats: build Zoe as bootstrap step (bb8d0a8)
  • vats: choose bootstrap behaviors by name (13627b2)
  • vats: connectFaucet bootstrap behavior (9e53f4f)
  • vats: Cosmos chain core bootstrap with ag-solo client (a4ab506)
  • vats: demo-config to install economy automatically (a948b16)
  • vats: in sim-chain, delegate economy bootstrap to REPL user (116ccbd)
  • vats: installSimEgress (a438f47)
  • vats: makeBLDKit (4dac138)
  • vats: makeBoard in core bootstrap (af1b920)
  • vats: produce priceAuthorityAdmin from startVaultFactory (29f6324)
  • vats: provide home.zoe via makePromiseSpace (a50c727)
  • vats: provide noop agoric.faucet in local-chain (5c990a3)
  • vats: put RUN, BLD issuer, brand in agoricNames (3c9eef2)
  • vats: start attestation contract (WIP) (1c44623)
  • vats: visualize bootstrap (WIP) (2489f1d)
  • wallet: keplr connection (259345e)
  • implement persistent stores (e1050b0)
  • vats: start getRUN protocol (2c97f86)
  • vats: start VaultFactory in core bootstrap (8d56eaf)
  • wallet-ui: use new WalletBackendAdapter (4c03015)
  • add --wide option to kerneldump utility (749c801)
  • web-components: add petimage component (697fc38)
  • web-components: Add Powerbox-compatible petname component (4afa736)

Bug Fixes

  • Patch promise-kit (84823ee)
  • agoric-cli: use transfer port for ibc-go.transfer (dd727ef)
  • amm: Prevent creation of constant product AMM with non-fungible central token (#4476) (4f2d036)
  • cosmic-swingset: enforce consensusMode, not by sniffing $DEBUG (960aa17)
  • cosmic-swingset: straighten out shutdown signals and exit code (118fc21)
  • cosmos: remove unnecessary IBC complexity (08f9a44)
  • deployment: capture flight-recorder.bin (451a817)
  • deployment: use docker API instead of CLI (0c049b4)
  • import-bundle: Handle harden bundles in tests (4bcbcb5)
  • meter: use process.env not process.environment (c703d07)
  • notifier: make the Updater a Far object (20707a1)
  • pegasus: more POLA and less global state (e7ea320)
  • pegasus: more robust ics20 JSON parsing (208109f)
  • pegasus: only reject transfers waiting for pegRemote (f1801f6)
  • pegasus: use bigints for nonces (9065d6e)
  • pegasus: use dummy ICS20-1 transfer sender (c4056bc)
  • slogSender: serialise the JSON to ensure SLOGFILE is pristine (854a59a)
  • solo: kill off sim-chain child with SIGTERM (e85dccd)
  • solo: minor pipe reordering and refactoring (8fafe57)
  • store: use explicit import('@endo/marshal') JSDoc (4795147)
  • swingset: don't kernel panic upon device error (eb56677), closes #4326
  • swingset: use consistent lowercase `bundlecap' in API/docs (872f956), closes #4372
  • SwingSet: Carry ambient ses-ava types (2fda391)
  • vats: fix lint problems (ce94710)
  • vats: get configuration.clientHome updates to agoric (c50248e)
  • wallet: fix offer id reference (#4393) (8c9dae7)
  • xsnap: Lint followup (4ef61f7)
  • rejectStuckTransfers sends a TransferProtocol-level error (8374f94)
  • dropping the max on the property-based tests led to problems (#4600) (3ddd160)
  • fake VOM bitrot (c9faf9c), closes #4591
  • Remove extraneous eslint globals (17087e4)
  • ui: limit decimals displayed for nats (fa73887)
  • wallet: dont crash when purses arent loaded before payments (2965063)
  • Enhance TypeScript node_modules search depth (113d31b)
  • Enhance TypeScript node_modules traversal depth (000f738)
  • fullOrder leak. Semi-fungibles via CopyBags (#4305) (79c4276)
  • keys but no patterns yet (b1fe93b)
  • sort preserving order for composite keys (#4468) (ba1b2ef)
  • Update dapp workflows to handle deps version discrepancies (#4433) (cc79ff6)
  • when trades for zero are requested don't throw (4516e5b)
  • telemetry: make flight recorder big-endian on all platforms (bfe877e)
  • vats: improved IBC network protocol (0cd94c3)
  • vats: use pegasus port for Pegasus implementation (4256c54)
  • zoe: teach fakeVatAdmin to createVatByName(zcf) (6f88e2b), closes #4372 #4487
  • quick "fix" of a red squiggle problem (#4447) (ee39651)
  • remove pureCopy deleted from endo 1061 (#4458) (50e8523)
  • agoric: don't write command to stdout (it breaks pipelines) (fa77c71)
  • agoric-cli: detect agoric start early exit (b4f89ed)
  • agoric-cli: find agoric start packages in to directory (1818093)
  • agoric-cli: implement start --rebuild and use it (72f5452)
  • agoric-cli: start Docker for --docker-tag, not --sdk (1abde9b)
  • agoric-cli: update package.json to publish correctly (e670f1a)
  • agoric-cli: use https://github.com instead of git://... (44e90b0)
  • anylogger: coherent DEBUG levels, $DEBUG always says more (5e482fe)
  • bundle-source: Relax line number test for better prefixes (78a2575)
  • captp: Remove extra dependency on swingset-vat (4794d26)
  • cosmic-swingset: use @agoric/telemetry (e22742a)
  • import-bundle: Remove extra dependency on swingset-vat (a02ad78)
  • lockdown: Disable domain taming (cefdbec)
  • marshal: Compensate for SES type def defect (ff1e376)
  • run-protocol: update makeRatio import (20965f1)
  • sim-params: update parameters to charge higher SwingSet fees (341ddbb)
  • solo: explicitly use agoric/src/entrypoint.js for deployment (24f1f05)
  • solo: Reject with error, not number (e5f622f)
  • solo: remove a symlink dependency in exchange for web config (42fc52b)
  • SwingSet: don't do liveSlots logging in consensus mode (d563783)
  • SwingSet: Update snapshot hashes (d5f54c6)
  • vats: buildDistributor call; refactor bootstrap.js (d854298), closes #1
  • vats: ensure nameHub API returns arrays (fac4476)
  • vats: minor adjustments to legacy bootstrap (877f30a)
  • vats: move to decentral-core-config.json to prevent breakage (63c7541)
  • vats: unstaked BLD should not be a vault collateral type (1d24556)
  • wallet: fix indefinite loading state (c58f07d)
  • wallet: handle cancelled offer state (#4292) (9dd2dc4)
  • wallet: resolve home.wallet before exiting deploy.js (f09eb66)
  • wallet-ui: flatten schema into actions and iterators (21bdfd1)
  • web-components: add 100ms delay to deflake test (c5b8bb4)
  • web-components: attempt to de-flake test (174554c)
  • web-components: fix change in update warning (2ee65b6)
  • xsnap: Run tests with eventual-send JavaScript (fc6f0a5)
  • xsnap: use object-inspect to render print output better (3c3a353)
  • zoe: fix InstanceRecord type (9324cfe)
  • don't swallow errors that happen during delivery into a vat (e39ce77)
  • extract early changes from PR 4136 (#4190) (fea822e)
  • getPublicFacet accepts promise for instance (#4328) (f716199)
  • log warning instead of throwing (0b8e4fe)
  • make default-params.go match sim-params.js (550ba3a)
  • minor adjustments from purple day1 (#4271) (72cc8d6)
  • minor, from purple (#4304) (2984a74)
  • missing Far on some iterables (#4250) (fe997f2)
  • ordered set operations (#4196) (bda9206)
  • Patterns and Keys (#4210) (cc99f7e)
  • towards patterns and stores (c241e39)
  • update sort order so undefined comes last (2d5ab57)
  • use snackbar instead of window.alert (a233c12)
  • wallet: fix crash when deleting dapps (51f78ae)
  • wallet-backend: default new purses to autodeposit (9a06a92)
  • xsnap: Pin xsnap moddable submodule for textencoder (de8604c)

12.0.0 (2021-12-22)

⚠ BREAKING CHANGES

  • deployment: optional first block argument to crunch.mjs

Features

  • refactor parameter governance support to allow for Invitations (#4121) (159596b)
  • agoric-cli: install <TAG> forces redownload of (c41be9d)
  • cosmos: adapt Agoric changes to new gaiad (29535de)
  • cosmos: upgrade to gaia/releases/v6.0.0 (2fe7008)
  • deployment: optional first block argument to crunch.mjs (c03646d)
  • wallet: add help link to documentation (977262e)
  • add vatstoreGetAfter syscall to enable iterating vatstore keys (63c7d97)
  • support vatstore iteration over explicit key bounds (f220dd8)
  • dist-tag: add script and instructions to manipulate NPM tags (241c10a)

Bug Fixes

  • agoric-cli: make agoric --no-sdk install work as well (e852ee5)
  • cosmos: add upgradegaia.sh to apply Gaia source upgrades (b9669c5)
  • cosmos: also look for ag-chain-cosmos in the agd directory (f598d40)
  • cosmos: don't twiddle the genesis params, set them explicitly (c9c8d81)
  • cosmos: properly put x/capability in SetOrderBeginBlockers (823f4fe)
  • deployment: use Docker Cgroup Version to init volumes (3fa95e7)
  • liveSlots: reflect return value marshalling failures (fd17b22)
  • solo: take a dependency on esm to reenable plugins (16e9f9b)
  • treasury: use liquidationMargin for maxDebt calculation (#4163) (c749af8)
  • wallet: allow wallet app deep linking (96d372e)
  • wallet: properly get the first timerService value (636e099)
  • wallet: render issuer brand correctly (f648c19)
  • changes based on review comments (e723855)
  • tweaks based on review comments (f0e42b1)

11.0.0 (2021-12-02)

⚠ BREAKING CHANGES

  • repl: add @endo/far exports to REPL, remove ui-agent

Features

  • far: export ERef<T> (180149e)
  • far: new package @endo/far (8be558c)
  • repl: add @endo/far exports to REPL, remove ui-agent (3f41296)
  • tweak fictional BLD price to suggest early phase (472912e)

Bug Fixes

  • represent storage in same order in genesis state (f584cd1)

10.0.0 (2021-10-13)

⚠ BREAKING CHANGES

  • cosmos: compile agd binary to supercede ag-chain-cosmos
  • add a claimsRegistrar based on attestations (#3622)
  • xsnap: upgrade XS to fix memory leak
  • Switch default bundle type to endoZipBase64

Features

  • agoricd: add new Golang binary without any SwingSet (26c9994)
  • agoricd: have agoricd start delegate to ag-chain-cosmos (1740795)
  • cosmos: compile agd binary to supercede ag-chain-cosmos (6880646)
  • react-wallet: Create app layout with left nav and app bar (#3941) (18807af)
  • add a claimsRegistrar based on attestations (#3622) (3acf78d), closes #3189 #3473 #3932
  • react-wallet: Integrate wallet connection component (#3922) (01a9118)
  • ContractGovernor manages parameter updating for a contract (#3448) (59ebde2)
  • revise x/lien to hold total liened amount (842c9b0)
  • stateless lien module that upcalls to kernel (603c0cf)
  • wallet: Create react ui scaffold with ses (#3879) (089c876)
  • wallet-backend: add walletAdmin.getClockNotifier() (2902ec3)
  • wallet-backend: attach timestamp and sequence metadata (9e02962)
  • wallet-connection: Add getAdminBootstrap functionality to wallet connection (#3909) (4c56367)
  • wallet-connection: create new cross-framework UI (905bf6c)
  • wallet-connection: handle dapp approval states (32b7772)
  • Thread URL and Base64 endowments (b52269d)

Bug Fixes

  • "yarn lint" should not fix (#3943) (0aca432)
  • adapt timers to async iterables (#3949) (9739127)
  • address review comments (8af3e15)
  • bugfixes, comments (30dbeaa)
  • document copyRecord guarantees (#3955) (f4a0ba1)
  • lien accounts must proxy all account methods (db79c42)
  • eslint-config: adapt new JSDoc rules (91fd093)
  • governance: export buildParamManager from index.js (#3952) (868964e)
  • don't use manual key prefix (50a881b)
  • SwingSet: Adjust SES change detectors (3efb36e)
  • transform-meter: Accommodate SES module proxies in meter (9f7d456)
  • vats: Fork polycrc for ESM compat with Endo/Zip (6d9df0e)
  • wallet-backend: get tests passing (1b4a22b)
  • wallet-connection: add install-ses-lockdown.js (d03c138)
  • wallet-connection: more typing and package updates (623c5e4)
  • xsnap: upgrade XS to fix memory leak (9a70831), closes #3839 #3877 #3889
  • xsnap: work around stricter TS checking of globalThis (942ae90)
  • Increase default initial computrons for Zoe contracts for zip archive support (01c833e)

Code Refactoring

  • Switch default bundle type to endoZipBase64 (53cc1e5), closes #3859

9.1.0 (2021-09-23)

Features

  • deployment: use latest faucet-helper.sh from testnet (83f45f6)
  • solo: make client objects appear earlier, parallelise chain (656514e)
  • TimerService: add new delay method and protect device args (7a2c830)
  • wallet: Add dismiss option for dapp connections (#3836) (f193fa2)
  • wallet: Don't show autodeposit payments in requests, smooth out rendering animations (#3832) (b03c7a5)
  • wallet: Eagerly show pending state for approved offers (#3846) (20abcbe)
  • wallet: Fix icons and list rendering bugs (#3827) (02b7554)

Bug Fixes

  • deployment: wait for staking tokens before creating validator (59952d3)
  • sim-chain: update chainTimerService correctly (3f49a77)
  • solo: chain events come from both 'NewBlockHeader' and 'Tx' (3cefa07)
  • solo: don't enforce origin identity; we have access tokens (3015ecd)
  • solo: make localTimerService in ms, and update correctly (d6d4724)
  • swingset: DummySlogger needs to be more realistic (d8d146d)
  • swingset: have slogger record replay status for syscalls too (722f903)
  • swingset: make vat-warehouse responsible for slogging deliveries (e317589)
  • SwingSet: improve slogging during replay (d6e64da), closes #3428
  • timer: remove deprecated createRepeater (b45c66d)
  • xsnap: format objects nicely in console using SES assert.quote (#3856) (a3306d0), closes #3844
  • fix bug which breaks rights conservation and offer safety guarantees (#3858) (b67bfcb)
  • skip refill meter test (#3849) (90a456f)

9.0.0 (2021-09-15)

⚠ BREAKING CHANGES

  • issuers: clean up issuers for demo
  • improve error message when a purse is overdrawn (#3811)
  • xsnap: moddable resync for stack-trace changes metering
  • solo: watch for mailbox updates; not every Tendermint block
  • clean up organization of swing-store
  • add required rounding modes to ratio APIs

Features

  • cosmos: publish event when x/swingset storage is modified (8b63eb0)
  • issuers: clean up issuers for demo (228cf1a)
  • solo: add keys, init, and delete to home.scratch (1cecdcb)
  • swingset-vat: Thread dev dependencies explicitly (f55982f)
  • swingset-vat: Thread module format through loadBasedir, swingset config (b243889)
  • wallet: Add balances to dashboard view (c2c68e1)
  • wallet: add connection indicator to app bar (f6acd29)
  • wallet: Add requests feed to dashboard (#3824) (c02eb8e)
  • wallet: Add responsive nav menu (39e5a0a)
  • wallet: Add url param to hide ui changes (7fde345)
  • wallet: Drop old components into contacts, dapps, issuers, and purses views (#3825) (5a52315)
  • wallet: wire through the Zoe fee information (f52ea9a)
  • xsnap: Add base 64 bindings (a8279a4)
  • xsnap: integrate native TextEncoder / TextDecoder (9d65dbe)
  • add required rounding modes to ratio APIs (dc8d6dc)

Bug Fixes

  • cosmos: only entrain ABCI lock when persistent state changes (d73c1bb)
  • improve error message when a purse is overdrawn (#3811) (7b5841c)
  • agoric-cli: don't use Date.now() ambiently (a54a3ae)
  • chain-config: increase timeouts to prevent RPC EOF errors (d731195)
  • cosmos: ensure simulated transactions can't trigger SwingSet (997329a)
  • cosmos: the bootstrap block is not a simulation, either (f906a54)
  • deploy: use @endo/captp epochs to mitigate crosstalk (f2b5ba4)
  • deployment: properly handle the file: URL protocol (e852b2d)
  • solo: make solo-to-chain more robust (b266666)
  • solo: only subscribe to one copy of mailbox events (9d58314)
  • solo: preserve ports in the rpcAddr; --node needs them (7d83576)
  • solo: query WebSocket for mailbox instead of ag-cosmos-helper (9a23c34)
  • solo: watch for mailbox updates; not every Tendermint block (35e9c87)
  • swing-store: be resilient to Node.js 16.x fs.rmSync (990f909)
  • wallet: handle solo restarts while deploying wallet backend (a6c7bf8)
  • xsnap: moddable resync for stack-trace changes metering (34e5e18)
  • xsnap: supply missing file, line numbers based on sourceURL (be3386c), closes #2578
  • better type declarations caught some non-bigInts (1668094)
  • more missing Fars. kill "this" (#3746) (7bd027a)
  • update error messages in tests. (76d590d)
  • XS + SES snapshots are deterministic (test) (#3781) (95c5f01), closes #2776

Code Refactoring

  • clean up organization of swing-store (3c7e57b)

8.1.3 (2021-08-22)

Bug Fixes

  • solo: make solo-to-chain more robust (ea0ef15)

8.1.2 (2021-08-21)

Bug Fixes

  • cosmos: the bootstrap block is not a simulation, either (c4e4727)

8.1.1 (2021-08-21)

Note: Version bump only for package @agoric/sdk

8.1.0 (2021-08-18)

Features

  • solo: allow rpc servers to be specified as an URL (91650e0)

8.0.0 (2021-08-17)

⚠ BREAKING CHANGES

  • make the run mint within Zoe, and give only the treasury the ability to create a ZCFMint with it

  • chore: change 'makeZoe' to 'makeZoeKit'

  • chore: add "shutdownZoeVat" argument to Zoe, and pass it to makeIssuerKit for invitation issuerKit and fee issuerKit

  • chore: manually lint-fix install-on-chain.js

See Agoric/agoric-sdk#3672 for the issue to fix the root problem

Features

  • create feePurse in bootstrap and import to wallet (4e9d5b0)
  • agoric-cli: Support Node.js ESM deploy scripts (#3686) (e779500)
  • cosmic-swingset: provide RUN for sim-chain (6d27815), closes #3266
  • treasury: assert getBootstrapPayment amount (3ed8e69)
  • wallet: display the invitation fee, feePurse, and expiry (49ece05), closes #3650
  • wallet: reenable invitationDetails (6655857)
  • wallet: set up a Zoe fee purse and forward invitationDetails (42957ab), closes #3669

Bug Fixes

  • Remove dregs of node -r esm (#3710) (e30c934)

  • return funds from liquidation via a seat payout (#3656) (d1a142d)

  • threshold must be a bigint (102da87)

  • agoric-cli: upgrade empty minimum-gas-prices to 0urun (1b2f6ff)

  • ERTP: log the payment object when it fails liveness (ed7d5e1)

  • vats: properly wire in the Zoe kit (4b926e8)

  • wallet: never fail to suggestPetname (dd4fbc1)

  • zoe: relax createInvitationKit to take ERef (250266b)

  • Remove superfluous -S for env in shebangs (0b897ab)

  • BREAKING CHANGE: create the RUN Mint within Zoe (#3647) (48762aa), closes #3647

7.0.2 (2021-08-16)

Bug Fixes

  • remove more instances of .cjs files (0f61d9b)

7.0.1 (2021-08-15)

Bug Fixes

  • agoric-cli: use SDK binaries rather than relying on $PATH (01da194)
  • cosmic-swingset: fix more places that need -ojson (aa2da0e)
  • cosmos: deterministic storage modification and querying (799ebdb)
  • solo: use SDK-local binaries rather than relying on $PATH (ad96231)

7.0.0 (2021-08-14)

⚠ BREAKING CHANGES

  • xsnap: don't rely on diagnostic meters
  • deploy-script-support: Convert RESM to NESM (breaking)
  • swingset: Convert plugin API to NESM
  • swingset: Convert RESM to NESM
  • xsnap: avoid O(n^2) Array, Map, Set growth

Features

  • cosmic-swingset: add swingset 'activityhash' to state vector (5247326), closes #3442
  • cosmic-swingset: include activityhash for initial block too (a8d2412)
  • cosmic-swingset: use compute meter to decide where blocks end (#3651) (5f7317c), closes #3582
  • cosmos: generate GRPC REST gateway implementations (968b78e)
  • cosmos: upgrade to v0.43.0 and add vbank governance hooks (29137dd)
  • solo: accept $SOLO_SLOGFILE to write a slogfile (20f0c04)
  • swingset: add "run policy" object to controller.run() (420edda), closes #3460
  • swingset: hash kernel state changes into 'activityhash' (47ec86b), closes #3442
  • vbank: add governance and query methods (c80912e)
  • xsnap: make name available on xsnap object (8c4a16b)
  • xsnap: record upstream commands as well as replies (fc9332f)
  • Add private arguments to contract start functions, via E(zoe).startInstance (#3576) (f353e86)
  • allow users to pass offerArgs with their offer (#3578) (cb1eea1)
  • require that buildRootObject always returns a Far reference (0cda623)

Bug Fixes

  • agoric-cli: use 'yarn workspaces' instead of hard-coded list (e5157e6)
  • cosmic-swingset: port more scripts to ESM (fc062b8)
  • cosmos: don't force the output format to JSON (671b93d)
  • same-structure: Support NESM importers (123227e)
  • swingset: define 'meterControl' to disable metering (bdf8c08), closes #3458
  • swingset: delete unused snapshots (#3505) (317959d), closes #3374 #3431
  • swingset: Finish vat tool RESM to NESM conversion (b6e943b)
  • swingset: liveslots: disable metering of GC-sensitive calls (a11a477), closes #3458
  • swingset: move "kernelStats" into local/non-hashed DB space (df8359e), closes #3442
  • swingset: rename snapshot-related DB keys to be "local" (e79e43c), closes #3442
  • swingset: Support NESM importers (fac9b1a)
  • swingset: test-marshal.js: delete leftover+slow kernel creation (beb9f59)
  • swingset: use better async style, improve comment (64e4f2f)
  • vats: vat-ibc must use LegacyMap, not Store, to hold a Set (2479017), closes #3621
  • xsnap: don't rely on diagnostic meters (8148c13)
  • Add zcf extensions (862aefe)
  • gut packages/eslint-config to use [@jessie](https://github.com/jessie).js and [@endo](https://github.com/endo) (68a4f7d)
  • move the assertion that allStagedSeatsUsed into reallocate rather than reallocateInternal (#3615) (f8d62cc)
  • newly missing fars (#3557) (32069cc)
  • Treasury burn debt repayment before zeroing the amount owed (#3604) (f0bc4cb), closes #3495
  • Update packages/vats/src/ibc.js (d6d5ae2)
  • xsnap: Allow for an absent package.json ava.require (2d30a11)
  • xsnap: avoid O(n^2) Array, Map, Set growth (11e7c1c), closes #3012
  • xsnap: tolerate Symbols in console.log() arguments (#3618) (314ee93)
  • require virtual object selves to be declared Far (619bbda), closes #3562

Code Refactoring

  • deploy-script-support: Convert RESM to NESM (breaking) (0d59ac2)
  • swingset: Convert plugin API to NESM (8ab2b03)
  • swingset: Convert RESM to NESM (bf7fd61)

6.0.0 (2021-07-28)

⚠ BREAKING CHANGES

  • swingset: remove support for non-XS metering
  • swingset: make dynamic vats unmetered by default

Features

  • add command line flag to use XS (66b5a5e)
  • first stage GC for virtual objects (c1fb35c)
  • update slogulator for GC syscalls and deliveries (207d8d9)
  • captp: leverage makeSubscriptionKit to drive trapHost (a350b9d)
  • captp: return Sync replies via arbitrary comm protocol (c838e91)
  • captp: take suggestion in #3289 to prefix questionIDs (a8e0e96)
  • cosmic-swingset: pass consensusMode to SwingSet on chain (33ff03c)
  • cosmos: use agoric-labs/cosmos-sdk v0.43.0-rc0.agoric (6dfebdb)
  • solo: separate hot helper address from cold fees and egress (20cdfa8)
  • swingset: add Meters to kernel state (03f148b), closes #3308
  • swingset: implement Meters for crank computation charges (7a7d616), closes #3308
  • swingset: make dynamic vats unmetered by default (c73dd8d), closes #3308 #3308 #3308
  • swingset: remove support for non-XS metering (5b95638), closes #3518
  • implement exportAsSyncable, and Sync powers (714b214)
  • implement Sync for makeLoopback (3d500a1)
  • SwingSet: new overrideVatManagerOptions kernel option (1ec045b)
  • SwingSet: plumb consensusMode for stricter determinism (16ec7ca)
  • SwingSet: support more managers with consensusMode (ea3280e)
  • xsnap: FFI to enable/disable metering (#3480) (94d9417), closes #3457
  • audit object refcounts (d7c9792), closes #3445
  • improve ag-solo robustness and performance (b101d3a)
  • refactor object pinning (9941a08)
  • utility to replace kernel bundle in kernel DB (07b300e)

Bug Fixes

  • access-token: avoid clobbering temporary json-store files (d468531)
  • assert: Use module extension for types.js (7e79e5e)
  • bundle-source: Remove lingering package scaffold file (e49edee)
  • captp: clarify error handling (21b72cd)
  • captp: ensure Sync(x) never returns a thenable (d642c41)
  • captp: relax it.throw signature (6fc842c)
  • deployment: improve the provision command to be idempotent (622bbd8)
  • deployment: only format and mount /dev/sda for digitalocean (745f90e)
  • governance: use metered=true and xs-worker on all swingset tests (5108c51)
  • promise-kit: make strict typing compliant (#3397) (69e2692)
  • solo: don't give a hint that isn't useful (ffc68bf)
  • spawner: set 'metered: true' for dynamic vats (3a9cf0b)
  • swingset: addEgress should cause an import/reachable refcount (230b494), closes #3483
  • swingset: gcAndFinalize needs two post-GC setImmediates on V8 (#3486) (cc9428f), closes #3482 #3240
  • swingset: make test less sensitive to changes in metering (e741be3), closes #3308 #3538
  • various tweaks and cleanup in response to review comments (fe777e4)
  • swingset: test simultaneous underflow+notify, simplify kernel (077dcec), closes #3308
  • zoe/spawner/pegasus: use unlimited Meter, not metered: true (04d4fd9), closes #3308
  • captp: don't rely on TextDecoder stream flag (5a370a8)
  • captp: ensure trapcap reply iteration is serial (feda6c8)
  • captp: more robust CTP_TRAP_ITERATE error handling (003c3d1)
  • captp: properly export src/index.js (592f0b7)
  • cosmic-swingset: decrease Nagling to 500ms (260ecc9)
  • cosmic-swingset: messagePool ordering and authz indirection (c49a2ea)
  • cosmic-swingset: properly detect when the chain is available (83f3a5d)
  • cosmic-swingset: use cosmic-swingset-bootstrap-block-finish (a789b02)
  • cosmic-swingset: use BOOTSTRAP_BLOCK to avoid slog confusion (9c8725b)
  • cosmic-swingset: use default batching parameters for sim-chain (e16e7a7)
  • deployment: properly quote JSON pubkey from Ansible (44132fa)
  • ERTP: use metered=true and xs-worker on all swingset tests (8c3da1f)
  • sharing-service: use xs-worker/metered=true on swingset tests (7c3f248)
  • solo: at the very least, kill our deployment process on exit (fbc512d)
  • solo: clean up unnecessary deep captp import (8b20562)
  • solo: make delivery process more robust (2a3ff01)
  • swingset: don't deduplicate inbound mailbox messages (2018d76), closes #3442 #3471
  • swingset: don't pin the interior queueMessage promise (4379f41), closes #3482
  • swingset: processRefcounts() even if crank was aborted (3320412)
  • swingset: test/vat-controller-one: disregard non-message deliveries (706be79)
  • SwingSet: simplify makeVatConsole to always use a wrapper (dc0839b)
  • swingset-runner: remove --meter controls (cc1d3c5)
  • treasury: use xs-worker and metered=true on all swingset tests (f76405e)
  • wallet: be more robust with claiming payments (0a67988)
  • wallet: more robust addPayment method handles failed deposit (7990569)
  • zoe: use metered=true and xs-worker on all swingset tests (32967ca), closes #3518 #3308
  • better db location logic (a76d3b7)
  • break up incoherent GetApply function into SyncImpl record (1455298)
  • don't create new promise IDs and stall the pipeline (b90ae08)
  • make verbose flag work from the very beginning (7edfa24)
  • provide Makefile targets to use separate fee and client auth (935f7b1)
  • some missing Fars (#3498) (8f77271)
  • wallet: be more defensive when escrow is supposed to happen (4130f6a)
  • tolerate endo pre and post #822 (#3472) (e872c0c)

5.4.1 (2021-07-01)

Bug Fixes

  • retreat from xs-worker-no-gc to xs-worker (ce5ce00)

5.4.0 (2021-07-01)

Features

  • xsnap: isReady() eliminates need for .evaluate('null') (a0493d7)
  • issue 3161, track recognizable objects used by VOM so other objects can be GC'd (85303c5)

Bug Fixes

  • swingset: don't perturb XS heap state when loading snapshot (52171a1)
  • vbank: ensure that multiple balance updates are sorted (204790f)
  • make 'bootstrap export' test less sensitive to cross-engine GC variation (9be7dfc)
  • repair stream store self-interference problem (948d837), closes #3437

5.3.0 (2021-06-28)

Features

Bug Fixes

  • vbank: be sure to persist nonce state in the KVStore (9dc151a)
  • snapStore tmp files were kept for debugging (#3420) (9d9560d)

5.2.0 (2021-06-25)

Features

  • swingset: introduce 'xs-worker-no-gc' for forward compat (e46cd88)

Bug Fixes

  • cosmic-swingset: update check-validator.js for Cosmos 0.43.x (7b94577)
  • cosmos: have daemon also trap os.Interrupt for good luck (9854446)
  • deployment: ensure that the faucet is given urun (2e046f7)
  • xsnap: update XS: new WeakMap design, fixed Promise drops (8eeec28), closes #3406 #3118

5.1.1 (2021-06-24)

Bug Fixes

  • maybe the best of both worlds: xs-worker but no explicit gc() (8d38e9a)

5.1.0 (2021-06-24)

Features

Bug Fixes

  • upgrade to allow gentx --keyring-dir=... (225e900)
  • use 'local' worker, not xsnap, on both solo and chain (a061a3e), closes #3403

5.0.0 (2021-06-23)

⚠ BREAKING CHANGES

  • zoe: handle subtracting empty in a less fragile way (#3345)
  • zoe: add method zcf.getInstance() (#3353)

Features

  • bundle-source: Add dev mode option (866b98a)
  • bundle-source: Endo support for following symlinks (43dea96)
  • swingset: comms state: add object refcounts (98a2038)
  • swingset: comms: add importer tracking (72f29fa), closes #3223
  • swingset: comms: add/manipulate isReachable flag (133bbae)
  • swingset: comms: enable object tracking in processMaybeFree() (160026d)
  • swingset: comms: track lastSent seqnum for each object (03cdce8)
  • swingset: implement comms GC, wire everything into place (c901eb6), closes #3306
  • swingset: record xs-workers to $XSNAP_TEST_RECORD if set (#3392) (bacec84)
  • ballot counter for two-outcome elections (#3233) (6dddaa6), closes #3185
  • xsnap: record / replay xsnap protcol (616a752)

Bug Fixes

  • cosmic-swingset: stop using install-metering-and-ses (3317007), closes #3373
  • deploy-script-support: Relax constraint on repository clone path (6ec7a4d)
  • solo: change default vatManager to 'xs-worker' (eebaa2d), closes #3393
  • solo: finish changing default vatManager to 'xs-worker' (ea19295)
  • solo: stop using install-metering-and-ses (b21fb61), closes #3373
  • swingset: comms: deleteKernelMapping might free the object (a3bf097)
  • swingset: comms: deleteRemoteMapping might free the object (e97a21d)
  • swingset: comms: remove deleteToRemoteMapping (6d15240), closes #3306
  • swingset: comms: single-argument delete-mapping functions (7a79d14)
  • swingset: fix GC handling of orphaned objects (dcfe169), closes #3376 #3377 #3378 #3376 #3377 #3378
  • swingset: only mark refs for processing if refcount hits zero (3354bbf), closes #3106
  • swingset: test-comms.js: fix retireImports test (ba1f244)
  • swingset: xs-worker confused meter exhaustion with process fail (#3396) (54ccc21)
  • SwingSet: Lint fix for vat controller test fixture (33298d8)
  • SwingSet: protect against null kpid when resolving errors (8f38d01)
  • SwingSet: Use extension for vat-controller jig (c301496)
  • wallet: Nat values are now BigInts, so fix the parse output (1ff1244)
  • xsnap: 1e7 was too small for crank meter limit (95c52ab)
  • xsnap: don't risk NULL in gxSnapshotCallbacks (3a6ddbb)
  • xsnap: fxMeterHostFunction is no more (67e6a51)
  • move COMMIT_BLOCK immediately before the Cosmos SDK commit (f0d2e68)
  • Patch external-editor constructor override error (8435859)
  • xsnap: Account for TypedArray and subarrays in Text shim (3531132)

Code Refactoring

  • zoe: add method zcf.getInstance() (#3353) (d8952c2)
  • zoe: handle subtracting empty in a less fragile way (#3345) (f51d327)

4.0.0 (2021-06-16)

⚠ BREAKING CHANGES

  • swingset: remove stats from vatAdmin API

Bug Fixes

  • deployment: many tweaks to make more robust (16ce07d)
  • liveslots: better error message when buildRootObject is not Far (34568a9)
  • swingset: add kernel processing of GC actions before each crank (462e9fd)
  • swingset: fix two tests which failed under XS GC (1ba9224), closes #3240
  • swingset: remove stats from vatAdmin API (03e7062), closes #3331
  • swingset: retain more references (5ace0aa)
  • swingset: rewrite kernelKeeper.cleanupAfterTerminatedVat (43a4ff8)

3.0.0 (2021-06-15)

⚠ BREAKING CHANGES

  • tame-metering: Converts @agoric/tame-metering from emulated ESM with node -r esm to Node.js ESM proper.
  • assert: Converts @agoric/assert from emulated ESM with node -r esm to Node.js ESM proper.
  • zoe: new reallocate API to assist with reviewing conservation of rights (#3184)
  • swing-store-simple: This includes a renaming and refactoring of the constructors to acknowledge that the different SwingStore constructors are not polymorphic.
  • swing-store-lmdb: This includes a renaming of the constructors to acknowledge that the different SwingStore constructors are not polymorphic.
  • swing-store-simple: most uses of simple swing store use it to get a purely in-memory store for testing purposes, but a few places used the older .jsonlines thing for simple persistence. Any existing code that did that requires revision to use swing-store-lmdb or another persistence mechanism, though all the known cases that did that have been so revised as part of this update.
  • The agoric-sdk as a whole now requires/advises v14.

We're leaving the individual package.jsons alone until a specific updated requirement is found for each (e.g. SwingSet will soon bump to v14 because it will require WeakRef). We won't be testing v12 support anywhere, but it's possible that individual packages will still work with v12 until we believe otherwise.

Features

  • for Keplr support (and presumably other wallets) we need CORS (7986548)
  • tame-metering: RESM to NESM (705f930), closes #527
  • allow setting of dbsize from swingset-runner command line (f56df1e)
  • drive loopbox from config instead of command line (d0388ff)
  • epoched reward distribution part 1 - buffer (e6bbb6d)
  • epoched reward distribution part 2 - send (331793b)
  • greater paranoia about concurrent access (e67c4ef)
  • implement cosmos-sdk v0.43.0-beta1 (7b05073)
  • make vatstore optionally available to vats as a vat power (229da78)
  • assert: RESM to NESM (d991df7)
  • handle kernel failures more gracefully (8d03175)
  • move transcripts out of key-value store and into stream stores (a128e93)
  • new access-token package for encapsulation from swing-store (aa52d2e)
  • overhaul stream store API to better fit actual use in kernel (c5cc00a)
  • provide streamStore implementations (e094914)
  • remove .jsonlines hack from simple swing store (ef87997)
  • update kernel dump to latest schema (93cb41d)
  • deployment: --genesis=FILE and unique digitalocean SSH keys (00d69da)
  • deployment: fetch --genesis= (e706e74)
  • repl: better stringification of Symbols (658cf1b)
  • swing-store-lmdb: enable configuration of LMDB database size limit (6f7cefa)
  • swing-store-simple: refactor and rename constructors (1c986ba)
  • swing-store-simple: remove .jsonlines hack from simple swing store (f3b020a)
  • swingset: drop Presences, activate syscall.dropImports (84e383a), closes #3161 #3147 #2615 #2660
  • swingset: expose writeSlogObject to host application (851fa61)
  • swingset: vatKeeper.getOptions() avoids loading source (4ea2be9), closes #3280
  • add invariant helper and constant product use example (#3090) (f533f76)
  • create a feeCollectorDepositFacet (60f7ea0)
  • don't load unendowed devices (d6c1de6)
  • enable VPURSE_GIVE_TO_FEE_COLLECTOR (b56fa7f)
  • make top-level yarn c8 ava work (89ac4c7)
  • modify all SwingStore uses to reflect constructor renaming (9cda6a4)
  • propery handle remotables vs presences in weak collections (e4a32a2)
  • remove no-LMDB fallback from cosmic-swingset (11dba7a)
  • send AG_COSMOS_INIT supplyCoins instead of vpurse genesis (759d6ab)
  • support vats without transcripts, notably the comms vat (to start with) (18d6050), closes #3217
  • tools for fiddling with kernel DB (d14fa1e)
  • use 'engine-gc.js' to get the Node.js garbage collector (0153529)
  • vat warehouse for LRU demand paged vats (#2784) (05f3038)
  • SwingSet: add "reachable" flag to clist entries (4b843a8), closes #3108
  • SwingSet: change virtualObjectManager API to reduce authority (65d2e17)
  • SwingSet: makeFakeVirtualObjectManager() takes options bag (40bbdee)
  • xsnap: add gcAndFinalize, tests (343d908), closes #2660
  • tackle the @erights challenge (d4b8d34)
  • use feeCollectorDepositFacet (7e97cc1)
  • use WeakRefs to ensure virtual objects have at most one representative apiece (031c8d0)
  • wrap WeakMap and WeakSet to hide virtual object non-determinism (bd421ff)
  • xsnap: refined metering: stack, arrays (9c48919)

Bug Fixes

  • swingset: implement dispatch.retireExports for Remotables (e8b0f3a)
  • handle amounts over int64 limits (fabfacb)
  • golang: exit Go on signals; no more SIGKILL just to quit (b5222b3)
  • import-bundle: Add missing ses-ava import (bc89bf9)
  • notifier: Stronger assertion to work around harden type weakness (2b3fe0e)
  • swingset: add 'slogFile' option to buildVatController() (127e18e)
  • swingset: fix refcounts for messages queued to a promise (0da6eea), closes #3264 #3264
  • swingset: gc-actions: new algorithm, update test (6c85e21)
  • swingset: tolerate policy='none' in queueToVatExport (433efe2)
  • swingset: use provideVatSlogger inside the slogger (7848b16)
  • apply recent renames, use aliases if possible (d703223)
  • be more explicit when gc() is not enabled, but not repetitive (b3f7757)
  • bug #3022, off-by-one in slog deliveryNum (620dcb5)
  • checkpoint db after swingset init (bf5f46b)
  • convert swing-store-simple to "type": "module" (93279c1)
  • detect extra syscalls in replay (6b6f837)
  • don't drag in the entire metering transform to kernel (4db01ca)
  • don't go to the head of the LRU unless touching the data (cbabcc9)
  • don't intercept SIGQUIT (223185a)
  • drop Node.js v12 support, require v14.15.0 or higher (f014684), closes #1925 #837
  • ensure replacements of globals can't be bypassed (3d2a230)
  • excise @babel/core except from ui-components (af564f1)
  • have supplyCoins decide amount to escrow for the bank purses (c7cba64)
  • incorporate changes from review feedback (dcca675)
  • inner self needs to point to representative to survive GC while in LRU (26f9a41)
  • make loopbox device compatible with replay (ce11fff), closes #3260
  • patch ESM to allow bottom-up implementation of type: "module" (d3b2549)
  • Pin ESM to forked version (54dbb55)
  • Preinitialize Babel (bb76808)
  • quoting typo (afb1c98)
  • remove genesis bootstrap config; use just add-genesis-account (fdc1255)
  • remove references to @agoric/babel-parser (e4b1e2b)
  • Sync versions locally (90b07d8)
  • there is no "controller" port; we meant "storage" (299baa7)
  • tweaks and cleanup based on review feedback (ba95e34)
  • Upgrade handlebars (#3231) (757d6d5)
  • cosmic-swingset: slog begin/end-block and input events (cc77234)
  • repl: render the unjsonable things described in #2278 (bef7d37)
  • swingset: activate dispatch.dropExports (0625f14), closes #3137
  • swingset: add gcAndFinalize, tests (d4bc617), closes #2660
  • swingset: do not record GC syscalls in the transcript (d18ddf5), closes #3146 #2615 #2660 #2724
  • swingset: factor out replayOneDelivery from manager helper (e45f5ad)
  • swingset: hold strong reference to all device nodes (2a07d8e)
  • swingset: include vatParameters in slogfile create-vat records (8216cde)
  • swingset: remove liveslots "safety pins" (549c301), closes #3106
  • swingset: track exported Remotables during export, not serialization (0bc31e9)
  • swingset: track pendingPromises (fe93b3d)
  • SwingSet: enable getKeys('','') in blockBuffer/crankBuffer (ff6af69)
  • SwingSet: let vatManager creator override syscall comparison (94f3740)
  • SwingSet: makeFakeVirtualObjectManager takes weak=true (e3ab2e1)
  • SwingSet: VOM retains Remotables used in virtualized data (e4ed4c0), closes #3132 #3106
  • SwingSet: VOM tracks Presence vrefs in virtualized data (71c85ec), closes #3133 #3106
  • remove references to @agoric/registrar (ec6cc6d)
  • solve nondeterminism in rollup2 output order (c72b52d)
  • undo 93279c10a01ce55790a0aa8b5f9e2b2ce7e1732e which broke things (609c973)
  • update cosmic swingset build instructions (29fdec4)
  • use --expose-gc for top-level 'yarn test' (352922a), closes #3136 #3100
  • xs-worker: respect !managerOptions.metered (#3078) (84fa8c9)
  • xsnap: free netstring in issueCommand() (127e58a)
  • xsnap: handle malloc() failure (67d2581)
  • update dumpstore for new db objects (b5f6226)
  • update slogulator to include latest slog entry types (25d5d43)
  • upgrade acorn and babel parser (048cc92)

Code Refactoring

  • zoe: new reallocate API to assist with reviewing conservation of rights (#3184) (f34e5ea)

2.19.0 (2021-05-10)

Bug Fixes

  • a malformed case statement elided recipient vpurse updates (5f4664d)
  • make scenario2-run-client is now idempotent (5f08b89)
  • simplify scheduling in distributeFees (#3051) (eb6b8fe), closes #3044
  • update AMM liquidity (56884f1)
  • update incorrect string cast where Sprint was needed (c83dc19)
  • deployment: make copy.yml copy ag-cosmos-helper by default (2d3f5fb)
  • docker-compose: accomodate new /data or old /usr/src/app state (1cbb2c9)

Features

  • add a check-validator.js script to verify node keys (73248c2)

2.18.1 (2021-05-05)

Bug Fixes

  • swingset: force vattp to run on worker=local for now (a6aff0a), closes #3039
  • cope with getting moddable submodule from agoric-labs (a1a2693)

2.18.0 (2021-05-05)

Bug Fixes

  • add brand to depositMultiple mock bank (0d1f22d)
  • adjust git-revision.txt generation (6a8b0f2)
  • clean up Docker directory usage (a97d0b3)
  • correct faucet-helper.sh show-faucet-address and use it (5e236e6)
  • default and propagate the poolFee and protocolFee in treasury (d210bcf)
  • disable comms vat termination via remote comms errors (d286fbd)
  • eliminate unnecessary script indirection (119d7b9)
  • eliminate urun from cosmos bootstrap (it comes from treasury) (16c1694)
  • have the treasury use the newSwap AMM implementation (ed6b84a)
  • include backwards-compat /data directory links (16feacd)
  • more Docker paths (7783bb4)
  • polishing touches (334a253)
  • remove awaita from depositMultiple (a7da714)
  • test and workaround for a reallocate issue in zoe (f56ff7a)
  • agoric-cli: hardcode vpurse genesis state with faucet address (04b004c)
  • agoric-cli: increase integration-test timeout (942c2a2), closes #1343
  • agoric-cli: use new solo package (0780be8)
  • cosmic-swingset: finish reorganization (7aa778f)
  • deploy-script-support: update to new vats package (9de6ed1)
  • ERTP: avoid jessie warning (fa68a8a), closes #2704
  • ERTP: now that {} is data, always return a displayInfo object (fcc0cc4)
  • liveslots: low-level vat dispatch() is now async (1a6ae48), closes #2671 #2660
  • marshal: #2435 make getInterfaceOf truthful (ff19f93)
  • newSwap: move guard out of conditional; tests pass (dc67e67)
  • pegasus: update to new solo package (cf91a04)
  • solo: propagate exit status (1f6537e)
  • swingset: add GC stubs: syscall/dispatch retireImports/Exports (fa24bb9), closes #2724
  • swingset: recreateDynamicVat() waits for vat creation (fe6ab38), closes #2871
  • swingset: stop rejecting metered=true for xs-worker (3714ed9), closes #2868
  • swingset: supervisor-xs: tolerate console.log(BigInt) (#2967) (cddd949), closes #2936
  • swingset: test metering on both local and xsnap workers (1e50fa4), closes #2972
  • xs-worker: provide error message on vat creation failure (6a1705e)
  • xsnap: start with expected heap (32MB) and grow by 4MB (2e59868)
  • Add banner to README.md (#2902) (99e24ed)
  • add missing syscalls to kernel stats collection (1617918)
  • add noIbids option (#2886) (39388bc)
  • add tests and correct issues the tests found (0d42e64)
  • don't get GCI from gci.js; use kernel argv.FIXME_GCI instead (f994574)
  • handle transient 0 refCounts correctly (9975d75)
  • ignore an xsnap build output (#2887) (646b621)
  • incorporate review feedback and other bits of tidying up (235957b)
  • properly hang when ag-solo start is run (b63135f)
  • remove deprecated ibid support (#2898) (f865a2a), closes #2896 #2896 #2896
  • remove incorrect assertion in multipoolAutoSwap priceAuthority (#2839) (cb022d6), closes #2831
  • settle REMOTE_STYLE name (#2900) (3dc6638)
  • split marshal module (#2803) (2e19e78)
  • update dapp-svelte-wallet to new packages (a1dcabd)
  • update repo-wide package config (bff9a38)
  • use agoric set-defaults --bootstrap-address (4f96b2c)
  • swingset: create dynamic vats with the right options (66fc842)
  • update types and implementation now that Far preserves them (a4695c4)
  • spawner: rewrite to use createVat, strip down to bare minimum API (86c0a58), closes #1343
  • spawner: use fs.mkdirSync properly (75d8afb)
  • swingset: disable GC for now (e93066f), closes #2724
  • swingset: refactor dispatch() (ec2e993)
  • swingset: schedule vat creation on the run-queue (51cf813), closes #2911
  • swingset: speed up vat-admin tests by pre-bundling the kernel (51d06e8)
  • xsnap: fix the xsnap/moddable git-submodule (fc34fba)
  • zoe: use fs.mkdirSync properly (d7a8a41)
  • update kerneldump to work with SES (4989fa3)
  • swingset: when a static vat dies, tolerate lack of next-of-kin (215dfb9)

Features

  • default to xs-worker in chain (#2995) (7ebb5d8)
  • wire up vats.distributeFees (9e16332)
  • agoric: set-defaults --bootstrap-address and friends (f37adcf)
  • ava-xs: provide test script name to xsnap (05f0637)
  • cosmic-swingset: $SLOGFILE will make the chain write a slogfile (c845132)
  • golang: implement balance updates for virtual purses (c4c485c)
  • solo: fully-working ag-solo package (57ea595)
  • swingset: add WeakRef tracking to liveslots (6309e5f), closes #2664 #2660
  • vats: fully-working decentral services (3525283)
  • vpurse: connect to golang (d2f719d)
  • wallet: subscribe to bank assets and fetch purses (92a0a44)
  • xsnap: $XSNAP_DEBUG_RR for time-travel debugging (bd4af92)
  • xsnap: define XSnapOptions type (1ce5618)
  • xsnap: grow heap more slowly (11795de)
  • xsnap: high resolution timer: performance.now() (10940f9)
  • xsnap: increase allocation limit to 2GB (5922cbd)
  • xsnap: meter add/remove on map, set (327062f)
  • xsnap: meter allocation (eecd58d)
  • xsnap: meter calls to allocateChunks, allocateSlots (5a35842)
  • xsnap: meter garbageCollectionCount (f649ff7)
  • xsnap: meter maxBucketSize (eff98b4)
  • add bank assets for "cosmos" issuers (currently BLD) (3148b83)
  • add home.bank and home.bankManager (276a1d3)
  • donate RUN from the bootstrap payment on each provision (43c5db5)
  • first cut at a virtual purse API (0c46a9d)
  • handle VPURSE_BALANCE_UPDATE (116fcd2)
  • handle VPURSE_BALANCE_UPDATE as return value from GIVE/GRAB (6e62c24)
  • have the bank use normal purses when not on chain (90ab888)
  • have the wallet-bridge.html announce it was loaded (36d9f0f)
  • implement the comms vat driver for testing the comms vat (6793925)
  • implement vat-bank and test (e7c342a)
  • keep all comms vat state in a persistent store (51d7204)
  • keep persistent comms vat state in the vatstore (c55401b)
  • plumb through the genesis data to vpurse initialisation (8105589)
  • xsnap: specify exit codes for meter exhaustion etc. (db3daaa)
  • load virtual objects when accessed, not when deserialized (5e659e6)
  • refcount-based promise GC in the comms vat (209b034)
  • share one instance of liquidation across all vaultManagers (#2869) (0ae776a)
  • support promise retirement in comms vat (a9b826f)
  • upgrade use-jessie eslint, and honour '// @jessie-check' (fd1c24a)

2.17.4 (2021-04-22)

Bug Fixes

  • ERTP: avoid jessie warning (fe9319b), closes #2704
  • faucet delegate gives 62BLD, 93RUN (4b80400)
  • rename cosmos-level tokens uagstake/uag to ubld/urun (0557983)
  • reorganise deployment (5e7f537)
  • use Tendermint v0.34.10 for better network stability (963a7ef)

2.17.3 (2021-04-18)

Bug Fixes

  • accommodate initial_height == "1" as well as > "1" (65a1c62)
  • again harmonise fake-chain with Cosmos genesis behaviour (69782b8)

2.17.2 (2021-04-16)

Bug Fixes

  • harmonise fake-chain and actual chain genesis block height (8903f3b)

2.17.1 (2021-04-14)

Bug Fixes

  • small tweaks needed for agorictest-8 (b8d2ec0)

2.17.0 (2021-04-13)

Bug Fixes

  • adjust Pegasus to actually work correctly with pegRemote (8cd8c72)
  • don't invoke kernel before first actual chain block (a27393f)
  • ensure unique (but fake) addresses for sim-chain (1a5f5c0)
  • fully implement onInbound for unique connection ID (421b9d4)
  • genesis has height 0, so properly detect the first block (5b524da)
  • honour logging sent exceptions with DEBUG=SwingSet:ls (db9b46a)
  • optimise the scenario2 setup by preferring ag-cosmos-helper (24f0a59)
  • run swingset on genesis init before opening for business (7e228d4)
  • network: append the connection instance to the full localAddr (ebd5963)
  • properly disable devices.bridge for the sim-chain (20d61cc)

Features

  • add contact address property and register depositFacet name (feae632)
  • display wallet depositFacet's bech32 address in the UI (4c61fe6)
  • install Pegasus on "transfer" IBC port (a257216)
  • install Pegasus on chain bootstrap (7615292)
  • integrate pegasus in chain bootstrap (5c7ecba)
  • make nameHub entries, keys, and values available (933c599)
  • wait until genesis time has passed before continuing (4d13843)
  • network: allow onInstantiate to augment localAddress (9cfc2fd)
  • move Pegasus contract to SDK (d0ca2cc)

2.16.1 (2021-04-07)

Bug Fixes

2.16.0 (2021-04-06)

Bug Fixes

  • adjust collateral additions for more realism (fcf5295)
  • allow liq margin plus fees for new loans (#2813) (5284548)
  • don't start the fakePriceAuthority ticker for constant prices (90a28c9)
  • fully bootstrap the chain before allowing inbound messages (ff7b8bf)
  • improve amount UI entry (#2737) (bc7e2ce)
  • improve factoring and assertions (e7b356d)
  • Many more tests use ses-ava (#2733) (d1e0f0f)
  • price requests for zero should get zero as an answer (#2762) (11285e7), closes #2760
  • properly handle empty priceList/tradeList (a1a2075)
  • top README improvements (#2773) (d17a951)
  • update eslint version (#2804) (3fc6c5e)
  • update install-on-chain to use RUN instead of SCONES (#2815) (6ba74e9)
  • update to depend on ses 0.12.5 (#2718) (08dbe0d)
  • update to ses 0.12.7, ses-ava 0.1.1 (#2820) (6d81775)
  • use ses-ava in SwingSet where possible (#2709) (85b674e)
  • use SWINGSET_WORKER_TYPE to avoid WORKER_TYPE ambiguity (c4616f1)
  • loan: fix reallocate error in liquidation error recovery (b50117f)
  • swingset: path -> paths typo in require.resolve options (58a0d0a)
  • update yarn.lock (#2729) (298edf9)

Features

  • add a method to multipoolAutoSwap to return the pool brands (#2810) (16755d0)
  • add collateralConfig to issuer entries and enact (8ce966b)
  • add home.agoricNames and home.agoricNamesAdmin (04c5bdd)
  • add more collateral types, pivot to BLD/RUN and decimals (7cbce9f)
  • add more issuers (87d2fba)
  • add namesByAddress and myAddressNameAdmin (945a6c3)
  • integrate the economy's central token in chain bootstrap (2288e60)
  • more logging for deploy helpers (#2744) (fe459fb)
  • separate purse filtering by brand (#2798) (a02585e)
  • use multipoolAutoswap as the treasury priceAuthority (a37c795)
  • use same (instrumented) kernel stepper for bootstrap (33d42a8)
  • bundle-source: Apply evasive transforms to Endo archives (#2768) (e15cee8)
  • stop the fake-chain dead if the kernel fails (fac485e)
  • bundle-source: Specific ModuleFormat type (#2767) (6fe2ff7)
  • cosmic-swingset: xs-worker option in ag-solo, chain (cbf8e56)
  • dapp-svelte-wallet: add getAgoricNames and getNamesByAddress (7c8f4d5)
  • swingset: boot xsnap workers from snapshot (2476e6f)
  • swingset: config for xs-worker vs. local default (973b403)
  • swingset: provide name to xsnap via managerOptions (78b428d)
  • xsnap: show name on command line (5b31c23)
  • xsnap: snapstore with compressed snapshots (865ba54)
  • better rendering for initial state (#2745) (f862428)
  • implement and test makeNameHubKit as specified (7deac62)
  • introduce @agoric/treasury and pass tests (6257231)

2.15.0 (2021-03-24)

Bug Fixes

  • kernel-stats: don't record Prometheus vatID labels (9af77d1)
  • swingset: add dummy dispatch.dropExports to liveslots/comms/managers (5108ad6), closes #2653
  • ui-components: add dummy test:xs target (1e4faa9)
  • correct minor found by typechecking (342c851)
  • deploy-script-support tests (#2677) (0d1b1de)
  • downgrade the sim-chain trip log severity (49f4f0a)
  • remove use of Data() from all packages (540d917), closes #2018
  • rename crankStats -> meterUsage (e0fa380)
  • silence some noisy Go logs (6ef8a69)
  • use WeakSet for disavowals, improve comments, tidy vatPowers (f9b5133)
  • marshal: remove Data (81dd9a4), closes #2018
  • swingset: add vatOptions.enableDisavow, dummy vatPowers.disavow (4f43a5c), closes #2635
  • swingset: partially implement syscall.dropImports and disavow (2490de5), closes #2646 #2635 #2636

Features

  • add message sequence number to comms protocol (d58cfa4)
  • add ui-components package (#2321) (770542e)
  • agoric client docker-compose config (#2701) (c9ae4fd)
  • generalise the grouped metrics and refactor (877ffac)
  • introduce separate roles for deployment placements (a395571)
  • SwingSet: track the meter usage in deliverResults[2] (c1a2388)
  • introduce Makefile variable $(OTEL_EXPORTER_PROMETHEUS_PORT) (6cc2e4f)
  • introduce slogCallbacks for the host to handle slog calls (e2eb92e)
  • xsnap: enable gc() in the start compartment (e407fa2), closes #2682 #2660 #2615

2.14.0 (2021-03-16)

Bug Fixes

  • ava-xs: anchor match patterns (c753779)
  • changes needed for ag-setup-cosmos to be usable again (4767bf5)
  • make separate 'test:xs' target, remove XS from 'test' target (b9c1a69), closes #2647
  • cosmic-swingset: apply Far/Data as necessary (#2567) (92b63b6), closes #2018 #2018
  • demo: make demos robust against bigints in JSON.stringify (c289502)
  • deployment: bump up minimum node size to 4GB RAM (030357c)
  • marshal: serialize empty objects as data, not pass-by-reference (aeee1ad), closes #2018
  • notifier: add Far/Data to notifier (#2565) (49a6a8e), closes #2545 #2018
  • sharing-service: add Far to all pass-by-reference objects (fffd37e), closes #2018
  • store: reject empty-object keys which might not retain identity (c38a4dc), closes #2018
  • swingset: add exit/vatstore syscalls to non-local vat workers (35fceb1)
  • clean up the autobench script and prefix the metrics (adeeb08)
  • let errorTaming default to safe (#2304) (57c1f4c)
  • swingset: allow Symbol.asyncIterator as a method name (7947be7), closes #2481 #2619
  • swingset: remove Far/Remotable/getInterfaceOf from vatPowers (c19a941), closes #2637
  • better ocap discipline (eef6540)
  • bug #2533, problem deleting virtual objects (3645430)
  • don't keep autobench stats for multiple revisions (dae985d)
  • don't rely on OS exec semantics for agoric-cli; fork instead (4820958)
  • eliminate redundant resolves in comms (86057fc)
  • fix ibids. test ibids and slots (#2625) (891d9fd)
  • golang/cosmos upgrades (d18e9d3)
  • properly type assert.typeof(xxx, 'object') (4958636)
  • remove resolveToRemote plumbing for clist-outbound.js (caa367d)
  • separate ibid tables (#2596) (e0704eb)
  • agoric-cli: remove package links before running yarn install (9573d44)
  • avaXS: notDeepEqual confused false with throwing (a1b7460)
  • bundleSource: patch acorn with defineProperty to avoid override (#2549) (0ee93e5)
  • dapp-svelte-wallet: add Far/Data annotations (a826805), closes #2018
  • marshal: add Data marker, tolerate its presence (d7b190f)
  • marshal: add placeholder warnings (8499b8e)
  • slogger: do not harden the data being recorded (e75ef53), closes #2517
  • spawner: add enough Far/Data to pass tests (73e06cc), closes #2018
  • swingset: more Far/Data on the network vat (ce82afc)
  • xsnap: bounds checking in release builds (c36f040)
  • xsnap: freeze API surface (8c2cc63)
  • xsnap: orderly fail-stop on heap exhaustion (8ffbaa6)
  • xsnap: shim HandledPromise before lockdown() (7e8178a)
  • zoe: add Far to periodObserver (#2577) (4c07722), closes #2018
  • zoe: annotate empty objects with Data or Far as appropriate (7aaa6dc), closes #2545 #2018
  • enable autobench_* metrics (d06a87b)
  • fake needs to be more real to work outside SwingSet unit tests (9871903)
  • make init-basedir more tolerant to paths (a7e15ff)
  • properly pin the Moddable SDK version (58333e0)
  • tag the golang semantic version when pushing tags (d0ef793)
  • upgrade ses to 0.12.3 to avoid console noise (#2552) (f59f5f5)
  • use git submodule update --init --checkout (fd3965d)
  • use os.homedir() to properly cope with Windows (fcf93ad)
  • weaken timer wakers to ERefs (dda396f)
  • xs-worker: handle bigint in testLog a la kernel.js (b362d8b)
  • work around Firefox's lack of Error.stackTraceLimit (94eaa4a)
  • xsrepl: pass command line args thru shell wrapper (7679200)

Features

  • silence the vat logs for ag-chain-cosmos (16cf2bb)
  • autobench: make metrics more regular; run more benchmarks (a0ec399)
  • autobench: rewrite in JS (b4dd503)
  • ava-xs: -m title match support (e89f1e1)
  • ava-xs: handle some zoe tests (#2573) (7789834), closes #2503
  • deployment: allow networks to init new placements (13d6c2c)
  • marshal: allow marshalSaveError function to be specified (c93bb04)
  • SwingSet: direct liveslots errors to a different console (9eec3e3)
  • add static amountMath. Backwards compatible with old amountMath (#2561) (1620307)
  • default new purses to autodeposit (b210b4b)
  • eslint 'use jessie'; detection and first cut at rules (9ea9909)
  • xsnap: ava work-alike (2c71b4a)
  • xsnap: deep stacks work with updated moddable error stacks (#2579) (6a8fc76)
  • allow fresh access tokens to override stale ones (98acaee)
  • declarative environments import for SwingSet, zoe tests (#2580) (bb0e7d6)
  • enable comms starting ID to be configurable in comms vats (6c0b4d8)
  • implement a mock virtual object manager to support unit tests outside SwingSet (d4f5025)
  • push metrics from autobench (3efc212)
  • marshal: add Data() to all unserialized empty records (946fd6f)
  • marshal: Data({}) is pass-by-copy (03d7b5e)
  • xsnap: unhandled rejections are debuggable (cbf83be)

2.13.0 (2021-02-22)

Bug Fixes

  • agoric-cli: Allow path.sep to be \ when we use it in a RegExp (c0ed576)
  • agoric-cli: Don't exit agoric open until the browser loads (a28548b)
  • bundle-source: Downgrade @rollup/plugin-commonjs for Windows (2721da7)
  • cosmic-swingset: Use 'junction' symlinks for directories (1446df8)
  • xsnap: lib directory was missing from package files (5bd8eb8)
  • be tolerant of delegation errors (db75f65)
  • properly docker push agoric/deployment:$(TAG) (8afd58b)
  • protect testLog against BigInts (60c4684)
  • remove journalbeat from build; it fails and we don't use it (c2fed3b)

Features

  • bump to cosmos-sdk v0.41.1 (7e45aa4)

2.12.0 (2021-02-16)

Bug Fixes

  • marshal: reject getters in pass-by-ref, even if it returns a function (#2438) (b9368b6), closes #2436
  • adapt to new cosmos-sdk (3b12c9e)
  • add a test and correct the collateral check (#2300) (2396e4d)
  • add more metrics (e3223fb)
  • be more tolerant of errors (967832e)
  • cleanups and simplifications (1fe4eae)
  • complain if metering is requested but not compiled in (857d4ba)
  • configure go relayer properly with add-paths (7f2bd5b)
  • don't hardcode XSNAP_VERSION; get it from package.json (b418db5)
  • exercise callNow in local-worker case (c3c489e), closes #1617
  • explicit setting in test-sanity (#2388) (6be4e02)
  • Far and Remotable do unverified local marking rather than WeakMap (#2361) (ab59ab7)
  • git should ignore xsnap/dist (#2312) (097f734)
  • hush "replaying transcripts" message during swingset startup (#2394) (9309dd9), closes #2277
  • improve test-worker.js to assert promise results are correct (73487b1), closes #1778
  • increase testnet limit to allow more than 40 peers (b72804f)
  • limit number of kernel steps per block (a0f4588)
  • link all the errors (6ea7588)
  • missing console methods (#2254) (79e81b0)
  • multipoolAutoswap should throw seat.fail() when it can't comply (#2337) (0f02d52), closes #2335 #2336
  • multipoolAutoswap was calculating output prices incorrectly. (#2166) (60a4adf)
  • prefix Prometheus metrics with swingset_ (73238dc)
  • properly honour FIXME_MAX_CRANKS_PER_BLOCK (60be251)
  • reenable Docker builds and deployment (559ea06)
  • remove crankNumber from transcript entries (#2429) (d7886c0), closes #2400 #2428
  • remove pointless excessive abstraction (#2425) (14285f5)
  • remove unnecessary use of threads from Node-Golang bridge (5ce3ce5)
  • removed another q (8e20245)
  • review comments (17d7df6)
  • review comments (7db7e5c)
  • run ag-setup-cosmos under SES (13c8efe)
  • take advantage of /.../ being stripped from stack traces (7acacc0)
  • update '@agoric/assert' types (3ce7587)
  • update dibc for v0.41.0 (d990c14)
  • upgrade to patched cosmos-sdk v0.41.0 (807320f)
  • use assert rather than FooError constructors (f860c5b)
  • use Gaia's historical_entries value (456dc5f)
  • xs-worker: restore xs vat manager test to working order (9274082), closes TypeError#2
  • xsnap: Typo in README re order of REPL ops (#2188) (18b0cac)
  • yarn.lock changed. I do not know why (#2255) (f8c178a)
  • eventual-send: test static method rejections (f6bd055)
  • kernel: don't lose managerType (37d169e)
  • swingset: implement replayTranscript for all vat types (7fde6a4)
  • swingset: loadVat.js: properly wait for static vats to be ready (ca4188b), closes #2213
  • swingset: test-worker.js: disable XS test until xsnap is ready (61b2567)
  • xsnap: Iron out resolution types (1e2e10d)
  • off-by-one: minimum positive result of getOutputPrice() is 1 (#2198) (82d68d9)
  • tame-metering: be tolerant to Node.js 14.15.x (5b54e07)
  • xsnap: Make xsrepl executable (#2197) (bd7d738)
  • xsnap: This is not a smog check (#2190) (437814c)
  • xsnap: Thread spawn and os into xsnap (619a4de)
  • xsnap: Update submodules for build and use CURDIR (#2186) (d0bf5cb)
  • add placeholder for top-of-turn error logging (#2163) (f0c257c)
  • Correlate sent errors with received errors (73b9cfd)
  • don't hang if our provides aren't needed (ebfc6a8)
  • don't require node to compile golang (f0709e0)
  • ensure that the "os" keyring version.Name is alphanumeric (964e117)
  • make HTTP replies more robust (4b98e64)
  • message batches reduce wallet setup from 80 to 20 chain trips (7d17f2f)
  • motivate some changes, drop an extraneous JSON-laundering (6a1dfe0)
  • prevent device node leaks and stale urlHandlers (a2825ac)
  • remove unnecessary Ansible step (9bd7e61)
  • simple fixes for chain parameters (a90ae2f)
  • speed up sim-chain when no configured inter-block delay (8c7dd1e)
  • tolerate symbols as property names (#2094) (15022fe)
  • updates for Ledger support (68043b1)
  • wire through the CapTP bootstrap message (7af41bc)
  • tame-metering: log problems trying to meter roots (5ed0310)
  • tame-metering: quieter warnings for defineProperty failures (7575b94)

Features

  • add a notifier to the timerService (#2143) (3cb4606)
  • add displayInfo as a parameter to makeZcfMint. (#2189) (f5cb3b9)
  • add GitHub action to run post-CI benchmark (0dc6335)
  • add OTEL (OpenTelemetry) histograms (f526ff4)
  • add support for post-CI automated benchmarking (2bdd9db)
  • allow $NO_FAKE_CURRENCIES=1 to eliminate default purses (0a2d054)
  • export SwingSet metrics to Prometheus via local HTTP port (78160fe)
  • finish support for notifying multiple promises at once (83c6c33)
  • make @agoric/eslint-plugin deal with assert.fail as throw (f23adee)
  • modified eslint config to forbid the use of for...in loops (#2423) (1eb65d4)
  • pluralize resolve syscall (6276286)
  • promise resolution notification refactoring (4ffb911)
  • publish benchmarks stats to GitHub artifact (cce6d36)
  • refactor notification and subscription (dd5f7f7)
  • retire C-list entries for resolved promises (13f96aa)
  • upgrade to cosmos-sdk v0.40.1 (b2813ac)
  • use xsnap worker CPU meter and start reporting consumption (62e0d5a)
  • vat-side promise ID retirement (94e0078)
  • wire metrics into fake-chain too (003c34c)
  • swingset: defaultManagerType option in makeSwingsetController (#2266) (b57f08f), closes #2260
  • swingset: xsnap vat worker (#2225) (50c8548), closes #2216 #2202
  • xs-vat-worker: bootstrap SES shim on xsnap (e775a99)
  • xsnap: Add interactive mode (42912a7)
  • xsnap: Add machinery for an xsrepl binary (#2187) (fc560d5)
  • xsnap: Add Node.js shell (4491145)
  • xsnap: Initial checkin from 34dfa4a (f083df0)
  • xsnap: Pivot terms from syscalls to commands (3576b5c)
  • slogulator annotation enhancements (1c09876)

2.11.0 (2020-12-10)

Bug Fixes

  • add interfaces and codec (57db476)
  • add more types and refactor naming of facets (8f81091)
  • add-path is deprecated (#2024) (d3a40ef)
  • allow the priceAuthority to supply a null quotePayment (9b038eb)
  • back off retrying to provision to prevent excessive load (422b4da)
  • build wallet URL with a trailing slash (f76ad22)
  • clear up all the paths through agoric start (1b89571)
  • complete the migration to dweb.crt and dweb.key (9f2383e)
  • Dependency checker yarn argument order (#2051) (c90fb61)
  • don't reset x/capability state on new chains; it's sensitive (6ba739e)
  • don't stack up reopeners (be3f146)
  • localhost IBC client wishful thinking (0653c03)
  • make bigdipper.sh even more robust (00b76a3)
  • minor fixes while debugging purse notifiers (bc4992a)
  • minor tweaks for dapp-oracle (b8169c1)
  • more support for hacktheorb (b58e5cd)
  • only run the kernel at the end of each block (a11fd5b)
  • patch -r esm to handle cached NPM downloads correctly (fa79f5f)
  • properly forward tokens to REPL (647b999)
  • properly generate a quote for every timer tick (0c18aae)
  • replace "observable purse" with getCurrentAmountNotifier (bdebc9e)
  • report when there is a spawn error from the Agoric cli (9073526)
  • store the current state of the ListCard in localStorage (ed6d7c1)
  • suppress auto-expand in setup page (875af56)
  • trim 300MB off of the Docker image size, and speed up builds (01c4fc1)
  • update Docker build steps (7c7379d)
  • update paths and make rules (f9982a3)
  • update to IBC relayer v1.0.0-rc1 (bea1021)
  • upgrade to Cosmos-SDK v0.40.0-rc3 (ad82894)
  • upgrade to stargate rc4 (2a549e4)
  • chain-params: 5s blocks to account for global round-trip time (6fac324)
  • upgrade the proto definitions (30c7b70)
  • use .dockerignore to omit swingset-runner and stat-logger (84d12d4)
  • use nodejs instead of sed for parsing package.json (f58df9c)
  • use the actual header height for the disconnect overlay (e13a9d9)
  • transform-metering: suppress a size warning by not compacting (af1648b)

Features

  • ertp: add purse.getCurrentAmountNotifier (a060b5f)
  • 2 parties can buy callSpread positions separately (#2019) (2b19988)
  • import-bundle: Preliminary support Endo zip hex bundle format (#1983) (983681b)
  • implement agoric --docker-tag=TAG (afac575)
  • implement makeQuoteNotifier(amountIn, brandOut) (3035203)
  • make wallet elements start out expanded (40bfda1)
  • stash the accessToken in localStorage (a8ce36c)
  • The Slogulator Mk I (42c5fdc)

2.10.0 (2020-11-07)

Bug Fixes

  • add liveslots-provided globals to vat Compartments (3c79d51), closes #455 #1846 #1867
  • add more types and update APIs (8b1c582)
  • add stubs for GC tools (no-op on Node v12) (7ecc184), closes #1872 #1925
  • add vatDecRef to kernel, offer to liveslots (#1926) (527b44a), closes #1872
  • allow priceRegistry to force-override an entry (dceafd6)
  • be resistent to rejected wake handlers (cde3ce2)
  • be robust for local chain to start (6cd7868)
  • coordinate assert typing with SES-shim (#1972) (ce56e24)
  • correct oversights & editing errors in virtual object code (581fb91)
  • correct types for PromiseRecord.resolve (84270a4)
  • count the outbound dataful trips to a given target (e0b5040)
  • don't create duplicate central price authority (a7ec3d1)
  • don't ever display a 404 for the wallet (4fb3d48)
  • don't overwrite existing files with link-cli (008b058)
  • enable type checking of zoe/tools and fix errors (98f4637)
  • encapsulate natSafeMath.isGTE (658c223)
  • excise conventionalDecimalPlaces for now (0e7c896)
  • export @agoric/store/exported (4dee52b)
  • further cleanup based on reviews (2e74cc7)
  • get local-chain and local-solo working without SDK (4dbe9e2)
  • have timer.tick return a promise that awaits the wake calls (1707ea2)
  • lexical balance simplifies issuer code (#1889) (224b39a)
  • make wallet more robust, and handle decimals fully (9c29e10)
  • more tests and further refinements (72f9624)
  • move makeQueryInvitation back to the publicFacet (b73733b)
  • prepare for --import-from=node0 (7300c3a)
  • prevent infinite loop when metering BigInt values (3b76f82)
  • properly display rejected offer manipulation (420a524)
  • properly implement block cadence (b2d9446)
  • properly return .pluginRoot when deploying plugins (2ed6a96)
  • put all parsing and stringification into the wallet ui (58ff9a3)
  • refactor liveSlots so it could provide vat globals (165205f), closes #1867
  • remove unreferenced variable (d908153)
  • rework virtual objects implementation to use revised API design (4c4c1c9)
  • somewhat tighter test for plain empty object (#1981) (eff15a4)
  • track initializations in progress with a WeakSet (f06f0fe)
  • tweak the deployment process (6606a67)
  • captp: don't crash hard on serialiasation failures (8c98a9a)
  • remove unused 'state' arg from makeLiveslots() (#1893) (c2f7910)
  • rename solo back to client (3b77445)
  • stop suppressing contract evaluation errors (#1887) (96cd62f)
  • use only embedded timer for quoteAtTime to gain performance (8aa959a)
  • various cleanups and simplifications in virtualObjectManager, enable cache size as config param (d564817)
  • WeakRef taming follows taming pattern (#1931) (3949dfb)

Features

  • a call spread option contract and tests. (#1854) (db0962b), closes #1829 #1928
  • add agoric.priceAuthority via priceAuthorityRegistry (c602d14)
  • add a decimals parameter, and decimals method to brand (241d0aa)
  • add ceilDivide to safeMath (259c08f)
  • add Testnet.$USD and Testnet.$LINK (eac7af9)
  • add types and flesh out manualTimer (e01c1b0)
  • allow network-config.gci to specify a URL to genesis (d15a26e)
  • convert the fakePriceAuthority to a PlayerPiano model (#1985) (cd7ebd8)
  • export extended @agoric/zoe/tools/manualTimer (dbfa393)
  • implement $AGORIC_CLI_OPTS override (e60e6f1)
  • implement virtual objects kept in vat secondary storage (9f4ae1a)
  • move oracle and priceAggregator contracts from dapp-oracle (035603b)
  • record displayInfo in the issuerTable (72a2137)
  • simple volatile priceAuthority (af76585)
  • update wallet for decimals (898ce50)
  • ertp: add displayInfo.significantDecimals (c740a05)
  • update bigdipper scripts and services (2be854d)
  • assert: Thread stack traces to console, add entangled assert (#1884) (5d4f35f)
  • zoe: add priceAuthorityRegistry (02c6147)

2.10.0-dev.0 (2020-10-19)

Bug Fixes

  • ag-solo: remove stale call to ackWallet (148957a)
  • agoric-cli: correct missing installation of ui subdirectory (4b073c2)
  • push the @agoric/sdk tag separately to trigger Docker builds (22bd723)

Features

  • zoe: export src/contractFacet/fakeVatAdmin for dapps (ea8568f)
  • split exchange benchmark rounds in two (94fdfdc)
  • E: . (eddf51e)
  • E: . (4ce1239)
  • E: . (672c593)
  • E: . adding tests for the sendOnly variant. (19182b3)
  • E: . continuing (6c51052)
  • E: . continuing onward (2b1eb5b)
  • E: . fixing E.js (4d57814)
  • E: . fixing test-e.js (a48bb95)
  • E: . test skipped for now until I am destumped (fd9df0f)
  • add vatstorage syscalls to kernel (90ef974)
  • E: . (c0d8013)
  • E: . another test added. (162c0d7)
  • E: . throwsAsync not asyncThrows (aa62713)
  • E: . voiding voids (3908652)
  • E: . was missing a closing paren. (b87d485)
  • E: starting to add missing E.sendOnly() (e04ee59)

2.9.0 (2020-10-11)

Bug Fixes

  • add getBootstrap method to handler object (bb1f525)
  • add netstring encode/decode/stream library (fd1da9e), closes #1797 #1807
  • allow for genesis.initial_height > 1 (c37fe33)
  • be more explicit when provision-one doesn't return JSON (0f0df62)
  • change encoders/decoders for kernel-worker protocol endpoints (8eb13fa)
  • clean up some debug log messages for consistency (56a0763)
  • clean up worker subprocess spawning (afeced8), closes #1777
  • disable state-sync by default, until we've implemented it (fedb533)
  • enable external agoric open when running under Docker (57446a5)
  • get deployment to work (77d2c6b)
  • handle syscallResult and deliveryResult consistently among workers (9e6e31a), closes #1775
  • have liveSlots reject Promise arguments in D() invocations (#1803) (cdcf99d), closes #1358
  • improve API to punt serialization to the backing store (fbfc0e7)
  • loadVat should accept managerType= in options (e9838f1)
  • make ag-cosmos-helper's home $HOME/.ag-cosmos-helper again (1b9ad64)
  • minor fixes for bootstrap and web server (0829061)
  • new 'worker-protocol' module to do Array-to-Buffer conversion (e23b7bb)
  • pass testLog to all vatWorkers (29bc81a), closes #1776
  • properly update inbox petnames (00477b5)
  • remove obsolete --home-client (f97171a)
  • rename netstring exports, clean up object modes (e2bbaa2)
  • stop using netstring-stream (6ac996c)
  • update @agoric/store types and imports (9e3493a)
  • upgrade to latest cosmos-sdk (876d2c8)
  • use the correct --home for sending provision-one (98f03d6)
  • ERTP: use makeExternalStore for ledgers (20667ce)
  • wallet: propagate offer handler exceptions to the WebSocket (3965361)
  • improved error message when eventual send target is undefined (#1847) (f33d30e)
  • tweaks from review comments (bccad6b)
  • update swingset runner demos for latest zoe incarnation (c169ffd)
  • upgrade to our --keyring-dir PR (temporarily) (38e170d)
  • use gentx --client-home=... to initialise genesis validators (54c5a2f)
  • use gentx --home-client flag (5595b41)
  • use gentx --home-server instead of --home-client (ed634bf)
  • cosmic-swingset: make REPL history numbers more robust (ed7729a)
  • eventual-send: silence unhandled rejection for remote calls (fb7c247)
  • swingset: add 'slogFile' option to write slog to a file (f97ef41)
  • xs-vat-worker: add makeMarshal to vatPowers (1edd620), closes #1776

Features

  • expose API server (0.0.0.0:1317) for deployed chain (d910692)
  • store: implement external store machinery (df4f550)
  • accept 'description' in vat creation options, pass to slog (cb2d73b)
  • swingset-runner: accept '--slog FILE' to write slogfile (d710582)
  • allow CapTP URL handlers (b3e1e61)
  • allow deploy scripts to see the deployment host and port (7ab7108)
  • cleanups and fixes to the wallet (db525f8)
  • implement slip44 HD path coin type (ed9743a)
  • overhaul kernel initialization and startup (23c3f9d)
  • pass through URL search params via wallet-bridge.html (643636e)
  • revamp vat termination API (aa5b93c)
  • agoric-cli: add --no-browser option to open (fb8607d)

2.8.1-dev.3 (2020-09-18)

Bug Fixes

  • cosmic-swingset: remove monorepo Go dependency (052518e)

2.8.1-dev.2 (2020-09-18)

Note: Version bump only for package @agoric/sdk

2.8.1-dev.1 (2020-09-18)

Note: Version bump only for package @agoric/sdk

2.8.1-dev.0 (2020-09-18)

Bug Fixes

  • add check so that expected values must be null in assertProposalShape (#1788) (0de4bcd)
  • assert keyword in getPayout (#1790) (e4ec018)
  • improve error messages for mintGains and burnLosses (#1796) (916f7ae)
  • restore deleted comments (9ed1f7d)
  • saveAllIssuers doc says it ignores the brand for known keywords (88675f5)
  • standardize whether keywords are quoted (1fa44d9)

2.8.0 (2020-09-16)

Bug Fixes

  • add a default offerHandler (#1759) (d25052d)
  • Add a seat in mintGains() if none is provided (0efa57f), closes #1696
  • add TODO unimplemented for liveSlots synthetic presences (6089e71)
  • allow local Presences to receive deliveries as well (93c8933), closes #1719
  • avoid database reentrancy issue during parallel testing (82bb33e)
  • change 'Trade Successful' offerResult to 'Order Added' (#1651) (7da7f58)
  • change webkey -> accessToken and polish usage (0362abe)
  • create dweb/data if it doesn't exist (f6fcb2e)
  • Deadline type parameter (4171e05)
  • declare amountMathKind parameter to makeissuerkit optional (a21832a), closes #1373
  • don't make two round trips in order to perform checks in addPool (a6efdab)
  • don't rely on validator DNS names when finding the network (56e0cb3)
  • drastically simplify the new-block listener (2b3160f)
  • eliminate unnecessary try/catch (f3dc45c)
  • excise half-fast Vagrant support (9bbab1c)
  • exit zcfSeats immediately on shutdown. (#1770) (2409eb5)
  • fix bug #1491, bogus hostStorage setup in test (eb30411)
  • fix bug #1544, type check store parameters instead of coercing (6d9b4b8)
  • fix bug #1609, confusing error message on malformed vat code (0c7e162)
  • have accessToken use a database in ~/.agoric, not network (bc9cf83)
  • implement epochs and make tolerant of restarts (1c786b8)
  • implement robust plugin persistence model (2de552e)
  • kickOut does not throw itself (#1663) (9985dc4)
  • let the other side know about a disconnect if we initiate it (510f427)
  • lint was unhappy with the types on an array of mixed promises (276e5fe)
  • make brand optional in the types of getAmountAllocated (#1760) (3a98491)
  • make generateAccessToken URL-safe by default (722f811)
  • make setState asynchronous (73f9d40)
  • minor updates from PR review (aa37b4f)
  • need to expose the wallet bridge to the dapp (e520b8f)
  • pass through the entire marshal stack to the vat (f93c26b)
  • properly detect incorrect transactions (9f8866b)
  • properly load and restore plugin device state (6461fb8)
  • reject promises in the arguments to syscall.callNow() (7472661), closes #1346 #1358 #1358
  • remove ability for localhost to auto-popup the wallet (597cb80)
  • remove ancient 'resolver' vatSlot type (4adcd58)
  • repair and add types for multipoolAutoSwap.getLiquidityIssuer() (7c7bcca)
  • restoring most state, just need to isolate the plugin captp (f92ee73)
  • restrict plugins to be loaded only from ./plugins (2ba608e)
  • revamp multipoolAutoswap: liquidity bug, in vs. out prices (92bfdd5)
  • robust .innerHTML protection as per OWASP (0e54b30)
  • SECURITY: ensure that HTML tags in the REPL are defanged (b9bd5eb)
  • SECURITY: use a private on-disk webkey for trusted auth (f769d95)
  • silence normal disconnects (01d94af)
  • simplify helper APIs (#1732) (068f4b1)
  • stop accepting offers if zcf.shutdown is called (#1772) (6ba171f)
  • unique() was LGPL; remove it in favour of a freer alternative (b2a5319)
  • upgrade to polycrc that supports safe integers (b7674c6)
  • userSeat.hasExited was returning the opposite of its intent (cdfc5e6), closes #1729

Features

  • add depositToSeat, withdrawFromSeat (#1680) (fdbdded)
  • add a simple CRC-6 to board ids to prevent dangerous typos (85ea976)
  • add local.plugin~.getPluginDir() (94e7016)
  • add swingset-runner bulk demo running tool (401dcb2)
  • agoric deploy --allow-unsafe-plugins (d2a545e)
  • allow Offer to accept a PaymentPKeywordRecord (f5f9c41)
  • be resilient to losing a connection to the chain (db4274f)
  • bidirectional loopback with makeNear (4e29d20)
  • further minor perf instrumentation tweaks (8e93cd0)
  • implement CapTP forwarding over a plugin device (b4a1be8)
  • implement makeLoopback and makeFar without a membrane (b0bccba)
  • properly terminate & clean up after failed vats (cad2b2e)
  • provide a button to activate the wallet from the bridge (18f1cb2)

2.7.1 (2020-08-31)

Bug Fixes

  • include exported.js in files list (bd960c3)

2.7.0 (2020-08-31)

Bug Fixes

  • actually test cosmic-swingset files in parallel (e936999)
  • add "TODO unimplemented"s (#1580) (7795f93)
  • add default moniker to hosts (08cc625)
  • add less, vim, jq to vagrant docker image (621859f)
  • add shutdown() to atomicSwap, coveredCall, and sellItems. (97dcd2e)
  • allow faucet-helper.sh to work without web access (8439ba3)
  • always rebuild the dweb config (517041d)
  • clean up E.when and E.resolve (#1561) (634046c)
  • clean up review issues (9ad3b79)
  • commit kernel state in END_BLOCK, for reset robustness (96d4912)
  • cope with delivery failures after replay due to dead vats (37dba42)
  • correct and simplify the bootstrap process (cb95764)
  • create a dweb start.sh so we keep the same systemd service (a58abb4)
  • deduplicate redundant work (#1550) (b89651c)
  • don't delete the questionID too soon (1e51cef)
  • don't early-bind the Promise constructor; metering changes it (a703e6f)
  • don't hardcode Agoric parameters within Ansible scripts (19d0e13)
  • don't modify the original 'config' object (36496ab), closes #1490
  • don't pluralise anything but the last path element (e173dbc)
  • don't reinstall the wallet unless it's the first time (8637331)
  • don't treat HandledPromises specially (9015744)
  • downgrade (f1f7a7b)
  • explicitly use utf-8 (5971544)
  • force --pruning=nothing until we upgrade to Stargate (9a3d54b)
  • get fake-chain working again, also with async commit (8b30196)
  • get git-revision.txt when out of tree (3275022)
  • handle post-replay notifications to a dead vat (4c0e343)
  • handle relative paths more better (e979475)
  • incorporate review feedback (9812c61)
  • kickOut takes a reason error rather than a message string (#1567) (c3cd536)
  • make rename return a promise so as not to race (712b095)
  • many small review comments (#1533) (ee8f782)
  • minor: rearrange asserts in Remotable (#1642) (c43a08f)
  • move faucet into SETUP_HOME/.. to share between chains (76b6a5d)
  • one less unnecessary "then" (#1623) (8b22ad6)
  • only create-validator from the actual node (6c76bcc)
  • open-code the yarn link operation for silence and speed (3b2671e)
  • reduce inconsistency among our linting rules (#1492) (b6b675e)
  • rely on HandledPromise shim (5eb8e30)
  • remove --pruning=nothing flag, as it's unneeded (48e1a40)
  • remove $BOOT_ADDRESS support (3fd1e1d)
  • remove dynamic role from sim-chain (1a3dd57)
  • remove obsolete produce-promise package (#1542) (a4a173f)
  • remove one layer of caching (the mailbox state) (50b1d7e)
  • send and receive Remotable tags (#1628) (1bae122)
  • stricter marshal requirements (#1499) (9d8ba97)
  • try to use HandledPromise for pipelineability (848a90f)
  • update vagrant/Dockerfile to buster and add to build (c8da8fc)
  • upgrade Docker images to Debian buster (1016cc5)
  • use REMOTE_STYLE rather than 'presence' to prepare (#1577) (6b97ae8)
  • ag-nchainz: provision solos with agoric.vattp capability (e9fc9ed)
  • agoric-cli: yarn link after yarn install (aea7f93)
  • ERef<T> is T | PromiseLike<T> (#1383) (8ef4d66)
  • add local.comms object as well (cf5566f)
  • add local.vattp to localBundle (a26165a)
  • add tests & fix for ZCF handling of crashes in contract code (3cccf66)
  • better debugging of three-party handoff (f4c6442)
  • change the default wallet to dapp-svelte-wallet (6722f23)
  • clear up and solve the races around ag-solo initialisation (f6482ac)
  • correct minor documentation error (6856de0)
  • correct problems that benchmarking turned up (30f3f87)
  • deprecate getMathHelpersName for getMathHelperName (#1409) (2375b28)
  • excise @agoric/harden from the codebase (eee6fe1)
  • highlight selected menu (4c3c169)
  • improve wallet contents migration, but still not great (650f4f5)
  • introduce summaryLine to allow tooltip with ripple (08393a8)
  • make local.vattp and agoric.vattp symmetrical (9b366d0)
  • make MenuButton more subtle (3cd6315)
  • minor fix to zoeTest benchmark (067dc9b)
  • more cleanups (b2cff30)
  • need type decl for HandledPromise.reject (#1406) (aec2c99)
  • quieter CapTP disconnections on the ag-solo side (6bfe9d6)
  • ag-nchainz: give solo vats the agoric.vattp power (a58bbba)
  • swingset: check promise resolution table during comms.inbound (e9d921a), closes #1400
  • more UI cleanups (ac1d2f7)
  • remove obsolete "unwrap" (#1360) (5796e0e)
  • rename producePromise to makePromiseKit (#1329) (1d2925a)
  • shuffle around exports (c95282e)
  • style payments (b7e6176)
  • supply default disconnected abort exception (274ed53)
  • tooltips within ListCards now work (e389dd1)
  • upgrade to SES 0.10.0 (bf8ceff)
  • use petname for zoe invite display, too (2559e0d)
  • agoric-cli: only create yarn links in _agstate/yarn-links (bb80fb2)
  • captp: make more code paths fail on disconnect (5c0c509)
  • swingset: add makeNetworkHost to vat-tp (4520633), closes #259
  • add a version check assertion to enforce Golang 1.14+ (433d1ce)
  • ensure all presences are resolved before creating bundle (c66e58c)
  • properly abort all communication when CapTP is disconnected (c2c0196)
  • SwingSet: reenable getInterfaceOf/Remotable vatPowers (fd7a8ca)
  • get line numbers to be proper again (8c31701)
  • match notifier semantics to async iterables (#1332) (efbf359)
  • Protect ag-solo script from shells with prompt strings ($PS1) (3d5cbe3)
  • rearrange home into local and agoric (44ba391)
  • remove controller ag-solo, as it is obsolete (c698e4c)
  • remove more controller references (c9af5a1)
  • remove obsolete bundle command (e87fecc)
  • bundle-source: fix comment misparse, make require optional (e8f4127), closes #1281 #362
  • create-agoric-cli: don't follow symlinks (26e02ae)
  • install-metering-and-ses: ensure HandledPromise is metered (8be98f2)
  • marshal: make toString and Symbol.toStringTag non-enumerable (fc616ef)
  • SwingSet: remove needless E argument from network functions (5e5c919)
  • remove unnecessary types (e242143)
  • rename produceNotifier to makeNotifierKit (#1330) (e5034f9)
  • silence more debug messages (e5ffb67)
  • tweak more types, make getVatAdmin into a function (8c1e9d2)
  • swingset: createVatDynamically option to disable metering (388af11), closes #1307
  • swingset: remove 'require' from vatEndowments (4b584df), closes #1214
  • swingset: replay dynamic vats properly (7d631bc), closes #1480
  • swingset: rewrite comms, probably add third-party forwarding (a5f3e04), closes #1535 #1404
  • top-level: remove depd patch-package workaround (354a3ae), closes #1229
  • zoe: don't @typedef areRightsConserved (281f7b1)
  • zoe: unify InstanceRecord usage (.instanceHandle -> .handle) (9af7903)
  • make scenario2 Makefile rules work again (3c2647a)
  • persist the savedChainSends for better recovery (d8f0eb6)
  • remove more BOOTSTRAP_ADDRESS references (f2141b6)
  • remove remaining set-json.js instances (987426f)
  • seal payload used for quoted details (#1610) (1acd5ba)
  • set the simpleExchange notifier's initial order book state (70c17fd)
  • should be typed ERef (#1611) (403eba3)
  • since we don't simulate, make sure our gas estimate is good (a0a2df5)
  • skip another failing test discovered by AVA (8103c83)
  • stop depending on config.toml contents in set-defaults (0dca9ff)
  • tweaks from PR review (3c51b0f)
  • update JS typings (20941e6)
  • upgrade to SES v0.10.1, and make HandledPromise shim work (5d0adea)
  • use agoric set-default instead of set-json.js (7e1f612)
  • use and export x/swingset/storage for all on-chain storage (c6bf0e2)
  • use Babel to strip comments and unmap line numbers (24edbbc)
  • use full harden when creating E (adc8e73)
  • use itemsMath.isEmpty() rather than grovelling through value (cdc09a1)
  • use kickOut() rather than exit() when the offer is turned down. (44aee5b)
  • use only loc.start to ensure nodes begin on the correct line (dc3bc65)

Features

  • adaptors between notifiers and async iterables (#1340) (b67d21a)
  • add ag-setup-solo compatibility, ag-solo setup (4abe446)
  • add agoric set-defaults (98e5fe9)
  • add a /dev/sda -> /home filesystem for Digital Ocean (71895fc)
  • add a stub for decentralised web (dweb) (d81b1f2)
  • add ansible plays for shuffling configs around (d153aa2)
  • add export-genesis playbook (cba5ae0)
  • add getIssuerForBrand to zoe (#1276) (4fe3c83)
  • add HandledPromise shim before lockdown() (5574462)
  • add want, exit to empty seat (#1584) (ae303e1)
  • allow dapps to suggest petnames for issuer/brand, instance, installation (#1308) (0eb378b)
  • allow pre-built kernelBundles for faster unit tests (8c0cc8b), closes #1643
  • augment kernelDump to account for dynamic vat schema additions (b7dde66)
  • clean up after dead vats (7fa2661)
  • copy dependency graph visualizer from SES-shim (#1650) (94f1216)
  • display kernel objects & promises in numeric order (c344b41)
  • ERTP v0.7.0 (#1317) (2d66b5a), closes #1306 #1305
  • introduce the shim/no-shim exports to distinguish callers (d2a6bff)
  • make production Zoe use prebundled zcf (138ddd7)
  • make Zoe in cosmic-swingset work with prebundled zcf (2859650)
  • new iterated Zoe benchmark that uses atomicSwap (3719907)
  • plumb up the chainID into BEGIN_BLOCK and AG_COSMOS_INIT (23aa90d)
  • update exchange benchmark to re-use simpleExchange contract (3ecbee0)
  • swingset: Add Node.js Worker (thread) -based VatManager (61615a2), closes #1299 #1127 #1384
  • swingset: add subprocess+node -based VatManager (184c912), closes #1374
  • swingset-vat: add xs-worker managerType (2db022d)
  • xs-vat-worker: locateWorkerBin finds built executable (aecaeb1)
  • add nav and paging, and improve formatting (9a22fc0)
  • add the Svelte wallet (f950400)
  • allow dapps to suggest a petname that is forwarded (1183a19)
  • allow the specification of --persistent-peers (2a86410)
  • defer the wallet UI until the start process (18ee099)
  • implement add-egress, add-delegate (ffd474a)
  • implement wallet upgrade, though not for dapp-react-wallet (8945ebb)
  • introduce a $ready store for when captp is initialised (d9d73d2)
  • move faucet account onto the controller where it is safer (8ba1c46)
  • much better formatting (f331df0)
  • phase 1 of vat termination: stop talking to or about the vat (0b1aa20)
  • Phase 1a of vat termination: reject promises from the dead vat (80fc527)
  • Phase 2 of vat termination: throw away in memory remnants of dead vat (9d6ff42)
  • provision without Python (1fdc1d3)
  • reintroduce anylogger as the console endowment (98cd5cd)
  • separate generation/writing of config.toml from genesis.json (eabe493)
  • separate wallet implementation from ag-solo (0bf7eab)
  • style the offers (c74ec50)
  • support use of module references in swingset config sourceSpecs (1c02653)
  • swingset-runner zoe demos to use pre-bundled zcf (3df964a)
  • use debugName to differentiate sim-chain instances (0efc33f)
  • use ListCard for Issuers (a7ec550)
  • use npm style imports with XS build tools via compartmap (903027a)
  • Zoe support for prebundled zcf (60050a5)
  • agoric: make agoric --sdk install use yarn link (3a53185)
  • agoric-cli: quieter deployment progress (11b60c1)
  • agoric-cli: update package.jsons during install (a4ff356)
  • captp: allow onReject handler to avoid unhandled promise (f76c804)
  • cosmic-swingset: add attenuated vattp to fake chain clients (e6f6aeb)
  • cosmic-swingset: send powerFlags from tx provision-one (5b68af5)
  • vattp: allow specifying a console object for logging (ae1a2a0)
  • use SES for the wallet frontend (3ba89dc)

2.6.0 (2020-06-30)

Bug Fixes

  • adjust agoric-cli genesis and config.toml params (41614a6)
  • better propagate and report egress query errors (3489a6e)
  • correct the export process, using a temporary cosmos-sdk patch (db139c3)
  • remove controller-based provisioning in favour of tx (023b0be)
  • systematically use bin/ag-chain-cosmos (527ae65)
  • use provisionpass for the bootstrap address (b0c2b73)
  • bundle-source: tests use install-ses (f793424)
  • captp: stop creating dist bundles (7067ae0)
  • ERTP: use install-ses for tests (41478e5)
  • swingset: dynamic vats do not get control over their own metering (c6e4118)
  • swingset: dynamic vats use named buildRootObject export (605183b)
  • swingset: raise meter FULL from 1e7 to 1e8 (deb2c16)
  • top-level: use patch-package to fix depd-vs-SES incompatibility (a8f1308), closes Agoric/SES-shim#251
  • add CSS to make REPL wrap correctly (b156251)
  • also tame symbol properties of globally-reachable objects (09498f4)
  • deal more gracefully with data sources that have a common base file name (f05f3ba)
  • delete c-list entries before notifying vats about promise resolutions (7fb8a1f)
  • don't ignore duplicate packets (bafac19)
  • don't retire promises that resolve to data structures containing promises (00098da)
  • don't simulate transactions since we don't use gas (3f92256)
  • ensure keywords do not collide with numbers (#1133) (15623f3)
  • eslint is tricksy, it is (1245ebb)
  • handle circular module references in nestedEvaluate (9790320)
  • make CHAIN_PORT configurable (a3e76cb)
  • miscellaneous cleanups (b184312)
  • much clearer IBC implementation (d3ee754)
  • preserve eval identity to support direct eval (d263118)
  • print circularity when it really is (96b07d6)
  • Recipient-side resolved promise retirement (65010cf)
  • Recipient-side resolved promise retirement (dc0aec9)
  • replace openDetail with quoting q (#1134) (67808a4)
  • Resolver-side resolved promise retirement (401e86a)
  • Resolver-side resolved promise retirement (7cb2984)
  • shorten chain cadence to 2 seconds (instead of default 5) (12a5688)
  • spawner leak, delete dead code (#1132) (201768f)
  • tweak the config.toml for local-chain (a1e815b)
  • update stat collection to account for promise retirement (3f242dd)

Features

  • swingset: activate metering of dynamic vats (96eb63f)
  • swingset: allow vats to be defined by a buildRootObject export (dce1fd4)
  • zoe: Zoe release 0.7.0 (#1143) (4a14455)
  • add agoric start local-solo (15165b4)
  • add agoric start local-chain (b2238aa)
  • add benchmarking support to swingset-runner (19a4ef7)
  • add facility for capturing and graphing kernel stats (0df83b3)
  • add hook to pre-execute one round of benchmarking before starting to measure (890f88a)
  • add new transaction to provision a single address (d75c867)
  • add stats collection facility to kernel (1ea7bb7)
  • add stats dumping capability to swingset runner and kernel dumper (83efadc)
  • count number of times various stats variables are incremented and decremented (129f02f)
  • do not require accounts to exist before provisioning (043dbcd)
  • enable ag-chain-cosmos Node.js debugging (5779d6e)
  • inbound network connection metadata negotiation (a7ecd9d)
  • set the parameters for starting with an exported genesis (9b62335)
  • support value return from bootstrap and other exogenous messages (a432606)
  • cosmic-swingset: add board, use board in mailboxAdmin (#1167) (1381ba6)
  • install-ses: new package (7fa8f2c)
  • transform-metering: add balance-getters to refillFacet (8200188)
  • further along the path of state export and migration (13dc588)
  • implement agoric cosmos ... (0587c6a)
  • just enough mechanism to support the provisioning transaction (889a5db)
  • kernel promise reference counting (ba1ebc7)
  • outbound connection metadata negotiation (5dd2e63)
  • pass blockHeight and blockTime from all IBC events (79bd316)
  • pass local and remote address to onOpen callback (2297a08)
  • Zoe simpleExchange perf test in swingset-runner (79da155)

Performance Improvements

  • Don't use the useWritemap option if we know we don't need it (c272e43)

2.5.0 (2020-05-17)

Bug Fixes

  • bump dependency on newer cosmos-sdk (d114c5e)
  • don't bypass the block queue when running simulateBlock (444067d)
  • don't stall extra turns while resolving to local objects (04740d6)
  • fix double invoke bug (#1117) (b8d462e)
  • fix typedef for makeInstance (was erroring incorrectly) and give better error message for an invalid installationHandle (#1109) (4b352fc)
  • fix Zoe bug in which offer safety can be violated (#1115) (39d6ae2), closes #1076
  • transform-eventual-send: split out rewriter.js to fix cycle (8a54d36)
  • make output from bundleSource correspond to source map lines (c1ddd4a)
  • remove many build steps (6c7d3bb)
  • temporary fix to support displaying NFT extents which are arrays of objects (#1094) (07e554b)

Features

  • marshal based on user's petnames (#1092) (5e1945c)
  • transform-eventual-send: expose bare transform function too (0bb35eb)
  • provide scaffolding for testing scenario3's home objects (84752e2)

2.4.0 (2020-05-10)

Bug Fixes

  • always send non-empty acknowledgements (5e22a4a)
  • be lazy in choosing which handler to use (904b610)
  • be sure to propagate handler failures (2b931fc)
  • bigdipper settings changes (facb79d)
  • fail hard if there is no $BOOT_ADDRESS (eeb2592)
  • filter proposal give and want by sparseKeywords in zcf.reallocate (#1076) (fb36a40)
  • fix typo in idToComplete (#1050) (605e00e)
  • full traversal of sendPacket from end-to-end (5c76981)
  • index_all_keys for IBC (f513bda)
  • rewrite liveslots use of HandledPromise, remove deliver() stall (42c2193)

Features

  • ag-nchainz start-relayer now starts a single-channel relay (6946dfb)
  • Optionally suppress wallet (ceae9e6)

2.3.0 (2020-05-04)

Bug Fixes

  • crisper rejection of closed and revoked ports/connections (589702b)
  • decrease the need for sendPacket delay (almost fixed) (9f65899)
  • fix "delegates" conditional syntax (0a774a5)
  • ibcports->ibcport (efb9d95)
  • introduce sleep to help mitigate a relayer race condition (c0014d3)
  • lots and lots of improvements (8f1c312)
  • minor cleanups (8b63024)
  • missed a change in refactoring (567f713)
  • more dIBC inbound work (6653937)
  • propagate flushChainSend argument from fake-chain to launch (69ee801)
  • propagate Go errors all the way to the caller (ea5ba38)
  • proper inbound IBC listening (3988235)
  • reject all sends when the connection is closed (61b0975)
  • remove hack to delay packets with a timer; the relayer wins! (a16a444)
  • upgrade Cosmos SDK to fix x/capability nondeterminism (1870d5e)
  • use the downcall's partial Packet as arguments where possible (3befb25)

Features

  • end-to-end dIBC across chains (151ff3f)
  • implement console endowment for the REPL (4aaf56d)
  • suspend an outbound connection until the relayer picks it up (ee22926)

2.1.0 (2020-04-13)

Note: Version bump only for package @agoric/sdk

2.1.0-alpha.0 (2020-04-12)

Bug Fixes

  • better detection of already-listening ports (6194c31)
  • change the account prefix to "agoric" and app name to Agoric (0c14de9)
  • cosmic-swingset should use disk-backed storage (da0613a), closes #899
  • increase level of contract console.log to console.info (00156f2)
  • liveslots use the returned promise rather than our own (3135d9a)
  • reinstate carrying forward public keys (504a8ce)
  • revive the ability of a zoe client to get access to the code. (1ad9265), closes #877
  • rewrite HTML comments and import expressions for SES's sake (1a970f6)
  • shorten HandledPromises to propagate handlers (2ed50d2)
  • shut up eslint (fcc1ff3)
  • tweak log levels (b0b1649)
  • zoe: ensure offers have the same instance handle as the contract calling the contract facet method (#910) (0ffe65f)
  • update checkIfProposal and rejectIfNotProposal (7cdf09d)
  • zoe: improve assertSubset error message (#873) (4c6f11f)

Features

  • add the returnedP as the last argument to the handler (1f83d99)
  • allow sparse keywords (#812) (dcc9ba3), closes #391
  • Be smarter about where database files are located. (2eb1469)
  • Check that makeInstance() returns an actual invite (546d2ef), closes #820
  • introduce a wrapper around ag-solo to start in inspect mode (93e4887)
  • new tool -- kernel state dump utility (f55110e)
  • retry the CapTP Websocket if it failed (be4bd4e)
  • use SETUP_HOME/cosmos-delegates.txt and increase defaults (5e87ae1)

2.0.1 (2020-04-03)

Bug Fixes

  • make provisioning server work again (c7cf3b3)

2.0.0 (2020-04-02)

Bug Fixes

  • add single-node subcommand on the Docker entrypoint (210edb6)
  • convert some tests from try/catch/finally to t.plan() (df8e686)
  • have a generic IBCChannelHandler that takes ChannelTuples (3bff564)
  • make agoric start work without SDK (8e5b6d6)
  • make unhandledRejections log louder (313adf0)
  • prevent deadlock in the input queue for delivered commands (ee0e488)
  • properly install outside of SDK (1087400)
  • properly use EncodedLen (0633825)
  • revert Zoe change (#775) (9212818)
  • run "yarn install" in the ui directory (62bfe8d)
  • stringify queued objects when sending over WebSocket (6c45374)
  • use commander for better help output (d9e8349)
  • use the PacketI interface where possible (48c3bf5)
  • wait for payments at opportune moments (53f359d)

Features

  • add E.when(x, onfulfilled, onrejected) as a convenience (4415f67)
  • allow optional arguments to redeem (e930944)
  • collapse the dapp-template history (1cb5798)
  • implement the Go side of dynamic IBC (cf2d894)
  • just ack IBC packets and close (88257f8)
  • use Agoric version of cosmos-sdk for dynamic IBC (b004f11)

0.4.2 (2020-03-25)

Bug Fixes

  • accomodate modified offer ids (38d367d)
  • actually synchronise the inbound messages (9568483)
  • add missing files and dependencies (2dc3e07)
  • allow disabling of logging by setting DEBUG='' (131c1c6)
  • allow vats under SwingSet to unwrap their promises (f2be5c7)
  • freshen the simple exchange dApp (82f634f), closes #646
  • getOfferDescriptions is now working (b50690b)
  • hydrateHooks on the HTTP handler instead of addOffer (b3e214d)
  • improve command device support (c70b8a1)
  • input queuing, and use the block manager for fake-chain (c1282c9)
  • introduce and use Store.entries() (b572d51)
  • let the caller handle dispatch rejections (8a9761d)
  • make default log level for ag-chain-cosmos more compatible (258e4c9)
  • make REPL occupy less of screen when below wallet (d4fc392)
  • make the changes needed to cancel pending offers (b4caa9e)
  • make the fake-chain better (b4e5b02)
  • prevent simulated blocks from reentering the kernel (42f7abd), closes #763
  • propagate makeContract exceptions (9a3cc18)
  • propagate more errors correctly (0437c5f)
  • proper sorting of wallet entries (24627eb)
  • properly kill off child processes on SIGHUP (93b71cd)
  • reenable package.json substitutions (10bece7)
  • regression in agoric start --reset (206ecd0)
  • reinstate console endowment needed for Zoe contract debugging (851d1ec)
  • remove extra interleaved spaces from assert console.error (c6af2e4)
  • remove nondeterminism from ag-solo replay (2855b34)
  • remove reference to ping (a9a3f0f)
  • rename connection to channel (f50a94b)
  • revert usage of SIGHUP to SIGINT (2948400)
  • secure the console and nestedEvaluate endowments (ed13e80)
  • ses-adapter/package.json: fix files (3b77dff)
  • silence the builtin modules warning in agoric-cli deploy (9043516)
  • we now send 50agstake to each of the validators (9a78552)
  • swingset: controller: enforce withSES==true (e4d9b04)
  • swingset: disable all non-SES tests (b481008)
  • add END_BLOCK controller call (b115b55)
  • add issuerRegKey to the purse output (f7d90fa)
  • anachrophobia should crash hard (42deaaf), closes #68
  • backport scripts/link-cli.js (2974075), closes #661
  • display in terms of issuers, not assays (8a2a692)
  • don't double-withdraw from the first purse of an assay (b37203e)
  • first draft use collection equality (6acbde7)
  • fix discrepencies revealed by the agoric-cli test (422b019)
  • generalise the wallet to arbitrary offers (4b3ae29)
  • make code clearer (efc6b4a)
  • panic on END_BLOCK error (28b6d46)
  • polish the wallet and dApp UIs (292291f)
  • remove 'Nat' from the set that SwingSet provides to kernel/vat code (b4798d9)
  • rename .agwallet and .agservers into _agstate (a82d44f)
  • run mkdir with recursive option to prevent exceptions (a01fa04), closes #662
  • stringify an inboundHandler Error better (6f80429)
  • symbols no longer passable (7290a90)
  • unbreak the fake-chain (d84ee30)
  • use COMMIT_BLOCK action to sync state (5a3c087)
  • ag-cosmos-helper: properly register /txs route (17bae2d)
  • ag-lcd: tolerate cosmos/cosmos-sdk#5592 (9eee270)
  • ag-solo: be more tolerant of missing wallet (94c2a3e)
  • ag-solo: don't require a git checkout to init (b8c4474), closes #570 #562
  • ag-solo: reenable the ag-solo bundle command (6126774), closes #606
  • ag-solo-xs: use noflake to help mitigate CI flakes (4ee9889), closes #471
  • agoric-cli: changes to make agoric --sdk basically work again (#459) (1dc046a)
  • agoric-cli: install the SDK symlink if requested (f7fd68f)
  • ansible: remove state that needs regeneration (110dcb8)
  • bundle: use the same HandledPromise (e668d3c), closes #606
  • bundle-source: regain default 'getExport' (f234d49)
  • chain: properly commit state (7703aa7)
  • chain: state is being stored correctly again (fe0b33d)
  • cli: improve install, template, fake-chain (0890171)
  • configurableGlobals: use to wrap all builtins under SES (53c4549)
  • deployment: update deployment steps (7527eb0)
  • end-to-end: metering works for some malicious code (905061c)
  • evaluator: quiescence works (15adc38)
  • github: disable pessimal cache temporarily (4cae336)
  • github: hash only minimal cache key files (f79f976), closes actions/runner#319
  • github: update build process (d90c1c6)
  • go: use agoric-labs/tendermint subscription-keep-id (10b2cd2)
  • init: handle symbolic links and ignored files properly (2d6b876)
  • lockdown: Begin working toward lockdown-style SES API (3e63758)
  • Makefile: better convention for installing ag-chain-cosmos (b27426a)
  • Makefile: install ag-chain-cosmos in $GOPATH/bin/ (d4af74f)
  • Makefile: set up the GOPATH environment (ab72ca5)
  • makePromise: support HandledPromise.unwrap(p) (fb98636)
  • metering: bump default combined meter for autoswap compatibility (ac10627)
  • metering: get all tests working again (f2a3206)
  • metering: more cleanups and documentation (78ced24)
  • metering: properly reset for each crank (ba191fe)
  • metering: properly transform try/catch/finally (6fd28ae)
  • metering: refactor names and implementation (f1410f9)
  • provisioner: allow for mount points as well (7350220)
  • provisioning-server: remove debug prints (f5b0e14)
  • pserver: clarify StackedResource (1251669)
  • pserver: new helper arguments and returns (d40f2ac)
  • solo: get repl working again (a42cfec)
  • spawner: fail-stop meter exhaustion (e390c35)
  • spawner: get tests to pass by fighting the esm package (6993c1b)
  • spawner: move makeCollect into a separate file (31c2e28)
  • start: parse --pull properly (a5ac2c9)
  • SwingSet: ensure the registerEndOfCrank doesn't allow sandbox escape (053c56e)
  • SwingSet: remove Nat from nested evaluation contexts too (69088d1)
  • use latest @agoric/tendermint (346b582)
  • SwingSet: remove redundant ${e} ${e.message} (9251375)
  • tame-metering: get working under SES 1.0 (8246884)
  • tame-metering: new implementation of isConstructor (362456d)
  • tame-metering: remove .prototype via bind if necessary (a77c7e3)
  • test-make: run the default Makefile target (aa7d960)
  • transform-metering: only enable meters; the host has to disable (d1b8e84)
  • rename ustake -> uagstake (ac89559)
  • try again with tape-xs ag03 (ad24880)
  • wrap globals instead of using a Proxy (35b2d5c)
  • ag-chain-cosmos: keep SwingSet state in the validator state dir (#434) (00b874c), closes #433
  • ansible: double the stakes (21fe284)
  • api: remove many unnecessary methods (cf10dc3), closes #41
  • bundle: deprecate the experimental E.C() syntax (07f46cc)
  • bundle-source: remove "type": "module" from package.json (326b00a), closes #219
  • captp: use new @agoric/eventual-send interface (d1201a1)
  • cosmic-swingset: minor UI versioning tweaks (e0a5985)
  • cosmic-swingset: reduce unnecessary logs (#425) (8dc31a0), closes #424
  • cosmic-swingset: reenable setup scripts (e533479), closes #311
  • deployment: properly use agoric-sdk tag (75dd0c3)
  • deployment: track deployment version (ad63fee)
  • deployment: update Dockerfile for Makefile (f5607af)
  • docker: cache Go depedency downloads to optimise docker builds (aba22f0)
  • docker: more updates for ag-setup-solo (e4b7c86)
  • docker: propagate git-revision correctly (d8e6f7e)
  • docker: remove dependency on NPM (d3a8050)
  • E: address PR comments (a529982)
  • eventual-send: Update the API throughout agoric-sdk (97fc1e7)
  • fluentd: tweak the Loki records (cf62725)
  • fluentd: update cache before running apt (6d44e70)
  • fluentd: update Loki store format (a834015)
  • HandledPromise: implement specified API (8da7249), closes #42
  • Makefile: remove old docker-build and docker-push rules (92a3816)
  • package.json: add packages/deployment to workspaces (b847215)
  • pserver: use with-blocks when possible (#384) (43ac9ac)
  • resolve: protect against reentrancy attack (#401) (d1f25ef), closes #9
  • security: update serialize-javascript dependency (#340) (970edd3)
  • start: eliminate default fake delay, and add --delay option (28ce729), closes #572
  • SwingSet: passing all tests (341718b)
  • testnet: properly push agoric/cosmic-swingset-setup (d82aad6)
  • timer: don't enforce advancement, just prevent moving backwards (7a0a509), closes #328
  • unwrap: pass through non-Thenables before throwing (67aba42), closes #518
  • ustake: stake is actually micro-stake (1aaf14f)
  • address PR comments (b9ed6b5)
  • zoe: have install accept a moduleFormat argument (#235) (8621eca)

Features

  • accomodate Zoe roles as is currently designed (d4319d1)
  • add anylogger support (4af822d)
  • Add legends to the graphs produced by the stat-logger graphing utility (65340d9)
  • Add option to force GC after every block, add 'help' command, clean up error reporting (e639ee5)
  • Add PDF and stdout support to stat-logger graphing (22238e7)
  • add wallet offer publicID querying API to the bridge (4010226)
  • add wallet.ping() method for testing (1f07cd2)
  • allow subscribing to wallet offer changes (5ad56e6)
  • default to silent unles DEBUG=agoric (2cf5cd8)
  • implement the Cosmos block manager (3a5936a)
  • implement wallet bridge separately from wallet user (41c1278)
  • include requestContext in inboundCommand, and use it in wallet (b332870)
  • Log (and graph) database disk usage (9f9f5af)
  • make ERTP methods acccept promises or payments (4b7f060)
  • new multirole (ending with '*') implementation (442fd20)
  • polish link-cli a little (ffbd029)
  • revamp the wallet for brands and Zoe roles (b4a806c)
  • separate registerAPIHandler from registerURLHandler (7c670d9)
  • use anylogger (81a8950)
  • use anylogger to allow flexible message dispatch (be8abc8)
  • ag-solo: integrate wallet UI with REPL (a193e87)
  • bigdipper: add Big Dipper config (f98ff43)
  • bootstrap: accept explicit semver (such as --bump=1.17.0) (b3da002)
  • bundle-source: make getExport evaluate separate modules (bec9c66)
  • cosmic-swingset: use a fake chain for scenario3 (#322) (f833610)
  • deployment: add Prometheus support for monitoring (713f63a), closes #337
  • E: export E.resolve to use HandledPromise.resolve (93c508d)
  • eval: end-to-end metered evaluator (db3acfd)
  • fluentd: support Loki log store (c4bffbf)
  • HandledPromise: add sync unwrap() to get presences (5ec5b78), closes #412
  • ibc: use latest cosmos-sdk/ibc-alpha branch (153f1b9)
  • init: use --dapp-template (default @agoric/dapp-simple-exchange) (3bdf8ff)
  • link-cli: install the Agoric CLI locally (5e38c5a)
  • metering: allow the metering vat to register refill functions (ce077a3)
  • metering: create a transform to limit resource use (e2c2b68)
  • nestedEvaluate: support new moduleFormat (deb8ee7)
  • reset-state: add command to ag-solo to reset SwingSet (233c0ff)
  • spawner: implement basic metering (8bd495c)
  • start: implement agoric start testnet (cbfb306)
  • SwingSet: pass all tests with metering installed (d2dbd2c)
  • tame-metering: new packages for metering (d421bc5)
  • tame-metering: no more Proxy, clean up initialization (467d62b)
  • transform: add support for passing RegExp literals through constructor (5c9e1e7)
  • transform-eventual-send: pass HandledPromise endowment to evaluator (7a5b74d)
  • zoe: implement metering of contracts (9138801)

Performance Improvements

  • Remove call to harden in details for performance reasons (de1f04b)

0.11.0 (2019-11-22)

Bug Fixes

  • repl: detect cycles when trying to stringify the value (0d6fa9e), closes #123
  • rollup: use preferBuiltins for Node.js bundling (733faa1)

Features

  • abort: provide a separate function to abort the connection (b9ac6b5)

0.4.5 (2019-11-13)

0.10.15 (2019-11-08)

Bug Fixes

  • ag-setup-solo: properly pass through the netconfig (8dcbae1)
  • bootstrap: get scenario#1 to work (033c654)
  • dapp: make autoswap the default (0ccc7c0)
  • deploy: Remove mints in deploy scripts (04de7b0)
  • E: don't leak the makeE*Proxy functions directly (8d5131f)
  • provisioning-server: robustness (e90e6fe)
  • setup: be sure to use rsync checksum option (584bc73)
  • vat-http: use Promise.allSettled semantics to tolerate errors (6f9aa68)
  • web: allow web extension urls (e40160d)

Features

  • autoswap: Reduce the number of awaits in init-autoswap.js (#119) (32aaf84)
  • deploy: allow autoswap and myFirstDapp deploys (876038c)

0.10.12 (2019-11-03)

Bug Fixes

  • wallet: copy HTML directly (dadfac8)

Features

0.10.11 (2019-11-02)

Bug Fixes

  • timer: workaround to prevent monotonic error (88a934b)

0.2.1 (2019-11-02)

Bug Fixes

  • contract, api: don't limit files (8e4fd25)
  • http: walk the registeredHandlers backward properly (157b9ad), closes #114
  • vagrant: chdir to the dapps directory (4ca1916)
  • yarn: use local install to avoid permission problems (0efd29b)

Features

  • install: detect incorrect Go version (6fb3722)
  • vagrant: add Vagrant instructions (7e509c0)

0.1.6 (2019-11-02)

Bug Fixes

  • start: don't use Promise.allSettled (a0067e1)

Features

  • api: deploy api handler to cosmic-swingset (a778018)
  • proxy: Added entry for bridge URL (8b13b1e)
  • start: implement solo mode (71f1fb4)

0.10.10 (2019-11-02)

Features

  • deploy: upload contracts (866a4e3)
  • http: expose registeredHandler (e4ed2bc)
  • web: override html with dapp-html if it exists (a1abbf1)

0.10.9 (2019-11-02)

Bug Fixes

  • deps: don't depend on ertp (97d5f63)

Features

  • exchange-vat: Reduce the number of round-trips (#112) (e24e35f)
  • spawner: add local vat spawner (7e53b25)

0.1.1 (2019-11-02)

Bug Fixes

  • ag_pserver: optimize for many pre-provisioned pubkeys (42dced0)
  • ag-pserver: don't provision if none needIngress (c1b1b65)
  • ag-pserver: use agCosmosHelper in all places (625e86e)
  • exchange-rate: Fix the exchange rate assay display (cbd8b58)
  • exports: export the Acorn parser we use (1cb5497)
  • LOADING: make flag available to CapTP, but not home (859e7b5)
  • package: properly publish to agoric (671ea78)
  • pipelining: enable pipelining of GET, POST (d500bf9), closes #2
  • setup: properly use '-y' in Dockerfile apt-get (82d5e83)
  • slot: prevent crosstalk by tracking inbound vs. outbound slots (19906c4)
  • test: use same acorn Parser as acorn-eventual-send (de73b78)

Features

  • ag-setup-solo: new --destroy flag to reset state (43a87ba)
  • bundle: backend implementation for upload-contract, register-http (b10e244)
  • bundleSource: use explicit acorn argument (5aa61eb)
  • DEV: allow building of sources from cosmic-workspace (6317d24)
  • docker/ag-solo: have upload-contract use local install (4239fef)
  • has: implement 'has' traps (0b4b1d2)
  • init: first cut (b8069f9)
  • init: more templates (2d19210)
  • init-autoswap: bundle command to initialize autoswap (4c5a146)
  • install: npm/yarn install (ad66d97)
  • install: prefer yarn, and install it if not there (c8add72)
  • main: initial cut (ebde410)
  • main: remove some ambient authority (dd5accf)
  • wallet-vat,autoswap-vat: Create wallet & autoswap backend (207f884)

0.10.7 (2019-10-23)

Bug Fixes

  • captp: inband CTP_ABORT to reject all pending promises (fb3630a)
  • registar: add unit tests (772e907)
  • registrar: PR comments and more tests (41725bf)
  • start: ameliorate race conditions (98db740)
  • test: remove registrar test.only (9538fda)
  • upload-contract: no automatic contracts/* upload (654bd5e)

Features

  • disconnected: function to break all pending promises (79a930a)
  • index: first cut (f5606fb)
  • vats: add home.registrar and home.moolah (4b8ce42)

0.4.4 (2019-10-17)

Features

  • E: new shortcuts to avoid full chaining (ebd7e2e)

0.10.5 (2019-10-16)

Bug Fixes

  • upload-contract: prevent race condition when restarting ag-solo (d478c09)

0.1.0 (2019-10-16)

Bug Fixes

  • captp: be sure to bind the questionID, promiseID (0fd6f30)
  • origin: allow any localhost origin (80e35fc)
  • test-node-version: temporarily disable until Node.js v12 is LTS (5852817)
  • upload-contract: make deterministic (a24124a)
  • upload-contract: only run on start if we have a client role (2101e20)

Features

  • api: implement dispatch function, more exports (cad73a2)
  • web: enforce same-origin for websocket and /vat post (a704120)
  • zoe: allow specifying additional endowments for contracts (#155) (a209c90)
  • zoe: implement 'home.zoe' and Zoe contract upload (a1a73bd)

BREAKING CHANGES

  • api: the default export is now named makeCapTP

Other named exports are E, harden, HandledPromise, Nat.

0.4.3 (2019-10-14)

Bug Fixes

  • applyMethod: better error reporting for missing methods (593f142)
  • E.C: anonymous methods now work (c0e11a8)

Features

  • bootstrap: allow a thunk instead of a bootstrap object (d4582fc)
  • contractHost: support new moduleFormat bundling (185016e)
  • contracts: upload to contractHost (f9e7b5e)
  • contracts: use home.uploads scratch pad for upload history (2c8ec64)
  • upload-contract: push zoe-* contracts as well (32037fb)

0.4.1 (2019-10-11)

Features

  • E.C: implement strawman chaining proxy (f97d5a4)
  • HandledPromise: add applyFunction static methods (4f0e4bf)
  • scenario2: enable multiple solo nodes (c8337f9)

0.10.4 (2019-10-09)

0.0.27 (2019-10-08)

0.4.0 (2019-10-08)

0.10.3 (2019-10-07)

0.10.2 (2019-10-04)

0.10.1 (2019-10-03)

0.0.26 (2019-10-02)

0.3.3 (2019-10-02)

0.0.25 (2019-10-02)

0.3.2 (2019-10-01)

0.3.1 (2019-10-01)

0.10.0 (2019-09-26)

0.0.24 (2019-09-26)

0.0.23 (2019-09-26)

0.3.0 (2019-09-26)

0.2.5 (2019-09-26)

0.9.1 (2019-09-18)

0.0.22 (2019-09-18)

0.9.0 (2019-09-11)

0.8.8 (2019-09-10)

0.0.21 (2019-09-09)

0.2.4 (2019-09-06)

0.8.7 (2019-09-05)

0.8.6 (2019-09-04)

0.0.20 (2019-09-03)

Reverts

  • Revert "require Node.js v12" (6feaf2a), closes #99

0.8.5 (2019-08-28)

0.8.4 (2019-08-21)

0.8.3 (2019-08-16)

0.8.2 (2019-08-16)

0.8.1 (2019-08-14)

0.8.0 (2019-08-14)

0.2.3 (2019-08-13)

0.7.8 (2019-08-07)

0.0.19 (2019-08-06)

0.7.7 (2019-08-06)

0.7.5 (2019-08-01)

0.0.18 (2019-08-01)

Reverts

  • Revert "index.js: share the unfulfilled handler in promise chains" (988b3fc)

0.0.17 (2019-07-31)

0.2.0 (2019-07-31)

Bug Fixes

  • better @agoric/evaluate integration (e906028)

0.0.16 (2019-07-24)

0.1.10 (2019-07-13)

Reverts

  • Revert "fix: invoke the handler synchronously" (b2e5d08)

0.1.9 (2019-07-13)

Bug Fixes

  • invoke the handler synchronously (6d957e6)

0.1.8 (2019-07-12)

0.1.7 (2019-07-12)

0.1.4 (2019-07-11)

Bug Fixes

  • properly postpone multiple arguments (54d53d4), closes #9 #12

0.1.3 (2019-07-10)

0.7.3 (2019-06-20)

Bug Fixes

Reverts

  • Revert "wire together 'user' storage device" (e2fe21b)