@@ -6,6 +6,230 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
7
7
## [ Unreleased]
8
8
9
+ ## [ 3.0.0] ( https://github.com/leovct/revm/compare/revme-v2.3.0...revme-v3.0.0 ) - 2025-01-20
10
+
11
+ ### Added
12
+
13
+ - * (EIP-7840)* Add blob schedule to execution client cfg (#1980 )
14
+ - bump eof validation tests (#1963 )
15
+ - simplify Transaction trait (#1959 )
16
+ - Split inspector.rs (#1958 )
17
+ - align Block trait (#1957 )
18
+ - integrate codspeed (#1935 )
19
+ - Restucturing Part7 Handler and Context rework (#1865 )
20
+ - restructuring Part6 transaction crate (#1814 )
21
+ - extract statetest models/structs to standalone crate (#1808 )
22
+ - Merge validation/analyzis with Bytecode (#1793 )
23
+ - restructure part3 fix examples (#1792 )
24
+ - Restructuring Part3 inspector crate (#1788 )
25
+ - restructure Part2 database crate (#1784 )
26
+ - use TestAuthorization and skip decoding of eip7702 tx (#1785 )
27
+ - project restructuring Part1 (#1776 )
28
+ - introducing EvmWiring, a chain-specific configuration (#1672 )
29
+ - * (statetest)* enable EOF in Prague tests (#1753 )
30
+ - * (eip7702)* Impl newest version of EIP (#1695 )
31
+ - c-kzg bump, cleanup on kzgsetting (#1719 )
32
+ - * (EOF)* Run EOF tests from eth/tests (#1690 )
33
+ - * (EOF)* add evmone test suite (#1689 )
34
+ - * (EOF)* Add EOF validation in revme bytecode cmd (#1660 )
35
+ - * (EOF)* EOF Validation add code type and sub container tracker (#1648 )
36
+ - * (eof)* cli eof-validation (#1622 )
37
+ - * (EOF)* Bytecode::new_raw supports EOF, new_raw_checked added (#1607 )
38
+ - * (EOF)* Put EOF bytecode behind an Arc (#1517 )
39
+ - * (revme)* add prague spec (#1506 )
40
+ - * (precompile)* Prague - EIP-2537 - BLS12-381 curve operations (#1389 )
41
+ - add trace option in ` revme evm ` (#1376 )
42
+ - * (revme)* add --keep-going to statetest command (#1277 )
43
+ - EOF (Ethereum Object Format) (#1143 )
44
+ - [ ** breaking** ] TracerEip3155 optionally traces memory (#1234 )
45
+ - use ` impl ` instead of ` dyn ` in ` GetInspector ` (#1157 )
46
+ - add evm script (#1039 )
47
+ - split off serde_json dependency to its own feature (#1104 )
48
+ - tweeks for v4.0 revm release (#1048 )
49
+ - * (revme)* make it runnable by goevmlab (#990 )
50
+ - EvmBuilder and External Contexts (#888 )
51
+ - Loop call stack (#851 )
52
+ - * (revme)* format kzg setup (#818 )
53
+ - * (interpreter)* add more helper methods to memory (#794 )
54
+ - derive more traits (#745 )
55
+ - Alloy primitives (#724 )
56
+ - implement EIP-4844 (#668 )
57
+ - * (StateBuilder)* switch builder option from without_bundle to with_bundle (#688 )
58
+ - alloy migration (#535 )
59
+ - State with account status (#499 )
60
+ - * (cancun)* EIP-5656: MCOPY - Memory copying instruction (#528 )
61
+ - json opcode traces EIP-3155 (#356 )
62
+ - * (Shanghai)* All EIPs: push0, warm coinbase, limit/measure initcode (#376 )
63
+ - revm-interpreter created (#320 )
64
+ - Export CustomPrinter insector from revm (#300 )
65
+ - substitute web3db to ethersdb (#293 )
66
+ - * (interpreter)* Unify instruction fn signature (#283 )
67
+ - * (revm)* Add prevrandao field to EnvBlock (#271 )
68
+ - Migrate ` primitive_types::U256 ` to ` ruint::Uint<256, 4> ` (#239 )
69
+ - * (revm, revme)* gas inspector (#222 )
70
+ - Introduce ByteCode format, Update Readme (#156 )
71
+ - mutable call inputs
72
+
73
+ ### Fixed
74
+
75
+ - * (revme)* Statetest stop exec when print output is true (#1995 )
76
+ - * (revme)* statetest remove redundant json output (#1994 )
77
+ - * (eof)* dont run precompile on ext delegate call (#1964 )
78
+ - * (revme)* Burntpix bench (#1937 )
79
+ - * (revme)* include correct bytecode for snailtracer (#1917 )
80
+ - statetest json set spec_id (#1766 )
81
+ - * (statetest)* make bytecode analyzed (#1666 )
82
+ - * (EOF)* returning to non-returning jumpf, enable valition error (#1664 )
83
+ - * (statetest)* Add back Merge spec (#1658 )
84
+ - * (eip7702)* Add tests and fix some bugs (#1605 )
85
+ - * (eof)* fixture 2 tests (#1550 )
86
+ - * (revme)* Print one json outcome in statetest (#1347 )
87
+ - Drops check for .json when testing a single file (#1301 )
88
+ - * (revme)* revme error output and remove double summary (#1169 )
89
+ - * (eip4844)* Pass eth tests, additional conditions added. (#735 )
90
+ - * (test)* Check expect exception and revm error (#734 )
91
+ - k256 compile error (#451 )
92
+ - make DatabaseRef::basic consistent with Database (#201 )
93
+ - impose a memory limit (#86 )
94
+ - various inspector fixes (#69 )
95
+
96
+ ### Other
97
+
98
+ - align crates versions (#1983 )
99
+ - remove analysis bench inner loops (#1936 )
100
+ - fix comments and docs into more sensible (#1920 )
101
+ - tie journal database with database getter (#1923 )
102
+ - use stderr for revme tracer. not panic on bytecode (#1916 )
103
+ - put snailtracer and analysis contracts in files (#1911 )
104
+ - Move CfgEnv from context-interface to context crate (#1910 )
105
+ - Rename PRAGUE_EOF to OSAKA (#1903 )
106
+ - bump EOF evmone tests to v0.13.0 (#1816 )
107
+ - * (primitives)* replace HashMap re-exports with alloy_primitives::map (#1805 )
108
+ - * (revme)* replace ` structopt ` with ` clap ` (#1754 )
109
+ - release (#1729 )
110
+ - release (#1722 )
111
+ - tag v41 revm v13.0.0 (#1692 )
112
+ - release (#1683 )
113
+ - Add EOF Layout Fuzz Loop to ` revme bytecode ` ([ #1677 ] ( https://github.com/leovct/revm/pull/1677 ) )
114
+ - * (clippy)* 1.80 rust clippy list paragraph ident (#1661 )
115
+ - use ` is_zero ` for ` U256 ` and ` B256 ` (#1638 )
116
+ - bump versions bcs of primitives (#1631 )
117
+ - release (#1620 )
118
+ - * (GeneralState)* skip fewer specs (#1603 )
119
+ - release (#1579 )
120
+ - replace AccessList with alloy version (#1552 )
121
+ - release (#1548 )
122
+ - replace TransactTo with TxKind (#1542 )
123
+ - skip tests with storage check and return status (#1452 )
124
+ - release (#1261 )
125
+ - * (revme)* increment statetest bar * after* running the test (#1377 )
126
+ - * (interpreter)* branch less in as_usize_or_fail (#1374 )
127
+ - release (#1231 )
128
+ - use uint macro & fix various small things (#1253 )
129
+ - release (#1175 )
130
+ - tag v32 revm v7.1.0 (#1176 )
131
+ - release (#1125 )
132
+ - * (deps)* bump walkdir from 2.4.0 to 2.5.0 (#1149 )
133
+ - release tag v30 revm v6.1.0 (#1100 )
134
+ - release (#1082 )
135
+ - license date and revm docs (#1080 )
136
+ - release (#1067 )
137
+ - * (revme)* statetests new format and return error (#1066 )
138
+ - tag v27, revm v4.0.0 release (#1061 )
139
+ - * (EvmBuilder)* rename builder functions to HandlerCfg (#1050 )
140
+ - * (Interpreter)* Split calls to separate functions (#1005 )
141
+ - * (revme)* EmptyDb Blockhash string, json-outcome flag, set prevrandao in statetest (#994 )
142
+ - * (revme)* add recovery of address from secret key (#992 )
143
+ - * (log)* use alloy_primitives::Log (#975 )
144
+ - * (docs)* revme readme update (#898 )
145
+ - simplify use statements (#864 )
146
+ - decode KZG points directly into the buffers (#840 )
147
+ - bump v26 revm v3.5.0 ([ #765 ] ( https://github.com/leovct/revm/pull/765 ) )
148
+ - tag v25, revm v3.4.0 (#755 )
149
+ - BLOBBASEFEE opcode (#721 )
150
+ - Never inline the prepare functions ([ #712 ] ( https://github.com/leovct/revm/pull/712 ) )
151
+ - * (deps)* bump bytes from 1.4.0 to 1.5.0 (#707 )
152
+ - make ` impl Default for StateBuilder ` generic (#690 )
153
+ - * (deps)* bump walkdir from 2.3.3 to 2.4.0 (#692 )
154
+ - * (cfg)* convert chain_id from u256 to u64 (#693 )
155
+ - Revert "feat: alloy migration ([ #535 ] ( https://github.com/leovct/revm/pull/535 ) )" ([ #616 ] ( https://github.com/leovct/revm/pull/616 ) )
156
+ - spell check (#615 )
157
+ - avoid unnecessary allocations (#581 )
158
+ - clippy and fmt (#568 )
159
+ - optimize stack usage for recursive ` call ` and ` create ` programs ([ #522 ] ( https://github.com/leovct/revm/pull/522 ) )
160
+ - * (deps)* bump hashbrown from 0.13.2 to 0.14.0 (#519 )
161
+ - Bump v24, revm v3.3.0 ([ #476 ] ( https://github.com/leovct/revm/pull/476 ) )
162
+ - * (deps)* bump ruint from 1.7.0 to 1.8.0 (#465 )
163
+ - Release v23, revm v3.2.0 ([ #464 ] ( https://github.com/leovct/revm/pull/464 ) )
164
+ - Release v22, revm v3.1.1 ([ #460 ] ( https://github.com/leovct/revm/pull/460 ) )
165
+ - v21, revm v3.1.0 (#444 )
166
+ - bump all
167
+ - remove gas blocks (#391 )
168
+ - * (deps)* bump bytes from 1.3.0 to 1.4.0 (#355 )
169
+ - Bump v20, changelog ([ #350 ] ( https://github.com/leovct/revm/pull/350 ) )
170
+ - Cleanup imports ([ #348 ] ( https://github.com/leovct/revm/pull/348 ) )
171
+ - includes to libs (#338 )
172
+ - Creating revm-primitives, revm better errors and db components ([ #334 ] ( https://github.com/leovct/revm/pull/334 ) )
173
+ - Correct typo (#282 )
174
+ - Integer overflow while calculating the remaining gas in GasInspector (#287 )
175
+ - native bits ([ #278 ] ( https://github.com/leovct/revm/pull/278 ) )
176
+ - * (release)* Bump revm and precompiles versions
177
+ - Bump primitive_types. Add statetest spec
178
+ - Bump revm to v2.3.0
179
+ - typos (#263 )
180
+ - * (eth/test)* Added OEF spec for tests. Skip HighGasPrice (#261 )
181
+ - Bump revm v2.1.0 ([ #224 ] ( https://github.com/leovct/revm/pull/224 ) )
182
+ - revm bump v2.0.0, precompile bump v1.1.1 ([ #212 ] ( https://github.com/leovct/revm/pull/212 ) )
183
+ - current_opcode fn and rename program_counter to instruction_pointer ([ #211 ] ( https://github.com/leovct/revm/pull/211 ) )
184
+ - Cfg choose create analysis, option on bytecode size limit ([ #210 ] ( https://github.com/leovct/revm/pull/210 ) )
185
+ - revme some cleanup ([ #202 ] ( https://github.com/leovct/revm/pull/202 ) )
186
+ - Add support for old forks. ([ #191 ] ( https://github.com/leovct/revm/pull/191 ) )
187
+ - add lib target, make utils public (#185 )
188
+ - Handle HighNonce tests ([ #176 ] ( https://github.com/leovct/revm/pull/176 ) )
189
+ - JournaledState ([ #175 ] ( https://github.com/leovct/revm/pull/175 ) )
190
+ - Return ` ExecutionResult ` , which includes ` gas_refunded ` (#169 )
191
+ - Make CacheDB fields pub ([ #145 ] ( https://github.com/leovct/revm/pull/145 ) )
192
+ - Introduce account Touched/Cleared/None state in CacheDB ([ #140 ] ( https://github.com/leovct/revm/pull/140 ) )
193
+ - update statetest model to pass merge tests (#133 )
194
+ - don't delete account and storage entries on commit ([ #126 ] ( https://github.com/leovct/revm/pull/126 ) )
195
+ - * (clippy)* make clippy happy (#120 )
196
+ - typo fixes
197
+ - v6 changelog, bump versions
198
+ - some cleanup, checking on failed example tests
199
+ - Rework analysis ([ #89 ] ( https://github.com/leovct/revm/pull/89 ) )
200
+ - refactor to exact option combinators (#96 )
201
+ - Enable statetest for Berlin/Istanbul ([ #78 ] ( https://github.com/leovct/revm/pull/78 ) )
202
+ - Big Refactor. Machine to Interpreter. refactor instructions. call/create struct ([ #52 ] ( https://github.com/leovct/revm/pull/52 ) )
203
+ - [ revm] pop_top and unsafe comments ([ #51 ] ( https://github.com/leovct/revm/pull/51 ) )
204
+ - Inspector fixup
205
+ - Bump precompiles to v0.4.0 bump revm v1.2.0
206
+ - [ revme] return error on failes statetest
207
+ - clippy
208
+ - [ recompl] Bump precompile deps, cargo sort on workspace
209
+ - cargo fmt
210
+ - [ revm_precompiles] added flag for k256 lib
211
+ - [ revm] Bump to v1.1.0
212
+ - Omit edgecase high nonce test. tracer gas fix
213
+ - Bug fix for unknown OpCode
214
+ - internal cleanups
215
+ - [ revm] output log. Stetetest test log output. fmt
216
+ - Bump versions, Changelogs, fmt, revm readme, clippy.
217
+ - GasBlock for all Spec
218
+ - [ revm] Run test multiple times. fmt, BenchmarkDB
219
+ - [ revm] [ perf ] GasBlock analazis and optimizations.
220
+ - [ revm] Optimize PC, some perf
221
+ - [ revme] [ debug ] added help ctrl
222
+ - [ revme] [ debugger ] stack pop/push
223
+ - [ revme] full env as cli
224
+ - [ revme] [ debug ] some print cli
225
+ - readme. debuger update
226
+ - [ revm] Rename Handler to Host
227
+ - [ revm] Simplified host inspector
228
+ - [ revme] debugger cli history
229
+ - [ revme] [ debugger ] wip terminal
230
+ - [ revm] [ revme ] statetest merged
231
+ - [ revme] initial commit. Cmd skeleton added.statetests moved
232
+
9
233
## [ 0.10.1] ( https://github.com/bluealloy/revm/compare/revme-v0.10.0...revme-v0.10.1 ) - 2024-08-30
10
234
11
235
### Other
0 commit comments