Skip to content

Latest commit

 

History

History
609 lines (414 loc) · 38.5 KB

CHANGELOG.md

File metadata and controls

609 lines (414 loc) · 38.5 KB

Changelog

[Unreleased]

  • (docs) #2599 Updating the quickstart, joining mainnet & upgrade docs for v10
  • (docs) #2560 Updates for v9.1.1 and re-arranging roadmap docs
  • (deps) #2554 Bump ibc-go to v4.4.2.

Improvements

State Machine Breaking

  • (feat!) #2424 Add bypass-min-fee-msg-types and maxTotalBypassMinFeeMsgGagUsage to globalfee params. Note that this change is both state breaking and API breaking. The previous API endpoint was "/gaia/globalfee/v1beta1/minimum_gas_prices," and the new API endpoint is "/gaia/globalfee/v1beta1/params."
  • (feat!) #2352 Create the upgrade handler and params migration for the new Gloabal Fee module parameters introduced in #2424. Update the CI upgrade tests from v9 to the v10 and check that the parameters are successfully migrated.
  • (feat!) #2447 Update Global Fee's AnteHandler to check tx fees against the network min gas prices in DeliverTx mode.

[v10.0.1] 2023-05-25

v10.0.0 2023-05-19

v9.1.1 - 2023-05-25

v9.1.0 - 2023-05-08

This release combines two fixes that we judged were urgent to get onto the Cosmos Hub before the launch of the first ICS consumer chain. Please note that user funds were not at risk and these fixes pertain to the liveness of the Hub and consumer chains.

The first fix is to enable the use of multisigs and Ledger devices when assigning keys for consumer chains. The second is to prevent a possible DOS vector involving the reward distribution system.

Multisig fix

On April 25th (a week and a half ago), we began receiving reports that validators using multisigs and Ledger devices were getting errors reading Error: unable to resolve type URL /interchain_security.ccv.provider.v1.MsgAssignConsumerKey: tx parse error when attempting to assign consensus keys for consumer chains.

This was surprising because we had never seen this error before, even though we have done many testnets. The reason for this is probably because people don’t bother to use high security key management techniques in testnets.

We quickly narrowed the problem down to issues having to do with using the PubKey type directly in the MsgAssignConsumerKey transaction, and Amino (a deprecated serialization library still used in Ledger devices and multisigs) not being able to handle this. We attempted to fix this with the assistance of the Cosmos-SDK team, but after making no headway for a few days, we decided to simply use a JSON representation of the PubKey in the transaction. This is how it is usually represented anyway. We have verified that this fixes the problem.

Distribution fix

The ICS distribution system works by allowing consumer chains to send rewards to a module address on the Hub called the FeePoolAddress. From here they are automatically distributed to all validators and delegators through the distribution system that already exists to distribute Atom staking rewards. The FeePoolAddress is usually blocked so that no tokens can be sent to it, but to enable ICS distribution we had to unblock it.

We recently realized that unblocking the FeePoolAddress could enable an attacker to send a huge number of different denoms into the distribution system. The distribution system would then attempt to distribute them all, leading to out of memory errors. Fixing a similar attack vector that existed in the distribution system before ICS led us to this realization.

To fix this problem, we have re-blocked the FeePoolAddress and created a new address called the ConsumerRewardsPool. Consumer chains now send rewards to this new address. There is also a new transaction type called RegisterConsumerRewardDenom. This transaction allows people to register denoms to be used as rewards from consumer chains. It costs 10 Atoms to run this transaction.The Atoms are transferred to the community pool. Only denoms registered with this command are then transferred to the FeePoolAddress and distributed out to delegators and validators.

Note: The fee of 10 Atoms was originally intended to be a parameter that could be changed by governance (10 Atoms might cost too much in the future). However, we ran into some problems creating a new parameter as part of an emergency upgrade. After consulting with the Cosmos-SDK team, we learned that creating new parameters is only supported as part of a scheduled upgrade. So in the current code, the number of Atoms is hardcoded. It will turn into a parameter in the next scheduled upgrade.

v9.0.3 - 2023-04-19

