This page tracks all releases and changes from the cosmos/evm repository. For the latest development updates, see the UNRELEASED section.
Aug 22, 2025
EVMRelease
v0.4.1

Features

  • Add comprehensive Solidity-based end-to-end tests for precompiles (#253)
  • Add 4-node localnet infrastructure for testing multi-validator setups (#301)
  • Add system test framework for integration testing (#304)
  • Add txpool RPC namespace stubs in preparation for app-side mempool implementation (#344)
  • Enforce app creator returning application implement AppWithPendingTxStream in build time. (#440)

Improvements

  • Enforce single EVM transaction per Cosmos transaction for security (#294)
  • Update dependencies for security and performance improvements (#299)
  • Preallocate EVM access_list for better performance (#307)
  • Fix EmitApprovalEvent to use owner address instead of precompile address (#317)
  • Fix gas cap calculation and fee rounding errors in ante handler benchmarks (#345)
  • Add loop break labels for optimization (#347)
  • Use larger CI runners for resource-intensive tests (#370)
  • Apply security audit patches (#373)
  • Apply audit-related commit 388b5c0 (#377)
  • Post-audit security fixes (batch 1) (#382)
  • Post-audit security fixes (batch 2) (#388)
  • Post-audit security fixes (batch 3) (#389)
  • Post-audit security fixes (batch 5) (#392)
  • Post-audit security fixes (batch 4) (#398)
  • Prevent nil pointer by checking error in gov precompile FromResponse. (#442)
  • (Experimental) EVM-compatible appside mempool (#387)
  • Add revert error e2e tests for contract and precompile calls (#476)

Bug Fixes

  • Fix compilation error in server/start.go (#179)
  • Use PriorityMempool with signer extractor to prevent missing signers error in tx execution (#245)
  • Align revert reason format with go-ethereum (return hex-encoded result) (#289)
  • Use proper address codecs in precompiles for bech32/hex conversion (#291)
  • Add sanity checks to trace_tx RPC endpoint (#296)
  • Fix estimate gas to handle missing fields for new transaction types (#316)
  • Fix error propagation in BlockHash RPCs and address test flakiness (#330)
  • Fix non-determinism in state transitions (#332)
  • Fix p256 precompile test flakiness (#350)
  • Fix precompile initialization for local node development script (#376)
  • Fix debug_traceTransaction RPC failing with block height mismatch errors (#384)
  • Align precompiles map with available static check to Prague. (#441)
  • Cleanup unused cancel function in filter. (#452)
  • Align multi decode functions instead of string contains check in HexAddressFromBech32String. (#454)
  • Add pagination flags to token-pairs to improve query flexibility. (#468)

Dependencies

  • Update cosmossdk.io/log to v1.6.1 to support Go v1.25.0+. (#459)
  • Update Cosmos SDK to v0.53.4 and CometBFT to v0.38.18. (#435)

API Breaking

  • Remove non–go-ethereum JSON-RPC methods to align with Geth’s surface (#456)
  • Move ante logic from the evmd Go package to the evm package to (#443)
  • Align function and package names for consistency. (#422)
  • Remove evidence precompile due to lack of use cases (#305)

API Breaking

  • Remove non–go-ethereum JSON-RPC methods to align with Geth’s surface (#456)
  • Move ante logic from the evmd Go package to the evm package to (#443)
  • Align function and package names for consistency. (#422)
  • Remove evidence precompile due to lack of use cases (#305)