Skip to content

Releases: Agoric/agoric-sdk

agoric-upgrade-14-rc0

27 Feb 23:55
Compare
Choose a tag to compare
agoric-upgrade-14-rc0 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-14-rc0 release candidate. This release is primarily intended update interchain stack dependencies, and update the Smart wallet and Zoe to support future contract upgrades.

The following new features are included in this release:

  • #7992 and #8095: enable executing JavaScript core proposals during a chain software upgrade
  • #8224: incremental major upgrade of the interchain stack (see new versions below)

The release contains at least the following fixes:

  • #8292, #8293, and #8286: WalletFactory survive upgrades and repair outstanding purses and offers
  • #8387, #8265, and #8263: Zoe survive upgrades and handles upgrades of vatAdmin

The full set of changes in this release can be found at #8959.

The upgrade to cosmos 0.46 includes a new index being created during the upgrade, which we estimate can take from one to two hours for chains with a large IAVL state like the agoric-3 chain.
During that time, no progress is shown on the output, but the process will consume 100% of a CPU core.

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

Since the agoric-upgrade-11 release, state-sync snapshots include more data than before. Nodes which have inadvertently pruned this data (e.g. those created from a state-sync before the agoric-upgrade-11 release) will not be able to produce such snapshots, and will need to be restored from state-sync. We are aware of continued performance issues related to state-sync. In particular, we've observed that on some deployments, the current implementation can require 100 GB of temporary free disk space and 16GB of memory.

Below is the cosmos upgrade handler name for this release. This is the name that can be used in governance proposals to deploy this upgrade.

Cosmos Upgrade Handler Name: agorictest-upgrade-14

Below is the git information related to this software release. Note the git tag and cosmos upgrade handler name differ.

Git Tag: agoric-upgrade-14-rc0
Git Commit: b3a6f3374cb3bddab39fc6d6f426429cae6c29c6
@agoric/cosmos package version: 0.35.0-u14.0
Docker: ghcr.io/agoric/agoric-sdk:40

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

ibc-go v6.2.1
cosmos-sdk v0.46.16
cometbft v0.34.30

How to upgrade

Presuming that your node is running agorictest-upgrade-13, once the upgrade height for a subsequent proposal to upgrade to agorictest-upgrade-14 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 or 18, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-14-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 16.13 or higher (previous LTS) or Node.js 18.12 or higher (maintenance LTS).
Please note the current active LTS of Node 20 is not yet officially supported.

Golang Version

The agoric-upgrade-14-rc0 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required.

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.

agoric-upgrade-13

15 Dec 18:00
Compare
Choose a tag to compare

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-13 release. This release is primarily intended to offer a new smart wallet provisioning flow, update the interchain stack dependencies, and fix various issues. It does not change the behavior of any JavaScript contracts.

The following new features are included in this release:

  • #8558: automatically provision a smart wallet, charging a beans based provisioning fee
  • #8570: allow to return grants of clawback vesting accounts
  • #8223: incremental upgrade of the interchain stack

The release contains at least the following fixes:

This code has satisfied all pre-release/testnet validation checks, and is now recommended for chains to upgrade from the previous agoric-upgrade-12 release. As a state-machine-breaking upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-12 to this new version (after the chain halts due to reaching the height required in a governance proposal).

No data is migrated during this upgrade.

Since the agoric-upgrade-11 release, state-sync snapshots include more data than before. Nodes which have inadvertently pruned this data (e.g. those created from a state-sync before the agoric-upgrade-11 release) will not be able to produce such snapshots, and will need to be restored from state-sync using this release. We are aware of continued performance issues related to state-sync. In particular, we've observed that on some deployments, the current implementation can require 100 GB of free disk space and 16GB of memory. By default state-sync uses /tmp, which can be overridden by setting the TMPDIR environment variable for agd.

Below is the cosmos upgrade handler name for this release. This is the name that can be used in governance proposals to deploy this upgrade.

Cosmos Upgrade Handler Name: agoric-upgrade-13