v9.0.2 - 2023-04-03

  • (feat) Bump Interchain-Security v1.1.0 provider module. See the release notes for details.
  • (feat) Add two more msg types /ibc.core.channel.v1.MsgTimeout and /ibc.core.channel.v1.MsgTimeoutOnClose to default bypass-min-fee-msg-types.
  • (feat) Change the bypassing gas usage criteria. Instead of requiring 200,000 gas per bypass-min-fee-msg, we will now allow a maximum total usage of 1,000,000 gas for all bypassed messages in a transaction. Note that all messages in the transaction must be the bypass-min-fee-msg-types for the bypass min fee to take effect, otherwise, fee payment will still apply.
  • (fix) #2087 Fix bypass-min-fee-msg-types parsing in app.toml. Parsing of bypass-min-fee-types is changed to allow node operators to use empty bypass list. Removing the bypass-min-fee-types from app.toml applies the default message types. See #2092 for details.

v9.0.1 - 2023-03-09

v9.0.0 - 2023-02-21

v8.0.1 - 2023-02-17

v8.0.0 - 2023-01-31

v7.1.1 - 2023-02-06

v7.1.0 - 2022-10-14

v7.0.3 - 2022-08-03

v7.0.2 -2022-05-09

  • (gaia) bump cosmos-sdk to v0.45.4. See CHANGELOG.md for details.
  • (gaia) #1447 Support custom message types to bypass minimum fee checks for. If a transaction contains only bypassed message types, the transaction will not have minimum fee checks performed during CheckTx. Operators can supply these message types via the bypass-min-fee-msg-types configuration in app.toml. Note, by default they include various IBC message types.

v7.0.1 -2022-04-13

v7.0.0 - 2022-03-24

v6.0.4 - 2022-03-10

  • (gaia) Bump Liquidity module to v1.4.6.
  • (gaia) Bump IBC module to 2.0.3.
  • (gaia) #1230 Fix: update gRPC Web Configuration in contrib/testnets/test_platform.
  • (gaia) #1135 Fix rocksdb build tag usage.
  • (gaia) #1160 Improvement: update state sync configs.
  • (gaia) #1208 Update statesync.bash.
  • (gaia) Bump Versions of various smaller dependencies, remove the Cosmos SDK replace statement, update initiClientCtx params, ensure stdout and stderr are handled correctly in the CLI.

v6.0.3 - 2022-02-18

  • This is a reverted release that is the same as v6.0.0

v6.0.2 - 2022-02-17

  • Unusable release

v6.0.1 - 2022-02-10

  • Unusable release

