Migration Guide v7.0
API Changes
Cosmos
Regen Ledger v7.0 includes an update to Cosmos SDK 0.53 and the addition of Protocol Pool and Circuit Breaker modules.
Events
abci.TxResult.Logbehavior changedIn v7.0, the
logfield inabci.TxResultis 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
logfield.
BeginBlock and EndBlock events via
FinalizeBlockBeginBlockandEndBlockevents are now emitted throughFinalizeBlock.These events include a new attribute to distinguish their origin:
mode=BeginBlockfor events originating fromBeginBlockmode=EndBlockfor events originating fromEndBlock
Indexers and event consumers must use the
modeattribute to determine whether an event came fromBeginBlockorEndBlock.
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 confix. 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/A | regen config get client <key> |
| N/A | regen config set app <key> <value> |
| N/A | regen config view app |
| N/A | regen config migrate <target-version> <config-path> |
| N/A | regen config diff <config-path> |
Removed Commands
regen rosetta— The Rosetta API integration has been removed.regen tx aux-to-fee— Replaced byregen 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 AutoCLI. 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_PRICESoverridesminimum-gas-pricesinapp.tomlREGEN_API_ENABLEoverridesapi.enableinapp.toml
Environment variables use the pattern REGEN_<SECTION>_<KEY> with dots and hyphens replaced by underscores.