Skip to content
Cosmopediaby Unity Nodes

v0.7.0

cosmos/evmv0.7.005-05-2026

v0.7.0

Major features

• Krakatoa - application side mempool implementation.

• BlockSTM parallel execution support.

• ICS-02 client-router precompile.

• OpenTelemetry tracing.

• JSON-RPC filter lifecycle overhaul.

• 2026.1 release family dependency updates.

For migrating from v0.6.x, please refer to the migration guide .

What's Changed

• feat(evmd): Enable RocksDB backend compilation for evmd by @mattac21 in #747

• Update and rename v0.4.0_to_v0.5.0_UNRELEASED.md to v0.4.0_to_v0.5.0.md by @vladjdk in #750

• chore: update security email by @aljo242 in #749

• fix(ante): respect NoBaseFee params in DynamicFeeChecker by @pitasi in #748

• chore: apply state overrides to eth_estimateGas api by @cloudgray in #743

• chore: Bump golang to 1.25.0 by @Eric-Warehime in #761

• chore: move relevant hardcoded configs back to evmd as an example by @vladjdk in #751

• chore: address docs gaps by @vladjdk in #764

• fix: avoid panic on close if evm mempool not used by @mmsqe in #772

• chore(precompiles)!: use pure abi in abi.json by @yihuang in #758

• fix: correct error message in NewMsgCancelProposal by @heijiLee in #756

• chore!: Bump ibc-go by @Eric-Warehime in #762

• refactor: systemtests by @cloudgray in #720

• Add backport action for v0.5.x branch by @aljo242 in #775

• fix: event emission in erc20 precompile by @aljo242 in #774

• chore: attempt to fix systemtest by @aljo242 in #776

• fix: ibc middleware verify sender address incorrectly by @yihuang in #769

• fix(ci): solve gas meter race condition in integration tests by @almk-dev in #732

• fix: align gas estimation logic with go-ethereum v1.16.3 by @cloudgray in #766

• fix: allow ledger flag work with coin type 60 by @mmsqe in #690

• chore: cleanup x/vm params logic by @aljo242 in #786

• feat(precompiles)!: added ics02 client router precompile by @srdtrk in #768

• feat!: Block STM by @Eric-Warehime in #589

• chore: Remove go tool cover in make test-unit-cover by @Eric-Warehime in #792

• fix: `evmCoinInfo` not exists in historical state by @yihuang in #790

• docs: add InitEvmCoinInfo code example to migration guide by @Cordtus in #793

• chore: bump gogoproto to v1.7.2 by @almk-dev in #785

• fix(mempool): fix mempool.max-txs flag not using desired default of 0 by @almk-dev in #794

• docs(migration): update 0.4.0 to 0.5.0 to properly describe mempool.max-tx flag usage change by @almk-dev in #796

• fix: Fix denom exponent checks by @Eric-Warehime in #800

• chore: lint fix and gen mocks by @aljo242 in #787

• chore: upgrade from v0.5 in system test by @aljo242 in #801

• fix: system test by @aljo242 in #805

• fix: wrong TransactionIndex in receipt by @mmsqe in #806

• fix: Use default sdk denom for evm genesis by @Eric-Warehime in #811

• refactor: fix integration test suite to resolve lock contention problem from external app injection by @cloudgray in #810

• fix: avoid nil pointer when RPC requests execute before evmCoinInfo init by @mmsqe in #816

• refactor: remove authz dependency from test suite and EvmApp interface by @cloudgray in #823

• chore: fix codecov target by @aljo242 in #824

• fix: align GetCoinbaseAddress to handle empty proposer address by @mmsqe in #817

• fix: validate decimals before conversion to prevent panic in GetBaseFee by @mmsqe in #828

• refactor(test): separate test app interface by @cloudgray in #829

• test: adjusts precisebank module account balance to expected amount by @mmsqe in #837

• refactor: replace unnecessary keeper dependencies from tests by @cloudgray in #838

• feat: speedtest by @technicallyty in #827

• fix: events emitted in hooks are duplicated by @yihuang in #814

• chore: cleanup speedtest cmd by @technicallyty in #843

