Sourced from github.com/cosmos/ibc-go/v7's releases.
v7.5.0
We present here a summary of the most relevant changes, please see the v7.5.0 changelog for the full set of changes included in this release. Check out also the release announcement blog post for more information.
dependencies
apps/transfer
- In v8.1.0 the field
allowed_packet_data
was added to theAllocation
type used for authz support of IBC transfers. This field was originally a list ofMsgTransfer
'smemo
packet data keys that were allowed (i.e. top level JSON object keys). After receiving some feedback (thanks to Yieldmos team), we have re-purposed this field to be a list of full memo strings. That means that this field contains a list of memo strings that that the granter allows the grantee to include in thememo
field ofMsgTransfer
, the grantee can then submitMsgTransfer
with one of the allowed memo strings. See the documentation for more information.- In
OnChanOpenTry
, when the counterparty version does not match the executing chain's own version, instead of returning an error, the current version is now returned. This allows the channel handshake to complete in situations where the handshake initiating chain has the fee middleware wired up, but the counterparty doesn't (then transfer channel will be created with a version that does not contain fee middleware information). Similar change has been applied toOnChanOpenTry
of the host submodule in 27-interchain-accounts. See PR cosmos/ibc-go#6253 for more details.apps/27-interchain-accounts
Unordered channels
When ICA was initially released in v3.0.0 ICA channels were only allowed to be ordered, which causes the channel to close if a timeout occurs, forcing the user to reopen it. Support for unordered channels was introduced in v8.1.0, and with this release we have now back ported the feature to the v7 release line.
We have also changed the default ordering of new ICA channels from ordered to unordered. This means that new ICA channels will be unordered by default. Ordering can be specified either by setting the field
ordering
ofMsgRegisterInterchainAccount
or using the newly introduced functionRegisterInterchainAccountWithOrdering
(in case the legacyRegisterInterchainAccount
function is used by a custom auth module).Queries
We have added the message
MsgModuleQuerySafe
, which enables to perform queries on the host chain. This message contains a list ofQueryRequest
s that will be routed to the query router when the messageMsgModuleQuerySafe
is executed on the host chain. TheMsgModuleQuerySafe
message can be included in the list of encodedsdk.Msg
s ofInterchainPacketData
. The host chain will return on the acknowledgment the responses for all the queries (in the same order as the query requests in theRequests
field of theMsgModuleQuerySafe
).Please note that only module safe queries can be executed (i.e. deterministic queries that are safe to be called from within the state machine). See the documentation for more details and the list of supported queries.
Please also note that it is mandatory to register the gRPC query router after the creation of the host submodule's keeper, otherwise nodes will not start. The
WithQueryRouter
function should be used. Please check the sample integration code in the documentation for more details.This feature will also be included in the upcoming v8.3.0 release.
apps/29-fee
- We have fixed a bug where, upon channel closure, already refunded fees remained in state in the event of one or more of the packet fees attached to a packet not being refunded. See PR cosmos/ibc-go#6255 for more details. Many thanks to
@​sushiwushi
for reporting this bug.
To learn more about ibc-go versioning, please read our RELEASES.md.
IMPORTANT: Please read the migration guides for any versions of ibc-go that you might be going through when upgrading to this version. For example: if you upgrade from the IBC module contained in the Cosmos SDK 0.42.0 to SDK v0.47.11 and ibc-go v7.5.0, please follow:
- The migration from SDK 0.41.x or 0.42.x to the IBC module in the ibc-go repository based on the SDK v0.44.x.
- The migration from ibc-go v1 to v2.
- The migration from ibc-go v2 to v3.
- The migration from ibc-go v3 to v4.
- The migration from ibc-go v4 to v5.
- The migration from ibc-go v5 to v6.
- The migration from ibc-go v6 to v7.
- The migration from ibc-go v7 to v7.1.
- The migration from ibc-go v7.2 to v7.3.
Sourced from github.com/cosmos/ibc-go/v7's changelog.
v7.5.0 - 2024-05-14
Dependencies
- #6254 Update Cosmos SDK to v0.47.11 and CometBFT to v0.37.5.
State Machine Breaking
- (light-clients/07-tendermint) #6276 Fix: No-op to avoid panicking on
UpdateState
for invalid misbehaviour submissions.Improvements
- (apps/27-interchain-accounts) #6147 Emit an event signalling that the host submodule is disabled.
- (testing) #6180 Add version to tm abci headers in ibctesting.
- (apps/27-interchain-accounts, apps/tranfer, apps/29-fee) #6253 Allow channel handshake to succeed if fee middleware is wired up on one side, but not the other.
- (apps/transfer) #6268 Use memo strings instead of JSON keys in
AllowedPacketData
of transfer authorization.Features
- (apps/27-interchain-accounts) #5633 Allow new ICA channels to use unordered ordering.
- (apps/27-interchain-accounts) #5785 Introduce a new tx message that ICA host submodule can use to query the chain (only those marked with
module_query_safe
) and write the responses to the acknowledgement.Bug Fixes
- (apps/29-fee) #6255 Delete already refunded fees from state if some fee(s) cannot be refunded on channel closure.
3a5f6d4
update changelog before v7.5.0 releaseeff9b35
Update CHANGELOG.mda98ebca
imp: allow memo strings instead of keys for transfer authorizations (backport...1c05fa7
fix: noop on UpdateState for invalid misbehaviour (backport #6276) (#6296)2e7e3ea
workaround for bank module safe queries (#6286)a4ecd55
fix: delete already refunded fees from state if some fee cannot be refunded o...50a88fa
feat(release/v7.5.x): use unordered ordering by default for new ica channels ...3ef2a97
imp(apps): allow one sided fee middleware handshakes to complete (backport #6...fea2507
deps: bump sdk v0.47.11 (#6254)29dd2f3
imp: add version to tm headers in ibctesting (release/v7.5.x) (#6180)