Below is the git information related to this software release. Note the git tag and cosmos upgrade handler name may differ.

Git Tag: agoric-upgrade-13
Git Commit: 5a6cdeb0c18ae9700d706445acf402f8d1e873c3
@agoric/cosmos package version: 0.35.0-u13.0
Docker: ghcr.io/agoric/agoric-sdk:39

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

ibc-go v4.5.1
cosmos-sdk v0.45.16
cometbft v0.34.27

How to upgrade

Presuming that your node is running agoric-upgrade-12, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-13 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 or 18, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-13
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 16.13 or higher (previous LTS) or Node.js 18.12 or higher (maintenance LTS).
Please note the current active LTS of Node 20 is not officially supported.

Node versions >=18.19 introduce a breaking change, and are not supported.

Golang Version

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

C Compiler Version

Clang version 10 or GCC version 10 required.

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

Note about state-sync and temporary files

Both state-sync snapshot generation and restoring from state-sync create large temporary files. The cosmos statesync.temp_dir restore config does not affect the location of all temporary files created during state-sync, and the default temp directory location is used. On most Linux systems, this location is /tmp, and can be changed to a custom location by setting the TMPDIR environment variable for the agd process.

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.

agoric-upgrade-13-rc0

07 Dec 18:42
Compare
Choose a tag to compare
agoric-upgrade-13-rc0 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-13-rc0 release candidate. This release is primarily intended to offer a new smart wallet provisioning flow, update the interchain stack dependencies, and fix various issues. It does not change the behavior of any JavaScript contracts.

The following new features are included in this release:

  • #8558: automatically provision a smart wallet, charging a beans based provisioning fee
  • #8570: allow to return grants of clawback vesting accounts
  • #8223: incremental upgrade of the interchain stack

The release contains at least the following fixes:

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

No data is migrated during this upgrade.

Since the agoric-upgrade-11 release, state-sync snapshots include more data than before. Nodes which have inadvertently pruned this data (e.g. those created from a state-sync before the agoric-upgrade-11 release) will not be able to produce such snapshots, and will need to be restored from state-sync using this release. We are aware of continued performance issues related to state-sync. In particular, we've observed that on some deployments, the current implementation can require 100 GB of free disk space and 16GB of memory. By default state-sync uses /tmp, which can be overridden by setting the TMPDIR environment variable for agd.

Below is the cosmos upgrade handler name for this release. This is the name that can be used in governance proposals to deploy this upgrade.

Cosmos Upgrade Handler Name: agorictest-upgrade-13

Below is the git information related to this software release. Note the git tag and cosmos upgrade handler name differ.

Git Tag: agoric-upgrade-13-rc0
Git Commit: 5a6cdeb0c18ae9700d706445acf402f8d1e873c3
@agoric/cosmos package version: 0.35.0-u13.0
Docker: ghcr.io/agoric/agoric-sdk:39

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

ibc-go v4.5.1
cosmos-sdk v0.45.16
cometbft v0.34.27

How to upgrade

Presuming that your node is running agorictest-upgrade-12, once the upgrade height for a subsequent proposal to upgrade to agorictest-upgrade-13 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 or 18, clang 10 or gcc 10
# stop the agd service
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-13-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 16.13 or higher (previous LTS) or Node.js 18.12 or higher (maintenance LTS).
Please note the current active LTS of Node 20 is not officially supported.

Golang Version

The agoric-upgrade-13-rc0 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required.

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.

agoric-upgrade-12

17 Nov 16:11
Compare
Choose a tag to compare

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-12 release. This release is primarily intended to fix state-sync and NPM published packages. It does not change the behavior of any contracts, but includes the smart wallet changes published in the agoric-upgrade-11wf release. It fixes at least the following issues:

  • #8325: enable restore from state-sync with payloads larger than 64 MB
  • #8423: avoid a potential consensus failure when the node is restarted during busy blocks
  • #8321: allow a brand new chain to start with a functioning walletFactory contract
  • #8501: allow usage of outgoing IBC messages in JS contracts
  • #8380: make NPM published packages more usable for dapp development

