Skip to content

Releases: Agoric/agoric-sdk

agoric-upgrade-11-rc0

28 Aug 00:44
Compare
Choose a tag to compare
agoric-upgrade-11-rc0 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-11-rc0 release. This release is primarily intended to fix state-sync and data-encoding formats, and does not change the behavior of any contracts. It fixes at least the following issues:

  • #8031 : the JavaScript VM export data is now stored more efficiently, without encoding
  • #8081 : using state-sync import to create a new node no longer breaks an hour later
  • #8025 : state-sync import now repopulates all metadata, enabling a later state-sync export
  • #7929 : remove Golang version from in-consensus messages
  • #7829/#7834/#7836 : assume all compiler builtins are present
  • #6527 : enable genesis export with JS VM data

Assuming agoric-upgrade-11-rc0 satisfies all pre-release/testnet validation checks, it will be promoted to agoric-upgrade-11, and recommended for chains to upgrade from the previous mainnet1B release. As a state-machine-breaking upgrade, once approved, all chain validators will need to upgrade from mainnet1B to this new version (after the chain halts due to reaching the height required in a governance proposal).

When this upgrade is activated, there will be a slight pause while some database contents are migrated.

After the upgrade, state-sync snapshots will include more data than before. Nodes which have inadvertently pruned this data (e.g. those created from an earlier state-sync) will not be able to produce such snapshots, and will need to be restored from a state-sync snapshot made with the agoric-upgrade-11 software. Please see the forum post for more details.

Discussion for this release will take place in the Agoric community forum.

Tag: agoric-upgrade-11-rc0
Commit: 92b6cd7
Docker: ghcr.io/agoric/agoric-sdk:36

As shown in go.mod this release is based on:

ibc-go v3.4.0
cosmos-sdk v0.45.11
tendermint v0.34.23

How to upgrade

Presuming that your node is running mainnet1B, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-11 has been reached, your node will halt automatically allowing you to upgrade the agoric stack.

# prepare by installing Go 1.20.2 or higher, Node 16, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-11-rc0
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Do not copy the agd script or Go binary to another location. If you would like to have an executable agd in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd.

Node Version

Node.js LTS (version 16.13.0 or higher).

Golang Version

The agoric-upgrade-11 release requires Go 1.20.2 or higher.

C Compiler Version

In general, Clang version 10 or GCC version 10 required, however this release may work with GCC version 9.

Troubleshooting repoconfig.sh: No such file or directory

Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk at runtime. Copying agd to /usr/local/bin or the like is unlikely to produce a working installation. For more detail, see: #7825

Troubleshooting Cannot find dependency ... in systemd

If you have LimitNOFILE=4096 in your systemd unit file, change it to LimitNOFILE=65536. For more detail, see #7817

Specifying --upgrade-info for the software upgrade proposal

The ./scripts/gen-upgrade-proposal.sh is designed to aid in composing a agd tx submit-proposal software-upgrade ... command. In particular, it captures package checksums to verify integrity of downloaded software.

pismoD

10 Jun 01:19
f760927
Compare
Choose a tag to compare

The Agoric engineering team is pleased to publish the pismoD release. This release contains the fix for the barberry security advisory. Validators have already been instructed to apply the essential changes of this release as a patch on top of the pismoC release. This pismoD release is provided as a convenience for those who did not apply the patch, or who wish to reconstruct the post-patch source tree.

Tag: pismoD
Commit: f760927771c926464a98b0a902087fdc1bddabd5
Docker: not provided with this release

As shown in go.mod, this release is based on:

ibc-go 3.4.0
cosmos-sdk 0.45.11
tendermint v0.34.23

How to upgrade

Presuming your node has installed pismoC, perform the following commands

# prepare by installing Go 1.18 or higher
#stop the agd service
cd agoric-sdk
git fetch --all
git checkout pismoD
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Node version

Node 16 LTS is the only compatible node version with this release

Golang version

The pismoD release requires Go 1.18 or higher.

mainnet1B-rc3

09 Jun 08:27
Compare
Choose a tag to compare

