v0.46.2
Cosmos SDK v0.46.2 Release Notes
This release introduces a number of bug fixes, features and improvements.
Please see the CHANGELOG for an exhaustive list of changes.
Full Commit History: https://github.com/cosmos/cosmos-sdk/compare/v0.46.1...v0.46.2
v0.46.1
Cosmos SDK v0.46.1 Release Notes
This release introduces a few bug fixes and improvements.
Notably, the crisis invariant check has been speed up (thanks to a Juno bounty) and the default priority mechanism has been improved to depend on gas price instead of fee. In addition, Tendermint has been upgraded to 0.34.21
.
Please see the CHANGELOG for an exhaustive list of changes.
Full Commit History: https://github.com/cosmos/cosmos-sdk/compare/v0.46.0...v0.46.1
v0.46.0
Cosmos SDK v0.46.0 Release Notes
This release introduces several new important updates to the Cosmos SDK. The release notes below provide an overview of the larger high-level changes introduced in the v0.46 release series.
That being said, this release does contain many more minor and module-level changes besides those mentioned below. For a comprehsive list of all breaking changes and improvements since the v0.45 release series, please see the CHANGELOG.
New Module: x/group
The previous v0.43 series focused on simplifying keys and fee management for SDK users, by adding x/feegrant
and x/authz
. v0.46 finishes this work by introducing x/group
.
x/group
provides functionality to define on-chain groups of people that can execute arbitrary messages based on agreed upon rules. A simple use-case of x/group
is to create on-chain multisigs (with updateable members and thresholds), but x/group
can also be used to create more complex DAOs.
The x/group
module revolves around 3 concepts:
- A group is simply an aggregation of accounts with associated weights.
- A group policy is a group with a set of rules attached, called decision policy. The decision policy defines how voting and arbitrary message execution happens (e.g. does a proposal pass on 50% yes? 2/3 yes? is there a way to veto? etc). Each group policy has its own an on-chain account, so can hold funds. Managing group membership separately from decision policies results in the least overhead and keeps membership consistent across different policies.
- Any member of a group can submit a proposal for a group policy account to decide upon. A proposal consists of a set of messages that will be executed if the proposal passes voting.
If a proposal passes the decision policy's rules after its voting period, then any account can send a MsgExec
against this proposal to execute the sdk.Msg
s included in the proposal.
For more details about x/group
, please refer to the SDK documentation and ADR-042.
The folder structure of x/group
contains an internal
folder, which holds a custom ORM used only by x/group
(and which will be replaced by the new ORM) as well as a new implementation of Dec
(for decimals) based on cockroachdb/apd
, which serves as a proof-of-concept for the new sdk.Dec
.
Msg
-based Gov Proposals
In an effort to align x/gov
with x/group
, the SDK v0.46 release introduces a new Protobuf package: cosmos.gov.v1
.
The biggest change compared to the previous cosmoss.gov.v1beta1
is in MsgSubmitProposal
: instead of defining gov router proposal handlers, the v0.46 gov execution models is based on sdk.Msg
s:
... (truncated)