Features

  • (abci_utils) #25008 add the ability to assign a custom signer extraction adapter in DefaultProposalHandler.

Bug Fixes

Bug Fixes

  • (x/epochs) #24770 Fix register of epoch hooks in InvokeSetHooks.

Features

  • (simsx) #24062 #24145 Add new simsx framework on top of simulations for better module dev experience.
  • (baseapp) #24069 Create CheckTxHandler to allow extending the logic of CheckTx.
  • (types) #24093 Added a new method, IsGT, for types.Coin. This method is used to check if a types.Coin is greater than another types.Coin.
  • (client/keys) #24071 Add support for importing hex key using standard input.
  • (types) #23780 Add a ValueCodec for the math.Uint type that can be used in collections maps.
  • (perf)#24045 Sims: Replace runsim command with Go stdlib testing. CLI: Commit default true, Lean, SimulateEveryOperation, PrintAllInvariants, DBBackend params removed
  • (crypto/keyring) #24040 Expose the db keyring used in the keystore.
  • (types) #23919 Add MustValAddressFromBech32 function.
  • (all) #23708 Add unordered transaction support.
  • Adds a --timeout-timestamp flag that allows users to specify a block time at which the unordered transactions should expire from the mempool.
  • (x/epochs) #23815 Upstream x/epochs from Osmosis
  • (client) #23811 Add auto cli for node service.
  • (genutil) #24018 Allow manually setting the consensus key type in genesis
  • (client) #18557 Add --qrcode flag to keys show command to support displaying keys address QR code.
  • (x/auth) #24030 Allow usage of ed25519 keys for transaction signing.
  • (baseapp) #24163 Add StreamingManager to baseapp to extend the abci listeners.
  • (x/protocolpool) #23933 Add x/protocolpool module.
  • x/distribution can now utilize an externally managed community pool. NOTE: this will make the message handlers for FundCommunityPool and CommunityPoolSpend error, as well as the query handler for CommunityPool.
  • (client) #18101 Add a keyring-default-keyname in client.toml for specifying a default key name, and skip the need to use the --from flag when signing transactions.
  • (x/gov) #24355 Allow users to set a custom CalculateVoteResultsAndVotingPower function to be used in govkeeper.Tally.
  • (x/mint) #24436 Allow users to set a custom minting function used in the x/mint begin blocker.
  • The InflationCalculationFn argument to mint.NewAppModule() is now ignored and must be nil. To set a custom InflationCalculationFn on the default minter, use mintkeeper.WithMintFn(mintkeeper.DefaultMintFn(customInflationFn)).
  • (api) #24428 Add block height to response headers

Improvements

  • (client) #24561 TimeoutTimestamp flag has been changed to TimeoutDuration, which now sets the timeout timestamp of unordered transactions to the current time + duration passed.
  • (telemetry) #24541 Telemetry now includes a pre_blocker metric key. x/upgrade should migrate to this key in v0.54.0.
  • (x/auth) #24541 x/auth’s PreBlocker now emits telemetry under the pre_blocker metric key.
  • (x/bank) #24431 Reduce the number of ValidateDenom calls in bank.SendCoins and Coin.
  • The AmountOf() method onsdk.Coins no longer will panic if given an invalid denom and will instead return a zero value.
  • (x/staking) #24391 Replace panics with error results; more verbose error messages
  • (x/staking) #24354 Optimize validator endblock by reducing bech32 conversions, resulting in significant performance improvement
  • (client/keys) #18950 Improve <appd> keys add, <appd> keys import and <appd> keys rename by checking name validation.
  • (client/keys) #18703 Improve <appd> keys add and <appd> keys show by checking whether there are duplicate keys in the multisig case.
  • (client/keys) #18745 Improve <appd> keys export and <appd> keys mnemonic by adding —yes option to skip interactive confirmation.
  • (x/bank) #24106 SendCoins now checks for SendRestrictions before instead of after deducting coins using subUnlockedCoins.
  • (crypto/ledger) #24036 Improve error message when deriving paths using index > 100
  • (gRPC) #23844 Add debug log prints for each gRPC request.
  • (gRPC) #24073 Adds error handling for out-of-gas panics in grpc query handlers.
  • (server) #24072 Return BlockHeader by shallow copy in server Context.
  • (x/bank) #24053 Resolve a foot-gun by swapping send restrictions check in InputOutputCoins before coin deduction.
  • (codec/types) #24336 Most types definitions were moved to github.com/cosmos/gogoproto/types/any with aliases to these left in codec/types so that there should be no breakage to existing code. This allows protobuf generated code to optionally reference the SDK’s custom Any type without a direct dependency on the SDK. This can be done by changing the protoc M parameter for any.proto to Mgoogle/protobuf/any.proto=github.com/cosmos/gogoproto/types/any.

Bug Fixes

  • (x/gov)#24460 Do not call Remove during Walk in defaultCalculateVoteResultsAndVotingPower.
  • (baseapp) 24261 Fix post handler error always results in code 1
  • (server) #24068 Allow align block header with skip check header in grpc server.
  • (x/gov) #24044 Fix some places in which we call Remove inside a Walk (x/gov).
  • (baseapp) #24042 Fixed a data race inside BaseApp.getContext, found by end-to-end (e2e) tests.
  • (client/server) #24059 Consistently set viper prefix in client and server. It defaults for the binary name for both client and server.
  • (client/keys) #24041 keys delete won’t terminate when a key is not found, but will log the error.
  • (baseapp) #24027 Ensure that BaseApp.Init checks that the commit multistore is set to protect against nil dereferences.
  • (x/group) GHSA-47ww-ff84-4jrg Fix x/group can halt when erroring in EndBlocker
  • (x/distribution) #23934 Fix vulnerability in incrementReferenceCount in distribution.
  • (baseapp) #23879 Ensure finalize block response is not empty in the defer check of FinalizeBlock to avoid panic by nil pointer.
  • (query) #23883 Fix NPE in query pagination.
  • (client) #23860 Add missing unordered field for legacy amino signing of tx body.
  • (x/bank) #23836 Fix DenomMetadata rpc allow value with slashes.
  • (query) 87d3a43 Fix collection filtered pagination.
  • (sims) #23952 Use liveness matrix for validator sign status in sims
  • (baseapp) #24055 Align block header when query with latest height.
  • (baseapp) #24074 Use CometBFT’s ComputeProtoSizeForTxs in defaultTxSelector.SelectTxForProposal for consistency.
  • (cli) #24090 Prune cmd should disable async pruning.
  • (x/auth) #19239 Sets from flag in multi-sign command to avoid no key name provided error.
  • (x/auth) #23741 Support legacy global AccountNumber for legacy compatibility.
  • (baseapp) #24526 Fix incorrect retention height when commitHeight equals minRetainBlocks.
  • (x/protocolpool) #24594 Fix NPE when initializing module via depinject.
  • (x/epochs) #24610 Fix semantics of CurrentEpochStartHeight being set before epoch has started.