The Agoric OpCo engineering team is pleased to publish the mainnet1B-rc3 release. This release contains a number of significant upgrades and new features including:

  • Vaults contracts
  • Validator State Sync
  • Smart Contract Upgradeability
  • Governance Capability Upgrade
  • Decentralized Oracle Network
  • Critical Message Prioritization
  • Scalability and Performance Improvements

This is a state-machine-breaking upgrade so all chain validators will need to upgrade from PismoC to this new version.

Discussion for this release will take place in the Agoric community forum.

Tag: mainnet1B-rc3
Commit: ba3b776
Docker: ghcr.io/agoric/agoric-sdk:35

As shown in go.mod this release is based on:

ibc-go v3.4.0
cosmos-sdk v0.45.11
tendermint v0.34.23

How to upgrade

Presuming that your node is running pismoC, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-10 has been reached, your node will halt automatically allowing you to upgrade the agoric stack.

# prepare by installing Go 1.20.2 or higher, Node 16, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout mainnet1B-rc3
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Do not copy the agd script or Go binary to another location. If you would like to have an executable agd in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd.

Node Version

Node.js LTS (version 16.13.0 or higher).

Golang Version

The agoric-upgrade-10 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required (for __has_builtin).

Troubleshooting xsnap requires __has_builtin

An error like this:

/root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../sources/xsnap-worker.c:15:2: error: #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
   15 | #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
      |  ^~~~~
make: *** [xsnap-worker.mk:147: /root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../build/tmp/lin/release/xsnap-worker/xsnap-worker.o] Error 1

means you need to use Clang version 10 or GCC version 10. Note that Ubuntu-20.04-LTS provides GCC version 9 as the default, which is too old. See #7829 for more details.

Troubleshooting repoconfig.sh: No such file or directory

Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk at runtime. Copying agd to /usr/local/bin or the like is unlikely to produce a working installation. For more detail, see: #7825

Troubleshooting Cannot find dependency ... in systemd

If you have LimitNOFILE=4096 in your systemd unit file, change it to LimitNOFILE=65536. For more detail, see #7817

Generating a software upgrade proposal with checksums

The ./scripts/gen-upgrade-proposal.sh is designed to aid in composing a agd tx submit-proposal software-upgrade ... command. In particular, it captures package checksums to verify integrity of downloaded software.

mainnet1B-rc2

02 Jun 03:10
b66bf7c
Compare
Choose a tag to compare
mainnet1B-rc2 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the mainnet1B-rc2 release. This release contains a number of significant upgrades and new features including:

  • Vaults contracts
  • Validator State Sync
  • Smart Contract Upgradeability
  • Governance Capability Upgrade
  • Decentralized Oracle Network
  • Critical Message Prioritization
  • Scalability and Performance Improvements

This is a state-machine-breaking upgrade so all chain validators will need to upgrade from PismoC to this new version.

Discussion for this release will take place in the Agoric community forum.

Tag: mainnet1B-rc2
Commit: b66bf7c
Docker: ghcr.io/agoric/agoric-sdk:34

As shown in go.mod this release is based on:

ibc-go v3.4.0
cosmos-sdk v0.45.11
tendermint v0.34.23

How to upgrade

Presuming that your node is running pismoC, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-10 has been reached, your node will halt automatically allowing you to upgrade the agoric stack.

# prepare by installing Go 1.20.2 or higher, Node 16, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout mainnet1B-rc2
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Do not copy the agd script or Go binary to another location. If you would like to have an executable agd in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd.

Node Version

Node.js LTS (version 16.13.0 or higher).

Golang Version

The agoric-upgrade-10 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required (for __has_builtin).

Troubleshooting xsnap requires __has_builtin

An error like this:

/root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../sources/xsnap-worker.c:15:2: error: #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
   15 | #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
      |  ^~~~~
make: *** [xsnap-worker.mk:147: /root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../build/tmp/lin/release/xsnap-worker/xsnap-worker.o] Error 1

means you need to use Clang version 10 or GCC version 10. Note that Ubuntu-20.04-LTS provides GCC version 9 as the default, which is too old. See #7829 for more details.

Troubleshooting repoconfig.sh: No such file or directory

Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk at runtime. Copying agd to /usr/local/bin or the like is unlikely to produce a working installation. For more detail, see: #7825

Troubleshooting Cannot find dependency ... in systemd

