Cosmos SDK Eden (v0.50) #58
Replies: 11 comments
-
Cosmos SDK v0.50.2 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.2 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.3 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.3 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.4 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.4 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.5 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.5 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.6 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.6 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.7 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.7 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.8 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.8 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.9 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.9 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.10 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.10 |
Beta Was this translation helpful? Give feedback.
-
Cosmos SDK v0.50.11 has been released: https://github.com/cosmos/cosmos-sdk/releases/tag/v0.50.11 |
Beta Was this translation helpful? Give feedback.
-
✨ Official Release Announcement
💬 Release Discussion
🚀 Highlights
Cosmos SDK v0.50 is a major release that includes a number of significant new features and improvements. These new features and improvements will make Cosmos SDK applications more performant, scalable, and secure. They will also make it easier for developers to create and integrate new modules into the Cosmos SDK ecosystem.
ABCI 2.0
Cosmos SDK v0.50 upgrades CometBFT to CometBFT v0.38.0 and integrates ABCI 2.0 semantics. Modules still follow ABCI 1.0 semantics (
BeginBlock
,EndBlock
).For instance, applications can now support Vote Extensions.
Optimistic Execution
Cosmos SDK v0.50 introduces Optimistic Execution, which allows transactions to be executed and committed without waiting for confirmation from all validators. This can significantly improve the performance of chains with a high volume of transactions.
Optimistic Execution leverages ABCI 2.0, and is disabled by default. To enable it add
baseapp.SetOptimisticExecution()
to your baseapp options in yourapp.go
.SDK modules
Cosmos SDK v0.50 starts to extract core modules away from the SDK. These are separately versioned and follow their own release cadence.
It starts with
x/evidence
,x/feegrant
,x/nft
, andx/upgrade
,Additionally, SDK v0.50 introduces a new core module,
x/circuit
that provides a circuit breaker for the SDK. Read more about it in the module documentation.Lastly,
x/capability
module has moved to the IBC repo and is now maintained by the IBC team.The further decoupling of other core modules is planned for the next release.
Store v1 and IAVL v1
Cosmos SDK v0.50 has decoupled its store from the SDK. The store is now versioned separately and follows its own release cadence.
Store v1 upgrades the IAVL tree implementation to v1. IAVL v1 provides a number of performance improvements.
Read more about it in the IAVL repo.
AutoCLI
Cosmos SDK v0.50 introduces AutoCLI, a library that makes it easier to create CLI commands for SDK applications.
Forget the boilerplate that was required to create CLI commands for SDK applications. AutoCLI will generate CLI commands for you.
Read more about it in the AutoCLI docs
Sign Mode Textual
Cosmos SDK v0.50 introduces a new sign mode mainly for hardware wallets, as a replacement of Amino JSON.
Never leak again that you are signing from a Ledger device and sign with Sign Mode Textual everywhere.
Less Boilerplate
Cosmos SDK v0.50 requires less boilerplate in general for modules code and applications.
Here's a sneak peek of what you can expect:
Next to module CLI code that can be removed thanks to AutoCLI, modules do not need to implement
ValidateBasic()
, orGetSigners
anymore.The checks can happen directly on the message server, and the signers can be retrieved from the message itself (thanks to a protobuf annotation).
Be sure to annotate your proto messages properly to take advantage of those improvements.
Read the UPGRADING.md for a more exhaustive list of changes.
📝 Changelog
Check out the changelog for an exhaustive list of changes, or compare changes from the last release.
Refer to the upgrading guide when migrating from
v0.47.x
tov0.50.1
.Note, that the next SDK release, v0.51.0, will not include
x/params
migration, when migrating from < v0.47, v0.50.x or v0.47.x, is a mandatory migration.❤️ Contributors
This list is non exhaustive and ordered alphabetically.
Thank you to everyone who contributed to this release!
Beta Was this translation helpful? Give feedback.
All reactions