Skip to content

tag v113 revm v41.0.0

Choose a tag to compare

@rakita rakita released this 23 Jul 09:54
6effb30

date: 11.06.2026

All crates are now versioned in lockstep, starting at 41.0.0 — hence the version jump (e.g. revm-bytecode 11.0.1 → 41.0.0). Released by #3711 and #3753; full diff v112...v113.

Breaking:

  • TransientStorage is now a newtype over AddressMap<StorageKeyMap<StorageValue>> (#3736)
  • OnStateHook::on_state takes EvmState by value; TransitionAccount gained a storage generic (#3732)
  • GasStateTr removed, superseded by the SSTORE gas hook (#3750)

Other highlights:

  • SSTORE gas accounting hook (#3734, #3750), StateBuilder::with_bundle_update_if (#3729), Account::is_changed (#3727)
  • Commit perf improvements (#3732)
  • Fix out-of-bounds pointer in analyze_legacy (#3752) and a const-eval panic in pop_address (#3735)

See MIGRATION_GUIDE.md for migration notes.

What's Changed

  • docs: add v112 changelog entry by @rakita in #3724
  • feat: Account::is_changed by @klkvr in #3727
  • feat(database): add conditional bundle update builder by @mattsse in #3729
  • perf: avoid reallocations and cloning during commit by @klkvr in #3732
  • feat: add SSTORE gas-state policy hook by @rakita in #3734
  • feat: wrap TransientStorage as AddressMap<StorageKeyMap> by @rakita in #3736
  • fix(interpreter): use IntoAddress in pop_address to avoid const-eval panic by @pjdurden in #3735
  • chore: make GasStateTr expose StateLoad by @0xrusowsky in #3737
  • Add MODEXP precompile benchmarks by @decofe in #3744
  • refactor: remove GasStateTr by @klkvr in #3750
  • Run cargo fmt by @decofe in #3751
  • fix(bytecode): avoid out-of-bounds pointer in analyze_legacy by @anders94 in #3752
  • chore: release by @github-actions[bot] in #3711
  • chore: bump all crates to v41.0.0 by @rakita in #3753

New Contributors

Full Changelog: v112...v113