2018-08-13 07:47:44 -07:00
## PENDING
2018-08-12 00:33:48 -07:00
BREAKING CHANGES
2018-08-12 17:10:59 -07:00
* Gaia REST API (`gaiacli advanced rest-server`)
2018-08-19 13:24:45 -07:00
* [x/stake] Validator.Owner renamed to Validator.Operator
2018-09-21 09:33:58 -07:00
* [\#595 ](https://github.com/cosmos/cosmos-sdk/issues/595 ) Connections to the REST server are now secured using Transport Layer Security by default. The --insecure flag is provided to switch back to insecure HTTP.
2018-07-18 17:42:19 -07:00
2018-08-12 17:10:59 -07:00
* Gaia CLI (`gaiacli`)
2018-08-19 13:24:45 -07:00
* [x/stake] Validator.Owner renamed to Validator.Operator
* [cli] unsafe_reset_all, show_validator, and show_node_id have been renamed to unsafe-reset-all, show-validator, and show-node-id
2018-09-06 21:54:59 -07:00
* [cli] [\#1983 ](https://github.com/cosmos/cosmos-sdk/issues/1983 ) --print-response now defaults to true in commands that create and send a transaction
* [cli] [\#1983 ](https://github.com/cosmos/cosmos-sdk/issues/1983 ) you can now pass --pubkey or --address to gaiacli keys show to return a plaintext representation of the key's address or public key for use with other commands
* [cli] [\#2061 ](https://github.com/cosmos/cosmos-sdk/issues/2061 ) changed proposalID in governance REST endpoints to proposal-id
* [cli] [\#2014 ](https://github.com/cosmos/cosmos-sdk/issues/2014 ) `gaiacli advanced` no longer exists - to access `ibc` , `rest-server` , and `validator-set` commands use `gaiacli ibc` , `gaiacli rest-server` , and `gaiacli tendermint` , respectively
2018-08-28 09:53:56 -07:00
* [makefile] `get_vendor_deps` no longer updates lock file it just updates vendor directory. Use `update_vendor_deps` to update the lock file. [#2152 ](https://github.com/cosmos/cosmos-sdk/pull/2152 )
2018-09-08 01:44:58 -07:00
* [cli] [\#2221 ](https://github.com/cosmos/cosmos-sdk/issues/2221 ) All commands that
utilize a validator's operator address must now use the new Bech32 prefix,
`cosmosvaloper` .
2018-09-06 21:54:59 -07:00
* [cli] [\#2190 ](https://github.com/cosmos/cosmos-sdk/issues/2190 ) `gaiacli init --gen-txs` is now `gaiacli init --with-txs` to reduce confusion
2018-09-25 13:48:38 -07:00
* [cli] \#2073 --from can now be either an address or a key name
2018-09-26 07:00:49 -07:00
* [cli] [\#1184 ](https://github.com/cosmos/cosmos-sdk/issues/1184 ) Subcommands reorganisation, see [\#2390 ](https://github.com/cosmos/cosmos-sdk/pull/2390 ) for a comprehensive list of changes.
2018-08-12 17:10:59 -07:00
* Gaia
2018-08-13 18:26:16 -07:00
* Make the transient store key use a distinct store key. [#2013 ](https://github.com/cosmos/cosmos-sdk/pull/2013 )
2018-09-06 21:54:59 -07:00
* [x/stake] [\#1901 ](https://github.com/cosmos/cosmos-sdk/issues/1901 ) Validator type's Owner field renamed to Operator; Validator's GetOwner() renamed accordingly to comply with the SDK's Validator interface.
2018-08-22 09:30:34 -07:00
* [docs] [#2001 ](https://github.com/cosmos/cosmos-sdk/pull/2001 ) Update slashing spec for slashing period
2018-08-22 08:56:13 -07:00
* [x/stake, x/slashing] [#1305 ](https://github.com/cosmos/cosmos-sdk/issues/1305 ) - Rename "revoked" to "jailed"
2018-08-29 15:48:42 -07:00
* [x/stake] [#1676] Revoked and jailed validators put into the unbonding state
* [x/stake] [#1877] Redelegations/unbonding-delegation from unbonding validator have reduced time
2018-09-06 21:44:11 -07:00
* [x/slashing] \#1789 Slashing changes for Tendermint validator set offset (NextValSet)
2018-10-04 09:22:51 -07:00
* [x/stake] [\#2040 ](https://github.com/cosmos/cosmos-sdk/issues/2040 ) Validator
operator type has now changed to `sdk.ValAddress`
2018-09-08 01:44:58 -07:00
* [x/stake] [\#2221 ](https://github.com/cosmos/cosmos-sdk/issues/2221 ) New
Bech32 prefixes have been introduced for a validator's consensus address and
public key: `cosmosvalcons` and `cosmosvalconspub` respectively. Also, existing Bech32 prefixes have been
renamed for accounts and validator operators:
* `cosmosaccaddr` / `cosmosaccpub` => `cosmos` / `cosmospub`
* `cosmosvaladdr` / `cosmosvalpub` => `cosmosvaloper` / `cosmosvaloperpub`
2018-09-12 21:53:55 -07:00
* [x/stake] [#1013] TendermintUpdates now uses transient store
2018-10-03 23:42:03 -07:00
* [x/stake] \#2435 Remove empty bytes from the ValidatorPowerRank store key
2018-09-20 07:53:52 -07:00
* [x/gov] [#2195] Governance uses BFT Time
2018-09-25 11:45:20 -07:00
* [x/gov] \#2256 Removed slashing for governance non-voting validators
2018-09-27 06:52:30 -07:00
* [simulation] \#2162 Added back correct supply invariants
2018-10-05 10:42:52 -07:00
* [x/slashing] \#2430 Simulate more slashes, check if validator is jailed before jailing
2018-10-07 21:43:47 -07:00
* [x/stake] \#2393 Removed `CompleteUnbonding` and `CompleteRedelegation` Msg types, and instead added unbonding/redelegation queues to endblocker
2018-08-22 09:31:04 -07:00
2018-08-16 11:23:57 -07:00
* SDK
2018-09-06 15:45:07 -07:00
* [core] \#2219 Update to Tendermint 0.24.0
* Validator set updates delayed by one block
* BFT timestamp that can safely be used by applications
* Fixed maximum block size enforcement
2018-09-06 21:54:59 -07:00
* [core] [\#1807 ](https://github.com/cosmos/cosmos-sdk/issues/1807 ) Switch from use of rational to decimal
* [types] [\#1901 ](https://github.com/cosmos/cosmos-sdk/issues/1901 ) Validator interface's GetOwner() renamed to GetOperator()
2018-08-31 17:01:23 -07:00
* [x/slashing] [#2122 ](https://github.com/cosmos/cosmos-sdk/pull/2122 ) - Implement slashing period
2018-09-26 03:13:40 -07:00
* [types] [\#2119 ](https://github.com/cosmos/cosmos-sdk/issues/2119 ) Parsed error messages and ABCI log errors to make them more human readable.
* [types] \#2407 MulInt method added to big decimal in order to improve efficiency of slashing
2018-08-26 18:04:52 -07:00
* [simulation] Rename TestAndRunTx to Operation [#2153 ](https://github.com/cosmos/cosmos-sdk/pull/2153 )
2018-09-09 08:34:09 -07:00
* [simulation] Remove log and testing.TB from Operation and Invariants, in favor of using errors \#2282
2018-09-22 20:20:53 -07:00
* [simulation] Remove usage of keys and addrs in the types, in favor of simulation.Account \#2384
2018-09-04 05:14:11 -07:00
* [tools] Removed gocyclo [#2211 ](https://github.com/cosmos/cosmos-sdk/issues/2211 )
2018-09-03 22:53:07 -07:00
* [baseapp] Remove `SetTxDecoder` in favor of requiring the decoder be set in baseapp initialization. [#1441 ](https://github.com/cosmos/cosmos-sdk/issues/1441 )
2018-09-19 08:25:52 -07:00
* [baseapp] [\#1921 ](https://github.com/cosmos/cosmos-sdk/issues/1921 ) Add minimumFees field to BaseApp.
2018-09-12 00:13:14 -07:00
* [store] Change storeInfo within the root multistore to use tmhash instead of ripemd160 \#2308
2018-09-13 11:17:32 -07:00
* [codec] \#2324 All referrences to wire have been renamed to codec. Additionally, wire.NewCodec is now codec.New().
2018-09-17 07:34:06 -07:00
* [types] \#2343 Make sdk.Msg have a names field, to facilitate automatic tagging.
2018-09-21 08:54:32 -07:00
* [baseapp] \#2366 Automatically add action tags to all messages
2018-09-26 06:39:05 -07:00
* [x/auth] \#2377 auth.StdSignMsg -> txbuilder.StdSignMsg
2018-09-24 21:09:31 -07:00
* [x/staking] \#2244 staking now holds a consensus-address-index instead of a consensus-pubkey-index
2018-09-25 23:11:57 -07:00
* [x/staking] \#2236 more distribution hooks for distribution
2018-10-03 09:37:06 -07:00
* [x/stake] \#2394 Split up UpdateValidator into distinct state transitions applied only in EndBlock
2018-08-16 11:23:57 -07:00
* Tendermint
2018-10-07 21:08:20 -07:00
* Update tendermint version from v0.23.0 to v0.25.0, notable changes
* Mempool now won't build too large blocks, or too computationally expensive blocks
* Maximum tx sizes and gas are now removed, and are implicitly the blocks maximums
* ABCI validators no longer send the pubkey. The pubkey is only sent in validator updates
* Validator set changes are now delayed by one block
* Block header now includes the next validator sets hash
* BFT time is implemented
* Secp256k1 signature format has changed
* There is now a threshold multisig format
* See the [tendermint changelog ](https://github.com/tendermint/tendermint/blob/master/CHANGELOG.md ) for other changes.
2018-08-13 07:47:44 -07:00
2018-07-18 17:42:19 -07:00
FEATURES
2018-08-13 07:42:47 -07:00
* Gaia REST API (`gaiacli advanced rest-server`)
2018-09-08 02:26:20 -07:00
* [gaia-lite] Endpoints to query staking pool and params
* [gaia-lite] [\#2110 ](https://github.com/cosmos/cosmos-sdk/issues/2110 ) Add support for `simulate=true` requests query argument to endpoints that send txs to run simulations of transactions
* [gaia-lite] [\#966 ](https://github.com/cosmos/cosmos-sdk/issues/966 ) Add support for `generate_only=true` query argument to generate offline unsigned transactions
* [gaia-lite] [\#1953 ](https://github.com/cosmos/cosmos-sdk/issues/1953 ) Add /sign endpoint to sign transactions generated with `generate_only=true` .
* [gaia-lite] [\#1954 ](https://github.com/cosmos/cosmos-sdk/issues/1954 ) Add /broadcast endpoint to broadcast transactions signed by the /sign endpoint.
2018-10-04 05:27:43 -07:00
* [gaia-lite] [\#2113 ](https://github.com/cosmos/cosmos-sdk/issues/2113 ) Rename `/accounts/{address}/send` to `/bank/accounts/{address}/transfers` , rename `/accounts/{address}` to `/auth/accounts/{address}`
2018-08-13 07:42:47 -07:00
* Gaia CLI (`gaiacli`)
2018-08-21 08:32:54 -07:00
* [cli] Cmds to query staking pool and params
2018-08-16 01:03:25 -07:00
* [gov][cli] #2062 added `--proposal` flag to `submit-proposal` that allows a JSON file containing a proposal to be passed in
2018-09-06 21:54:59 -07:00
* [\#2040 ](https://github.com/cosmos/cosmos-sdk/issues/2040 ) Add `--bech` to `gaiacli keys show` and respective REST endpoint to
2018-08-30 21:06:44 -07:00
provide desired Bech32 prefix encoding
2018-09-11 17:31:30 -07:00
* [cli] [\#2047 ](https://github.com/cosmos/cosmos-sdk/issues/2047 ) [\#2306 ](https://github.com/cosmos/cosmos-sdk/pull/2306 ) Passing --gas=simulate triggers a simulation of the tx before the actual execution.
The gas estimate obtained via the simulation will be used as gas limit in the actual execution.
* [cli] [\#2047 ](https://github.com/cosmos/cosmos-sdk/issues/2047 ) The --gas-adjustment flag can be used to adjust the estimate obtained via the simulation triggered by --gas=simulate.
2018-09-06 21:54:59 -07:00
* [cli] [\#2110 ](https://github.com/cosmos/cosmos-sdk/issues/2110 ) Add --dry-run flag to perform a simulation of a transaction without broadcasting it. The --gas flag is ignored as gas would be automatically estimated.
2018-09-07 03:59:16 -07:00
* [cli] [\#2204 ](https://github.com/cosmos/cosmos-sdk/issues/2204 ) Support generating and broadcasting messages with multiple signatures via command line:
* [\#966 ](https://github.com/cosmos/cosmos-sdk/issues/966 ) Add --generate-only flag to build an unsigned transaction and write it to STDOUT.
* [\#1953 ](https://github.com/cosmos/cosmos-sdk/issues/1953 ) New `sign` command to sign transactions generated with the --generate-only flag.
2018-09-08 02:26:20 -07:00
* [\#1954 ](https://github.com/cosmos/cosmos-sdk/issues/1954 ) New `broadcast` command to broadcast transactions generated offline and signed with the `sign` command.
2018-09-25 14:36:42 -07:00
* [cli] \#2220 Add `gaiacli config` feature to interactively create CLI config files to reduce the number of required flags
2018-09-24 15:23:58 -07:00
* [stake][cli] [\#1672 ](https://github.com/cosmos/cosmos-sdk/issues/1672 ) Introduced
new commission flags for validator commands `create-validator` and `edit-validator` .
2018-08-13 07:42:47 -07:00
* Gaia
2018-08-30 18:38:28 -07:00
* [cli] #2170 added ability to show the node's address via `gaiad tendermint show-address`
2018-09-26 08:04:42 -07:00
* [simulation] #2313 Reworked `make test_sim_gaia_slow` to `make test_sim_gaia_full` , now simulates from multiple starting seeds in parallel
2018-09-19 08:25:52 -07:00
* [cli] [\#1921] (https://github.com/cosmos/cosmos-sdk/issues/1921)
* New configuration file `gaiad.toml` is now created to host Gaia-specific configuration.
* New --minimum_fees/minimum_fees flag/config option to set a minimum fee.
2018-08-13 07:42:47 -07:00
2018-08-16 11:23:57 -07:00
* SDK
2018-08-06 02:09:16 -07:00
* [querier] added custom querier functionality, so ABCI query requests can be handled by keepers
2018-09-06 21:54:59 -07:00
* [simulation] [\#1924 ](https://github.com/cosmos/cosmos-sdk/issues/1924 ) allow operations to specify future operations
* [simulation] [\#1924 ](https://github.com/cosmos/cosmos-sdk/issues/1924 ) Add benchmarking capabilities, with makefile commands "test_sim_gaia_benchmark, test_sim_gaia_profile"
2018-09-18 19:47:54 -07:00
* [simulation] [\#2349 ](https://github.com/cosmos/cosmos-sdk/issues/2349 ) Add time-based future scheduled operations to simulator
2018-09-26 11:34:01 -07:00
* [x/auth] \#2376 Remove FeePayer() from StdTx
2018-09-24 15:23:58 -07:00
* [x/stake] [\#1672 ](https://github.com/cosmos/cosmos-sdk/issues/1672 ) Implement
basis for the validator commission model.
2018-10-04 07:20:31 -07:00
* [x/auth] Support account removal in the account mapper.
2018-08-13 07:47:44 -07:00
2018-08-16 11:23:57 -07:00
* Tendermint
2018-08-13 07:47:44 -07:00
2018-07-18 17:42:19 -07:00
IMPROVEMENTS
2018-08-23 11:51:42 -07:00
* [tools] Improved terraform and ansible scripts for infrastructure deployment
* [tools] Added ansible script to enable process core dumps
2018-08-13 07:42:47 -07:00
2018-08-13 07:47:44 -07:00
* Gaia REST API (`gaiacli advanced rest-server`)
2018-09-06 21:54:59 -07:00
* [x/stake] [\#2000 ](https://github.com/cosmos/cosmos-sdk/issues/2000 ) Added tests for new staking endpoints
2018-08-13 07:47:44 -07:00
* Gaia CLI (`gaiacli`)
2018-08-21 17:53:16 -07:00
* [cli] #2060 removed `--select` from `block` command
2018-08-23 02:34:59 -07:00
* [cli] #2128 fixed segfault when exporting directly after `gaiad init`
2018-08-13 07:47:44 -07:00
2018-08-13 07:42:47 -07:00
* Gaia
2018-08-22 07:24:09 -07:00
* [x/stake] [#2023 ](https://github.com/cosmos/cosmos-sdk/pull/2023 ) Terminate iteration loop in `UpdateBondedValidators` and `UpdateBondedValidatorsFull` when the first revoked validator is encountered and perform a sanity check.
2018-08-21 07:13:34 -07:00
* [x/auth] Signature verification's gas cost now accounts for pubkey type. [#2046 ](https://github.com/tendermint/tendermint/pull/2046 )
2018-08-31 12:21:12 -07:00
* [x/stake] [x/slashing] Ensure delegation invariants to jailed validators [#1883 ](https://github.com/cosmos/cosmos-sdk/issues/1883 ).
2018-08-31 00:37:25 -07:00
* [x/stake] Improve speed of GetValidator, which was shown to be a performance bottleneck. [#2046 ](https://github.com/tendermint/tendermint/pull/2200 )
2018-10-03 23:42:03 -07:00
* [x/stake] \#2435 Improve memory efficiency of getting the various store keys
2018-09-09 08:23:51 -07:00
* [genesis] \#2229 Ensure that there are no duplicate accounts or validators in the genesis state.
2018-10-07 21:12:37 -07:00
* [genesis] \#2450 Validate staking genesis parameters.
2018-09-11 02:15:38 -07:00
* Add SDK validation to `config.toml` (namely disabling `create_empty_blocks` ) \#1571
2018-09-19 09:03:04 -07:00
* \#1941(https://github.com/cosmos/cosmos-sdk/issues/1941) Version is now inferred via `git describe --tags` .
2018-10-05 03:41:38 -07:00
* [x/distribution] \#1671 add distribution types and tests
2018-09-13 14:23:44 -07:00
2018-08-16 11:23:57 -07:00
* SDK
2018-08-19 13:24:45 -07:00
* [tools] Make get_vendor_deps deletes `.vendor-new` directories, in case scratch files are present.
2018-08-23 01:05:16 -07:00
* [spec] Added simple piggy bank distribution spec
2018-09-06 21:54:59 -07:00
* [cli] [\#1632 ](https://github.com/cosmos/cosmos-sdk/issues/1632 ) Add integration tests to ensure `basecoind init && basecoind` start sequences run successfully for both `democoin` and `basecoin` examples.
2018-08-24 10:18:17 -07:00
* [store] Speedup IAVL iteration, and consequently everything that requires IAVL iteration. [#2143 ](https://github.com/cosmos/cosmos-sdk/issues/2143 )
2018-09-09 08:13:17 -07:00
* [store] \#1952, \#2281 Update IAVL dependency to v0.11.0
2018-08-26 18:04:52 -07:00
* [simulation] Make timestamps randomized [#2153 ](https://github.com/cosmos/cosmos-sdk/pull/2153 )
2018-09-09 08:34:09 -07:00
* [simulation] Make logs not just pure strings, speeding it up by a large factor at greater block heights \#2282
2018-09-12 00:16:52 -07:00
* [simulation] Add a concept of weighting the operations \#2303
2018-09-11 02:18:58 -07:00
* [simulation] Logs get written to file if large, and also get printed on panics \#2285
2018-10-02 05:01:18 -07:00
* [simulation] Bank simulations now makes testing auth configurable \#2425
2018-09-12 01:02:03 -07:00
* [gaiad] \#1992 Add optional flag to `gaiad testnet` to make config directory of daemon (default `gaiad` ) and cli (default `gaiacli` ) configurable
2018-09-13 14:23:44 -07:00
* [x/stake] Add stake `Queriers` for Gaia-lite endpoints. This increases the staking endpoints performance by reusing the staking `keeper` logic for queries. [#2249 ](https://github.com/cosmos/cosmos-sdk/pull/2149 )
2018-09-26 07:02:56 -07:00
* [store] [\#2017 ](https://github.com/cosmos/cosmos-sdk/issues/2017 ) Refactor
gas iterator gas consumption to only consume gas for iterator creation and `Next`
calls which includes dynamic consumption of value length.
2018-09-24 21:18:18 -07:00
* [types/decimal] \#2378 - Added truncate functionality to decimal
2018-09-26 07:00:49 -07:00
* [client] [\#1184 ](https://github.com/cosmos/cosmos-sdk/issues/1184 ) Remove unused `client/tx/sign.go` .
2018-08-13 07:47:44 -07:00
2018-08-16 11:23:57 -07:00
* Tendermint
2018-08-13 07:47:44 -07:00
2018-07-18 17:42:19 -07:00
BUG FIXES
2018-08-13 07:42:47 -07:00
2018-08-13 07:47:44 -07:00
* Gaia REST API (`gaiacli advanced rest-server`)
2018-08-13 07:42:47 -07:00
* Gaia CLI (`gaiacli`)
2018-09-06 21:54:59 -07:00
* [cli] [\#1997 ](https://github.com/cosmos/cosmos-sdk/issues/1997 ) Handle panics gracefully when `gaiacli stake {delegation,unbond}` fail to unmarshal delegation.
2018-09-08 01:33:55 -07:00
* [cli] [\#2265 ](https://github.com/cosmos/cosmos-sdk/issues/2265 ) Fix JSON formatting of the `gaiacli send` command.
2018-08-13 07:42:47 -07:00
* Gaia
2018-09-12 00:16:28 -07:00
* [x/stake] Return correct Tendermint validator update set on `EndBlocker` by not
including non previously bonded validators that have zero power. [#2189 ](https://github.com/cosmos/cosmos-sdk/issues/2189 )
2018-08-13 07:42:47 -07:00
2018-08-16 11:23:57 -07:00
* SDK
2018-09-06 21:54:59 -07:00
* [\#1988 ](https://github.com/cosmos/cosmos-sdk/issues/1988 ) Make us compile on OpenBSD (disable ledger) [#1988] (https://github.com/cosmos/cosmos-sdk/issues/1988)
* [\#2105 ](https://github.com/cosmos/cosmos-sdk/issues/2105 ) Fix DB Iterator leak, which may leak a go routine.
* [ledger] [\#2064 ](https://github.com/cosmos/cosmos-sdk/issues/2064 ) Fix inability to sign and send transactions via the LCD by
2018-08-27 15:45:34 -07:00
loading a Ledger device at runtime.
2018-09-06 21:54:59 -07:00
* [\#2158 ](https://github.com/cosmos/cosmos-sdk/issues/2158 ) Fix non-deterministic ordering of validator iteration when slashing in `gov EndBlocker`
2018-09-08 01:29:24 -07:00
* [simulation] \#1924 Make simulation stop on SIGTERM
2018-09-24 08:06:38 -07:00
* [\#2388 ](https://github.com/cosmos/cosmos-sdk/issues/2388 ) Remove dependency on deprecated tendermint/tmlibs repository.
2018-10-03 09:42:44 -07:00
* [\#2416 ](https://github.com/cosmos/cosmos-sdk/issues/2416 ) Refactored
`InitializeTestLCD` to properly include proposing validator in genesis state.
2018-08-13 07:42:47 -07:00
2018-08-16 11:23:57 -07:00
* Tendermint