• fix(test): avoid mutation of global int256 variable by @mmsqe in #842

• chore(deps): bump the go_modules group across 5 directories with 2 updates by @dependabot [bot] in #847

• chore: add better validation to tx fields by @aljo242 in #846

• chore: bump solidity testing deps by @aljo242 in #851

• fix: ledger nano x on linux by @reecepbcups in #862

• chore(deps-dev): bump pbkdf2 from 3.1.2 to 3.1.5 in /contracts by @dependabot [bot] in #850

• chore(deps): bump the npm_and_yarn group across 5 directories with 21 updates by @dependabot [bot] in #848

• chore(deps): bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot [bot] in #870

• fix(erc20): ibc callbacks logic reordering by @reecepbcups in #869

• fix: enable all geth metrics by @technicallyty in #875

• fix: experimental EVM mempool not gossiping nonce + n transactions by @jhelison in #890

• fix(mempool): duplicate tx check and gossipping systemtests by @vladjdk in #897

• chore: fix lint after bumping SDK and ibc by @aljo242 in #908

• docs: Update README.md with a few users by @bpiv400 in #912

• feat(rpc): add OpenTelemetry tracing by @technicallyty in #863

• chore: drop legacy // +build comment by @findfluctuate in #901

• feat(x/vm): add OpenTelemetry tracing by @technicallyty in #871

• fix(x/vm): nonce increments on EIP-7702 contract creation by @technicallyty in #913

• chore(deps): bump qs from 6.14.0 to 6.14.1 in /tests/evm-tools-compatibility/hardhat in the npm_and_yarn group across 1 directory by @dependabot [bot] in #919

• fix: GetCoinbaseAddress Bech32 address conversion for block.coinbase by @mmsqe in #920

• feat: support proxy with grpc-only mode by @mmsqe in #815

• feat: repalce legacytx.StdSignBytes with the aminojson sign mode handler in eip712 by @mmsqe in #860

• chore(deps): bump github.com/ethereum/go-ethereum from 1.16.3 to 1.16.8 in /tests/jsonrpc/simulator in the go_modules group across 1 directory by @dependabot [bot] in #933

• fix: code scanning alert no. 702: Workflow does not contain permissions by @aljo242 in #942

• fix: code scanning alert no. 703: Workflow does not contain permissions by @aljo242 in #941

• fix: revert #766 by @vladjdk in #946

• chore(deps): bump diff from 5.2.0 to 5.2.2 in /tests/evm-tools-compatibility/web3.js in the npm_and_yarn group across 1 directory by @dependabot [bot] in #943

• chore(deps): bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot [bot] in #947

• chore: bump linter by @aljo242 in #948

• chore: fix for Missing error check by @aljo242 in #950

• chore: fix for Missing error check by @aljo242 in #949

• chore: Potential fixes for 2 code quality findings by @aljo242 in #951

• chore: add build workflow by @aljo242 in #957

• chore: update hard coded string to concrete message name string by @technicallyty in #959

• chore: add readonly testing by @vladjdk in #953

• chore: bump protogen image and run by @aljo242 in #974

• fix: gas accounting in ibc callback by @technicallyty in #965

• chore: increase timeouts on fuzz tests by @technicallyty in #980

• fix: update workflow for Buf Schema Registry push by @MatVD in #971

• fix: Fix err ack in ibc v2 middleware by @Eric-Warehime in #967

• test(mempool): Add iterator tests and `SelectBy` benchmark by @mattac21 in #988

• perf(mempool): Speed up iterator with caching and simplify by @mattac21 in #990

• ci: add workflow_dispatch to build workflow by @gjermundgaraba in #997

• chore(deps): bump qs from 6.14.1 to 6.14.2 in /tests/evm-tools-compatibility/hardhat in the npm_and_yarn group across 1 directory by @dependabot [bot] in #998

• fix(ibc): prevent arbitrary src_callback execution by @mmsqe in #993

• fix: allow dynamic precompiles work with eth_call state overrides by @mmsqe in #934

• chore: update to main and updated ibc by @aljo242 in #1003