Additionally the new software contains the following noteworthy changes:

This code has satisfied all pre-release/testnet validation checks, and is now recommended for chains to upgrade from the previous agoric-upgrade-11 release. As a state-machine-breaking upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-11 to this new version (after the chain halts due to reaching the height required in a governance proposal).

Unlike the agoric-upgrade-11 release, no data is migrated during this upgrade.

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

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

Below is the cosmos upgrade handler name for this release. These is the name that can be used in governance proposals to deploy this upgrade.

Cosmos Upgrade Handler Name: agoric-upgrade-12

Below is git information related to this software release. Note the git tag and cosmos upgrade handler name may differ.

Git Tag: agoric-upgrade-12
Git Commit: ee5a5fdad9187a6b1b7b26b772b6564c0db3062e
@agoric/cosmos package version: 0.35.0-u12.0
Docker: ghcr.io/agoric/agoric-sdk:38

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 agoric-upgrade-11, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-12 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-12
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).

Node versions >=18.19 introduce a breaking change, and are not supported.

Golang Version

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

C Compiler Version

Clang version 10 or GCC version 10 required.

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.

agoric-upgrade-12-rc0

11 Nov 00:54
Compare
Choose a tag to compare
agoric-upgrade-12-rc0 Pre-release
Pre-release

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-12-rc0 release. This release is primarily intended to fix state-sync and NPM published packages. It does not change the behavior of any contracts, but includes the smart wallet changes published in the agoric-upgrade-11wf release. It fixes at least the following issues:

  • #8325: enable restore from state-sync with payloads larger than 64 MB
  • #8423: avoid a potential consensus failure when the node is restarted during busy blocks
  • #8321: allow a brand new chain to start with a functioning walletFactory contract
  • #8501: allow usage of outgoing IBC messages in JS contracts
  • #8380: make NPM published packages more usable for dapp development

Additionally the new software contains the following noteworthy changes:

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

Unlike the agoric-upgrade-11 release, no data is migrated during this upgrade.

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

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

Below is the cosmos upgrade handler name for this release. This is the name that will be used in governance proposals to deploy this upgrade.

Cosmos Upgrade Handler Name: agorictest-upgrade-12

Below is git information related to this software release. Note the git tag and cosmos upgrade handler name differ.

Git Tag: agoric-upgrade-12-rc0
Git Commit: ee5a5fdad9187a6b1b7b26b772b6564c0db3062e
@agoric/cosmos package version: 0.35.0-u12.0
Docker: ghcr.io/agoric/agoric-sdk:38

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 agoric-upgrade-11, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-12 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-12-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-12 release requires Go 1.20.2 or higher.

C Compiler Version

Clang version 10 or GCC version 10 required.

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.

agoric-upgrade-11wf

