Gaia v6.0.0 Release Notes
This is the final release for the Vega upgrade which is proposed to take place at height 8,695,000 which should occur approximately December 13th, 2021 at 14:00:00 UTC with a margin of error of ~33 hours to accommodate for any clock drift (as we saw in the Delta upgrade). The chain id will remain cosmoshub-4
.
It contains the following changes (this list contains items already listed in the first release candidate, second release candidate, and third release candidate):
- (gaia) Add NewSetUpContextDecorator to anteDecorators
- (gaia) Reconfigure SetUpgradeHandler to ensure vesting is configured after auth and new modules have InitGenesis run.
- (golang) Bump golang prerequisite to 1.17.
- (gaia) Bump Liquidity module to v1.4.2. See the CHANGELOG.md for details.
- (gaia) Bump Cosmos SDK to v0.44.3. See the CHANGELOG.md for details.
- (gaia) Add authz and feegrant modules from Cosmos SDK v0.44.3.
- (gaia) Add IBC as a standalone module from the Cosmos SDK using version v2.0.0. See the CHANGELOG.md for details.
- (gaia) Add packet-forward-middleware v1.0.1.
- (gaia) #969 Remove legacy migration code.
The upgrade proposal for the Cosmos Hub that includes this release is as follows:
This on-chain upgrade governance proposal is to adopt gaia v6.0.0 which includes a number of updates, fixes and new modules. By voting YES to this proposal, you approve of adding these updates to the Cosmos Hub.
Background
Since the last upgrade at height 6910000 there have been a number of updates, fixes and new modules added to the Cosmos SDK, IBC and Tendermint. The following updates are included in gaia v6.0.0:
- Bump Cosmos-SDK to v0.44.3 which notably includes fixes for the vesting accounts and two new modules outlined below. This release of the Cosmos SDK recognizes that IBC is maintained in an independent repository and is instead imported into gaia from that repository. For a full list of updates in Cosmos-SDK v0.44.3 please see the CHANGELOG.md
- Add the authz module to the Cosmos Hub, which will help lower the barrier to mass consumer adoption of Blockchain technologies by improving the UX and security of managine an account on the Cosmos Hub.
x/authz
is an implementation of a Cosmos SDK module, per ADR 30, that allows granting arbitrary privileges from one account (the granter) to another account (the grantee). Authorizations must be granted for a particular Msg service method one by one using an implementation of theAuthorization
interface. - Add the feegrant module to the Cosmos Hub, which will help lower the barrier to mass consumer adoption of Blockchain technologies by improving the UX of spending gas with an account on the Cosmos Hub. This module allows accounts to grant fee allowances and to use fees from their accounts. Grantees can execute any transaction without the need to maintain sufficient fees.
- BREAKING CHANGE NOTICE While a full list of breaking changes should be checked within the Cosmos SDK v0.44.3 CHANGELOG.md, it's imortant to highlight PR #10041 which impacts WALLETS AND EXCHANGES. This update has removed the deprecated the legacy REST endpoints for broadcast & encode. This means
POST /tx
andPOST /txs/encode
no longer work. Please see the REST Endpoints Migration guide to migrate to the new REST endpoints.
- Add the authz module to the Cosmos Hub, which will help lower the barrier to mass consumer adoption of Blockchain technologies by improving the UX and security of managine an account on the Cosmos Hub.
- Add IBC as a standalone module from the Cosmos SDK using version v2.0.0. See the CHANGELOG.md for details.
- Please note that the governance parameter for
MaxExpectedBlockDelay
is set to 30 seconds. The IBC team at Interchain has recommended this value to be reasonable for the cosmos hub. As a recap, this means if a connection is opened with a packet delay of 1 minute, it requires 2 blocks to be committed after the consensus state is submitted before the packet can be processed.
- Please note that the governance parameter for
- Add packet-forward-middleware v1.0.1 as per Proposal #56 prepared and tested by Strangelove Ventures. This feature allows multi-hop IBC transfer messages so that a user can send tokens from chain A to chain C via chain B. This is useful in ensuring the Cosmos Hub is used as a routing hub as well as when "unwrapping" tokens to their source chain after they have taken multiple hops.
- Bump Liquidity module to v1.4.2 to ensure compatibility with Cosmos-SDK.
Ready for Production
These changes have been extensively tested by various Cosmos Core Contributor teams including Hypha Co-Op, Informal Systems Co-Op, Interchain GmbH, Regen Network, Strangelove Ventures, Tendermint Inc and more. The release candidate for this update was run as a local testnet and a public testnet with a successful upgrade. The testnet documentation can be found here.
On-Chain Upgrade Process
This upgrade can be performed in multiple ways. When the network reaches the halt height, the state machine program of the Cosmos Hub will be halted. The classic method for upgrading requires all validators and node operators to manually substitute the existing state machine binary with the new binary. There is also a newer method that relies on the Cosmovisor utility to swap the binaries automatically. Cosmovisor also includes the ability to download the binaries automatically before swapping them. Documentation on Cosmovisor can be found here and instructions specific to the upgrade can be found here. If you are interested in trying Cosmosvisor with a simulated local upgrade please see the local testnet documentation. Because it is an onchain upgrade process, the blockchain will be continued with all the accumulated history with continuous block height.
Potential Risk Factors
Although very extensive testing and simulation has taken place there always still exists a risk that the Cosmos Hub might experience problems due to potential bugs or errors from the new features. In the case of serious problems, validators should stop operating the network immediately. Cosmos Core Contributors will coordinate with validators in the #validators-verified channel
of the Cosmos Developer Discord to create and execute a contingency plan. Likely this will be an emergency release with fixes or the recommendation to consider the upgrade aborted and revert back to the previous release of gaia (v5.0.x).
App: gaiad
Version: v6.0.0
Commit: 6ed5b7397a57c42112cf1b16f550bd0a6e263953
Files:
e0cbf39559d53cd4120a55a81b4c26dc gaiad-v6.0.0-darwin-amd64
5c836189d48d5ff4ce6c3a0b0c5e38d6 gaiad-v6.0.0-linux-amd64
d7be11c4a8dc0eadf649897fea4fcd62 gaiad-v6.0.0-linux-arm64
1370aef756b7e78ad763a3b191b6e4dd gaiad-v6.0.0-windows-amd64.exe
76ceae75b73964b45cd16266e7a6e83b gaiad-v6.0.0.tar.gz
Checksums-Sha256:
e0de182c098ab68d3ef4bab8a3d12aca100b9f1d18d873d66e82ec2c187a1735 gaiad-v6.0.0-darwin-amd64
d9b4391065a338107ca240f29539d62572fe1e85a6c455576afc5e93dba7f402 gaiad-v6.0.0-linux-amd64
e348259fb9ca5d516a8754ea1f15255ef32e7656e79d52a87616edb16f0a7343 gaiad-v6.0.0-linux-arm64
713cb6c1a7ef555d5ed64f036f65b039b44b76f314855e2f7d2a5330568e6100 gaiad-v6.0.0-windows-amd64.exe
80cc5caddd4cb56904ec281469c30ee373acf46dbab445ad508b81b6af69fc08 gaiad-v6.0.0.tar.gz