v6.0.0 - 2021-11-24

  • (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.
  • (gaia) Bump Cosmos SDK to v0.44.3. See the CHANGELOG.md for details.
  • (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.

v5.0.8 - 2021-10-14

  • (gaia) This release includes a new AnteHandler that rejects redundant IBC transactions to save relayers fees.

v5.0.7 - 2021-09-30

  • (gaia) Bump Cosmos SDK to 0.42.10

v5.0.6 - 2021-09-16

  • (gaia) Bump tendermint to 0.34.13

v5.0.5 - 2021-08-05

  • (gaia) Bump SDK to 0.42.9 to resolve IBC channel restart issue (9800).

v5.0.4 - 2021-07-31

  • (chore) Fix release to include intended items from v5.0.3.

v5.0.3 - 2021-07-30

  • (gaia) Bump SDK to 0.42.8 to resolve tx query issues.
  • (gaia) Bump SDK to 0.42.7 to resolve state sync issues.

v5.0.2 - 2021-07-15

  • (gaia) Fix misspelling in RELEASE.md
  • (gaia) Add releases to .gitignore

v5.0.1 - 2021-07-15

  • (gaia) Configure gaiad command to add back config capabilities.

v5.0.0 - 2021-06-28

  • (golang) Bump golang prerequisite from 1.15 to 1.16.
  • (gaia) Add Liquidity module v1.2.9.
  • (sdk) Bump SDK version to v0.42.6.
  • (tendermint) Bump Tendermint version to v0.34.11.

v4.2.1 - 2021-04-08

A critical security vulnerability was identified in Tendermint Core, which impacts Tendermint Lite Client.

This release fixes the identified security vulnerability.

Bug Fixes

  • (sdk) Bump SDK version to v0.42.4
  • (tendermint) Bump Tendermint version to v0.34.9.

v4.2.0 - 2021-03-25

A critical security vulnerability has been identified in Gaia v4.1.x. User funds are NOT at risk; however, the vulnerability can result in a chain halt.

This release fixes the identified security vulnerability.

If the chain halts before or during the upgrade, validators with sufficient voting power need to upgrade and come online in order for the chain to resume.

Bug Fixes

  • (sdk) Bump SDK version to v0.42.3

v4.1.2 - 2021-03-22

This release removes unnecessary dependencies.

Bug Fixes

  • (gaia) #781 Remove unnecessary dependencies

v4.1.1 - 2021-03-19

This release bring improvements to keyring UX, tx search results, and multi-sig account migrations. See the Cosmos SDK release notes for details.

Bug Fixes

  • (sdk) Bump SDK version to v0.42.2

v4.1.0 - 2021-03-10

Bug Fixes

A critical security vulnerability has been identified in Gaia v4.0.x. User funds are NOT at risk; however, the vulnerability can result in a chain halt.

This release fixes the identified security vulnerability.

If the chain halts before or during the upgrade, validators with sufficient voting power need to upgrade and come online in order for the chain to resume.

v4.0.6 - 2021-03-09

Bug Fixes

This release bumps the Cosmos SDK, which includes an important security fix for all non Cosmos Hub chains (e.g. any chain that does not use the default cosmos bech32 prefix), and a few performance improvements. The SDK also applies a security fix for validator address conversion in evidence handling, and the full header is now emitted on an IBC UpdateClient message event.

  • (sdk) Bump SDK version to v0.42.0

v4.0.5 - 2021-03-02

Bug Fixes

  • (tendermint) Bump Tendermint version to v0.34.8.
  • (sdk) Bump SDK version to v0.41.4, which reduces startup time with the cosmoshub-4 mainnet genesis without invariant checks.

v4.0.4 - 2021-02-19

Bug Fixes

This release applies a patched version to grpc dependencies in order to resolve some queries; no explicit version bumps are included.

v4.0.3 - 2021-02-18

Bug Fixes

This release fixes build failures caused by a small API breakage introduced in tendermint v0.34.7.

  • (sdk) Bump SDK version to v0.41.3.

v4.0.2 - 2021-02-18

Bug Fixes

This release fixes a downstream security issue which impacts Cosmos SDK users. See the Tendermint v0.34.7 SDK changelog for details.

v4.0.1 - 2021-02-17

Bug Fixes

v4.0.0 - 2021-01-26

Improvements

  • (app) #564 Add client denomination metadata for atoms.

Bug Fixes

  • (cmd) #563 Add balance coin to supply when adding a new genesis account
  • (sdk) #579 Bump SDK version to v0.41.0.

v3.0.1 - 2021-01-19

Improvements

  • (protobuf) #553 Bump gogo protobuf deps to v1.3.3
  • (github) #543 Add docker deployment
  • (starport) #535 Add config.yml
  • (docker) #534 Update to python3

Bug Fixes

  • (sdk) Bump SDK version to v0.40.1.
  • (tendermint) Bump Tendermint version to v0.34.3.
  • (github) #544 Deploy from main not master
  • (docs) #550 Bump vuepress-theme-cosmos to 1.0.180
  • (docker) #537 Fix single-node.sh setup script

v3.0.0 - 2021-01-09

Improvements

  • (sdk) Bump SDK version to v0.40.0.
  • (tendermint) Bump Tendermint version to v0.34.1.

v2.0.14 - 2020-12-10

  • (sdk) Bump SDK version to v0.37.15.
  • (tendermint) Bump Tendermint version to v0.32.14.

v2.0.13 - 2020-08-13

v2.0.12 - 2020-08-13

  • This version did not contain the update to v0.37.14. Please use v2.0.13

v2.0.11 - 2020-05-06

v2.0.10 - 2020-05-06

v2.0.9 - 2020-04-23

v2.0.8 - 2020-04-09

Improvements

  • (sdk) Bump SDK version to v0.37.9.

v2.0.7 - 2020-03-11

Improvements

  • (sdk) Bump SDK version to v0.37.8.

v2.0.6 - 2020-02-10

Improvements

  • (sdk) Bump SDK version to v0.37.7.

v2.0.5 - 2020-01-21

Improvements

  • (sdk) Bump SDK version to v0.37.6.
  • (tendermint) Bump Tendermint version to v0.32.9.

v2.0.4 - 2020-01-09

Improvements

  • (sdk) Bump SDK version to v0.37.5.
  • (tendermint) Bump Tendermint version to v0.32.8.

Bug Fixes

  • (cli) Fixed gaiacli query txs to use events instead of tags. Events take the form of '{eventType}.{eventAttribute}={value}'. Please see the events doc for further documentation.

v2.0.3 - 2019-11-04

Improvements

  • (sdk) Bump SDK version to v0.37.4.
  • (tendermint) Bump Tendermint version to v0.32.7.

v2.0.2 - 2019-10-12

Improvements

  • (sdk) Bump SDK version to v0.37.3.
  • (tendermint) Bump Tendermint version to v0.32.6.

v2.0.1 - 2019-09-20

Features

  • (gaiad) #119 Add support for the --halt-time CLI flag and configuration.

Improvements

  • #119 Refactor and upgrade Circle CI configuration.
  • (sdk) Update SDK version to v0.37.1

v2.0.0 - 2019-08-22

Bug Fixes

  • #104 Fix ModuleAccountAddrs to not rely on the x/supply keeper to get module account addresses for blacklisting.

Breaking Changes

  • (sdk) Update SDK version to v0.37.0

v1.0.0 - 2019-08-13

Bug Fixes

  • (gaiad) #4113 Fix incorrect $GOBIN in Install Go
  • (gaiacli) #3945 There's no check for chain-id in TxBuilder.SignStdTx
  • (gaiacli) #4190 Fix redelegations-from by using the correct params and query endpoint.
  • (gaiacli) #4219 Return an error when an empty mnemonic is provided during key recovery.
  • (gaiacli) #4345 Improved Ledger Nano X detection

Breaking Changes

  • (sdk) Update SDK version to v0.36.0
  • (gaiad) #3985 ValidatorPowerRank uses potential consensus power
  • (gaiad) #4027 gaiad version command does not return the checksum of the go.sum file shipped along with the source release tarball. Go modules feature guarantees dependencies reproducibility and as long as binaries are built via the Makefile shipped with the sources, no dependendencies can break such guarantee.
  • (gaiad) #4159 use module pattern and module manager for initialization
  • (gaiad) #4272 Merge gaiareplay functionality into gaiad replay. Drop gaiareplay in favor of new gaiad replay command.
  • (gaiacli) #3715 query distr rewards returns per-validator rewards along with rewards total amount.
  • (gaiacli) #40 rest-server's --cors option is now gone.
  • (gaiacli) #4027 gaiacli version command dooes not return the checksum of the go.sum file anymore.
  • (gaiacli) #4142 Turn gaiacli tx send's --from into a required argument. New shorter syntax: gaiacli tx send FROM TO AMOUNT
  • (gaiacli) #4228 Merge gaiakeyutil functionality into gaiacli keys. Drop gaiakeyutil in favor of new gaiacli keys parse command. Syntax and semantic are preserved.
  • (rest) #3715 Update /distribution/delegators/{delegatorAddr}/rewards GET endpoint as per new specs. For a given delegation, the endpoint now returns the comprehensive list of validator-reward tuples along with the grand total.
  • (rest) #3942 Update pagination data in txs query.
  • (rest) #4049 update tag MsgWithdrawValidatorCommission to match type
  • (rest) The /auth/accounts/{address} now returns a height in the response. The account is now nested under account.

Features

  • (gaiad) Add migrate command to gaiad to provide the ability to migrate exported genesis state from one version to another.
  • (gaiad) Update Gaia for community pool spend proposals per Cosmos Hub governance proposal #7 "Activate the Community Pool"

Improvements

  • (gaiad) #4042 Update docs and scripts to include the correct GO111MODULE=on environment variable.
  • (gaiad) #4066 Fix 'ExportGenesisFile() incorrectly overwrites genesis'
  • (gaiad) #4064 Remove dep and vendor from doc and version.
  • (gaiad) #4080 add missing invariants during simulations
  • (gaiad) #4343 Upgrade toolchain to Go 1.12.5.
  • (gaiacli) #4068 Remove redundant account check on gaiacli
  • (gaiacli) #4227 Support for Ledger App v1.5
  • (rest) #2007 Return 200 status code on empty results
  • (rest) #4123 Fix typo, url error and outdated command description of doc clients.
  • (rest) #4129 Translate doc clients to chinese.
  • (rest) #4141 Fix /txs/encode endpoint