Migration Guide v7.0

API Changes

Cosmos

Regen Ledger v7.0 includes an update to Cosmos SDK 0.53open in new window and the addition of Protocol Pool and Circuit Breaker modules.

Events

  • abci.TxResult.Log behavior changed

    • In v7.0, the log field in abci.TxResult is no longer populated when message execution is successful.

    • Instead, each emitted event now includes an additional attribute:

      • msg_index: identifies which message within the transaction the event and its attributes belong to.
    • This allows consumers to reliably group events by the message that produced them, without relying on the legacy log field.

  • BeginBlock and EndBlock events via FinalizeBlock

    • BeginBlock and EndBlock events are now emitted through FinalizeBlock.

    • These events include a new attribute to distinguish their origin:

      • mode=BeginBlock for events originating from BeginBlock
      • mode=EndBlock for events originating from EndBlock
    • Indexers and event consumers must use the mode attribute to determine whether an event came from BeginBlock or EndBlock.

IBC

ibc.applications.transfer.v1

What changed for clients

List all denominations
- Old: GET /ibc/apps/transfer/v1/denom_traces  
+ New: GET /ibc/apps/transfer/v1/denoms 

Response

- Old field: denom_traces  
+ New field: denoms  

Get denomination
- Old: GET /ibc/apps/transfer/v1/denom_traces/{hash}  
+ New: GET /ibc/apps/transfer/v1/denoms/{hash}  

Response

- Old field: denom_trace  
+ New field: denom 

Denom object format

Old format (DenomTrace)

{
  "base_denom": "uregen",
  "path": "transfer/channel-0/transfer/channel-1"
}

New format (Denom)

{
  "base": "uregen",
  "trace": [
    {
      "port_id": "transfer",
      "channel_id": "channel-0"
    },
    {
      "port_id": "transfer",
      "channel_id": "channel-1"
    }
  ]
}

CLI Changes

Regen Ledger v7.0 replaces the legacy regen config command with a new subcommand structure powered by confixopen in new window. Several other commands have been added or removed.

Configuration Commands

Old Command (v6.x)New Command (v7.x)
regen config (view)regen config view client
regen config <key> <value>regen config set client <key> <value>
N/Aregen config get client <key>
N/Aregen config set app <key> <value>
N/Aregen config view app
N/Aregen config migrate <target-version> <config-path>
N/Aregen config diff <config-path>

Removed Commands

  • regen rosetta — The Rosetta API integration has been removed.
  • regen tx aux-to-fee — Replaced by regen tx simulate.

New Commands

  • regen tx simulate — Simulate a transaction.
  • regen query wait-tx — Wait for a transaction to be included in a block.
  • regen query blocks — Query for paginated blocks matching events.
  • regen query block-results — Query for block results at a given height.

AutoCLI

Many query and transaction commands are now auto-generated using AutoCLIopen in new window. The command interface remains the same, but help text and flag names may differ slightly.

Configuration File Migration

After upgrading to v7.x, you should migrate your configuration files to the latest format:

regen config migrate v0.53 ~/.regen/config/app.toml

You can also check what has changed compared to the defaults:

regen config diff ~/.regen/config/app.toml

Environment Variables

Regen Ledger v7.x supports environment variable overrides following the REGEN_* pattern. For example:

  • REGEN_MINIMUM_GAS_PRICES overrides minimum-gas-prices in app.toml
  • REGEN_API_ENABLE overrides api.enable in app.toml

Environment variables use the pattern REGEN_<SECTION>_<KEY> with dots and hyphens replaced by underscores.