18 Sep 18:41
Compare
Choose a tag to compare

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-11wf release. This release is primarily intended to expand the functionality of the walletFactory (aka smart wallet) contract to support NFTs etc. (#8156).

NOTE: This is release is not intended for use in a chain software upgrade. Instead, it includes bundles for use in a swingset core-eval proposal to upgrade the walletFactory contract.

How To Verify Bundles and Prepare a SwingSet Core.Eval Proposal

  1. Download the source and unpack
  2. cd agoric-sdk; yarn && yarn build
  3. cd packages/vats
  4. agoric run scripts/build-walletFactory-upgrade.js.

The output should be as follows, modulo the /home/ME/projects/agoric-sdk path and the /home/ME/.agoric path. In particular, the hashes should match exactly:

$ agoric run scripts/build-walletFactory-upgrade.js
agoric: run: running /home/ME/projects/agoric-sdk/packages/vats/scripts/build-walletFactory-upgrade.js
agoric: run: Deploy script will run with Node.js ESM
upgrade-walletFactory-proposal.js module evaluating
bundle-source --to /home/ME/projects/agoric-sdk/packages/vats/bundles /home/ME/projects/agoric-sdk/packages/smart-wallet/src/walletFactory.js walletFactory
/home/ME/projects/agoric-sdk/packages/vats/bundles bundle-walletFactory.js valid: 148 files bundled at 2023-09-08T22:21:08.871Z
creating upgrade-walletFactory-permit.json
creating upgrade-walletFactory.js
You can now run a governance submission command like:
  agd tx gov submit-proposal swingset-core-eval upgrade-walletFactory-permit.json upgrade-walletFactory.js \
    --title="Enable <something>" --description="Evaluate upgrade-walletFactory.js" --deposit=1000000ubld \
    --gas=auto --gas-adjustment=1.2
Remember to install bundles before submitting the proposal:
  agd tx swingset install-bundle @/home/ME/.agoric/cache/b1-fa06290e58e5df0b5e8e26ebf7926176770bee5d32f42bcaa62bb77737955a8d9da2922760e644e26643b36ec3118c3c0d546f2af4faf717fdb6ae1fb36773d0.json
  agd tx swingset install-bundle @/home/ME/.agoric/cache/b1-e229e4bb6c8720016d92116e3dccaebec20a43699d5547a1c815f8710985ba897e825cbe4cd5b80c1d9d674f086bcaf3981b82a0d5546a095542c14174d5f942.json

agoric-upgrade-11wf-rc0

09 Sep 01:02
Compare
Choose a tag to compare
Pre-release

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-11wf release. This release is primarily intended to expand the functionality of the walletFactory (aka smart wallet) contract to support NFTs etc. (#8156).

NOTE: This is release is not intended for use in a chain software upgrade. Instead, it includes bundles for use in a swingset core-eval proposal to upgrade the walletFactory contract.

How To Verify Bundles and Prepare a SwingSet Core.Eval Proposal

  1. Download the source and unpack
  2. cd agoric-sdk
  3. cd packages/vats
  4. agoric run scripts/build-walletFactory-upgrade.js.

The output should be as follows, modulo the /home/ME/projects/agoric-sdk path and the /home/ME/.agoric path. In particular, the hashes should match exactly:

$ agoric run scripts/build-walletFactory-upgrade.js
agoric: run: running /home/ME/projects/agoric-sdk/packages/vats/scripts/build-walletFactory-upgrade.js
agoric: run: Deploy script will run with Node.js ESM
upgrade-walletFactory-proposal.js module evaluating
bundle-source --to /home/ME/projects/agoric-sdk/packages/vats/bundles /home/ME/projects/agoric-sdk/packages/smart-wallet/src/walletFactory.js walletFactory
/home/ME/projects/agoric-sdk/packages/vats/bundles bundle-walletFactory.js valid: 148 files bundled at 2023-09-08T22:21:08.871Z
creating upgrade-walletFactory-permit.json
creating upgrade-walletFactory.js
You can now run a governance submission command like:
  agd tx gov submit-proposal swingset-core-eval upgrade-walletFactory-permit.json upgrade-walletFactory.js \
    --title="Enable <something>" --description="Evaluate upgrade-walletFactory.js" --deposit=1000000ubld \
    --gas=auto --gas-adjustment=1.2
Remember to install bundles before submitting the proposal:
  agd tx swingset install-bundle @/home/ME/.agoric/cache/b1-fa06290e58e5df0b5e8e26ebf7926176770bee5d32f42bcaa62bb77737955a8d9da2922760e644e26643b36ec3118c3c0d546f2af4faf717fdb6ae1fb36773d0.json
  agd tx swingset install-bundle @/home/ME/.agoric/cache/b1-e229e4bb6c8720016d92116e3dccaebec20a43699d5547a1c815f8710985ba897e825cbe4cd5b80c1d9d674f086bcaf3981b82a0d5546a095542c14174d5f942.json

agoric-upgrade-11

06 Sep 01:07
Compare
Choose a tag to compare

The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-11 release. This is a promotion of agoric-upgrade-11-rc0 to full release status, and contains the same code (and uses the same Git commit ID) as agoric-upgrade-11-rc0. 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

This code has satisfied all pre-release/testnet validation checks, and is now 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
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
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.

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.