• fix: gas config is set to zero in ibc transfer keeper by @yihuang in #968

• fix(vm): respect provided gasCap in CallEVMWithData by @mmsqe in #992

• chore(ci): use depot for evmd binary builds by @aljo242 in #1004

• fix: persist code+account before DeleteAccount can verify by @mmsqe in #921

• chore(deps): bump the go_modules group across 5 directories with 2 updates by @dependabot [bot] in #1005

• fix(precompiles/ics02): added missing ValidateBasic check by @srdtrk in #1010

• Delete .github/workflows/codeql.yml by @aljo242 in #1013

• chore(deps): bump the npm_and_yarn group across 2 directories with 1 update by @dependabot [bot] in #1006

• chore(deps): bump minimatch from 5.1.6 to 5.1.9 in /tests/evm-tools-compatibility/web3.js in the npm_and_yarn group across 1 directory by @dependabot [bot] in #1020

• chore!: Remove x/precisebank by @Eric-Warehime in #1019

• chore: Mark Decimals as deprecated by @Eric-Warehime in #1029

• feat!: Krakatoa by @Eric-Warehime in #1030

• chore: port v0.6.x onto krakatoa by @vladjdk in #1053

• chore: adds scripts/go-mod-tidy-all.sh by @vladjdk in #1057

• chore(deps): bump the npm_and_yarn group across 2 directories with 1 update by @dependabot [bot] in #1052

• chore: add comet libp2p startup fix by @vladjdk in #1056

