mukan-ibc/docs/versioned_docs/version-v7.8.x/05-migrations/09-v7-to-v7_1.md
Mukan Erkin Törük 6852832fe8
Some checks failed
CodeQL / Analyze (push) Waiting to run
Docker Build & Push Simapp (main) / docker-build (push) Waiting to run
golangci-lint / lint (push) Waiting to run
Tests / Code Coverage / build (amd64) (push) Waiting to run
Tests / Code Coverage / build (arm64) (push) Waiting to run
Tests / Code Coverage / unit-tests (map[additional-args:-tags="test_e2e" name:e2e path:./e2e]) (push) Waiting to run
Tests / Code Coverage / unit-tests (map[name:08-wasm path:./modules/light-clients/08-wasm]) (push) Waiting to run
Tests / Code Coverage / unit-tests (map[name:ibc-go path:.]) (push) Waiting to run
Deploy to GitHub Pages / Deploy to GitHub Pages (push) Has been cancelled
Buf-Push / push (push) Has been cancelled
initial: sovereign Mukan Network fork
2026-05-11 03:18:28 +03:00

3.1 KiB

title sidebar_label sidebar_position slug
IBC-Go v7 to v7.1 IBC-Go v7 to v7.1 9 /migrations/v7-to-v7_1

Migrating from v7 to v7.1

This guide provides instructions for migrating to version v7.1.0 of ibc-go.

There are four sections based on the four potential user groups of this document:

Note: ibc-go supports golang semantic versioning and therefore all imports must be updated on major version releases.

Chains

09-localhost migration

In the previous release of ibc-go, the localhost v1 light client module was deprecated and removed. The ibc-go v7.1.0 release introduces v2 of the 09-localhost light client module.

An automatic migration handler is configured in the core IBC module to set the localhost ClientState and sentinel ConnectionEnd in state.

In order to use the 09-localhost client chains must update the AllowedClients parameter in the 02-client submodule of core IBC. This can be configured directly in the application upgrade handler or alternatively updated via the legacy governance parameter change proposal. We strongly recommend chains to perform this action so that intra-ledger communication can be carried out using the familiar IBC interfaces.

See the upgrade handler code sample provided below or follow this link for the upgrade handler used by the ibc-go simapp.

func CreateV7LocalhostUpgradeHandler(
  mm *module.Manager,
  configurator module.Configurator,
  clientKeeper clientkeeper.Keeper,
) upgradetypes.UpgradeHandler {
  return func(ctx sdk.Context, _ upgradetypes.Plan, vm module.VersionMap) (module.VersionMap, error) {
    // explicitly update the IBC 02-client params, adding the localhost client type
    params := clientKeeper.GetParams(ctx)
    params.AllowedClients = append(params.AllowedClients, exported.Localhost)
    clientKeeper.SetParams(ctx, params)

    return mm.RunMigrations(ctx, configurator, vm)
  }
}

Transfer migration

An automatic migration handler is configured in the transfer module to set the total amount in escrow for all denominations of coins that have been sent out. For each denomination a state entry is added with the total amount of coins in escrow regardless of the channel from which they were transferred.

IBC Apps

  • No relevant changes were made in this release.

Relayers

The event attribute packet_connection (connectiontypes.AttributeKeyConnection) has been deprecated. Please use the connection_id attribute (connectiontypes.AttributeKeyConnectionID) which is emitted by all channel events. Only send packet, receive packet, write acknowledgement, and acknowledge packet events used packet_connection previously.

IBC Light Clients

  • No relevant changes were made in this release.