If you have LimitNOFILE=4096 in your systemd unit file, change it to LimitNOFILE=65536. For more detail, see #7817

Generating a software upgrade proposal with checksums

The ./scripts/gen-upgrade-proposal.sh is designed to aid in composing a agd tx submit-proposal software-upgrade ... command. In particular, it captures package checksums to verify integrity of downloaded software.

mainnet1B-rc1

24 May 05:47
Compare
Choose a tag to compare
mainnet1B-rc1 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the mainnet1B-rc1 release. This release contains a number of significant upgrades and new features including:

  • Vaults contracts
  • Validator State Sync
  • Smart Contract Upgradeability
  • Governance Capability Upgrade
  • Decentralized Oracle Network
  • Critical Message Prioritization
  • Scalability and Performance Improvements

This is a state-machine-breaking upgrade so all chain validators will need to upgrade from PismoC to this new version.

Discussion for this release will take place in the Agoric community forum.

Tag: mainnet1B-rc1
Commit: 676e947
Docker: ghcr.io/agoric/agoric-sdk:33

As shown in go.mod this release is based on:

ibc-go v3.4.0
cosmos-sdk v0.45.11
tendermint v0.34.23

How to upgrade

Presuming that your node is running pismoC, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-10 has been reached, your node will halt automatically allowing you to upgrade the agoric stack.

# prepare by installing Go 1.20.2 or higher, Node 16, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout mainnet1B-rc1
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Do not copy the agd script or Go binary to another location. If you would like to have an executable agd in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd.

Node Version

Node.js LTS (version 16.13.0 or higher).

Golang Version

The agoric-upgrade-10 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required (for __has_builtin).

Troubleshooting xsnap requires __has_builtin

An error like this:

/root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../sources/xsnap-worker.c:15:2: error: #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
   15 | #error "xsnap requires __has_builtin (gcc>=10, e.g. Ubuntu-22.04), see https://github.com/Agoric/agoric-sdk/issues/7829"
      |  ^~~~~
make: *** [xsnap-worker.mk:147: /root/agoric-sdk/packages/xsnap/xsnap-native/xsnap/makefiles/lin/../../build/tmp/lin/release/xsnap-worker/xsnap-worker.o] Error 1

means you need to use Clang version 10 or GCC version 10. Note that Ubuntu-20.04-LTS provides GCC version 9 as the default, which is too old. See #7829 for more details.

Troubleshooting repoconfig.sh: No such file or directory

Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk at runtime. Copying agd to /usr/local/bin or the like is unlikely to produce a working installation. For more detail, see: #7825

Troubleshooting Cannot find dependency ... in systemd

If you have LimitNOFILE=4096 in your systemd unit file, change it to LimitNOFILE=65536. For more detail, see #7817

Generating a software upgrade proposal with checksums

The ./scripts/gen-upgrade-proposal.sh is designed to aid in composing a agd tx submit-proposal software-upgrade ... command. In particular, it captures package checksums to verify integrity of downloaded software.

mainnet1B-rc0

22 May 15:13
Compare
Choose a tag to compare
mainnet1B-rc0 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the mainnet1B-rc0 release. This release contains a number of significant upgrades and new features including:

  • Vaults contracts
  • Validator State Sync
  • Smart Contract Upgradeability
  • Governance Capability Upgrade
  • Decentralized Oracle Network
  • Critical Message Prioritization
  • Scalability and Performance Improvements

This is a state-machine-breaking upgrade so all chain validators will need to upgrade from PismoC to this new version.

Discussion for this release will take place in the Agoric community forum.

Tag: mainnet1B-rc0
Commit: ea8c1c6
Docker: ghcr.io/agoric/agoric-sdk:20230519211056-ea8c1c

As shown in go.mod this release is based on:

ibc-go v3.4.0
cosmos-sdk v0.45.11
tendermint v0.34.23

How to upgrade

Presuming that your node is running pismoC, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-10 has been reached, your node will halt automatically allowing you to upgrade the agoric stack.

# prepare by installing Go 1.20.2 or higher and Node 16
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout mainnet1B-rc0
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Node Version

Node 16 LTS is the only supported node version with this release.

Golang Version

