Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: merge revm official pre-v37 version and add Haber spec to opBNB #25

Closed
wants to merge 108 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
108 commits
Select commit Hold shift + click to select a range
0b5287a
chore: fix publish revm-precompile (#1258)
rakita Apr 2, 2024
dd458cd
feat(interpreter): test Host object-safety, allow `dyn Host` in instr…
DaniPopes Apr 3, 2024
8f4962c
chore(deps): bump secp256k1 from 0.28.2 to 0.29.0 (#1260)
dependabot[bot] Apr 3, 2024
7cc2cbf
feat(interpreter): remove SPEC generic from gas calculation functions…
DaniPopes Apr 3, 2024
2bfb68d
feat(interpreter): derive Eq for InterpreterAction (#1262)
DaniPopes Apr 5, 2024
eece423
chore: add and use EvmContext::take_error (#1264)
DaniPopes Apr 5, 2024
2025fc9
feat(`db`): Introduce `alloydb` (#1257)
Evalir Apr 5, 2024
9fc5643
minor typo fix in docs (#1266)
h3lio5 Apr 6, 2024
062afa8
chore: revert snailtracer without microbench (#1259)
rakita Apr 7, 2024
59eed7c
perf(interpreter): use `pop_top!` where possible (#1267)
DaniPopes Apr 7, 2024
a8f188a
Add the modifies_memory macro (#1270)
h3lio5 Apr 7, 2024
953737c
feat: pass rand feature to alloy_primitives (#1276)
Wodann Apr 8, 2024
70c5d7a
Update documentation (#1275)
Pana Apr 8, 2024
43d3447
feat: EOF (Ethereum Object Format) (#1143)
rakita Apr 9, 2024
8deadd4
feat(revme): add --keep-going to statetest command (#1277)
DaniPopes Apr 9, 2024
f7340a3
docs(inspectors): change `serde` to `serde-json` for `TracerEip3155` …
Jon-Becker Apr 10, 2024
c395d4a
feat: add flag to force hashbrown usage (#1284)
Wodann Apr 13, 2024
79ceebd
feat(revm): make `FrameOrResult` serializable (#1282)
n0b0dyCN Apr 13, 2024
e55790b
feat: add `Bytecode::original_bytecode_slice` to match `BytecodeLocke…
DaniPopes Apr 13, 2024
1afd60e
fix: Drops check for .json when testing a single file (#1301)
mw2000 Apr 13, 2024
30d0564
fix: correct some stack IO (#1302)
DaniPopes Apr 13, 2024
20e1a54
chore(interpreter): rename wrapping_* opcodes (#1306)
DaniPopes Apr 16, 2024
6de5e99
chore: fix some warnings (#1305)
DaniPopes Apr 16, 2024
9536ca9
perf(interpreter): remove EOF branch in CODE{SIZE,COPY} (#1308)
DaniPopes Apr 16, 2024
518bd7b
chore(deps): bump anyhow from 1.0.81 to 1.0.82 (#1293)
dependabot[bot] Apr 16, 2024
6a0f716
chore(interpreter): rename some macros (#1304)
DaniPopes Apr 16, 2024
e276203
docs: fix the Instruction Table link (#1337)
IaroslavMazur Apr 19, 2024
fb7eb60
chore: weekly dependabot (#1325)
mattsse Apr 19, 2024
4ec8810
chore: update GitHub Actions to Node 20 (#1338)
IaroslavMazur Apr 19, 2024
d48e137
Implement `with_chain_id` for `CfgEnv` (#1327)
tcoratger Apr 21, 2024
bd73967
feat: add helper methods to CallInputs (#1345)
DaniPopes Apr 21, 2024
074a348
fix(revme): Print one json outcome in statetest (#1347)
rakita Apr 21, 2024
558721a
refactor: shrink OpCodeInfo and add more methods (#1307)
DaniPopes Apr 29, 2024
922c97c
chore: don't clone bytes in `Bytecode::bytes` (#1344)
DaniPopes Apr 29, 2024
2ccfccf
chore(deps): bump aurora-engine-modexp from 1.0.0 to 1.1.0 (#1339)
dependabot[bot] Apr 29, 2024
5caf175
fix: return the correct error in resize_memory (#1359)
DaniPopes Apr 29, 2024
e0a3860
feat(interpreter): add helpers for spending all gas (#1360)
DaniPopes Apr 29, 2024
2567a05
perf: remove bounds check in DUP, SWAP/EXCHANGE (#1346)
DaniPopes Apr 29, 2024
b47b14b
feat: Add uniswap V2 WETH-USDC swap example (#1353)
pawurb Apr 29, 2024
bc98a64
perf(interpreter): rewrite gas accounting for memory expansion (#1361)
DaniPopes Apr 29, 2024
f47cb28
feat: parse opcodes from strings (#1358)
DaniPopes May 1, 2024
7093bbb
feat(Handler): Add ClearHandle (#1368)
rakita May 1, 2024
5438a9d
feat: implement EIP-2935 (#1354)
onbjerg May 2, 2024
17432e0
chore: re-use num_words in gas::cost_per_word (#1371)
DaniPopes May 2, 2024
7e65594
chore(ci): bump action/deploy (#1372)
rakita May 2, 2024
104b78f
perf(interpreter): branch less in as_usize_or_fail (#1374)
DaniPopes May 3, 2024
6b89870
chore: remove unused file (#1379)
DaniPopes May 4, 2024
ee2a499
bump alloy & specify dep rev (#1380)
halo3mic May 4, 2024
003ee63
chore(revme): increment statetest bar *after* running the test (#1377)
DaniPopes May 4, 2024
510a594
chore: add blob_count and max_blobs to `TooManyBlobs` err enum (#1375)
yash-atreya May 4, 2024
9c717e2
feat: add a hook to execute individual frames (#1369)
DaniPopes May 7, 2024
be94c4c
chore: refactor lints (#1386)
rakita May 7, 2024
2827b84
feat: add trace option in `revme evm` (#1376)
qiweiii May 8, 2024
8d6ea82
feat(precompile): add Prague hardfork specification (#1387)
shekhirin May 8, 2024
7eca6d9
chore: bump c-kzg to 1.0.2 (#1390)
Rjected May 8, 2024
2f01d01
feat(precompile): Prague - EIP-2537 - BLS12-381 curve operations (#1389)
shekhirin May 10, 2024
a754006
fix(precompile): inherit Prague precompiles from Cancun (#1392)
shekhirin May 10, 2024
166f074
fix(precompile): blst dangling pointers, cleanup (#1391)
DaniPopes May 10, 2024
499b412
chore: add Trin to used by list (#1393)
KolbyML May 11, 2024
526cf9c
fix(eip2935): Preload blockchash storage address (#1395)
rakita May 11, 2024
1b6bd59
feat: Add bytes to Bytecode (#1396)
rakita May 12, 2024
25f0e3b
chore: release (#1261)
github-actions[bot] May 12, 2024
bf6575e
chore: main CHANGELOG, tag v36 (#1397)
rakita May 12, 2024
95a8bfe
chore: remove alloydb example as the crate is not published (#1398)
rakita May 12, 2024
c6ea0b2
chore: Remove Host constrain from calc_call_gas (#1409)
rakita May 13, 2024
f75432d
chore: pop_address should use crate scope (#1410)
rakita May 13, 2024
57ba46b
chore(deps): bump anyhow from 1.0.82 to 1.0.83 (#1404)
dependabot[bot] May 13, 2024
0aad4c6
docs: point to gas! in Gas::record_cost (#1413)
DaniPopes May 13, 2024
785cad5
fix(primitives): specify the optimism cfg on spec_to_generic (#1412)
DaniPopes May 13, 2024
ecfaced
feat(EOF): remove TXCREATE (#1415)
rakita May 13, 2024
3604f55
chore(EOF): rename extcall opcode/names (#1416)
rakita May 13, 2024
ec5e8e3
feat(EOF): Add CALLF/JUMPF stack checks (#1417)
rakita May 14, 2024
e58f8c1
feat: add Opcode::modifies_memory back (#1421)
mattsse May 15, 2024
38c9f06
feat: adjust gas-costs for EIP-2935 BLOCKHASH (#1422)
DaniPopes May 16, 2024
e24e5cc
Revert "feat: implement EIP-2935 (#1354)" (#1424)
rakita May 16, 2024
fd378cd
Revert "Revert "feat: implement EIP-2935 (#1354)" (#1424)" (#1426)
rakita May 16, 2024
a20a22c
fix: blockchash for devnet-0 (#1427)
rakita May 16, 2024
171edeb
fix(interpreter): avoid overflow when checking if mem limit reached (…
grandizzy May 17, 2024
def3be7
chore: cleanup host blockhash fn (#1430)
rakita May 17, 2024
956dad2
fix(precompile): BLS G2 MSM (#1428)
shekhirin May 17, 2024
97e290c
fix(precompile): ignore infinity points in G1 MSM (#1432)
Rjected May 17, 2024
716f39f
chore(interpreter): optimisation for BYTE, SHL, SHR and SAR (#1418)
jpgonzalezra May 24, 2024
eac5183
update doc about interpreter action (#1419)
Pana May 24, 2024
1fd0a23
feat: load account should return db error (#1447)
yjhmelody May 24, 2024
77de3dc
chore: add docs for BLS scalar input decoding (#1446)
Rjected May 24, 2024
831e986
chore: cargo update (#1451)
rakita May 24, 2024
9fc6888
chore: skip tests with storage check and return status (#1452)
rakita May 24, 2024
c4b8a0f
feat(revm): revert EIP-2935 BLOCKHASH opcode changes (#1450)
shekhirin May 24, 2024
d30d4d1
chore: Update fork_ref_transact to use alloy instead of ethers (#1454)
BrianBland May 25, 2024
ce5d93d
feat(optimism): Add secp256r1 precompile for Fjord (#1436)
BrianBland May 26, 2024
636cb9c
fix: check canonical Fp elements (#1434)
Rjected May 26, 2024
b44e5af
chore(deps): bump serde from 1.0.202 to 1.0.203 (#1457)
dependabot[bot] May 27, 2024
644481f
fix(Interpreter): wrong block number used (#1458)
rakita May 27, 2024
709e5b5
remove 'checked' bytecode bench causing benchmarks to crash due to na…
vandenbogart May 28, 2024
4529825
feat(optimism): Implement new L1 cost function for Fjord (#1420)
BrianBland May 28, 2024
33f0402
chore(primitives): rename State/Storage to EvmState/EvmStorage (#1459)
rakita May 28, 2024
9368ba8
chore: add test for map_fp_to_g1 precompile (#1465)
rakita May 29, 2024
dcc6b91
fix(EOF): returncontract immediate is one byte (#1468)
rakita May 31, 2024
7a85b72
feat(EOF): Add EOF to inspector handle register (#1469)
rakita May 31, 2024
e4c4d3a
fix(stack): pop with five items was not correct (#1472)
rakita May 31, 2024
e142fd0
fix(eof): EOFCREATE spend gas and apply 63/64 rule (#1471)
rakita May 31, 2024
ae204d2
chore(interpreter): use max gas limit in `impl Default for Interprete…
DaniPopes Jun 1, 2024
9117570
feat: implement precompile contract for opBNB (#6)
j75689 May 21, 2024
5e6116e
feat: add opbnb Haber fork spec id
j75689 Jun 3, 2024
66b51f9
chore: fix code conflicts
j75689 Jun 3, 2024
14eeb31
chore: fix fmt
j75689 Jun 3, 2024
46762bd
chore: fix clippy
j75689 Jun 3, 2024
1781e5f
chore: fix cargo check
j75689 Jun 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ updates:
- package-ecosystem: cargo
directory: "/"
schedule:
interval: "daily"
interval: "weekly"
2 changes: 1 addition & 1 deletion .github/workflows/cachegrind.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Install Valgrind
run: |
Expand Down
2 changes: 2 additions & 0 deletions .github/workflows/ethereum-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,5 @@ jobs:
ethtests/LegacyTests/Constantinople/GeneralStateTests/ \
ethtests/EIPTests/StateTests/stEIP1153-transientStorage/ \
ethtests/EIPTests/StateTests/stEIP4844-blobtransactions/ \
ethtests/EIPTests/StateTests/stEIP2537/ \

17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,22 @@
Because this is workspace with multi libraries, tags will be simplified, and with this document you can match version of project with git tag.

# v36 tag
date: 12.05.2024

Support for prague EIPs.
* EOF not fully tested but most of implementation is there.
* EIP-2537: BLS12-381 curve operations
* EIP-2935: Serve historical block hashes from state

EOF removed BytecodeLocked, OpCode table got changed, and CallInputs got refactored.

revme: 0.4.0 -> 0.5.0 (⚠️ API breaking changes)
revm: 8.0.0 -> 9.0.0 (⚠️ API breaking changes)
revm-interpreter: 4.0.0 -> 5.0.0 (⚠️ API breaking changes)
revm-primitives: 3.1.1 -> 4.0.0 (⚠️ API breaking changes)
revm-precompile: 6.0.0 -> 7.0.0 (⚠️ API breaking changes)
revm-test: 0.1.0

# v35 tag
date: 02.04.2024

Expand Down
Loading