Releases: bluealloy/revm
Releases · bluealloy/revm
tag v66 revm v20.0.0
Stable release
What's Changed
- Update architecture.md by @kadenzipfel in #2288
- chore: Add MUL benchmark for EIP1962 by @kevaundray in #2287
- tests(op-precompiles): Add missing g2 add tests by @emhane in #2253
- test(op-precompiles): Add test for checking that op default precompiles is updated by @emhane in #2291
- chore: docs nits by @rakita in #2292
- chore: group cargo imports by @rakita in #2289
- bump: revm v20.0.0 stable version by @rakita in #2294
New Contributors
- @kadenzipfel made their first contribution in #2288
Full Changelog: v65...v66
tag v65 revm v20.0.0-alpha7
What's Changed
- fix: remove duplicated load_account() by @jackwener in #2225
- chore: remove blockhash windows const by @rakita in #2228
- refactor: use AccessListItem associated type instead of AccessList by @Wodann in #2214
- refactor: simplify single UT for OpSpecId compatibility. by @jackwener in #2216
- chore(revme): remove deprecated #[clap] attribute by @argentpapa in #2217
- test(op-precompiles): Add test for g1 msm by @emhane in #2227
- chore(examples/erc20_gas): use KECCAK_EMPTY replace keccak256(Bytes::new()) by @argentpapa in #2230
- chore: Add some documentation for the bls12-381 precompile constants by @kevaundray in #2222
- test(op-precompiles): add bls12-381 g2 add and msm tests by @emhane in #2231
- feat: allow reuse of API for calculating initial tx gas for tx by @Wodann in #2215
- chore: Remove redundant bls12-381 constants and cleanup naming by @kevaundray in #2235
- fix: DepositTx Identifier is 126 (
0x7e
) not0x7f
by @refcell in #2237 - chore: fix clippy by @kevaundray in #2238
- feat: Remove PrecompileError from PrecompileProvider by @nemnem7 in #2233
- test(op-precompiles): Reuse tests for bls12-381 msm tests for pairing by @emhane in #2239
- chore: add a safe blst wrapper by @kevaundray in #2223
- chore: bump stable and eof tests Vítkov (v4.1.0) by @rakita in #2244
- fix: correct eof kind in verification tests by @rakita in #2250
- test(op-precompiles): Add tests for bls12-381 map fp to g by @emhane in #2241
- chore: add documentation for the gas related constants for EIP2537 by @kevaundray in #2246
- chore: Add invariant test for G1/G2 Scalar multiplication by @kevaundray in #2247
- chore: special case G1 and G2 scalar multiplication by @kevaundray in #2248
- refactor: make str to SpecId conversion fallible by @Wodann in #2236
- fix: add develop (With prague) tests by @rakita in #2255
- feat: Return Fatal error on bls precompiles if in no_std by @nemnem7 in #2249
- chore: Adds a wrapper around substrate-bn for EIP196 by @kevaundray in #2258
- examples: Add custom instruction example by @rakita in #2261
- test(op-precompiles): clean up op tx tests by @emhane in #2242
- chore: remove wrong
&mut
and duplicated spec by @jackwener in #2276 - test(op-deposit-tx): Fix sys deposit tx gas test by @emhane in #2263
- chore: make clippy happy by @argentpapa in #2274
- chore: Add
g1_mul
,g1_add
andread_scalar
methods into substrate wrapper for bn128 by @kevaundray in #2264 - chore(op): Remove redundant trait
DepositTransaction
by @emhane in #2265 - test(op-handler): Add test for halted deposit tx post regolith by @emhane in #2269
- test(op-precompiles): Check subset of l1 precompiles in op by @emhane in #2204
- test(op-test-cov): Add test for serializing deposit transaction parts by @emhane in #2267
- chore: add early exit for no-ops in EIP1962 and EIP2537 by @kevaundray in #2271
- feat: InspectEvm fn renames, inspector docs, book cleanup by @rakita in #2275
- chore(op-revm): Operator Fee Fixes by @refcell in #2273
- chore: release by @github-actions in #2280
- bump: main changelog tag v64 revm v20.0.0-alpha.7 by @rakita in #2283
New Contributors
- @argentpapa made their first contribution in #2217
- @nemnem7 made their first contribution in #2233
Full Changelog: v63...v65
tag v64 revm v19.7.0
tag v63, revm v20.0.0-alpha6
What's Changed
- Add tests for checking fjord precompile activation by @emhane in #2199
- Add test for calling
bn128_pair
before and after granite by @emhane in #2200 - fix(op-precompiles): fix method name typo by @emhane in #2202
- fix: JumpMap from_slice requires len by @rakita in #2203
- chore(op-test): Clean up precompile tests by @emhane in #2206
- fix: remove unused dependencies from Cargo.toml by @jackwener in #2211
- test(op-precompiles): Add test for calling g1 add by @emhane in #2205
- feat(docs): MyEvm example and book cleanup by @rakita in #2218
- bump: tag v63 revm v20.0.0-alpha.6 by @rakita in #2219
- bump: revm-statetest-types to alpha5 by @rakita in #2220
Full Changelog: v62...v63
tag v62, revm v20.0.0-alpha5
Some small breking changed as a prep for v20.0.0 release
What's Changed
- chore: add debug to precompiles type by @mattsse in #2193
- feat: rename inspect_previous to inspect_replay by @rakita in #2194
- feat: Add tx/block to EvmExecution trait by @rakita in #2195
- feat: add custom error to context by @rakita in #2197
- bump: tag v62 revm v20.0.0-alpha.5 by @rakita in #2198
Full Changelog: v61...v62
tag v61, revm: v20.0.0-alpha.4
What's Changed
- fix: correctly propagate features by @klkvr in #2177
- refactor: remove CTX phantomdata from precompile providers by @klkvr in #2178
- chore(precompile): Refactor out MSM Helper by @refcell in #2179
- feat: decouple first_frame_input in inspector by @rakita in #2180
- fix: remove wrong Clone Trait in WrapDatabaseRef by @jackwener in #2181
- fix(op): fix inspection call by @rakita in #2184
- chore: bump alloy by @klkvr in #2183
- fix(op) enable proper precompiles p256 by @rakita in #2186
- docs: Add comments to handler methods by @rakita in #2188
- bump: tag v61 revm v20.0.0-alpha.4 by @rakita in #2190
Full Changelog: v60...v61
tag v60, revm v20.0.0-alpha.3
tag v59, revm v20.0.0-alpha.2
What's Changed
- refactor: re-export all crates from
revm
by @klkvr in #2088 - chore: remove unused generics from
TracerEip3155
by @klkvr in #2090 - chore: move all dependencies to workspace by @DaniPopes in #2092
- chore(deps): bump breaking deps by @DaniPopes in #2093
- chore(examples): use .erased() instead of DynProvider::new by @DaniPopes in #2094
- fix: call
Handler::clear
by @klkvr in #2091 - Split precompile constants out of individual modules #2081 by @Ayushdubey86 in #2085
- G1_msm base gas fee CONST value correction by @Ayushdubey86 in #2100
- fix(blst): Fix wrong constants value and usage by @rakita in #2102
- fix: update broken link secp256r1.rs by @dramarereg in #2099
- Nit: PrecompileErrors -> PrecompileError by @jackwener in #2103
- Add Interop hardfork by @SozinM in #2095
- chore: fix wrong comment & remove useless impl by @jackwener in #2105
- chore: export eip2930 eip7702 types from one place by @rakita in #2097
- docs: Bytecode crate by @rakita in #2108
- refactor: expose popn macros by @greged93 in #2113
- chore: remove wrong
&mut
/TODO
, and avoid uselessget_mut
by @jackwener in #2111 - chore: fix eofcreate error typo by @Rjected in #2120
- chore: make OpEvm ContextSetters impl generic over precompiles by @Rjected in #2119
- chore(op): Add osaka fork so EOF can be activated by @rakita in #2122
- Feat: add the debug impl for Evm and EvmData type by @startup-dreamer in #2126
- Adding function derive_tx_type to TxEnv by @Ayushdubey86 in #2118
- feat: TryDatabaseCommit by @prestwich in #2121
- feat: allow host to be implemented on custom context by @omer-gen in #2112
- chore: remove
optional_gas_refund
as unused by @rakita in #2132 - refactor(db): separate fields from
CacheDB
intoCache
by @lambda-0x in #2131 - fix(op): Move loading of l1block data by @rakita in #2130
- misc: remove unused source file by @Wodann in #2133
- refactor: add immutable gas API to LoopControl by @Wodann in #2134
- feat: implement AccessListTr for Vec by @Wodann in #2136
- refactor: simplify bn128::run_pair by @JackDrogon in #2137
- feat: add constructor with hardfork by @Wodann in #2135
- chore: fix README link by @rakita in #2139
- refactor: move mainnet builder to handler crate by @rakita in #2138
- fix: make
OpEvm
impl blocks generic over precompiles by @klkvr in #2142 - chore: rename
revm-optimism
create toop-revm
by @startup-dreamer in #2141 - fix(op): Handler deposit tx halt, catch_error handle by @rakita in #2144
- fix: use correct HashMap import by @klkvr in #2148
- fix: relax jumptable len check by @rakita in #2149
- feat: Standalone Host, remove default fn from context by @rakita in #2147
- test: allow duplicate v and yparity in test files by @mattsse in #2150
- chore: docs and cleanup (rm Custom Inst) by @rakita in #2151
- refactor: examples to use main revm crate by @rakita in #2152
- refactor: rename transact_previous to replay, move EvmTr traits by @rakita in #2153
- feat: make journal entries generic by @omer-gen in #2154
- refactor: JournalTr, JournalOutput, op only using revm crate by @rakita in #2155
- chore: op-revm cleanup and few docs by @rakita in #2156
- fix: pre EIP-7702 does not need to load code by @lightsing in #2162
- feat: remove specification crate by @rakita in #2165
- feat(handler): add MainnetContext alias generic over Database by @0xMushow in #2166
- added with_ref_db fn by @Rimeeeeee in #2164
- bump: v59 release-plz update by @rakita in #2170
- fix: switch order of publishing by @rakita in #2171
New Contributors
- @dramarereg made their first contribution in #2099
- @SozinM made their first contribution in #2095
- @greged93 made their first contribution in #2113
- @startup-dreamer made their first contribution in #2126
- @omer-gen made their first contribution in #2112
- @lambda-0x made their first contribution in #2131
- @JackDrogon made their first contribution in #2137
- @0xMushow made their first contribution in #2166
- @Rimeeeeee made their first contribution in #2164
Full Changelog: v57...v59
tag v58, revm v19.6.0
tag v57, revm v20.0.0-alpha.1
First alpha release for new revm framework.
What's Changed
- chore(deps): bump serde_json from 1.0.122 to 1.0.127 by @dependabot in #1737
- chore(deps): bump tokio from 1.39.2 to 1.40.0 by @dependabot in #1739
- chore(deps): bump reqwest from 0.12.5 to 0.12.7 by @dependabot in #1740
- chore(deps): bump alloy-rlp from 0.3.7 to 0.3.8 by @dependabot in #1738
- Add test for
revm::optimism::L1BlockInfo::calculate_tx_l1_cost_fjord
by @emhane in #1743 - fix(inspector): always call selfdestruct if entry is made by @jsvisa in #1746
- chore: add gitattributes linguist-vendored for tests by @rakita in #1750
- chore: add
.gitattributes
by @rkrasiuk in #1751 - Test l1 gas used fjord by @emhane in #1749
- feat(statetest): enable EOF in Prague tests by @rakita in #1753
- chore: make clippy happy by @jsvisa in #1755
- chore(deps): bump secp256k1 from 0.29.0 to 0.29.1 by @dependabot in #1758
- chore(deps): bump alloy-primitives from 0.8.0 to 0.8.2 by @dependabot in #1761
- chore(deps): bump anyhow from 1.0.86 to 1.0.87 by @dependabot in #1760
- chore(deps): bump alloy-sol-types from 0.8.0 to 0.8.2 by @dependabot in #1762
- chore(deps): bump alloy-provider from 0.3.0 to 0.3.1 by @dependabot in #1759
- feat: introducing EvmWiring, a chain-specific configuration by @Wodann in #1672
- chore(revme): replace
structopt
withclap
by @DaniPopes in #1754 - fix: statetest json set spec_id by @rakita in #1766
- refactor: simplify SuccessOrHalt trait bound by @Wodann in #1768
- chore(deps): bump once_cell from 1.19.0 to 1.20.0 by @dependabot in #1773
- chore(deps): bump anyhow from 1.0.88 to 1.0.89 by @dependabot in #1772
- chore(deps): bump secp256k1 from 0.29.0 to 0.29.1 by @dependabot in #1770
- chore(deps): bump alloy-transport from 0.3.0 to 0.3.5 by @dependabot in #1771
- feat(example): deploy bytecode from scratch by @clearloop in #1767
- chore: Test for calculation of l1 gas used and l1 fee for ecotone tx by @emhane in #1748
- feat: to_plain_state by @prestwich in #1778
- chore: release v44 bump main CHANGELOG by @rakita in #1783
- feat: project restructuring Part1 by @rakita in #1776
- feat: use TestAuthorization and skip decoding of eip7702 tx by @royvardhan in #1785
- feat: restructure Part2 database crate by @rakita in #1784
- feat: Restructuring Part3 inspector crate by @rakita in #1788
- chore: migrate off alloy-eips by @prestwich in #1789
- feat: restructure part3 fix examples by @rakita in #1792
- fix: error type return on
modexp
's exp overflow by @juanimedone in #1797 - chore: add ReentrancySentryOOG for SSTORE by @jsvisa in #1795
- feat: Merge validation/analyzis with Bytecode by @rakita in #1793
- chore: refactor -copy common code by @rakita in #1799
- chore: fix
constants
module typo by @DaniPopes in #1801 - chore: fix some typos by @DaniPopes in #1800
- fix: make macro crate-agnostic by @Wodann in #1802
- feat: push NonceChange to Journal in deduct_caller by @royvardhan in #1804
- feat: add support for async database by @morph-dev in #1809
- feat: extract statetest models/structs to standalone crate by @royvardhan in #1808
- Bump EOF EEST tests to v1.1.1 by @cairoeth in #1815
- chore(primitives): replace HashMap re-exports with alloy_primitives::map by @DaniPopes in #1805
- chore: bump EOF evmone tests to v0.13.0 by @cairoeth in #1816
- chore: bump alloy to 0.4.2 by @prestwich in #1817
- feat: restructuring Part6 transaction crate by @rakita in #1814
- chore: inline more
AccountInfo
fns and add docs by @Rjected in #1819 - feat(interpreter): impl Clone for Stack by @jsvisa in #1820
- Chore: some no_std cleanup by @prestwich in #1834
- perf(precompile): use secp256k1 global context for ecrecover by @Rjected in #1843
- perf(
CacheAccount
): remove unneeded clone by @hai-rise in #1859 - perf(
TransitionAccount
): remove unneeded clone by @hai-rise in #1860 - doc(memory): remove dead link by @hai-rise in #1857
- chore: fix typos by @conr2d in #1868
- feat: Restucturing Part7 Handler and Context rework by @rakita in #1865
- chore(crates/bytecode): fix some comments by @wangjingcun in #1851
- chore: refactor
L1BlockInfo::tx_estimated_size_fjord
by @hai-rise in #1856 - Update README.md examples section by @FredCoen in #1853
- feat: couple convenience functions for nested cache dbs by @prestwich in #1852
- chore: bumps select alloy crates to 0.6 by @bsh98 in #1854
- chore: make ExtBytecode pointer private by @rakita in #1904
- chore: Rename PRAGUE_EOF to OSAKA by @rakita in #1903
- chore: mdbook links check by @rakita in #1906
- implement serde for interpreter by @FredCoen in #1909
- Moves CfgEnv from context-interface to context crate by @FredCoen in #1910
- chore: put snailtracer and analysis contracts in files by @Rjected in #1911
- fix(revme): include correct bytecode for snailtracer by @rakita in #1917
- chore: use stderr for revme tracer. not panic on bytecode by @rakita in #1916
- chore: Simplify GasInspector by @rakita in #1919
- chore: add depth to GasInspector by @rakita in #1922
- chore: tie journal database with database getter by @rakita in #1923
- docs(readme): add tycho-simulation to "Used by" by @zizou0x in #1926
- fix: Clear journal by @rakita in #1927
- feat: Removed create address collision check by @varun-doshi in #1928
- feat(database): implement order-independent equality for Reverts by @hoank101 in #1827
- fix: clear JournalState and set first journal vec by @rakita in #1929
- chore: EVM transact make output generic for POSTEXEC by @rakita in #1931
- feat: Make Ctx journal generic by @rakita in #1933
- typo: fix comments and docs into more sensible by @lancorer in #1920
- feat: integrate codspeed by @DaniPopes in #1935
- fix(revme): Burntpix bench by @rakita in #1937
- chore: remove analysis bench inner loops by @DaniPopes in #1936
- feat: add isthmus spec by @leruaa in #1938
- chore: use MemoryOOG by @DaniPopes in #1941
- test: add OpTransaction conversion tests by @hoank101 in #1939
- EIP-2935: Update HISTORY_STORAGE_ADDRESS by @programskillforverification in #1946
- chore: Make inspector use generics, rm associated types by @rakita in #1934
- feat: expose precompile address in Journal, DB::Error: StdError by @rakita in #1956
- feat: align Block trait by @rakita in #1957
- feat: use custom handlers to pay for gas with erc-20 by @royvardhan in #1901
- chore: integrate rust-secp256k1 by @stevencartavia in https://github.c...