Skip to content

Latest commit

 

History

History
749 lines (485 loc) · 33.4 KB

File metadata and controls

749 lines (485 loc) · 33.4 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

41.1.0 - 2026-07-16

Added

  • (amsterdam) glam devnet-6 gas accounting & EIP alignment (#3782)

Other

  • (revme) separate bytecode from account in test state (#3803)

41.0.0 - 2026-06-11

Other

  • updated the following local packages: revm

17.0.3 - 2026-05-26

Other

  • updated the following local packages: revm

17.0.2 - 2026-05-22

Other

  • updated the following local packages: revm

17.0.1 - 2026-05-21

Other

  • updated the following local packages: revm

17.0.0 - 2026-05-19

Other

  • remove unused spec ids (#3649)
  • reject nonce-max senders before execution (#3531)
  • audit #[allow] attributes (#3611)

15.0.0 - 2026-04-17

Other

  • updated the following local packages: revm

14.0.0 - 2026-04-10

Added

  • add EIP-8037 / TIP-1016 state gas support (#3406)
  • (revme) list all failed tests at the end with --keep-going (#3491)

Fixed

  • (revme) use transact state for debug "State after" output (#3498)
  • (revme) guard unconditional println in blockchaintest for --json mode (#3500)

Other

  • (revme) use alloy-trie instead of triehash (#3488)

13.0.0 - 2026-03-04

Other

  • bump revm-database-interface to v10.0.0

12.0.0 - 2026-03-02

Added

  • (precompile) add aws-lc-rs as alternative backend for secp256r1 (#3451)
  • (revme) add --json output flag to evmrunner command (#3428)
  • (revme) validate block gas used in blockchain tests (#3416)
  • (revme) add --omit-progress flag to statetest command (#3419)

Other

  • move EIP-161 state clear into journal finalize (#3444)
  • add subcall benchmarks (1000-call variants) (#3427)
  • use fixed bytes hashmaps from alloy-core (#3358)
  • update default hardfork to Osaka (Ethereum) and Jovian (Optimism) (#3326)

11.0.0 - 2026-01-15

Added

  • move GasParams to Cfg (#3229)
  • Propagate map-foldhash Feature Through Dependency Chain (#3252)
  • BAL EIP-7928 (#3070)
  • DatabaseCommitExt + increment_balances (#3195)
  • sort accounts by address in blockchaintest output (#3182)

Fixed

  • incorrect bytecode value in blockchain test error output (#3288)
  • use expected_exception instead of error field for unexpected_success status (#3244)
  • deduplicate post-state validation error handling (#3228)
  • (revme) incorrect debug log message in btest (#3233)
  • (statetest) use spec-aware blob base fee update fraction (#3210)

Other

  • apply improvements from ai-bot labeled PRs (#3297)
  • (revme) consolidate find_all_json_tests into dir_utils (#3262)
  • happy new year, 2026 licence (#3272)
  • (revme) use unwrap_or_default for non-UTF8 path safety (#3259)
  • sort storage keys and test files in blockchaintest output (#3186)
  • (revme) extract JSON printing helper in blockchaintest (#3257)
  • remove redundant clone calls (#3258)
  • re-export statetest-types from revm crate behind test-types feature (#3247)
  • (fmt) merge all imports (#3184)

10.0.2 - 2025-11-14

Other

  • update Cargo.lock dependencies

10.0.0 - 2025-11-10

Other

  • updated the following local packages: revm, revm-statetest-types

9.0.2 - 2025-11-10

Other

  • updated the following local packages: revm, revm-statetest-types

9.0.1 - 2025-11-07

Fixed

  • (revme) use primitive hashmap in statetest (#3137)

9.0.0 - 2025-10-30

Other

  • consolidate revme imports (#3088)
  • Update blockchaintest.rs (#3107)
  • typo eip4788 (#3111)

8.3.0 - 2025-10-17

Other

  • updated the following local packages: revm-inspector, revm, revm-statetest-types

8.2.2 - 2025-10-15

Other

  • updated the following local packages: revm-bytecode, revm-state, revm-database-interface, revm-context-interface, revm-context, revm-database, revm-inspector, revm, revm-statetest-types

8.2.1 - 2025-10-15

Other

  • updated the following local packages: revm-primitives, revm-bytecode, revm-context, revm-state, revm-database-interface, revm-context-interface, revm-database, revm-inspector, revm, revm-statetest-types

8.2.0 - 2025-10-09

8.0.1 - 2025-10-09

Other

  • use NoOpInspector for inspector benches (#3060)

8.0.0 - 2025-10-07

Added

  • (revme) ef blockchain tests cli (#2935)

Fixed

  • (revme) Insert block hashes in State (#3024)
  • support 0x prefix in evmrunner hex input (#2970)
  • (revme) Avoid panic on non-UTF filenames in statetest runner (#2948)

Other

  • changelog update for v87 (#3056)
  • pretty print state in revme statetest (#2979)
  • Fix CLI exit code for invalid bytecode input (#2968)

7.2.3 - 2025-09-23

Other

  • updated the following local packages: revm-context-interface, revm-context, revm-inspector, revm, revm-statetest-types

7.2.2 - 2025-08-23

Other

  • updated the following local packages: revm-bytecode, revm-database-interface, revm-context-interface, revm-context, revm-database, revm-state, revm-inspector, revm, revm-statetest-types

7.2.1 - 2025-08-12

Other

  • codspeed sstore sload opcodes (#2881)

7.2.0 - 2025-08-06

Added

  • Reuse bls12-381 codepaths to implement kzg point evaluation precompile (#2809)

Other

  • (benches) rename anaysis-inspector to snailtracer-inspect (#2834)
  • (benches) clean up criterion callsites (#2833)
  • add rust-version and note about MSRV (#2789)
  • fix clippy (#2785)
  • add gas_limit to revme evm (#2779)

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

7.1.0 - 2025-07-23

Added

  • count inspector and bench test (#2730)

Fixed

  • fully deprecate serde-json (#2767)

Other

  • back to hashbrown map in revme (#2770)
  • back to better map (#2768)
  • bump develop statetests to devnet-3 (#2754)
  • add clz_50 codspeed (#2743)

7.0.4 - 2025-07-14

Other

  • incorrect StorageKey and StorageValue parameter order in burntpix benchmark (#2704)

7.0.3 - 2025-07-03

Other

  • update Cargo.lock dependencies

7.0.2 - 2025-06-30

Other

  • cargo clippy --fix --all (#2671)
  • statetest runner cleanup (#2665)
  • use TxEnv::builder (#2652)

7.0.1 - 2025-06-20

Other

  • updated the following local packages: revm-context-interface, revm-context, revm, revm-inspector, revm-statetest-types

7.0.0 - 2025-06-19

Added

  • remove EOF (#2644)
  • (precompile) rug/gmp-based modexp (#2596)
  • change blob_max_count to max_blobs_per_tx (#2608)

Other

  • re-use frame allocation (#2636)
  • rename transact methods (#2616)

6.0.0 - 2025-06-06

Added

  • Config blob basefee fraction (#2551)
  • expand timestamp/block_number to u256 (#2546)
  • transact multi tx (#2517)

Other

  • tag v75 revm v24.0.1 (#2563) (#2589)
  • use iter_batched for revme benches (#2584)
  • unify calling of journal account loading (#2561)
  • ContextTr rm *_ref, and add *_mut fn (#2560)
  • (cfg) add tx_chain_id_check fields. Optimize effective gas cost calc (#2557)
  • add gas-cost-estimator selected bytecodes (#2555)

5.1.1 - 2025-05-31

Other

  • unify calling of journal account loading

5.1.0 - 2025-05-22

Added

  • make blob max number optional (#2532)

Other

  • Change legacy statetests repo (#2519)
  • Storage Types Alias (#2461)

5.0.0 - 2025-05-07

Dependency bump

4.1.0 - 2025-05-07

Added

  • (Osaka) disable EOF (#2480)
  • skip cloning of call input from shared memory (#2462)
  • (tx) Add Either RecoveredAuthorization (#2448)
  • (EOF) Changes needed for devnet-1 (#2377)
  • Move SharedMemory buffer to context (#2382)

Fixed

  • (revme) evm command caller/target for bench (#2476)

Other

  • (revme) simplify repeated code (#2432)
  • backport from release branch (#2415) (#2416)
  • (lints) revm-context lints (#2404)

4.0.2 - 2025-04-15

Other

4.0.1 - 2025-04-09

Other

  • (revme) remove revm-handler dependency (#2366)

4.0.0 - 2025-03-28

Added

  • Add JournalInner (#2311)
  • Add criterion to revme bench command (#2295)

Other

  • add criterion benchmark for evm build (#2319)
  • add check for path and existence existence (#2320)
  • bump bench time, and reduce burntpix iterations (#2315)
  • update EOF validation logic and improve error handling (#2304)

3.0.0 - 2025-03-24

Other

  • updated the following local packages: revm-database

3.0.0-alpha.7 - 2025-03-21

Added

  • InspectEvm fn renames, inspector docs, book cleanup (#2275)

Fixed

  • correct eof kind in verification tests (#2250)

Other

  • (revme) remove deprecated #[clap] attribute

3.0.0-alpha.6 - 2025-03-16

Other

  • updated the following local packages: revm-primitives, revm-bytecode, revm-context-interface, revm-context, revm-handler, revm-inspector

3.0.0-alpha.5 - 2025-03-12

Added

  • rename inspect_previous to inspect_replay (#2194)

3.0.0-alpha.4 - 2025-03-11

Other

  • Add comments to handler methods (#2188)

3.0.0-alpha.3 - 2025-03-10

Other

  • updated the following local packages: revm

3.0.0-alpha.2 - 2025-03-10

Added

  • remove specification crate (#2165)

Other

  • JournalTr, JournalOutput, op only using revm crate (#2155)
  • rename transact_previous to replay, move EvmTr traits (#2153)
  • Add docs to revm-bytecode crate (#2108)
  • (deps) bump breaking deps (#2093)
  • move all dependencies to workspace (#2092)

3.0.0-alpha.1 - 2025-02-16

Added

  • Split Inspector trait from EthHandler into standalone crate (#2075)
  • integrate alloy-eips (#2078)
  • (op) Isthmus precompiles (#2054)
  • Evm structure (Cached Instructions and Precompiles) (#2049)
  • Context execution (#2013)
  • EthHandler trait (#2001)
  • (EIP-7840) Add blob schedule to execution client cfg (#1980)
  • bump eof validation tests (#1963)
  • simplify Transaction trait (#1959)
  • Split inspector.rs (#1958)
  • align Block trait (#1957)
  • integrate codspeed (#1935)
  • Restucturing Part7 Handler and Context rework (#1865)
  • restructuring Part6 transaction crate (#1814)
  • extract statetest models/structs to standalone crate (#1808)
  • Merge validation/analyzis with Bytecode (#1793)
  • restructure part3 fix examples (#1792)
  • Restructuring Part3 inspector crate (#1788)
  • restructure Part2 database crate (#1784)
  • use TestAuthorization and skip decoding of eip7702 tx (#1785)
  • project restructuring Part1 (#1776)
  • introducing EvmWiring, a chain-specific configuration (#1672)

Fixed

  • (revme) Statetest stop exec when print output is true (#1995)
  • (revme) statetest remove redundant json output (#1994)
  • (eof) dont run precompile on ext delegate call (#1964)
  • (revme) Burntpix bench (#1937)
  • (revme) include correct bytecode for snailtracer (#1917)
  • statetest json set spec_id (#1766)

Other

  • set alpha.1 version
  • Bump licence year to 2025 (#2058)
  • improve EIP-3155 tracer (#2033)
  • align crates versions (#1983)
  • remove analysis bench inner loops (#1936)
  • fix comments and docs into more sensible (#1920)
  • tie journal database with database getter (#1923)
  • use stderr for revme tracer. not panic on bytecode (#1916)
  • put snailtracer and analysis contracts in files (#1911)
  • Move CfgEnv from context-interface to context crate (#1910)
  • Rename PRAGUE_EOF to OSAKA (#1903)
  • bump EOF evmone tests to v0.13.0 (#1816)
  • (primitives) replace HashMap re-exports with alloy_primitives::map (#1805)
  • (revme) replace structopt with clap (#1754)

2.5.0 - 2025-02-11

Other

  • updated the following local packages: revm

2.4.0 - 2025-01-28

Other

  • devnet5 tests v1.3.0 (#2021)

2.3.0 - 2025-01-13

Added

  • (EIP-7623) adjuct floor gas check order (#1990)

Other

  • v53 revm v19.2.0 (#1972)

2.2.0 - 2024-12-26

Added

  • blst reprice, remove g1/g2 mul, eest test bump (#1951)
  • eip7691 fraction update (#1900)

Other

  • Uncouple blob count between CL and EL (#1899)

2.1.0 - 2024-11-06

Other

  • Osaka Activation (release_49 branch) (#1835)
  • v49 release (#1833)

2.0.0 - 2024-10-23

Other

  • update Cargo.lock dependencies

1.0.0 - 2024-09-26

Other

  • update Cargo.lock dependencies

0.11.0 - 2024-10-17

Added

  • Rename PRAGUE_EOF to OSAKA (#1822)
  • (EIP-7702) devnet-4 changes (#1821)

Other

  • remove test u8 check (#1825)

0.10.3 - 2024-09-26

Other

  • update Cargo.lock dependencies

0.10.2 - 2024-09-18

Added

  • (statetest) enable EOF in Prague tests (#1753)

0.10.1 - 2024-08-30

Other

  • updated the following local packages: revm

0.10.0 - 2024-08-29

Added

  • (eip7702) Impl newest version of EIP (#1695)
  • c-kzg bump, cleanup on kzgsetting (#1719)

0.9.0 - 2024-08-08

Added

  • (EOF) Run EOF tests from eth/tests (#1690)
  • (EOF) add evmone test suite (#1689)
  • (EOF) Add EOF validation in revme bytecode cmd (#1660)
  • (EOF) EOF Validation add code type and sub container tracker (#1648)

Fixed

  • (statetest) make bytecode analyzed (#1666)
  • (EOF) returning to non-returning jumpf, enable valition error (#1664)
  • (statetest) Add back Merge spec (#1658)

Other

  • Add EOF Layout Fuzz Loop to revme bytecode (#1677)
  • (clippy) 1.80 rust clippy list paragraph ident (#1661)
  • use is_zero for U256 and B256 (#1638)
  • bump versions bcs of primitives (#1631)

0.8.0 - 2024-07-16

Added

  • (eof) cli eof-validation (#1622)
  • (EOF) Bytecode::new_raw supports EOF, new_raw_checked added (#1607)

Fixed

  • (eip7702) Add tests and fix some bugs (#1605)

Other

  • (GeneralState) skip fewer specs (#1603)

0.7.0 - 2024-07-08

Other

  • replace AccessList with alloy version (#1552)

0.6.0 - 2024-06-20

Added

  • (EOF) Put EOF bytecode behind an Arc (#1517)
  • (revme) add prague spec (#1506)

Fixed

  • (eof) fixture 2 tests (#1550)

Other

  • replace TransactTo with TxKind (#1542)
  • skip tests with storage check and return status (#1452)

0.5.0 - 2024-05-12

Added

  • (precompile) Prague - EIP-2537 - BLS12-381 curve operations (#1389)
  • add trace option in revme evm (#1376)
  • (revme) add --keep-going to statetest command (#1277)
  • EOF (Ethereum Object Format) (#1143)

Fixed

  • (revme) Print one json outcome in statetest (#1347)
  • Drops check for .json when testing a single file (#1301)

Other

  • (revme) increment statetest bar after running the test (#1377)
  • (interpreter) branch less in as_usize_or_fail (#1374)

0.4.0 - 2024-04-02

Added

  • [breaking] TracerEip3155 optionally traces memory (#1234)

Other

  • use uint macro & fix various small things (#1253)

0.3.1 - 2024-03-19

Other

  • tag v32 revm v7.1.0 (#1176)

0.3.0 - 2024-03-08

Added

  • use impl instead of dyn in GetInspector (#1157)
  • add evm script (#1039)

Fixed

  • (revme) revme error output and remove double summary (#1169)

Other

  • (deps) bump walkdir from 2.4.0 to 2.5.0 (#1149)

0.2.2 - 2024-02-22

Added

  • split off serde_json dependency to its own feature (#1104)

0.2.1 - 2024-02-07

Added

  • tweeks for v4.0 revm release (#1048)
  • (revme) make it runnable by goevmlab (#990)
  • EvmBuilder and External Contexts (#888)
  • Loop call stack (#851)
  • (revme) format kzg setup (#818)
  • (interpreter) add more helper methods to memory (#794)
  • derive more traits (#745)
  • Alloy primitives (#724)
  • implement EIP-4844 (#668)
  • (StateBuilder) switch builder option from without_bundle to with_bundle (#688)
  • alloy migration (#535)
  • State with account status (#499)
  • (cancun) EIP-5656: MCOPY - Memory copying instruction (#528)
  • json opcode traces EIP-3155 (#356)
  • (Shanghai) All EIPs: push0, warm coinbase, limit/measure initcode (#376)
  • revm-interpreter created (#320)
  • Export CustomPrinter insector from revm (#300)
  • substitute web3db to ethersdb (#293)
  • (interpreter) Unify instruction fn signature (#283)
  • (revm) Add prevrandao field to EnvBlock (#271)
  • Migrate primitive_types::U256 to ruint::Uint<256, 4> (#239)
  • (revm, revme) gas inspector (#222)

Fixed

  • (eip4844) Pass eth tests, additional conditions added. (#735)
  • (test) Check expect exception and revm error (#734)
  • k256 compile error (#451)

Other

  • (EvmBuilder) rename builder functions to HandlerCfg (#1050)
  • (Interpreter) Split calls to separate functions (#1005)
  • (revme) EmptyDb Blockhash string, json-outcome flag, set prevrandao in statetest (#994)
  • (revme) add recovery of address from secret key (#992)
  • (log) use alloy_primitives::Log (#975)
  • (docs) revme readme update (#898)
  • simplify use statements (#864)
  • decode KZG points directly into the buffers (#840)
  • bump v26 revm v3.5.0 (#765)
  • tag v25, revm v3.4.0 (#755)
  • BLOBBASEFEE opcode (#721)
  • Never inline the prepare functions (#712)
  • (deps) bump bytes from 1.4.0 to 1.5.0 (#707)
  • make impl Default for StateBuilder generic (#690)
  • (deps) bump walkdir from 2.3.3 to 2.4.0 (#692)
  • (cfg) convert chain_id from u256 to u64 (#693)
  • Revert "feat: alloy migration (#535)" (#616)
  • spell check (#615)
  • avoid unnecessary allocations (#581)
  • clippy and fmt (#568)
  • optimize stack usage for recursive call and create programs (#522)
  • (deps) bump hashbrown from 0.13.2 to 0.14.0 (#519)
  • Bump v24, revm v3.3.0 (#476)
  • (deps) bump ruint from 1.7.0 to 1.8.0 (#465)
  • Release v23, revm v3.2.0 (#464)
  • Release v22, revm v3.1.1 (#460)
  • v21, revm v3.1.0 (#444)
  • bump all
  • remove gas blocks (#391)
  • (deps) bump bytes from 1.3.0 to 1.4.0 (#355)
  • Bump v20, changelog (#350)
  • Cleanup imports (#348)
  • includes to libs (#338)
  • Creating revm-primitives, revm better errors and db components (#334)
  • Correct typo (#282)
  • Integer overflow while calculating the remaining gas in GasInspector (#287)
  • native bits (#278)
  • (release) Bump revm and precompiles versions
  • Bump primitive_types. Add statetest spec
  • Bump revm to v2.3.0
  • typos (#263)
  • (eth/test) Added OEF spec for tests. Skip HighGasPrice (#261)
  • Bump revm v2.1.0 (#224)

v0.1.0

date: 18.12.2021

Initial release. statetest are done, other things I have just started working on.