Releases: cosmos/ibc-go
modules/light-clients/08-wasm/v0.4.0+ibc-go-v8.3-wasmvm-v2.0
Highlights 🌟
We present here a summary of the most relevant changes, please see the changelog for more details.
- In v0.3.0+ibc-go-v8.3-wasmvm-v2.0 we added a new
MerklePath
type and used it for thePath
field of theVerifyMembershipMsg
andVerifyNonMembershipMsg
structs of the contract API. This change was API breaking for light contracts and it required a migration for existing contracts to correctly handle deserialization of theKeyPath
field (which had changed from[]string
to[][]byte
). In this release we are making an extra change to explicitly break the contract API JSON message field name: thepath
field of the JSON-encodedVerifyMembershipMsg
andVerifyNonMembershipMsg
messages has been renamed tomerkle_path
, so that light client contracts would not silently unmarshal a key as a base64 encoded string value (and instead fail to unmarshal the message entirely).
All previous releases of the 08-wasm compatible with ibc-go v8.3 and wasmvm v2.0 have been retracted and we strongly recommend contract developers to update their JSON API message structure for the SudoMsg
payloads VerifyMembershipMsg
and VerifyNonMembershipMsg
.
For chains on v8.3 or above in the v8 line that have not deployed a light client contract yet, we strongly recommend to upgrade to this release first and then deploy the updated contract. Otherwise, chains will need to migrate the contract later on.
Migration 🦆
Please check out the migration docs to upgrade to this release from v0.3.x compatible with ibc-go v8.3.x.
In order to use this release, please follow the steps to import git commit 44562d7.
modules/light-clients/08-wasm/v0.3.0+ibc-go-v7.3-wasmvm-v1.5
Highlights 🌟
We present here a summary of the most relevant changes, please see the changelog for more details.
- In v0.2.0+ibc-go-v7.3-wasmvm-v1.5 we added a new
MerklePath
type and used it for thePath
field of theVerifyMembershipMsg
andVerifyNonMembershipMsg
structs of the contract API. This change was API breaking for light contracts and it required a migration for existing contracts to correctly handle deserialization of theKeyPath
field (which had changed from[]string
to[][]byte
). In this release we are making an extra change to explicitly break the contract API JSON message field name: thepath
field of the JSON-encodedVerifyMembershipMsg
andVerifyNonMembershipMsg
messages has been ranamed tomerkle_path
, so that light client contracts would not silently unmarshal a key as a base64 encoded string value (and instead fail to unmarshal the message entirely).
All previous releases of the 08-wasm compatible with ibc-go v7.3 and wasmvm v1.5 have been retracted and we strongly recommend contract developers to update their JSON API message structure for the SudoMsg
payloads VerifyMembershipMsg
and VerifyNonMembershipMsg
.
For chains on v7.3 or above in the v7 line that have not deployed a light client contract yet, we strongly recommend to upgrade to this release first and then deploy the updated contract. Otherwise, chains will need to migrate the contract later on.
Migration 🦆
Please check out the migration docs to upgrade to this release from v0.2.x compatible with ibc-go v7.3.x.
In order to use this release, please follow the steps to import git commit 86f7c39.
modules/light-clients/08-wasm/v0.3.0+ibc-go-v8.3-wasmvm-v2.0
Highlights 🌟
We present here a summary of the most relevant changes, please see the changelog for the full set of changes included in this release.
- Update of wasmvm to v2.1.0.
- Add a new
MerklePath
type that replaces the usage of ibc-go'sMerklePath
for thePath
field of theVerifyMembershipMsg
andVerifyNonMembershipMsg
structs of the contract API. Please note that this change is API breaking for light contracts and it requires a migration for existing contracts to correctly handle deserialization of theKeyPath
field which has changed from[]string
to[][]byte
. In JSON message structures this change is reflected as theKeyPath
being marshalled as a list of base64 encoded byte strings. This change supports proving values stored under keys which contain non-utf8 encoded symbols. See the migration documentation for more details. For chains on v8.3 or above in the v8 line that have not deployed a light client contract yet, we strongly recommend to upgrade to this release first and then deploy the updated contract. Otherwise, chains will need to migrate the contract later on. - Add an implementation of the
ConsensusHost
interface for custom self client/consensus state validation.
Migration 🦆
Please check out the migration docs to upgrade to this release from v0.2.x compatible with ibc-go v8.3.x.
In order to use this release, please follow the steps to import git commit bb71eef.
Contributors ❤️
Special thanks to all external contributors that pushed code for this release:
modules/light-clients/08-wasm/v0.2.0+ibc-go-v7.3-wasmvm-v1.5
Highlights 🌟
We present here a summary of the most relevant changes, please see the changelog for the full set of changes included in this release.
- Add a new
MerklePath
type that replaces the usage of ibc-go'sMerklePath
for thePath
field of theVerifyMembershipMsg
andVerifyNonMembershipMsg
structs of the contract API. Please note that this change is API breaking for light contracts and it requires a migration for existing contracts to correctly handle deserialization of theKeyPath
field which has changed from[]string
to[][]byte
. In JSON message structures this change is reflected as theKeyPath
being marshalled as a list of base64 encoded byte strings. This change supports proving values stored under keys which contain non-utf8 encoded symbols. See the migration documentation for more details. For chains on v7.3 or above in the v7 line that have not deployed a light client contract yet, we strongly recommend to upgrade to this release first and then deploy the updated contract. Otherwise, chains will need to migrate the contract later on. - A CLI command to broadcast a transaction with
MsgMigrateContract
. See the documentation for more details.
Migration 🦆
Please check out the migration docs to upgrade to this release from v0.1.x compatible with ibc-go v7.3.x.
In order to use this release, please follow the steps to import git commit 570d057.
Contributors ❤️
Special thanks to all external contributors that pushed code for this release:
modules/capability v1.0.1
This release:
- Bumps Cosmos SDK to v0.50.7 and CometBFT to v0.38.9.
- Adds the
HasModule
method to the capability keeper to allow checking if a scoped module already exists. Many thanks to @Pantani for this improvement.
Changelog for v1.0.1 is available here.
v8.3.2
This release introduces an improvement in the function that returns the list of all query paths labeled with module_query_safe
in the proto files to avoid a panic during the ICA host keeper instantiation. Many thanks to @GAtom22 for discovering this issue and implementing the improvement.
Please check the v8.3.2 changelog for more details.
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.50.7 and ibc-go v8.3.1, 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.
- The migration from ibc-go v7 to v8.
- The migration from ibc-go v8 to v8.1.
v7.6.0
This release includes the back port of the length limitations released in v8.0.0 in string fields of the following messages:
- transfer:
MsgTransfer
. - 27-interchain-accounts:
MsgRegisterInterchainAccount
andMsgSendTx
. - 29-fee:
MsgRegisterCounterpartyPayee
.
Please note that this release, as indicated in our release versioning policy, is state machine breaking and requires a coordinated upgrade.
Please check the v7.6.0 changelog for more details.
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.12 and ibc-go v7.6.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.
v7.5.2
This release introduces an improvement in the function that returns the list of all query paths labeled with module_query_safe
in the proto files to avoid a panic during the ICA host keeper instantiation. Many thanks to @GAtom22 for discovering this issue and implementing the improvement.
Please check the v7.5.2 changelog for more details.
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.12 and ibc-go v7.5.2, 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.
modules/light-clients/08-wasm/v0.2.0+ibc-go-v8.3-wasmvm-v2.0
Highlights 🌟
We present here a summary of the most relevant changes, please see the changelog for the full set of changes included in this release.
- Update of wasmvm to v2.0.1.
- A CLI command to broadcast a transaction with
MsgMigrateContract
. See the documentation for more details. - In v8.3.0 we added the
VerifyMembershipProof
query service gRPC endpoint to query an IBC light client for proof verification. And now in this release we have added adefaultAcceptList
with the query route/ibc.core.client.v1.Query/VerifyMembership
to allow for light client smart contracts to delegate parts of their workflow to other light clients for auxiliary proof verification.
Migration 🦆
Please check out the migration docs to upgrade to this release from v0.1.x compatible with wasmvm v1.5.x.
In order to use this release, please follow the steps to import git commit 4b45d18.
v8.3.1
This release improves the performance in the handling of MsgRecvPacket
and MsgUpdateClient
in the RedundantRelayDecorator
ante handler.
Please check the v8.3.1 changelog for more details.
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.50.6 and ibc-go v8.3.1, 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.
- The migration from ibc-go v7 to v8.
- The migration from ibc-go v8 to v8.1.