• feat(mempool): shared ctx beween cosmos tx rechecks and inserts ( #1031 ) by @mattac21 in #1055

• chore(deps): bump sdk version by @mattac21 in #1058

• chore(metrics): add log to tx store and metric for num height iterated on height sync by @mattac21 in #1071

• Delete .github/workflows/codeql-analysis.yml by @aljo242 in #1073

• chore: bump sdk and ibc by @gjermundgaraba in #1072

• feat(krakatoa): `operate_exclusively` toggles krakatoa features by @mattac21 in #1060

• fix: handle replacement txs in TxStore by @technicallyty in #1074

• fix(x/vm): make ACL case insensitive by @technicallyty in #1079

• chore: align gas usage with EVM semantics by @vladjdk in #1050

• fix: double gas accounting context by @technicallyty in #1083

• feat(krakatoa): make krakatoa only mempool & update comet+sdk to main branches by @mattac21 in #1112

• feat: add http-body-limit for rpc by @mmsqe in #1109

• feat(mempool): add thread-safe checkTx handler by @swift1337 in #1114

• chore: add CODEOWNERS file by @dianab-cl in #1100

• fix(mempool): fix race in reap list by @mattac21 in #1116

• feat(mempool): Remove EVM txs without state lookup for nonce by @mattac21 in #1113

• feat(mempool): add basic metrics for the reap list by @mattac21 in #1115

• feat(mempool): load coinInfo only once by @swift1337 in #1118

• refactor(mempool): Use direct `reaplist` + `txtracker` calls in `legacypool` instead of lifecycle callbacks by @mattac21 in #1119

• fix(mempool): Proper dropping from `reaplist` for cosmos txs during replacement and rechecking by @mattac21 in #1123

• chore(tests): fix ibc tests failing with different balances by @vladjdk in #1124

• feat!: Bump geth to 1.17 by @Eric-Warehime in #1122

• fix(rpc): invalid message index errors in block RPCs with StateDB commit error transactions by @mmsqe in #1107

• chore: add Ledger Nano Gen5 USB product IDs by @puneet2019 in #1095

• fix: remove zero gas config from ConvertCoinToERC20FromPacket by @mmsqe in #1103

• feat: allow eth_call overrides work with static precompiles by @mmsqe in #1096

• chore: align upstream createObject by @vladjdk in #1129

• fix(mempool): remove unnecessary fetch of context on mempool removals by @mattac21 in #1125

• refactor: use maps.Copy to simplify the code by @oncecelll in #1102

• fix: add nil check for OnTxStart before calling tracer hook by @Bue-von-hon in #1078

• fix(emd/tests): balance_handler_test by @swift1337 in #1131

• fix(vm): hydrate evm globals by @swift1337 in #1126

• fix(mempool): fix race between queued tx promotion reorg and reset reorg causing stuck queued txs by @mattac21 in #1127

• feat: add authority params by @vladjdk in #1130

• fix(ci): run arm64 builds on specifically arm runner by @mattac21 in #1134

• chore(deps): bump the npm_and_yarn group across 5 directories with 7 updates by @dependabot [bot] in #1098

• fix(mempool): advance legacypool nonces on cosmos tx inclusion by @mattac21 in #1133

• chore(deps): bump the go_modules group across 5 directories with 3 updates by @dependabot [bot] in #1137

• feat: Convert mempool metrics to otel by @Eric-Warehime in #1136

• fix: evm tx index and log indexes are not patched (alternative design) by @vladjdk in #1132

• feat: configurable filter timeout and cleanup interval by @mmsqe in #1008

• fix(rpc): resolve EthTxIndex -1 sentinel before uint cast in receipt builder by @Aboudjem in #1047

• fix(rpc): guard nil height deref in CometBlockResultByNumber by @Aboudjem in #1067

• fix(ibc): block nested ICS20 forwarding in src callbacks by @mmsqe in #1061

• feat: enable incarnation cache for verify result by @mmsqe in #1082

• fix: existing account number increment on each callback by @freeelancer in #970

• fix: panic on krakatoa when max block gas is -1 by @vladjdk in #1140

• chore: Convert txtracker to otel by @Eric-Warehime in #1142

• fix: Fix TOCTOU in insert queue by @Eric-Warehime in #1144

• feat: Make txtracker optional by @Eric-Warehime in #1143

• chore: Convert all metrics by @Eric-Warehime in #1145

• fix(mempool)!: Remove VM keeper end blocker notification, use `PrepareCheckStater` instead by @mattac21 in #1146

• docs: Add comments for confusing behaviour by @Eric-Warehime in #1148

• chore(mempool): add tests and document 7702 authority behaviour by @vladjdk in #1147

• chore(docs, tests): v0.7.x upgrade guide by @vladjdk in #1139

• fix(mempool): align evm rechecking with baseapp & add integration tests by @mattac21 in #1150

• test: Add test for cosmos tx multi-signer evicts single signer by @Eric-Warehime in #1153

• fix(mempool): align cosmos rechecking context updates with evm by @mattac21 in #1154

• chore(7702): authority-based nonce gap promotion testing by @vladjdk in #1152

• chore(mempool): add reaplist wedge tests by @vladjdk in #1155

• chore: Add basic AGENTS.md file by @Eric-Warehime in #1157

• fix(mempool): defer reap of evm tx replacements until validation by @mattac21 in #1156

• chore: remove max bytes check on hotpath and instead fail on misconfigured reaplist on startup by @vladjdk in #1158

• chore(mempool): add systemtests demonstrating a same-nonce 7702 auth and cosmos tx by @vladjdk in #1160

• feat: bump comet and sdk to main by @swift1337 in #1161

• fix(mempool): atomic account reserver with reference counter by @swift1337 in #1151

• fix(mempool): Cosmos noop removals & keep future txs after parent's wrong sequence by @mattac21 in #1163

• chore(deps): remove go.mod replacements (backport #1165 ) by @mergify [bot] in #1167

• docs(upgrading): upgrade guide updates (backport #1170 ) by @mergify [bot] in #1172

• fix: ics02 and ics20 gas calculation (backport #1164 ) by @mergify [bot] in #1171

New Contributors

• @bpiv400 made their first contribution in #912

• @findfluctuate made their first contribution in #901

• @MatVD made their first contribution in #971

• @dianab-cl made their first contribution in #1100

• @puneet2019 made their first contribution in #1095

• @oncecelll made their first contribution in #1102

• @Bue-von-hon made their first contribution in #1078

• @Aboudjem made their first contribution in #1047

• @freeelancer made their first contribution in #970

Full Changelog : v0.6.0...v0.7.0

← Back to Releases