The agoric-upgrade-10 release requires Go 1.20.2 or higher.

Troubleshooting repoconfig.sh: No such file or directory

Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk at runtime. Copying agd to /usr/local/bin or the like is unlikely to produce a working installation. For more detail, see: #7825

Troubleshooting Cannot find dependency ... in systemd

If you have LimitNOFILE=4096 in your systemd unit file, change it to LimitNOFILE=65536. For more detail, see #7817

Generating a software upgrade proposal with checksums

The ./scripts/gen-upgrade-proposal.sh is designed to aid in composing a agd tx submit-proposal software-upgrade ... command. In particular, it captures package checksums to verify integrity of downloaded software.

pismoC

22 Feb 01:27
Compare
Choose a tag to compare

The Agoric engineering team is pleased to publish the pismoC release. This release contains several bugfixes and stability improvements. This is a consensus-breaking upgrade so all chain validators will need to switch to this new version. Validators can upgrade from either the pismoA or pismoB release, as pismoB was an optional "soft release".

Discussion for this release will take place in a community thread.

Tag: agoric-upgrade-9 (or: pismoC)
Commit: 636c850161d29c0368b4dec03c90e2674e8d6479
Docker: agoric/agoric-sdk:31

As shown in go.mod, this release is based on:

ibc-go 3.4.0
cosmos-sdk 0.45.11
tendermint v0.34.23

How to upgrade

Presuming your node has installed pismoA following ag0 to agd upgrade for mainnet 1 launch or the optional pismoB upgrade. Once the upgrade height for a subsequent proposal to agoric-upgrade-9 has been reached, your node will halt automatically, allowing you to upgrade the agoric stack.

# prepare by installing Go 0.18 or higher
#stop the agd service
cd agoric-sdk
git fetch --all
git checkout pismoC
yarn install
yarn build
(cd packages/cosmic-swingset && make)
#start the agd service

Node version

Node 16 LTS is the only compatible node version with this release

Golang version

The pismoC release requires Go 0.18 or higher.

pismoB

16 Dec 17:41
Compare
Choose a tag to compare

The Agoric engineering team is pleased to publish the pismoB release.

This adds a small bug-workaround to the pismoA release, to help validators recover from a stuck state, described in ticket #6588 . This is a "soft upgrade": it does not affect consensus behavior, and only validators who are experiencing this problem need switch to the new version.

Discussion for this release can take place in the community.agoric.com thread

Tag: agoric-upgrade-8-1 (or: pismoB)
Commit: 08ca9d4fd8413da59b73d53e12851fe00583ddc1
Docker: agoric/agoric-sdk:30

As shown in go.mod, this release is based on:

tendermint v0.34.19
cosmos-sdk v0.45.4

How to upgrade

presuming your node is installed following ag0 to agd upgrade for mainnet 1 launch:

cd agoric-sdk
git fetch
git checkout pismoB

pismoA

18 Oct 22:36
Compare
Choose a tag to compare

The Agoric engineering team is pleased to publish the pismoA release, otherwise known as the Inter Protocol MVP that is made up of the Parity Stability Module -only, hence the "PSM-o" nickname.

This pismoA release represents the first time that Agoric’s JavaScript stack is eligible to be promoted into a production mainnet environment. All testnet milestones have been met, and the Agoric team anticipates that an on-chain governance proposal to upgrade the agoric-3 chain will be created by the community.

Discussion for this software upgrade proposal is taking place in the Agoric community forum. Provided the BLD holders vote to approve the upgrade, the Agoric Hardened JavaScript VM and Inter Protocol smart contracts will be added to the Agoric chain at a specified block height, and mainnet-1 will be launched.

  • Tag: agoric-upgrade-8 (or: pismoA)
  • Commit: 2c812d22161cd297587979b262eab6e2cc76e23d
  • Docker: agoric/agoric-sdk:29
  • Agoric ag0 to agD upgrade guide
  • Upgrade handlers
    • Mainnet: agoric-upgrade-8
    • Emerynet: agorictest-upgrade-8

Regressions w.r.t. ag0:

Performance suggestions:

Major Features:

As shown in go.mod, this release is based on:

  • tendermint v0.34.19
  • cosmos-sdk v0.45.4

.