Compare commits

...

2608 Commits

Author SHA1 Message Date
Brian Picciano
d6324d63e2 chore: release 1.11.3 2026-03-12 12:34:39 +01:00
Brian Picciano
5f3ade1bfe fix(trie): Reset proof v2 calculator on error (#22781)
Co-authored-by: Amp <amp@ampcode.com>
2026-03-12 10:09:18 +00:00
Derek Cofausper
b053f6fafe cherry-pick: fix don't produce both updates and removals for trie nodes (#22507)
Co-Authored-By: Arsenii Kulikov <62447812+klkvr@users.noreply.github.com>
2026-03-12 02:30:25 +00:00
Derek Cofausper
2a58e7a077 cherry-pick: install rayon panic handler (37f5b3a)
Co-Authored-By: Arsenii Kulikov <62447812+klkvr@users.noreply.github.com>
2026-03-12 02:30:17 +00:00
Emma Jamieson-Hoare
793a3d5fb3 fix missing import 2026-03-10 11:44:07 +00:00
Emma Jamieson-Hoare
89ae1af694 chore: upgrade to 1.11.2 2026-03-10 10:48:03 +00:00
Alexey Shekhirin
9c33fb5d45 fix(engine): reset execution cache hash on clear (#22895)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 10:46:09 +00:00
Alexey Shekhirin
bef3d7b4d1 fix lockfile 2026-02-23 18:36:44 +00:00
Emma Jamieson-Hoare
e918c17af9 chore: release 1.11.1
Amp-Thread-ID: https://ampcode.com/threads/T-019c8ba4-fd85-736b-9d2d-e878d350a91b
Co-authored-by: Amp <amp@ampcode.com>
2026-02-23 18:02:14 +00:00
Arsenii Kulikov
fcc170d53c fix: properly reveal trie nodes (#22415) 2026-02-23 17:58:13 +00:00
Arsenii Kulikov
c685842ba2 fix: overlay preparation on tokio (#22492) 2026-02-23 17:57:51 +00:00
Georgios Konstantopoulos
564ffa5868 fix(ci): pass docker tags as separate set entries in bake action (#22151)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 22:10:35 +00:00
Dan Cline
12891dd171 chore: allow invalid storage metadata (#22150) 2026-02-12 22:02:26 +00:00
Emma Jamieson-Hoare
c1015022f5 chore: release reth v1.11.0 (#22148) 2026-02-12 21:39:30 +00:00
Dan Cline
e3fe6326bc chore(storage): rm storage settings, use only one (#22042)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-12 21:17:05 +00:00
Dan Cline
e3d520b24f feat(network): add inbound / outbound scopes for disconnect reasons (#22070) 2026-02-12 20:54:03 +00:00
Dan Cline
9f29939ea1 feat: bundle mdbx_copy as reth db copy subcommand (#22061)
Co-authored-by: Emma Jamieson-Hoare <emmajam@users.noreply.github.com>
2026-02-12 20:39:56 +00:00
Matthias Seitz
10881d1c73 chore: fix book (#22142) 2026-02-12 21:44:53 +01:00
John Letey
408593467b feat(download): optional chain-aware snapshot url (#22119) 2026-02-12 21:42:19 +01:00
Emma Jamieson-Hoare
8caf8cdf11 docs: improve reth.rs/overview page (#22131)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 20:10:34 +00:00
Georgios Konstantopoulos
1e8030ef28 fix(engine): return error on updates channel disconnect in sparse trie task (#22139)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 20:00:36 +00:00
YK
f72c503d6f feat(metrics): use 5M first gas bucket for finer-grained newPayload metrics (#22136)
Co-authored-by: Ubuntu <ubuntu@dev-yk.tail388b2e.ts.net>
2026-02-12 19:03:21 +00:00
Emma Jamieson-Hoare
42890e6e7f fix: improve nightly Docker build failure Slack notification (#22130)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 18:58:55 +00:00
Dan Cline
e30e441ada fix: stage drop prunes account/storage changeset static files (#22062) 2026-02-12 18:34:46 +00:00
Georgios Konstantopoulos
121160d248 refactor(db): use hashed state as canonical state representation (#21115)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-12 18:02:02 +00:00
Georgios Konstantopoulos
7ff78ca082 perf(engine): use transaction count threshold for prewarm skip (#22094)
Co-authored-by: yk <yongkang@tempo.xyz>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Ubuntu <ubuntu@dev-yk.tail388b2e.ts.net>
Co-authored-by: YK <chiayongkang@hotmail.com>
2026-02-12 17:07:52 +00:00
Georgios Konstantopoulos
d7f56d509c chore: add DaniPopes as codeowner for tasks crate (#22128)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 12:08:02 -05:00
Georgios Konstantopoulos
3300e404cf feat(engine): add --engine.disable-sparse-trie-cache-pruning flag (#21967)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: mattsse <19890894+mattsse@users.noreply.github.com>
Co-authored-by: alexey <17802178+shekhirin@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-02-12 16:36:31 +00:00
Georgios Konstantopoulos
77cb99fc78 chore(node): update misleading consensus engine log message (#22124)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Emma Jamieson-Hoare <emmajam@users.noreply.github.com>
2026-02-12 16:14:03 +00:00
Georgios Konstantopoulos
66169c7e7c feat(reth-bench): add progress field to per-block benchmark logs (#22016)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 16:03:32 +00:00
Georgios Konstantopoulos
4f5fafc8f3 fix(net): correct EthMessageID::max for eth70 and later versions (#22076)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 15:53:11 +00:00
Georgios Konstantopoulos
0b8e6c6ed3 feat(net): enforce EIP-868 fork ID for discovered peers (#22013)
Co-authored-by: Emma <emma@tempo.xyz>
Co-authored-by: Matthias Seitz <mattsse@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmail.com>
Co-authored-by: Emma Jamieson-Hoare <emmajam@users.noreply.github.com>
2026-02-12 15:29:37 +00:00
Georgios Konstantopoulos
4a62d38af2 perf(engine): use sequential sig recovery for blocks with small blocks (#22077)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Ubuntu <ubuntu@dev-yk.tail388b2e.ts.net>
Co-authored-by: YK <chiayongkang@hotmail.com>
2026-02-12 15:06:21 +00:00
Georgios Konstantopoulos
dc4f249f09 chore: zero-pad thread indices in thread names (#22113)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 12:45:49 +00:00
Brian Picciano
c915841a45 chore(stateless): Remove reth-stateless crate (#22115) 2026-02-12 11:20:49 +00:00
Georgios Konstantopoulos
217a337d8c chore(engine): remove biased select in engine service loop (#21961)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-12 05:45:45 +00:00
Georgios Konstantopoulos
74d57008b6 chore(engine): downgrade failed response delivery logs to warn (#22055)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 05:44:09 +00:00
Georgios Konstantopoulos
f8767bc678 fix(engine): add await_state_root span to timeout path (#22111)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 05:14:39 +00:00
Georgios Konstantopoulos
81c83bba68 refactor(engine): remove unnecessary turbofish on CachedStateProvider, add new_prewarm (#22107)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 02:48:57 +00:00
Georgios Konstantopoulos
cd8ec58703 refactor(engine): move CachedStateProvider prewarm to const generic (#22106)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 01:30:24 +00:00
DaniPopes
931b17c3fd chore: bump alloy-core deps (#22104) 2026-02-12 01:15:56 +00:00
Emma Jamieson-Hoare
807d328cf0 fix: move alloy-primitives to regular dependency in bin/reth (#22105)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 01:15:12 +00:00
Georgios Konstantopoulos
8a6bbd29fe fix(tracing): return error instead of panicking on log directory creation failure (#22100)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 00:40:39 +00:00
Georgios Konstantopoulos
8bedaaee71 feat(docker): include debug symbols in maxperf images (#22003)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-12 00:34:41 +00:00
Emma Jamieson-Hoare
09cd105671 fix(primitives): move feature-referenced deps from dev-dependencies to optional dependencies (#22103)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 23:50:56 +00:00
Georgios Konstantopoulos
a0b60b7e64 feat(evm): impl ExecutableTxTuple for Either via EitherTxIterator (#22102)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 23:48:17 +00:00
DaniPopes
90e15d096d perf: reduce tracing span noise in prewarm and proof workers (#22101) 2026-02-11 23:32:50 +00:00
Emma Jamieson-Hoare
a161ca294f feat(net): add reason label to backed_off_peers metric (#22009)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 23:00:20 +00:00
Emma Jamieson-Hoare
3a5c41e3da test: add WebSocket subscription integration tests for eth_subscribe (#22065)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 22:56:47 +00:00
Georgios Konstantopoulos
968d3c9534 revert: skip transaction prewarming for small blocks (#22059) (#22097) 2026-02-11 14:38:08 -08:00
DaniPopes
fc6666f6a7 perf: treat hashes as bytes in BranchNodeCompact (#22089) 2026-02-11 22:11:49 +00:00
DaniPopes
ff3a854326 perf: use dedicated trie rayon pool for proof workers (#22051) 2026-02-11 22:10:17 +00:00
DaniPopes
04543ed16b chore: add span and log to runtime build (#22064) 2026-02-11 22:06:14 +00:00
Emma Jamieson-Hoare
ae3f0d4d1a test: expand CLI integration tests (#22086)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 21:43:28 +00:00
Georgios Konstantopoulos
5bccdc4a5d feat(engine): add state root task timeout with sequential fallback (#22004)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 20:45:45 +00:00
Georgios Konstantopoulos
0b7cd60668 perf(engine): skip transaction prewarming for small blocks (#22059)
Co-authored-by: yk <yongkang@tempo.xyz>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 20:37:04 +00:00
YK
aa983b49af perf(engine): add PrewarmMode::Skipped to avoid spawning idle workers (#22066)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Ubuntu <ubuntu@dev-yk.tail388b2e.ts.net>
2026-02-11 19:48:48 +00:00
Georgios Konstantopoulos
2aff617767 feat(cli): split account-history and storage-history stage drops (#22083)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 19:21:55 +00:00
Georgios Konstantopoulos
2c5d00ffb5 feat(engine): add gas bucket label to newPayload metrics (#22067)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 19:00:07 +00:00
Georgios Konstantopoulos
e2a3527414 test: add CLI integration tests for reth binary (#22069)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 17:56:16 +00:00
Georgios Konstantopoulos
e4cb3d3aed chore(cli): log received signals at info level (#22071)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 17:55:37 +00:00
DaniPopes
079b7b9d57 fix: don't drop node (#22063) 2026-02-11 16:43:55 +00:00
Georgios Konstantopoulos
8a25d7d3cf chore: remove ress crates from workspace (#22057)
Co-authored-by: mattsse <matt@paradigm.xyz>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-11 13:39:56 +00:00
Minhyuk Kim
a5ced84098 feat(node/builder): add build_with_ordering_and_spawn_maintenance_task to TxPoolBuilder (#21979) 2026-02-11 12:58:29 +00:00
Emma Jamieson-Hoare
59760a2fe3 feat(net): add direction labels to closed_sessions and pending_session_failures metrics (#22014)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:59:06 +00:00
Matthias Seitz
b9d21f293e refactor: remove TypesAnd1-5 staging types from ProviderFactoryBuilder (#22049)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:57:05 +00:00
Georgios Konstantopoulos
dec1cad318 refactor(trie): merge SparseTrieExt into SparseTrie trait (#22035)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:39:56 +00:00
Georgios Konstantopoulos
165b94c3fa chore(docker): pass RUSTC_WRAPPER to cargo build in Dockerfile.depot (#22048)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:37:43 +00:00
Georgios Konstantopoulos
69e4c06ae7 chore(log): simplify default profiler tracing filter (#22050)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:33:20 +00:00
Georgios Konstantopoulos
1406a984a7 ci: pass --no-fail-fast to all cargo nextest runs (#22046)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 04:21:38 +00:00
Andrey Kolishchak
93d6b9782c fix(node): ethstats conn/last_ping deadlock (#21463) 2026-02-11 03:48:54 +00:00
DaniPopes
68e4ff1f7d feat: global runtime (#21934) 2026-02-11 03:45:09 +00:00
Georgios Konstantopoulos
33467ea6dd fix(reth-bench): increase WS keepalive interval to match persistence timeout (#22039) 2026-02-11 02:45:54 +00:00
Georgios Konstantopoulos
3bf9280b3c refactor(storage): add with_*_opt builder methods to StorageSettings (#21998)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 02:19:33 +00:00
Georgios Konstantopoulos
5c93986e6d feat(reth-bench): accept bare integers as milliseconds for --wait-time (#22038)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-11 01:57:42 +00:00
Georgios Konstantopoulos
779e0eb8bb perf: downgrade on_hashed_state_update and on_prewarm_targets spans to trace (#22044)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 22:45:05 +00:00
Emma Jamieson-Hoare
5c4163c177 feat(exex): make backfill thresholds configurable (#22037)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-02-10 21:30:18 +00:00
Emma Jamieson-Hoare
c5d1f70dd3 fix(txpool): correct swapped args in blob_tx_priority calls (#22030)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 21:17:34 +00:00
YK
a8ec78fc87 perf(engine): implement BAL handler for SparseTrieCacheTask (#21990)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 20:50:16 +00:00
Georgios Konstantopoulos
1ecbb0b9d6 chore: move jemalloc, asm-keccak, min-debug-logs to default features (#22034)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 20:46:59 +00:00
Georgios Konstantopoulos
a40647e651 fix(docker): fix sccache stats in Dockerfile.depot (#22033)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 19:50:30 +00:00
Georgios Konstantopoulos
b25b8c00ee feat(engine): add getPayloadBodiesV2 endpoints for EIP-7928 BAL support (#21774)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 15:10:05 +00:00
John Chase
b20a99e1c9 ci: skip scheduled workflows on forks (#22022) 2026-02-10 14:36:20 +00:00
DaniPopes
9ec0e3cd51 chore: rm random log file (#22023) 2026-02-10 15:43:56 +01:00
Georgios Konstantopoulos
09837bbdb4 chore: remove base.reth.rs public endpoint references (#22019)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 14:18:46 +00:00
Matthias Seitz
198e457a12 feat(rpc): add subscribeFinalizedChainNotifications endpoint (#22011)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-10 15:07:31 +01:00
DaniPopes
c727c61101 feat(trie): remove SerialSparseTrie (#21808)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-02-10 13:50:54 +00:00
Georgios Konstantopoulos
366857559b fix(rocksdb): set max_open_files to prevent fd exhaustion (#22005)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 22:32:48 +00:00
Matthias Seitz
ccd15e8a25 refactor(txpool): rename and document validation methods (#22008)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 22:17:19 +00:00
Georgios Konstantopoulos
67f89fa4b2 feat(engine): prefetch withdrawal addresses in pre-warming (#21966)
Co-authored-by: mattsse <matt@paradigm.xyz>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-09 22:14:41 +00:00
Georgios Konstantopoulos
a87510069d refactor(pool): add IntoIter: Send bounds to avoid unnecessary Vec collect (#22001)
Co-authored-by: klkvr <klkvr@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmail.com>
Co-authored-by: Emma Jamieson-Hoare <emmajam@users.noreply.github.com>
2026-02-09 21:45:56 +00:00
Emma Jamieson-Hoare
b3fe168548 fix(rpc): enforce blockHash constraint in append_matching_block_logs (#22007)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 21:45:53 +00:00
Emma Jamieson-Hoare
8d7583b6fb chore: move Kurtosis failures to the hive slack channel (#21983)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 21:39:04 +00:00
Georgios Konstantopoulos
32466fe223 feat(rpc): propagate TransactionOrigin through send_transaction and batcher (#21969)
Co-authored-by: klkvr <klkvr@users.noreply.github.com>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-09 20:34:23 +00:00
Alexey Shekhirin
f2061991c5 feat(engine): reorg depth commitment metric (#21992) 2026-02-09 20:25:54 +00:00
Dan Cline
a549b4d66d feat(storage): add use_hashed_state storage setting (#21997) 2026-02-09 20:15:13 +00:00
Arsenii Kulikov
cdcea2bd33 perf: better scheduling for storage roots computation (#21987)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-09 18:10:45 +00:00
Matthias Seitz
3898cc5c3d chore(deps): bump alloy 1.6.2 -> 1.6.3 (#21986)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 19:00:13 +01:00
Dan Cline
c558c1d10f fix(stages): skip sender unwind when fully pruned (#21988) 2026-02-09 17:36:20 +00:00
Georgios Konstantopoulos
5f7ecc6187 chore(net): remove OP stack bootnodes (#21984)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-09 15:00:58 +00:00
DaniPopes
15b6e7f6fc ci: use depot for hive and kurtosis image builds, run daily (#21976)
Co-authored-by: Jennifer <jenpaff0@gmail.com>
2026-02-09 14:55:12 +00:00
Georgios Konstantopoulos
503b9b87a6 feat(tracing): add jsonrpsee targets to profiling filter (#21981) 2026-02-09 13:42:37 +00:00
Matthias Seitz
600eab20a5 feat(cli): rename enable-sparse-trie-as-cache to legacy-trie (#21851)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 13:02:14 +00:00
Matthias Seitz
a7eef9c6dc chore(deps): bump alloy from 1.6.1 to 1.6.2 (#21974)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-09 13:52:39 +01:00
Brian Picciano
6aebf8c064 chore(trie): Spans and traces for sparse trie (#21973) 2026-02-09 11:53:40 +00:00
Brian Picciano
655a463c18 fix(trie): Do not reveal disconnected leaves (#21924) 2026-02-09 11:39:40 +00:00
github-actions[bot]
a8b9c9a9dc chore(deps): weekly cargo update (#21955)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-08 10:38:24 +00:00
Georgios Konstantopoulos
7679625fd3 chore(ci): improve wasm and riscv check output (#21956)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-08 02:51:54 +00:00
Georgios Konstantopoulos
7ac0d542b6 refactor(engine): wrap ExecutionCache internals in single Arc (#21950)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-07 19:13:16 +00:00
Huber
e4b2b1edf3 feat(txpool): add missing no_eip7702/set_eip7702 builder methods (#21926) 2026-02-07 19:12:23 +00:00
Matthias Seitz
95ed377135 perf(prewarm): disable balance check for prewarming transactions (#21941)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-07 18:40:41 +00:00
DaniPopes
db01c10a1d chore: add libmdbx to default tracing filter (#21944) 2026-02-07 16:32:15 +00:00
Haardik
b9d7744389 feat: add a public prune_transactions method to the TransactionPool (#21765)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-07 14:14:08 +00:00
Georgios Konstantopoulos
e72e85632b perf(persistence): combine save_blocks and prune into single MDBX commit (#21927)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-02-07 04:33:31 +00:00
Dan Cline
8033b77ad3 chore(persistence): delete ambiguous TODO (#21923) 2026-02-07 00:19:46 +00:00
DaniPopes
1fe5623f78 chore: bump persistence timeout (#21919) 2026-02-06 22:24:26 +00:00
DaniPopes
887421cef2 chore: log mdbx tx manager msg (#21916) 2026-02-06 21:28:14 +00:00
Dan Cline
352430cd84 fix: skip sender recovery stage when senders fully pruned (#21918) 2026-02-06 21:22:40 +00:00
DaniPopes
1177bc94c9 chore: revert back to trace for update_hashes (#21915) 2026-02-06 19:47:13 +00:00
Arsenii Kulikov
9aee291093 fix: add more safety checks to reveals of upper subtrie nodes (#21905) 2026-02-06 19:06:30 +00:00
Georgios Konstantopoulos
28f5a28a9a perf: remove per-tx state iteration and loaded metrics from MeteredStateHook (#21884)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-02-06 18:10:57 +00:00
Arsenii Kulikov
dea070dad2 chore: always compare updates (#21863) 2026-02-06 17:15:10 +00:00
Brian Picciano
9c34ac2c94 feat(trie): Add root_node method to v2 ProofCalculator (#21906) 2026-02-06 16:59:08 +00:00
Dan Cline
08c61535db chore: introduce v2 storage flag and remove edge flag (#21868)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-02-06 16:23:04 +00:00
Alexey Shekhirin
1383c151c9 perf(engine): send proofs directly from prewarming to multiproof task (#21901) 2026-02-06 16:17:15 +00:00
DaniPopes
6b8e40c061 perf: use separate pool for save_blocks (#21764) 2026-02-06 15:36:15 +00:00
Georgios Konstantopoulos
755ea5762b chore: remove windows build and release support (#21902)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-06 15:04:19 +00:00
DaniPopes
6f7486a61e chore: simplify subtrie hashes parallel loop (#21871) 2026-02-06 14:31:03 +00:00
Emma Jamieson-Hoare
25003be018 docs: add site-level meta description for SEO (#21903)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-06 14:30:16 +00:00
Georgios Konstantopoulos
6953971c2f feat(static-file): incremental changeset offset storage (#21596)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-06 13:31:31 +00:00
Georgios Konstantopoulos
3bfd002477 docs: add Signature Verification to sidebar under Running a Node (#21900) 2026-02-06 13:14:11 +00:00
andrewshab
8629c55152 fix(net): correct backed_off_peers metric calculation (#21885) 2026-02-06 13:08:22 +00:00
Georgios Konstantopoulos
a16ee22a56 test(e2e): add eth_simulateV1 test for maxFeePerBlobGas without blob data (#21899)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-06 13:02:32 +00:00
Arsenii Kulikov
913e88306b fix: only exit when both channels are drained (#21877)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-06 11:26:26 +00:00
theo
372802d06d chore: remove op-reth from repository (#21532)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-06 11:18:12 +00:00
Matthias Seitz
c6c6fd5e95 chore: fix cargo deny advisories (#21894)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-06 12:01:52 +01:00
Snezhkko
3050fe7eb1 fix: correct account cache size metrics (#21864)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-06 02:41:22 +00:00
Georgios Konstantopoulos
dbac7e1e4a feat(eth-wire): introduce ProtocolMessage::decode_status for handshake (#21797)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-06 02:20:04 +00:00
DaniPopes
cb999b2a2d chore: improve persistence spans (#21875) 2026-02-06 01:17:00 +00:00
Georgios Konstantopoulos
df8f411f50 chore(reth-bench): use "reth-bench" log target (#21870)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-06 01:07:38 +00:00
DaniPopes
cd816ce211 chore: add warning if 'tracy' not enabled (#21867) 2026-02-05 22:14:20 +00:00
Héctor Masip Ardevol
28406938c4 chore: block recovery cleanup (#21436) 2026-02-05 22:28:50 +01:00
Xzavier
ce4be7dd87 fix: support EIP-1559 params configuration for Optimism dev mode (#21855) 2026-02-05 21:10:32 +00:00
drhgencer
7c7bc2228d fix(ci): use commit SHA instead of branch ref in changelog workflow (#21866) 2026-02-05 21:01:03 +00:00
YK
03abe64a06 fix(prune): correct checkpoint when RocksDB tx lookup deletes nothing (#21842)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-05 20:56:09 +00:00
Arsenii Kulikov
a6a074210c perf: hash state updates in parallel (#21836) 2026-02-05 20:32:07 +00:00
DaniPopes
67e29aa60d chore(engine): remove MIN_WORKER_COUNT (#21829) 2026-02-05 19:06:50 +00:00
Emma Jamieson-Hoare
f113caa26a chore: enable changelog check on PRs (#21750)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-05 17:59:28 +00:00
Emma Jamieson-Hoare
902b76092b chore: integrate dependabot to get dep updates (#21856) 2026-02-05 15:29:19 +00:00
YK
5cfb891b59 perf(engine): single-pass fold for EvmState metrics collection (#21852) 2026-02-05 13:00:08 +00:00
Brian Picciano
a92aca2549 perf(trie): Don't filter proofs in v2 if sparse trie as cache is enabled (#21811) 2026-02-05 11:14:55 +00:00
YK
c9cc118def perf(rocksdb): increase write buffer size to 128 MB (#21696) 2026-02-05 08:07:44 +00:00
YK
99873887e2 fix(provider): off-by-one error in static file range calculation (#21841) 2026-02-05 07:09:59 +00:00
YK
dfc54cf89f fix(prune): reth prune requires being run twice to actually prune (#21785)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-05 03:08:49 +00:00
Matthias Seitz
05ec479398 perf(net): remove unnecessary collect in transaction propagation (#21831)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-05 02:39:25 +01:00
Arsenii Kulikov
a5978c593e perf(trie): process new updates from state/prewarm update directly (#21768) 2026-02-04 23:39:44 +00:00
drhgencer
261ca8b4e3 fix(rpc): use consistent sidecar check in fill_transaction for EIP-7594 support (#21763) 2026-02-04 23:16:43 +00:00
Arsenii Kulikov
608b840001 chore: fix spans (#21830) 2026-02-04 23:10:49 +00:00
Matthias Seitz
97588a07a4 perf(engine): use par_bridge_buffered instead of par_bridge for storage trie updates (#21827)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 22:07:14 +00:00
DaniPopes
9a026ec1cf perf: use num_threads for prewarm concurrency (#21826) 2026-02-04 20:09:04 +00:00
Matthias Seitz
e06b0452e1 refactor(bench): use into_payload_and_sidecar for V4/V5 envelopes (#21823)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 20:04:22 +00:00
Georgios Konstantopoulos
dc3caffe2a chore: use cargo nextest run in CLAUDE.md example (#21825)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 19:25:40 +00:00
Matthias Seitz
79a905f346 refactor(trie): drop sparse trie task fields early via destructuring (#21824)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 19:24:52 +00:00
Elaela Solis
386b774ed5 refactor: use spawn_os_thread for better tokio integration (#21788)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-02-04 19:00:37 +00:00
Georgios Konstantopoulos
20d94027eb feat(trie): add storage_root field to storage trie span (#21502) 2026-02-04 18:53:38 +00:00
Emma Jamieson-Hoare
755879cf5c ci(docker): notify Slack on nightly build failure (#21819)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 18:16:49 +00:00
Georgios Konstantopoulos
063d9ef3f8 fix(storage): add skip(provider) to check_consistency instrument (#21818)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 17:31:26 +00:00
Emma Jamieson-Hoare
d4cb981209 fix: update the hive slack webhook url (#21816) 2026-02-04 17:12:54 +00:00
Georgios Konstantopoulos
12d0b74a16 perf(trie): reuse proof nodes buffer in reveal_nodes (#21648)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-02-04 16:35:03 +00:00
James Prestwich
543c77a374 refactor: spanning and misc improvements to consistency check code (#20961) 2026-02-04 16:26:52 +00:00
cui
c0f23aabf1 perf: switch to unstable sort (#21803) 2026-02-04 16:14:57 +00:00
zerosnacks
74d4b1f2ca chore(deps): bump revm inspectors, handle case where revm-inspectors js-tracer is enabled but reth's js-tracer is not (#21810) 2026-02-04 16:07:45 +00:00
DaniPopes
6680a18bc3 chore: improve some spans (#21781) 2026-02-04 15:27:53 +00:00
DaniPopes
665b2bd844 chore: better default filter for profiling (#21779) 2026-02-04 15:27:03 +00:00
Georgios Konstantopoulos
a97ee61f83 revert: undo last two changes to docker-bake.hcl (#21804)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-02-04 15:26:33 +00:00
DaniPopes
022ea78823 chore: don't format fields in tracy spans (#21773) 2026-02-04 15:26:15 +00:00
DaniPopes
a3f7431d28 chore: name tokio rt threads (#21777) 2026-02-04 15:23:22 +00:00
DaniPopes
1fc3d2c4ae ci: verify docker output (#21807) 2026-02-04 14:58:29 +00:00
Alexey Shekhirin
1340d732ef feat(engine): add wait duration metrics for execution and sparse trie caches (#21800) 2026-02-04 12:54:55 +00:00
Georgios Konstantopoulos
f53f90d714 refactor: use alloy_primitives::map for all HashMap/HashSet types (#21686)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 12:08:39 +00:00
ligt
98313a0bea fix(engine): ensure block in memory before setting canonical head (#21693) 2026-02-04 11:45:40 +00:00
Alexey Shekhirin
819d6b6e02 ci: set RUSTFLAGS in Dockerfile instead of bake (#21790) 2026-02-04 11:40:32 +00:00
Georgios Konstantopoulos
4ae60f3302 feat(reth-bench): support combined wait-time and wait-for-persistence modes (#21771)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-04 11:29:08 +00:00
Brian Picciano
32c08b7ddb fix(trie): Guard against infinite loop in proof_v2 (#21789) 2026-02-04 10:57:36 +00:00
Dan Cline
89be91de0e perf(pruner): do not create an iterator_cf for every address (#21767)
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-02-04 06:48:22 +00:00
Dan Cline
3af5a4a4e2 fix(pruner): implement pruning for rocksdb TransactionHashNumbers (#21782) 2026-02-04 04:11:37 +00:00
Dan Cline
95f6bbe922 chore(pruner): always flush and compact after reth prune command (#21783) 2026-02-04 03:07:55 +00:00
DaniPopes
abab83facd perf: spawn proof workers in a separate thread (#21780) 2026-02-04 01:20:43 +00:00
DaniPopes
9359e21f94 ci: enable debug assertions for statetests (#21775) 2026-02-04 00:53:28 +00:00
Huber
32d5ddfe40 fix(test): clean up test temp directories on drop (#21772) 2026-02-03 22:44:12 +00:00
Dan Cline
d7e740f96c chore(cli): expose static file metrics in cli (#21770) 2026-02-03 22:21:10 +00:00
DaniPopes
87bae74094 chore: decode MDBX error code (#21766) 2026-02-03 20:16:32 +00:00
DaniPopes
648f19fb56 perf: build for target-cpu=x86-64-v3 in docker by default (#21761) 2026-02-03 19:47:59 +00:00
DaniPopes
e6fc5ff54b perf(trie): use TrieMask iterator for efficient bit iteration (#21676) 2026-02-03 19:23:41 +00:00
YK
bc729671d9 perf(rocksdb): batch tx reads in TransactionLookupStage unwind (#21723)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 18:28:04 +00:00
joshieDo
eee27df27c fix: ensure transaction lookup can prune (#19553) 2026-02-03 18:11:13 +00:00
Dan Cline
6d02565c5e chore(prune): increase reth prune DELETE_LIMIT to 20M (#21762) 2026-02-03 17:47:50 +00:00
Dan Cline
e706d76aa9 chore(cli): support ctrl-C in reth prune (#21759) 2026-02-03 17:47:01 +00:00
DaniPopes
b9b7d092f6 perf: bump nybbles (#21725) 2026-02-03 17:15:30 +00:00
DaniPopes
d0fb5f31c2 chore: centralize thread::spawn to share tokio handles (#21754) 2026-02-03 16:58:46 +00:00
DaniPopes
9621b78586 chore: shorten thread names (#21751) 2026-02-03 16:40:35 +00:00
DaniPopes
3722071a7c chore(deps): bump bytes 1.11.1 (#21755) 2026-02-03 16:31:22 +00:00
DaniPopes
6273530501 perf: use alloy_primitives hasher for dashmaps (#21726)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 15:05:44 +00:00
Alexey Shekhirin
ce29101277 chore(static-files): proper segment writer scoped thread names (#21747) 2026-02-03 14:44:03 +00:00
John Chase
b1b95f9825 fix(discv5): add missing rand feature for test compilation (#21749) 2026-02-03 14:37:39 +00:00
YK
7f970e136a refactor(stages): use with_rocksdb_batch_auto_commit in tx_lookup (#21722) 2026-02-03 14:35:07 +00:00
YK
6b7cc00289 refactor(rocksdb): deduplicate first()/last() implementations (#21738)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 14:33:44 +00:00
YK
786140a99d perf(static-file): simplify stage checkpoint lookup to avoid allocs (#21730) 2026-02-03 14:32:43 +00:00
YK
ffcb486388 refactor(rocksdb): deduplicate iterator next() implementations (#21737) 2026-02-03 14:31:05 +00:00
YK
59d68f92c4 perf(static-file): hoist cursor creation outside block loop (#21731) 2026-02-03 14:29:07 +00:00
Matthias Seitz
0e0271a612 chore(deps): bump alloy 1.5.2 -> 1.6.1 (#21746)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-03 14:16:50 +00:00
Minhyuk Kim
df12fee965 feat(txpool): add is_transaction_ready to TransactionPool trait (#21742)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 14:13:52 +00:00
DaniPopes
11a4f65624 chore: misc tree cleanups (#21691)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 13:34:19 +00:00
Matthias Seitz
a782e1a18a chore: disable changelog workflow on PRs (#21748)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 14:12:43 +01:00
DaniPopes
2dc76f9abe chore: match statement order in ExecutionCache::new (#21712)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-03 12:47:15 +00:00
Nicolas SSS
65100971e5 fix(evm): remove unused reth-ethereum-forks (#21695)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 12:33:44 +00:00
Georgios Konstantopoulos
8e21afa9cc feat(trie): add memory_size heuristic for ParallelSparseTrie (#21745)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-02-03 12:29:57 +00:00
DaniPopes
46a9b9ad3d perf: replace RwLock<HashMap/HashSet> with DashMap/DashSet (#21692)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-03 13:31:05 +01:00
Georgios Konstantopoulos
3f77af4f98 feat: add AI-assisted changelog generation (#21743)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Emma Jamieson-Hoare <emmajam@users.noreply.github.com>
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmail.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-02-03 12:19:49 +00:00
Arsenii Kulikov
79cabbf89c perf: optimize SparseTrieCacheTask (#21704) 2026-02-03 11:39:10 +00:00
drhgencer
e04afe6e0e fix(rpc): validate toBlock in trace_filter (#21718) 2026-02-03 11:02:57 +00:00
Arsenii Kulikov
ee224fe20f fix: update sparse trie masks (#21716) 2026-02-03 12:01:58 +01:00
DaniPopes
972f23745e chore: remove clone from in memory cursor (#21719) 2026-02-03 04:04:33 +00:00
Dan Cline
49f60822f7 chore: move TransactionLookup as first option (#21721) 2026-02-03 02:30:13 +00:00
Georgios Konstantopoulos
47ebc79c85 feat(rpc): add EIP-7928 eth_getBalanceWithProof and eth_getAccountWithProof (#21720)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-03 01:12:04 +00:00
Arsenii Kulikov
53f922927a feat: reintroduce --engine.state-root-task-compare-updates (#21717) 2026-02-02 23:48:54 +00:00
Dan Cline
f1f3980d29 fix(cli): actually enable reth-prune rocksdb feature in cli (#21715) 2026-02-02 23:39:04 +00:00
Dan Cline
6946f26d77 fix(cli): delete all static files when PruneModes::Full is configured (#21647) 2026-02-02 17:30:21 +00:00
Arsenii Kulikov
f663d1d110 fix: properly drain pending account updates (#21709) 2026-02-02 17:29:43 +00:00
Huber
f4943abf73 chore(ci): add consts to typos allowlist (#21708) 2026-02-02 17:02:16 +00:00
Matthias Seitz
102a6944ba perf(trie): avoid clearing already-cached sparse trie (#21702)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-02 13:03:07 +00:00
Alexey Shekhirin
1592e51d34 feat(engine): add CLI args for sparse trie pruning configuration (#21703) 2026-02-02 12:52:31 +00:00
Arsenii Kulikov
4280ccf470 fix: short-circuit in reveal_account_v2_proof_nodes on empty nodes (#21701) 2026-02-02 12:18:45 +00:00
Alexey Shekhirin
05ab98107c fix(reth-bench): gracefully stop when transaction source exhausted (#21700) 2026-02-02 11:10:58 +00:00
Brian Picciano
49128ed28f fix(trie): Return full_key from update_leaves unless it is not a child of the missing path (#21699)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-02-02 11:07:56 +00:00
Huber
f74e594292 perf(trie): dispatch V2 storage proofs in lexicographical order (#21684) 2026-02-02 09:31:47 +00:00
Georgios Konstantopoulos
e7d4a05e36 perf(trie): fix allocation hot paths with capacity hints and buffer reuse (#21466)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-02-02 06:58:45 +00:00
Georgios Konstantopoulos
9382a4c713 fix(prune): use batched pruning loop with edge feature to prevent OOM (#21649)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-02 02:38:00 +00:00
DaniPopes
28409558f9 perf: add ParallelBridgeBuffered trait to replace par_bridge (#21674) 2026-02-02 00:58:43 +00:00
DaniPopes
5ef32726db refactor: add with_* compressor utility methods (#21680) 2026-02-01 20:43:25 +00:00
Snezhkko
60c3bef1e8 fix(zstd): use transaction dictionary for tx compressor (#21382) 2026-02-01 20:12:51 +00:00
iPLAY888
af96eeae56 refactor(provider): deduplicate segment-to-stage mapping in static file manager (#21670) 2026-02-01 20:09:32 +00:00
Georgios Konstantopoulos
5528aae8f6 fix(engine): wait for persistence service thread before RocksDB drop (#21640)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-01 19:55:45 +00:00
Georgios Konstantopoulos
83364aa2d6 fix(prune): migrate invalid receipts prune config to Distance(64) (#21677)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 19:44:14 +00:00
DaniPopes
749a742bcf chore(deps): update metrics-derive 0.1.1 (#21673) 2026-02-01 19:38:38 +00:00
ethfanWilliam
2970624413 chore: avoid eager evaluation in base_fee_params_at_timestamp (#21536) 2026-02-01 19:04:42 +00:00
Matthias Seitz
7e18aa4be8 fix(rpc): change debug_set_head number parameter to U64 (#21678)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 18:59:22 +00:00
YK
9f8c22e2c3 feat(prune): prune rocksdb account and storage history indices (#21331)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-02-01 18:42:17 +00:00
Georgios Konstantopoulos
3d699ac9c6 perf(trie): reuse account RLP buffer in SparseTrieCacheTask (#21644)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 15:20:11 +00:00
かりんとう
9be31d504d fix(trie): silence unused param warnings in sparse-parallel no_std build (#21657) 2026-02-01 13:05:39 +00:00
github-actions[bot]
34cc65cfe6 chore(deps): weekly cargo update (#21660)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-02-01 13:03:13 +00:00
Matthias Seitz
6e161f0fc9 perf: batch finalized/safe block commits with SaveBlocks (#21663)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 13:02:59 +00:00
iPLAY888
63a3e18404 fix: remove unnecessary alloc (#21665) 2026-02-01 13:01:11 +00:00
Matthias Seitz
7d10e791b2 refactor(engine): improve payload processor tx iterator (#21658)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 12:44:10 +00:00
Georgios Konstantopoulos
a9b2c1d454 feat(rpc): make blob sidecar upcasting opt-in (#21624)
Co-authored-by: Amp <amp@ampcode.com>
2026-02-01 12:25:46 +00:00
CPerezz
9127563914 fix: cleanup entire temp directory when using testing_node (#18399)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-31 16:46:11 +00:00
Georgios Konstantopoulos
a500fb22ba fix(metrics): rename save_blocks_block_count to save_blocks_batch_size (#21654)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-31 12:59:09 +00:00
Matthias Seitz
e869cd4670 perf(engine): skip DB lookup for new blocks in insert_block_or_payload (#21650)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-31 03:35:20 +00:00
DaniPopes
de69654b73 chore(deps): breaking bumps (#21584)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-31 00:44:09 +00:00
DaniPopes
8d28c4c8f2 chore(trie): add set_* methods alongside with_* builders (#21639)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 22:42:57 +00:00
Georgios Konstantopoulos
bfe778ab51 perf(trie): use Entry API to avoid empty Vec allocation in extend (#21645)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 22:29:21 +00:00
DaniPopes
e523a76fb8 chore(trie): clear RevealableSparseTrie in place (#21638)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 22:27:43 +00:00
DaniPopes
cd12ae58f2 docs(CLAUDE.md): tweaks (#21646) 2026-01-30 22:26:34 +00:00
Georgios Konstantopoulos
370a548f34 refactor(db): derive Clone for DatabaseEnv (#21641)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 21:54:50 +00:00
pepes
781128eece chore(db-api): simplify DatabaseMetrics impl for Arc (#21635) 2026-01-30 18:43:19 +00:00
Julian Meyer
435d915422 chore: make engine tree crate items public (#21487) 2026-01-30 18:40:30 +00:00
Georgios Konstantopoulos
3ec065295e refactor(trie): replace SmallVec with Vec in sparse trie buffers (#21637)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-01-30 18:34:15 +00:00
Matthias Seitz
e1bc6d0f08 feat(engine): preserve sparse trie across payload validations (#21534)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-01-30 18:34:13 +00:00
Georgios Konstantopoulos
29072639d6 perf(trie): remove shrink_to_fit calls from SparseSubtrieBuffers::clear (#21630)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-01-30 18:02:43 +00:00
Brian Picciano
f90b5c8a7f fix(trie): cleanup modified branch masks in update_leaf on reveal failure (#21629) 2026-01-30 16:06:28 +00:00
Chase Wright
d4fa6806b7 fix(ethstats): WSS Handling (#21595)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 15:15:41 +00:00
Matthias Seitz
63742ab4ae fix(debug-client): fix off-by-one in block hash buffer lookup (#21628)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 15:15:26 +00:00
Matthias Seitz
08122bc1ea perf: use biased select and prioritize engine events (#21556)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 14:31:27 +00:00
Georgios Konstantopoulos
83afaf1aa7 feat(grafana): add gauge panels for save_blocks _last metrics (#21604)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2026-01-30 14:08:32 +00:00
Alexey Shekhirin
d72300c685 fix(net): include disconnect reason in P2PStreamError display (#21626) 2026-01-30 14:04:58 +00:00
Matthias Seitz
faf64c712e feat(cli): add reth db state command for historical contract storage (#21570)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 14:03:19 +00:00
theo
b3d532ce9d chore(op-reth): move op-dependent examples into crates/optimism/examples/ (#21495)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-30 14:02:12 +00:00
Georgios Konstantopoulos
9d064be77e feat(rpc): add EIP-7934 block size validation to testing_buildBlockV1 (#21623)
Co-authored-by: Alexey <alexey@tempo.xyz>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 13:57:51 +00:00
Matus Kysel
e3c256340e feat(txpool): add EIP-7594 blob sidecar toggle (#21622) 2026-01-30 12:27:06 +00:00
ligt
d0df549ddb chore(engine-tree): simplify impl trait bound (#21621) 2026-01-30 11:55:23 +00:00
Arsenii Kulikov
7ccb43ea13 perf: cache fetched proof targets in SparseTrieCacheTask (#21612)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 11:44:36 +00:00
Arsenii Kulikov
20f48b1e50 fix(proof_v2): make sure that all storage proofs are delivered (#21611)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-30 11:21:17 +00:00
Dan Cline
0470c65e6c feat(cli): add --metrics param to reth prune (#21613)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 03:24:25 +00:00
Georgios Konstantopoulos
9de1f0905e feat(prune): add static file pruning support for sender recovery (#21598) 2026-01-30 01:09:38 +00:00
joshieDo
327a1a6681 test(stages): add pipeline forward sync and unwind test (#21602)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-30 00:49:28 +00:00
Dan Cline
b8f27b73ad chore: fix unused parallel trie const without std (#21610) 2026-01-29 23:05:32 +00:00
かりんとう
7ec5ff6483 refactor(reth-bench): dedupe derive_ws_rpc_url helper (#21585) 2026-01-29 22:50:22 +00:00
Georgios Konstantopoulos
f98af4ad9f feat(rpc): default --testing.skip-invalid-transactions to true (#21603)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-29 22:03:19 +00:00
joshieDo
d8e912f66b fix(provider): prune account changesets from static files in remove_state_above (#21605) 2026-01-29 21:57:28 +00:00
Georgios Konstantopoulos
0572c4e0ca feat(metrics): add _last gauge metrics for save_blocks timings (#21597) 2026-01-29 21:34:27 +00:00
joshieDo
67a7a1c2d1 chore: revert "test(stages): add pipeline forward sync and unwind test" (#21601) 2026-01-29 22:36:47 +01:00
joshieDo
2b1833576b test(stages): add pipeline forward sync and unwind test (#21553)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-29 21:13:07 +00:00
Dan Cline
5592c362d4 feat(grafana): add reth-persistence dashboard (#21594) 2026-01-29 21:05:07 +00:00
Georgios Konstantopoulos
6beec25f43 fix(grafana): order MerkleChangeSets checkpoint after MerkleExecute (#21581) 2026-01-29 20:40:26 +00:00
Arsenii Kulikov
19bf580f93 feat: sparse trie as cache (#21583)
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-29 19:11:48 +00:00
joshieDo
796ba6d5dc chore(trie): remove unused direct MDBX changeset readers (#21580) 2026-01-29 17:50:19 +00:00
Georgios Konstantopoulos
5307dfc22b chore: update RPC URLs from ithaca.xyz to reth.rs (#21574)
Co-authored-by: Tim Beiko <tim@ethereum.org>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-29 17:06:13 +00:00
Brian Picciano
f380ed1581 fix(engine): Try to always compute storage root in V2 proofs when account proof is present, fallback if not (#21579) 2026-01-29 16:58:59 +00:00
DaniPopes
f7313c755c chore(deps): bump codspeed (#21578) 2026-01-29 16:50:09 +00:00
Georgios Konstantopoulos
3bc2191590 chore: remove cargo-chef from Dockerfile.depot (#21577) 2026-01-29 16:28:44 +00:00
Brian Picciano
320f2a6015 fix(trie): PST: Fix update_leaf atomicity, remove update_leaves revealed tracking, fix callback calling (#21573) 2026-01-29 16:18:42 +00:00
Georgios Konstantopoulos
70bfdafd26 fix(provider): check executed block before returning historical state (#21571)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-29 13:54:50 +00:00
YK
e9fe0283a9 fix(provider): use storage-aware methods in unwind_trie_state_from (#21561) 2026-01-29 11:54:12 +00:00
Alexey Shekhirin
92b8857625 fix(reth-bench): stop fetcher when reaching chain tip (#21568) 2026-01-29 11:34:15 +00:00
YK
2d71243cf6 feat(trie): add update_leaves method to SparseTrieExt (#21525)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-01-29 11:25:08 +00:00
かりんとう
732bf712aa refactor(reth-bench): dedupe read_input and load_jwt_secret helpers (#21555) 2026-01-29 10:17:51 +00:00
Dan Cline
0901c2ca8b fix(reth-bench): retry testing_buildBlockV1 when payload gas < target (#21547)
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-01-29 10:08:54 +00:00
Matthias Seitz
2352158b3d fix(reth-bench): return error instead of panic on invalid payload (#21557)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-29 00:35:19 +00:00
Georgios Konstantopoulos
1a98605ce6 chore(net): downgrade fork id mismatch log to trace (#21554)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-28 22:41:42 +00:00
DaniPopes
8d37f76d23 chore: move scripts from .github/assets to .github/scripts (#21539)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-28 22:14:37 +00:00
Dan Cline
2d9cf4c989 chore: fix unused warns in sparse trie (#21546) 2026-01-28 21:48:59 +00:00
DaniPopes
f5ca71d2fb chore(deps): cargo update (#21538)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-28 19:49:15 +00:00
Alexey Shekhirin
8d58c98034 feat(reth-bench): add reporting and wait options to replay-payloads (#21537) 2026-01-28 19:13:19 +00:00
Matthias Seitz
50e0591540 perf(tree): optimistically prepare canonical overlay (#21475)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-28 18:16:04 +00:00
joshieDo
013dfdf8c8 fix(prune): add minimum 64 block retention for receipts and bodies (#21520) 2026-01-28 18:10:07 +00:00
joshieDo
effa0ab4c7 fix(provider): read changesets from static files during unwind (#21528)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-28 15:52:08 +00:00
SS
543a85e9f3 fix: simplify UTF-8 decoding in StreamCodec by using Result::ok (#21524) 2026-01-28 15:12:55 +00:00
theo
88eb0beeb2 chore(op-reth): remove op-reth dependencies from core reth library crates (#21492) 2026-01-28 14:53:17 +00:00
YK
747c0169a7 feat(trie): add prune method to SparseTrieInterface (#21427)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-01-28 13:55:21 +00:00
Georgios Konstantopoulos
497985ca86 fix(prune): improve pruner log readability (#21522)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-28 13:41:55 +00:00
bobtajson
48a999a81b refactor: using iterator over references (#21506) 2026-01-28 12:46:19 +00:00
ligt
d53858b3e2 chore(engine): simplify EngineApiTreeHandler type inference (#21503) 2026-01-28 12:43:30 +00:00
David Klank
6aa91b0020 perf(trie-db): preallocate vectors in changeset computation (#21465) 2026-01-28 12:39:08 +00:00
katikatidimon
e0a0a0d5fb refactor: remove redundant clone() in CursorSubNode::new (#21493) 2026-01-28 12:33:10 +00:00
joshieDo
231292b58e fix(provider): cap static file changeset iteration to highest available block (#21510) 2026-01-28 11:03:49 +00:00
Brian Picciano
42765890b5 feat(trie): Enable proofs v2 by default (#21434) 2026-01-28 10:54:50 +00:00
Matus Kysel
8417ddc0e8 fix(engine): guard receipt streaming against duplicate indices (#21512) 2026-01-28 10:48:11 +00:00
かりんとう
1ca62d0696 fix(rpc): populate block fields in mev_simBundle logs (#21491) 2026-01-27 22:59:58 +00:00
katikatidimon
928bf37297 perf: avoid cloning prefix sets in TrieWitness::compute (#21352) 2026-01-27 22:26:31 +00:00
Matthias Seitz
aa5b12af44 refactor(db): make Tx::inner field private with accessor (#21490)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-27 22:06:41 +00:00
katikatidimon
f12acf17e6 chore(txpool): remove redundant locals clone in config (#21477) 2026-01-27 21:37:44 +00:00
joshieDo
2e05cec84b fix: ensure edge enables history in rocksdb (#21478) 2026-01-27 18:43:25 +00:00
Matthias Seitz
9eaa5a6303 chore: remove Sync bound from cursor associated types (#21486)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-27 18:31:40 +00:00
Georgios Konstantopoulos
ba8c8354e5 fix(reth-bench): retry up to 5 times on failed transaction fetches in big blocks generate (#21483) 2026-01-27 16:10:53 +00:00
Arsenii Kulikov
af3601c65d feat: more metrics (#21481) 2026-01-27 15:17:49 +00:00
Brian Picciano
bff11ab663 refactor(trie): reuse shared StorageProofCalculator for V2 sync storage roots and add deferred encoder metrics (#21424)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-27 14:54:56 +00:00
joshieDo
08cd1cbda6 fix(static-files): apply minimal blocks per file to all segments (#21479)
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-27 14:01:32 +00:00
Georgios Konstantopoulos
e4e05e9ef9 refactor: align RocksDbArgs defaults with StorageSettings::base() (#21472)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-01-27 13:13:25 +00:00
joshieDo
c8245594bc fix(db): write genesis history to correct storage backend (#21471)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-27 11:59:06 +00:00
Dan Cline
ed40ce8c4c chore: simplify account_changesets_range (#21457) 2026-01-27 11:44:11 +00:00
YK
1e734936d8 fix(provider): skip storage changeset writes when routed to static files (#21468) 2026-01-27 10:34:44 +00:00
YK
11d9f38077 test(e2e): comprehensive RocksDB storage E2E tests (#21423) 2026-01-27 07:08:57 +00:00
Matthias Seitz
226ce14ca1 perf(trie): use is_zero() check to avoid copy in is_storage_empty (#21459)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-27 00:42:26 +00:00
Dan Cline
a6e1dea2d7 chore: add logging for internal fcu errors (#21456) 2026-01-26 23:24:48 +00:00
Georgios Konstantopoulos
71ed68e944 perf(db): flatten HashedPostState before persisting (#21422) 2026-01-26 22:49:01 +00:00
DaniPopes
adecbd7814 chore: log docker sccache stats (#21455) 2026-01-26 22:30:20 +00:00
Matthias Seitz
26a37f3c00 chore: use Default::default() for TransactionInfo for forward compatibility (#21454)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 22:15:41 +00:00
DaniPopes
0bfa7fa5fa ci: typorino (#21453) 2026-01-26 21:39:35 +00:00
Georgios Konstantopoulos
18bec10a0b perf(docker): use shared cache mounts for parallel builds (#21451)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 21:00:45 +00:00
DaniPopes
1e33821e19 ci: use depot cache in Dockerfile.depot (#21450) 2026-01-26 20:37:33 +00:00
ethfanWilliam
da92733be8 fix: use unwrap_or_else for lazy evaluation of BlobParams::cancun (#21442) 2026-01-26 20:19:28 +00:00
DaniPopes
c41c8e6cae chore: reduce number of nightly builds (#21446) 2026-01-26 20:06:09 +00:00
DaniPopes
1ccc174e7b chore: remove unused docker from makefile (#21445) 2026-01-26 19:53:55 +00:00
ethfanWilliam
f1459fcf91 fix(stages): retain RocksDB TempDir in TestStageDB to prevent premature deletion (#21444) 2026-01-26 19:43:11 +00:00
Dan Cline
94235d64a8 fix(pruner): prune account and storage changeset static files (#21346) 2026-01-26 19:28:18 +00:00
Dan Cline
7fe60017cf chore(metrics): add a gas_last metric similar to new_payload_last (#21437) 2026-01-26 17:54:20 +00:00
Brian Picciano
f9ec2fafa0 refactor(trie): always use ParallelSparseTrie, deprecate config flags (#21435) 2026-01-26 17:02:06 +00:00
Arsenii Kulikov
768a687189 perf: use shared channel for prewarm workers (#21429) 2026-01-26 15:49:44 +00:00
Rez
b87cde5479 feat: configurable EVM execution limits (#21088)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2026-01-26 15:27:09 +00:00
figtracer
ab685579f0 feat(rpc): add transaction hash caching to EthStateCache (#21180)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 14:37:53 +00:00
Matthias Seitz
c7faafd183 fix(rpc): add block timestamp validation in eth_simulateV1 (#21397)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 14:12:28 +00:00
Matthias Seitz
935a2cc056 fix(rpc): use correct error codes for eth_simulateV1 reverts and halts (#21412)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 14:06:38 +00:00
Matthias Seitz
507cf58db0 fix(rpc): add block number validation in eth_simulateV1 (#21396)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 13:47:20 +00:00
Matthias Seitz
6cfd369d17 fix(rpc): populate block_hash in eth_simulateV1 logs (#21413)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:41:19 +00:00
Matthias Seitz
934f462d01 feat(cli): make stopping on invalid block the default for reth import (#21403)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:41:06 +00:00
Matthias Seitz
d4f28b02ff feat(rpc): implement movePrecompileToAddress for eth_simulateV1 (#21414)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:40:12 +00:00
Matthias Seitz
963bfeeeed fix(rpc): set prevrandao to zero for eth_simulateV1 simulated blocks (#21399)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:39:37 +00:00
Matthias Seitz
adbe6d9da0 fix(rpc): cap simulate_v1 default gas limit to RPC gas cap (#21402)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:39:15 +00:00
Matthias Seitz
6d19c0ed8e fix(engine): only warn for critical capability mismatches (#21398)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:36:49 +00:00
Andrey Kolishchak
4baf2baec4 fix(net): FetchFullBlockRangeFuture can get stuck forever after partial body fetch + error (#21411)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-26 12:34:07 +00:00
emmmm
0b5f79e8c9 docs(rpc): add reth_subscribePersistedBlock method (#21420) 2026-01-26 10:48:35 +00:00
Georgios Konstantopoulos
afe164baca test: add E2E test for RocksDB provider functionality (#21419)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-01-26 10:24:10 +00:00
Hwangjae Lee
31fdbe914c docs(tracing): fix incorrect example description in lib.rs (#21417)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-26 10:19:36 +00:00
Ahsen Kamal
6870747246 feat(payload): add fn for system transaction check (#21407)
Signed-off-by: Ahsen Kamal <itsahsenkamal@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-25 14:47:22 +00:00
Fallengirl
0ad8c772e1 fix(era-utils): export correct era1 CompressedBody payload (#21409) 2026-01-25 14:36:24 +00:00
github-actions[bot]
5440d0d89a chore(deps): weekly cargo update (#21406)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-01-25 10:39:48 +00:00
Matthias Seitz
0eea4d76e9 chore: remove unused imports in storage-api (#21400)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-24 15:49:21 +00:00
YK
8a1702cd74 fix(rocksdb): filter history writes to only changed accounts/storage (#21339)
Co-authored-by: Tempo AI <ai@tempo.xyz>
2026-01-24 13:07:16 +00:00
cui
7feb56d5f6 feat: prealloc vec (#21391) 2026-01-24 11:30:34 +00:00
cui
0aa922c4e8 feat: change from stable sort to unstable sort (#21387) 2026-01-24 11:21:47 +00:00
Matthias Seitz
ccff9a08f0 chore: fix clippy unnecessary_sort_by lint (#21385) 2026-01-24 03:13:49 +00:00
Matthias Seitz
eb788cc7cf fix(docker): pass vergen git vars as build args (#21384)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-24 03:21:43 +01:00
Dan Cline
fb05a0654f fix(engine): use LazyTrieData::deferred for chain notification (#21383)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-23 22:32:21 +00:00
ethfanWilliam
d5a36dcc00 perf(trie): parallelize merge_ancestors_into_overlay extend ops (#21379) 2026-01-23 22:26:07 +00:00
iPLAY888
ffbef9e3cd chore: removed needless collect (#21381) 2026-01-23 21:59:19 +00:00
Dan Cline
820c112e8e feat(engine): add metric for forkchoiceUpdated response -> newPayload (#21380) 2026-01-23 21:57:15 +00:00
Alexey Shekhirin
9285f7eafc ci: use depot for docker (#20380)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-01-23 21:14:55 +00:00
joshieDo
9a4c6d8a11 feat(rocksdb): static file based healing for TransactionHashNumbers (#21343) 2026-01-23 20:11:47 +00:00
Dan Cline
963c26550a fix(trie): only clone required keys in on_prefetch_proofs (#21378) 2026-01-23 21:13:01 +01:00
joshieDo
3648483512 feat(rocksdb): add WAL size tracking metric and Grafana dashboard (#21295)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-23 19:59:10 +00:00
joshieDo
ab418642b4 fix(stages): commit RocksDB batches before flush and configure immediate WAL cleanup (#21374)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2026-01-23 19:28:52 +00:00
joshieDo
decb56fae1 feat(rocksdb): changeset-based crash recovery healing for history indices (#21341) 2026-01-23 19:28:10 +00:00
Matthias Seitz
ee1ec8f9f0 perf(trie): parallelize COW extend operations with rayon (#21375) 2026-01-23 19:31:04 +01:00
Georgios Konstantopoulos
d7bf87da52 feat(engine): add metric for state root task fallback success (#21371) 2026-01-23 18:21:44 +00:00
Georgios Konstantopoulos
dd0c6d279f revert: perf(trie): parallelize merge_ancestors_into_overlay (#21202) (#21370) 2026-01-23 19:09:19 +01:00
Alexey Shekhirin
c137ed836f perf(engine): fixed-cache for execution cache (#21128)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: Tempo AI <ai@tempo.xyz>
2026-01-23 17:57:42 +00:00
Dan Cline
a543752f7d chore(reth-bench): make from-block a required flag (#21372) 2026-01-23 17:52:33 +00:00
joshieDo
b814893221 feat(stages): flush RocksDB at end of history and tx_lookup stages (#21367) 2026-01-23 17:02:53 +00:00
Georgios Konstantopoulos
fcef82261d fix(libmdbx): handle errors gracefully in TransactionInner::drop (#21368) 2026-01-23 16:37:15 +00:00
iPLAY888
d3846d98a9 refactor: refactor get_idle_peer_for to use Iterator::find (#21321) 2026-01-23 15:56:09 +00:00
Alexey Shekhirin
1f536cce65 test(e2e): selfdestruct pre- and post-Dencun (#21363) 2026-01-23 15:41:08 +00:00
Matthias Seitz
0ddaf1b26c feat(engine): add BAL metrics type for EIP-7928 (#21356) 2026-01-23 15:17:33 +00:00
Gigi
830cd5e355 chore: update snmalloc upstream repository link (#21360) 2026-01-23 14:57:46 +00:00
Georgios Konstantopoulos
f77d7d5983 feat(reth-bench): support human-readable gas format in generate-big-block (#21361) 2026-01-23 14:24:34 +00:00
Georgios Konstantopoulos
a2237c534e feat(p2p): add reth p2p enode command (#21357)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-23 13:23:44 +00:00
Arsenii Kulikov
1bd8fab887 feat(txpool): add Block associated type to TransactionValidator trait (#21359) 2026-01-23 13:16:05 +00:00
Matthias Seitz
22a68756c7 fix(tree): evict changeset cache even when finalized block is unset (#21354) 2026-01-23 11:26:57 +00:00
Hwangjae Lee
d99c0ffd62 chore(etc): update ethereum-metrics-exporter GitHub URL (#21348)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-23 10:59:53 +00:00
Georgios Konstantopoulos
ad476e2b5c chore: add yongkangc as codeowner for crates/storage/provider (#21349) 2026-01-23 07:18:18 +00:00
Matthias Seitz
6df249c1f1 feat(engine): stub Amsterdam engine API endpoints (newPayloadV5, getPayloadV6, BALs) (#21344)
Co-authored-by: Ishika Choudhury <117741714+Rimeeeeee@users.noreply.github.com>
Co-authored-by: Soubhik Singha Mahapatra <160333583+Soubhik-10@users.noreply.github.com>
2026-01-22 20:48:11 +00:00
Arsenii Kulikov
5a076df09a feat: allow setting custom debug block provider (#21345)
Co-authored-by: Karl <yh975593284@gmail.com>
2026-01-22 20:40:26 +00:00
YK
f07629eac0 perf: avoid creating RocksDB transactions for legacy MDBX-only nodes (#21325) 2026-01-22 20:30:52 +00:00
Dan Cline
f643e93c35 feat(reth-bench): send-invalid-payload command (#21335) 2026-01-22 19:42:19 +00:00
Matthias Seitz
653362a436 ci: align check-alloy workflow with main clippy job (#21329) 2026-01-22 20:48:53 +01:00
Seola Oh
a02508600c chore(txpool): explicitly deref RwLockReadGuard in PartialEq impl (#21336) 2026-01-22 19:35:00 +00:00
Georgios Konstantopoulos
937a7f226d fix(rpc): use Default for SimulateError to prepare for alloy breaking change (#21319)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-22 19:14:58 +00:00
joshieDo
a0df561117 fix(rocksdb): periodic batch commits in stages to prevent OOM (#21334)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-22 19:04:56 +00:00
Arsenii Kulikov
be5a4ac7a6 feat: bump alloy and alloy-evm (#21337) 2026-01-22 18:43:24 +00:00
Georgios Konstantopoulos
0c854b6f14 fix(net): limit pending pool imports for broadcast transactions (#21254)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2026-01-22 18:32:07 +00:00
Georgios Konstantopoulos
28a31cd579 fix: use unwrap_or_else for lazy evaluation of StorageSettings::legacy (#21332) 2026-01-22 17:02:15 +00:00
Brian Picciano
da12451c9c chore(trie): Cleanup unused trie changesets code (#21323) 2026-01-22 16:57:46 +00:00
Georgios Konstantopoulos
247ce3c4e9 feat(storage): warn storage settings diff at startup (#21320)
Co-authored-by: YK <chiayongkang@hotmail.com>
2026-01-22 16:40:10 +00:00
iPLAY888
bf43ebaa29 fix(cli): handle invalid hex in db list --search (#21315) 2026-01-22 16:18:36 +00:00
Matthias Seitz
a01ecce73f test: add e2e tests for invalid payload handling via Engine API (#21288) 2026-01-22 15:55:36 +00:00
Arsenii Kulikov
3e55c6ca6e fix: always check upper subtrie for keys (#21276)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-22 15:47:50 +00:00
Brian Picciano
2ac7d719f3 feat(trie): add V2 account proof computation and refactor proof types (reapply) (#21316)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-22 15:46:01 +00:00
andrewshab
965705ff88 fix: remove collect (#21318)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-22 15:24:51 +00:00
Dan Cline
ebe2ca1366 feat: add StaticFileSegment::StorageChangeSets (#20896) 2026-01-22 15:03:47 +00:00
Matthias Seitz
cc242f83fd feat(rpc): respect history expiry in eth_getLogs per EIP-4444 (#21304) 2026-01-22 14:55:50 +00:00
joshieDo
12cf3d685b fix(provider): add CommitOrder for RocksDB/MDBX unwind atomicity (#21311) 2026-01-22 14:54:47 +00:00
Matthias Seitz
ad5b533ad1 chore: rm patches (#21317) 2026-01-22 15:48:53 +01:00
joshieDo
118f15f345 feat(rocksdb): disable bloom filter for default column family (#21312) 2026-01-22 13:47:34 +00:00
joshieDo
97481f69e5 perf(rocksdb): disable compression and bloom filters for TransactionHashNumbers CF (#21310) 2026-01-22 13:31:16 +00:00
Georgios Konstantopoulos
f692ac7d1e perf(prune): use bulk table clear for PruneMode::Full (#21302) 2026-01-22 13:01:17 +00:00
andrewshab
4b1c341ced fix: remove redundant clone (#21300) 2026-01-22 12:43:19 +00:00
Georgios Konstantopoulos
865f8f8951 perf(prune): sort tx hashes for efficient TransactionLookup pruning (#21297) 2026-01-22 12:10:07 +00:00
joshieDo
492fc20fd1 fix(cli): clear rocksdb tables in drop-stage command (#21299)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-22 12:09:36 +00:00
Sergei Shulepov
ad9886abb8 fix(mdbx): mark reserve as unsafe (#21263) 2026-01-22 12:03:12 +00:00
Matthias Seitz
5c3e45cd6b fix: handle incomplete receipts gracefully in receipt root task (#21285) 2026-01-22 10:52:56 +00:00
Emma Jamieson-Hoare
68fdba32d2 chore(release): prep v1.10.2 release (#21287)
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmai.com>
2026-01-22 10:50:10 +00:00
Matthias Seitz
8f6a0a2992 ci: add on-demand workflow to check alloy breaking changes (#21267) 2026-01-22 10:47:38 +00:00
Matthias Seitz
ec9c7f8d3e perf(db): use ArrayVec for StoredNibbles key encoding (#21279) 2026-01-22 02:05:50 +00:00
Matthias Seitz
dbdaf068f0 fix(engine): clear execution cache when block validation fails (#21282) 2026-01-22 01:01:22 +00:00
Matthias Seitz
055bf63ee9 refactor: use Default::default() for Header in tests (#21277) 2026-01-21 22:50:10 +00:00
Georgios Konstantopoulos
2305c3ebeb feat(rpc): respect history expiry in block() and map to PrunedHistoryUnavailable (#21270) 2026-01-21 22:22:05 +00:00
joshieDo
eb55c3c3da feat(grafana): add RocksDB metrics dashboard (#21243)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-21 22:09:42 +00:00
Alexey Shekhirin
72e1467ba3 fix(prune): avoid panic in tx lookup (#21275) 2026-01-21 21:21:53 +00:00
Alexey Shekhirin
74edce0089 revert: feat(trie): add V2 account proof computation and refactor proof types (#21214) (#21274) 2026-01-21 21:07:13 +00:00
Georgios Konstantopoulos
8c645d5762 feat(reth-bench): accept short notation for --target-gas-limit (#21273) 2026-01-21 21:04:10 +00:00
Georgios Konstantopoulos
b7d2ee2566 feat(engine): add metric for execution cache unavailability due to concurrent use (#21265)
Co-authored-by: Tempo AI <ai@tempo.xyz>
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-01-21 20:17:45 +00:00
Matthias Seitz
7609deddda perf(trie): parallelize merge_ancestors_into_overlay (#21202) 2026-01-21 20:08:03 +00:00
Matthias Seitz
ec50fd40b3 chore(chainspec): use ..Default::default() in create_chain_config (#21266) 2026-01-21 19:19:24 +00:00
YK
624ddc5779 feat(stages): add RocksDB support for IndexStorageHistoryStage (#21175) 2026-01-21 17:05:19 +00:00
Georgios Konstantopoulos
dd72cfe23e refactor: remove static_files.to_settings() and add edge feature to RocksDB flags (#21225) 2026-01-21 16:52:24 +00:00
joshieDo
ff8ac97e33 fix(stages): clear ETL collectors on HeaderStage error paths (#21258) 2026-01-21 16:27:30 +00:00
Alexey Shekhirin
0974485863 feat(reth-bench): add --target-gas-limit option to gas-limit-ramp (#21262) 2026-01-21 16:19:22 +00:00
かりんとう
274394e777 fix: fix payload file filter prefix in replay-payloads (#21255) 2026-01-21 16:11:03 +00:00
Emma Jamieson-Hoare
1954c91a60 chore: update CODEOWNERS (#21223)
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmai.com>
Co-authored-by: YK <chiayongkang@hotmail.com>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2026-01-21 14:40:54 +00:00
Sergei Shulepov
9cf82c8403 fix: supply a real ptr to mdbx_dbi_flags_ex (#21230) 2026-01-21 14:23:26 +00:00
Brian Picciano
f85fcba872 feat(trie): add V2 account proof computation and refactor proof types (#21214)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-21 14:18:44 +00:00
joshieDo
ebaa4bda3a feat(rocksdb): add missing observability (#21253) 2026-01-21 14:14:34 +00:00
joshieDo
04d4c9a02f fix(rocksdb): flush all column families on drop and show SST/memtable sizes (#21251)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-21 12:44:08 +00:00
Arsenii Kulikov
3065a328f9 fix: clear overlay_cache in with_extended_hashed_state_overlay (#21233) 2026-01-21 12:08:24 +00:00
Sergei Shulepov
43a84f1231 refactor(engine): move execution logic from metrics to payload_validator (#21226) 2026-01-21 11:17:30 +00:00
Matthias Seitz
5a5c21cc1b feat(txpool): add IntoIterator for AllPoolTransactions (#21241) 2026-01-21 10:01:32 +00:00
Matthias Seitz
8a8a9126d6 feat(execution-types): add receipts_iter and logs_iter helpers to Chain (#21240) 2026-01-21 09:59:15 +00:00
Emilia Hane
6f73c2447d feat(trie): Add serde-bincode-compat feature to reth-trie (#21235) 2026-01-21 09:42:52 +00:00
Sergei Shulepov
2cae438642 fix: sigsegv handler (#21231)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-21 09:42:36 +00:00
Georgios Konstantopoulos
37b5db0d47 feat(cli): add RocksDB table stats to reth db stats command (#21221)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-21 08:45:17 +00:00
joshieDo
238433e146 fix(rocksdb): flush memtables before dropping (#21234) 2026-01-21 02:19:36 +00:00
Georgios Konstantopoulos
660964a0f5 feat(node): log storage settings after genesis init (#21229) 2026-01-21 00:58:23 +00:00
Matthias Seitz
22b465dd64 chore(trie): remove unnecessary clone in into_sorted_ref (#21232) 2026-01-20 22:57:08 +00:00
Georgios Konstantopoulos
3ff575b877 feat(engine): add --engine.disable-cache-metrics flag (#21228)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2026-01-20 22:03:12 +00:00
かりんとう
d12752dc8a feat(engine): add time_between_forkchoice_updated metric (#21227) 2026-01-20 21:06:11 +00:00
Georgios Konstantopoulos
869b5d0851 feat(edge): enable transaction_hash_numbers_in_rocksdb for edge builds (#21224)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-20 20:02:02 +00:00
Georgios Konstantopoulos
78de3d8f61 perf(db): use Cow::Borrowed in walk_dup to avoid allocation (#21220) 2026-01-20 19:31:50 +00:00
YK
bc79cc44c9 feat(cli): add --rocksdb.* flags for RocksDB table routing (#21191) 2026-01-20 19:29:05 +00:00
Georgios Konstantopoulos
ff8f434dcd feat(cli): add reth db checksum rocksdb command (#21217)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-20 19:10:34 +00:00
Arsenii Kulikov
9662dc5271 fix: properly save history indices in pipeline (#21222) 2026-01-20 18:20:28 +00:00
Alexey Shekhirin
3ba37082dc fix(reth-bench): replay-payloads prefix (#21219) 2026-01-20 18:36:35 +01:00
Ahsen Kamal
7934294988 perf(trie): dispatch storage proofs in lexicographical order (#21213)
Signed-off-by: Ahsen Kamal <itsahsenkamal@gmail.com>
2026-01-20 17:09:20 +00:00
Georgios Konstantopoulos
7371bd3f29 chore(db-api): remove sharded_key_encode benchmark (#21215)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-20 17:01:12 +00:00
Georgios Konstantopoulos
80980b8e4d feat(pruning): add DefaultPruningValues for overridable pruning defaults (#21207)
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-01-20 16:58:29 +00:00
Matthias Seitz
2e2cd67663 perf(chain-state): parallelize into_sorted with rayon (#21193) 2026-01-20 16:42:16 +00:00
Georgios Konstantopoulos
4f009728e2 feat(cli): add reth db checksum mdbx/static-file command (#21211)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-20 16:11:51 +00:00
Georgios Konstantopoulos
39d5ae73e8 feat(storage): add read-only mode for RocksDB provider (#21210)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-20 16:09:51 +00:00
Georgios Konstantopoulos
5ef200eaad perf(db): stack-allocate ShardedKey and StorageShardedKey encoding (#21200)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-20 15:58:43 +00:00
ethfanWilliam
d002dacc13 chore: remove deprecated and unused ExecuteOutput struct (#20887)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-20 15:06:26 +00:00
Alexey Shekhirin
bb39cba504 ci: partition bench codspeed job (#20332)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-20 14:29:48 +00:00
YK
bd144a4c42 feat(stages): add RocksDB support for IndexAccountHistoryStage (#21165)
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-20 14:23:29 +00:00
tonis
a0845bab18 feat: Check CL/Reth capability compatibility (#20348)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-20 14:19:31 +00:00
Brian Picciano
346cc0da71 feat(trie): add AsyncAccountValueEncoder for V2 proof computation (#21197)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-20 13:50:29 +00:00
Matthias Seitz
ea3d4663ae perf(trie): use HashMap reserve heuristic in MultiProof::extend (#21199) 2026-01-20 13:34:41 +00:00
Hwangjae Lee
3667d3b5aa perf(trie): defer child RLP conversion in proof_v2 for async encoder support (#20873)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-20 13:33:08 +00:00
Brian Picciano
7cfb19c98e feat(trie): Add V2 reveal method and target types (#21196)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-20 13:25:54 +00:00
joshieDo
5a38871489 fix: set StaticFileArgs defaults for edge (#21208) 2026-01-20 12:39:36 +00:00
Brian Picciano
c825c8c187 chore(trie): Move hybrid check for trie input merges into common code (#21198) 2026-01-20 12:38:46 +00:00
Matthias Seitz
8f37cd08fc feat(engine-api): add EIP-7928 BAL stub methods (#21204) 2026-01-20 11:33:27 +00:00
Matthias Seitz
c9dad4765d chore: bump version to 1.10.1 (#21188) 2026-01-19 14:04:08 +00:00
Dan Cline
1d55abeef3 chore: rename extend_ref methods on sorted data structures (#21043) 2026-01-19 13:04:57 +00:00
Niven
f7460e219c fix(flashblocks): Add flashblock ws connection retry period (#20510) 2026-01-19 12:01:33 +00:00
Georgios Konstantopoulos
0c66315f20 chore(bench): add --disable-tx-gossip to benchmark node args (#21171) 2026-01-19 11:45:56 +00:00
MozirDmitriy
6a2010e595 refactor(stages): reuse history index cache buffers in collect_history_indices (#21017) 2026-01-19 11:39:52 +00:00
Georgios Konstantopoulos
c2435ff6f8 feat(download): resumable snapshot downloads with auto-retry (#21161) 2026-01-19 10:26:24 +00:00
DaniPopes
52ec8e9491 ci: update to tempoxyz (#21176) 2026-01-19 10:21:37 +00:00
Georgios Konstantopoulos
a901d80ee6 chore: apply spelling and typo fixes (#21182) 2026-01-19 10:21:25 +00:00
MoNyAvA
915164078f docs: document minimal storage mode in pruning FAQ (#21025)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-19 10:27:45 +01:00
github-actions[bot]
be3234d848 chore(deps): weekly cargo update (#21167)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-01-18 14:57:20 +00:00
Matthias Seitz
f624372334 feat(execution-types): add receipts_iter helper (#21162)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-17 19:20:28 +01:00
Matthias Seitz
40bc9d3860 revert: undo Chain crate, add LazyTrieData to trie-common (#21155) 2026-01-17 15:57:09 +00:00
Georgios Konstantopoulos
1ea574417f feat(engine): add new_payload_interval metric (start-to-start) (#21159) 2026-01-17 12:15:45 +00:00
Georgios Konstantopoulos
27e055f790 feat(engine): add time_between_new_payloads metric (#21158) 2026-01-17 10:20:22 +00:00
Georgios Konstantopoulos
d5dc0b27eb fix(storage-api): gate reth-chain dependency behind std feature
The reth-chain crate is inherently std-only (uses BTreeMap, Arc, etc.)
and was breaking the riscv32imac no_std builds by pulling in serde_core
which doesn't support no_std properly.

This makes reth-chain optional and only enables it when std feature is
active, gating the block_writer module that uses Chain behind std.
2026-01-17 08:32:10 +00:00
Georgios Konstantopoulos
c11c13000f perf(storage): batch trie updates across blocks in save_blocks (#21142)
Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: YK <chiayongkang@hotmail.com>
2026-01-17 07:15:40 +00:00
Matthias Seitz
6bf43ab24a refactor: use ExecutionOutcome::single instead of tuple From (#21152) 2026-01-17 01:51:26 +00:00
Matthias Seitz
574bde0d6f chore(chain-state): reorganize deferred_trie.rs impl blocks (#21151) 2026-01-17 01:39:29 +00:00
Matthias Seitz
79b8ffb828 feat(primitives-traits): add try_recover_signers for parallel batch recovery (#21103) 2026-01-17 01:24:53 +00:00
Dan Cline
c617d25c36 perf: make Chain use DeferredTrieData (#21137)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-17 01:05:35 +00:00
Georgios Konstantopoulos
b96a30821f fix(engine): request head block download when not buffered after backfill (#21150) 2026-01-17 00:33:27 +00:00
Mablr
012fbf5110 fix(docs/cli): update help.rs to use nightly toolchain (#21149) 2026-01-16 23:35:26 +00:00
Arsenii Kulikov
d7a5d1f872 fix: properly record span fields (#21148) 2026-01-16 23:25:54 +00:00
Matthias Seitz
3a39251f79 fix: release mutex before dropping ancestors in wait_cloned (#21146) 2026-01-16 22:32:23 +00:00
Julian Meyer
f6dbf2d82d feat(db): implement extra dup methods (#20964)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-16 21:31:52 +00:00
Brian Picciano
13707faf1a feat(consensus): incremental receipt root computation in background task (#21131) 2026-01-16 19:53:59 +00:00
Arsenii Kulikov
6e6415690c perf: start saving cache sooner (#21130) 2026-01-16 18:55:18 +00:00
Matthias Seitz
b81e373d78 chore(deps): bump vergen and vergen-git2 to 9.1.0 (#21141) 2026-01-16 20:00:43 +01:00
Arun Dhyani
a164654145 fix(exex): prevent ExExManager deadlock when buffer clears after being full (#21135) 2026-01-16 18:42:23 +00:00
Matthias Seitz
905bb95f8b perf(engine): defer trie overlay computation with LazyOverlay (#21133) 2026-01-16 18:25:04 +00:00
YK
13c32625bc feat(storage): add EitherReader for routing history queries to MDBX or RocksDB (#21063)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-16 17:44:43 +00:00
YK
1be9fab5bf perf: Optimize multiproof sequencer add_proof (#21129) 2026-01-16 17:33:48 +00:00
Arsenii Kulikov
80eb0d0fb6 refactor: use BlockExecutionOutcome in ExecutedBlock (#21123) 2026-01-16 17:07:19 +00:00
Matthias Seitz
5e178f6ac6 chore(deps): update alloy-evm and alloy-op-evm to 0.26.3 (#21126) 2026-01-16 17:24:45 +01:00
Matthias Seitz
b4b64096c8 perf(cli): use available_parallelism as default for re-execute (#21010) 2026-01-16 16:08:30 +00:00
figtracer
e313de818b chore(provider): pre alloc tx hashes (#21114) 2026-01-16 15:40:47 +00:00
rakita
86c414081a feat: stagging revm v34.0.0 (#20627)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-16 14:56:27 +00:00
Brian Picciano
a74cb9cbc3 feat(trie): in-memory trie changesets (#20997) 2026-01-16 01:06:31 +00:00
YK
e25411c32b perf(trie): fix extend_sorted_vec O(n log n) → O(n+m) merge (#21098) 2026-01-16 00:17:22 +00:00
Matthias Seitz
ec3323bba0 refactor(chain-state): extract blocks_to_chain helper (#21110) 2026-01-15 23:27:11 +00:00
Dan Cline
26cd132631 fix(reth-bench): use requests hash (#21111) 2026-01-15 19:19:16 +00:00
DaniPopes
079f59c2be perf: reserve in extend_sorted_vec (#21109) 2026-01-15 19:10:20 +00:00
joshieDo
e9b079ad62 feat: add rocksdb to save_blocks (#21003)
Co-authored-by: Sergei Shulepov <s.pepyakin@gmail.com>
Co-authored-by: Sergei Shulepov <pep@tempo.xyz>
Co-authored-by: yongkangc <chiayongkang@hotmail.com>
2026-01-15 18:33:19 +00:00
Dan Cline
b1f107b171 feat(reth-bench): add generate-big-block command (#21082) 2026-01-15 15:30:04 +00:00
YK
7d0e7e72de perf(trie): add k-way merge batch optimization for merge_overlay_trie_input (#21080) 2026-01-15 15:22:15 +00:00
joshieDo
f012b3391e feat: parallelize save_blocks (#20993)
Co-authored-by: Sergei Shulepov <s.pepyakin@gmail.com>
Co-authored-by: Sergei Shulepov <pep@tempo.xyz>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-15 14:58:06 +00:00
joshieDo
d225fc1d7f feat: add get/set db settings for rocksdb (#21095) 2026-01-15 14:48:05 +00:00
Dan Cline
d469b7f1d0 feat(rpc): add flag to skip invalid transactions in testing_buildBlockV1 (#21094)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-15 12:05:30 +00:00
YK
9bcd3712c8 test(storage): add parametrized MDBX/RocksDB history lookup equivalence tests (#20871) 2026-01-15 11:16:40 +00:00
Emma Jamieson-Hoare
b25f32a977 chore(release): set version v1.10.0 (#21091)
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmai.com>
2026-01-15 10:50:35 +00:00
Emma Jamieson-Hoare
905de96944 chore: release 1.9.4 (#21048)
Co-authored-by: Emma Jamieson-Hoare <ejamieson19@gmai.com>
2026-01-15 09:41:54 +00:00
Sergei Shulepov
27fbd9a7de fix(db): change commit return type from Result<bool> to Result<()> (#21077)
Co-authored-by: Sergei Shulepov <pep@tempo.xyz>
2026-01-14 23:56:27 +00:00
DaniPopes
26a99ac5a3 perf: small improvement to extend_sorted_vec (#21032) 2026-01-14 23:46:58 +00:00
James Prestwich
1265a89c21 refactor: make use of dbi consistent across mdbx interface (#21079) 2026-01-14 23:42:42 +00:00
Matthias Seitz
b9ff5941eb feat(primitives): add SealedBlock::decode_sealed for efficient RLP decoding (#21030) 2026-01-14 22:49:55 +00:00
Sergei Shulepov
a75a0a5db7 feat(cli): support file:// URLs in reth download (#21026)
Co-authored-by: Sergei Shulepov <pep@tempo.xyz>
2026-01-14 22:30:42 +00:00
Matthias Seitz
0a4bac77d0 feat(primitives): add From<Sealed<B>> for SealedBlock<B> (#21078) 2026-01-14 22:19:09 +00:00
Kamil Szczygieł
1fbd5a95f8 feat: Support for sending logs through OTLP (#21039)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-14 21:29:00 +00:00
Arsenii Kulikov
1bc07fad8e perf: use binary search in ForwardInMemoryCursor (#21049) 2026-01-14 19:31:11 +00:00
Arsenii Kulikov
8cb506c4d3 perf: don't clone entire keys set (#21042) 2026-01-14 19:26:23 +00:00
ethfanWilliam
15f16a5a2e fix: propagate keccak-cache-global feature to reth-optimism-cli (#21051)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-14 19:22:22 +00:00
Brian Picciano
5cf1d2a0b0 fix(trie): Update branch masks when revealing blinded nodes (#20937) 2026-01-14 19:12:15 +00:00
Matthias Seitz
59fb25d892 feat(bench-compare): add --skip-wait-syncing flag (#21035) 2026-01-14 16:24:19 +01:00
Alexey Shekhirin
665a0a8553 feat(cli): parse URL path and display ETA in reth download (#21014) 2026-01-14 10:01:01 +00:00
DaniPopes
54735ce0f4 perf: use fixed-map for StaticFileSegment maps (#21001)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-14 00:52:54 +00:00
joshieDo
a73e73adef feat(storage): split static file commit into sync_all and finalize (#20984) 2026-01-13 16:27:55 +00:00
github-actions[bot]
4f3bd3eac1 chore(deps): weekly cargo update (#20924)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Amp <amp@ampcode.com>
2026-01-13 14:42:54 +00:00
YK
ae41823be6 fix: propagate edge feature to reth-node-core for version output (#20998) 2026-01-13 14:35:24 +00:00
Matthias Seitz
1fa71f893c test: add testing_buildBlockV1 RPC method and Osaka test (#20990) 2026-01-13 15:18:52 +01:00
ANtutov
c6b17848dd fix(trie): remove redundant storage trie root calculation in witness (#20965) 2026-01-13 13:12:39 +00:00
Alexey Shekhirin
a5dd7d0106 feat(node): --minimal flag (#20960) 2026-01-13 12:54:26 +00:00
Emilia Hane
61354e6c21 chore(test): use reth_optimism_chainspec::BASE_SEPOLIA in tests (#20988) 2026-01-13 12:07:47 +00:00
DaniPopes
2444533a04 perf: use in-memory length for static files metrics (#20987) 2026-01-13 11:37:00 +00:00
kurahin
8fa01eb62e fix: use global default for rpc_proof_permits CLI flag (#20967) 2026-01-12 23:03:51 +00:00
DaniPopes
c5e00e4aeb perf(db): throttle metrics reporting (#20974)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 22:44:24 +00:00
joshieDo
98a35cc870 fix: propagate FEATURES to sub-makes (#20975) 2026-01-12 20:03:34 +00:00
YK
46d670eca5 fix(stages): use static files for unwind in SenderRecovery stage (#20972)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2026-01-12 19:22:49 +00:00
DaniPopes
25906b7b3e fix(libmdbx): use correct size for freelist u32 values (#20970) 2026-01-12 18:52:03 +00:00
Matthias Seitz
1b3d815cb8 fix(rpc): validate eth_feeHistory newest_block against chain head (#20969)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 18:48:46 +00:00
DaniPopes
23f3f8e820 feat: add tracing-tracy (#20958)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 18:37:37 +00:00
DaniPopes
2663942b50 chore(deps): bump metrics (#20968) 2026-01-12 18:13:38 +00:00
YK
369c629b9b perf(trie): reuse overlay in deferred trie overlay computation (#20774) 2026-01-12 15:04:26 +00:00
GarmashAlex
6fec4603cf refactor(trie): avoid building prefix set for v2 storage proofs (#20898) 2026-01-12 12:49:24 +00:00
DaniPopes
515fd597f3 perf(net): use alloy_primitives::Keccak256 (#20957) 2026-01-12 11:21:27 +00:00
Crypto Nomad
126a7c9570 perf(engine): save one clock read in sparse trie metrics (#20947) 2026-01-12 07:40:30 +00:00
Matthias Seitz
8aeee5018e perf(trie): save one clock read in elapsed time calculation (#20916) 2026-01-12 03:57:54 +00:00
Matthias Seitz
210309ca76 docs: fix typos and incorrect documentation (#20943) 2026-01-12 00:48:01 +01:00
Matthias Seitz
551918b0d8 refactor(engine): defer sparse trie setup to spawned task (#20942) 2026-01-11 23:30:14 +00:00
iPLAY888
89677e1bd9 docs(rpc): fix incorrect transport in with_ipc comment (#20939) 2026-01-11 23:04:32 +00:00
pepes
0e2b3afa3f chore: correct deprecation message for SealedBlockFor (#20929) 2026-01-11 15:08:25 +00:00
David Klank
5d551eab29 perf(payload): remove unnecessary parent_header clone (#20930) 2026-01-11 15:07:51 +00:00
David Klank
12c4c04f7d fix(optimism): add missing Holocene hardfork to DEV_HARDFORKS (#20931) 2026-01-11 15:03:35 +00:00
Matthias Seitz
392f8e6e13 refactor(engine): simplify is_done signature in MultiProofTask (#20906) 2026-01-11 09:46:20 +00:00
Crypto Nomad
1a94d1f091 docs: fix re-export source comments (#20913) 2026-01-10 15:36:03 +00:00
viktorking7
97ae89c7f0 docs: fix dead link (#20914) 2026-01-10 15:18:56 +00:00
Matthias Seitz
a4921119e4 perf(trie): defer consuming remaining storage proof receivers (#20915) 2026-01-10 15:17:20 +00:00
VolodymyrBg
0f3d3695f5 docs: document account_change_sets static files config (#20903) 2026-01-10 09:02:42 +00:00
phrwlk
54355dfc78 docs: fix Performant card link on landing page (#20904) 2026-01-10 08:54:58 +00:00
FT
44a6035fa3 fix: correct typos in error messages and logs (#20894) 2026-01-10 08:54:31 +00:00
Matthias Seitz
746baed2b1 feat(cli): add CliRunnerConfig for configurable graceful shutdown timeout (#20899)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 21:52:03 +00:00
Dan Cline
e86c5fba53 fix(stages): advance sender static file in sender recovery (#20897) 2026-01-09 20:23:17 +00:00
joshieDo
485fa3448d fix: call cancel_all_background_work on RocksDBProviderInner drop (#20895) 2026-01-09 19:53:31 +00:00
DaniPopes
0db3813941 fix(rbc): fail early if node exits while waiting for startup (#20892) 2026-01-09 17:58:04 +00:00
FT
52c2ae3362 docs: fix typos in documentation files (#20890)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-09 18:41:37 +01:00
YK
b1d75f2771 feat(bench-compare): add --wait-for-persistence flag support (#20891) 2026-01-09 16:47:46 +00:00
Matthias Seitz
ef80ee1687 chore: remove env clone (#20889) 2026-01-09 16:42:50 +00:00
radik878
8dacfb3d9c refactor(ecies): avoid duplicate keccak digest in MAC::update_body (#20854) 2026-01-09 15:35:51 +00:00
joshieDo
425a021e3b feat: add edge feature flag to reth (#20841) 2026-01-09 15:33:21 +00:00
Hwangjae Lee
08c0d30ea7 docs(reth): fix outdated comments and document missing features (#20849)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-09 15:32:17 +00:00
かりんとう
84e970e4c9 perf: remove redundant contains_key (#20820) 2026-01-09 15:22:06 +00:00
Fibonacci747
020f20db42 chore: correct StorageHistory prune map size constant name (#20828) 2026-01-09 15:20:02 +00:00
ANtutov
f53929e0c8 docs: clarify bodies downloader set_download_range semantics (#20821) 2026-01-09 15:18:37 +00:00
ethfanWilliam
4a8fbe15e3 chore: remove unused implementation (#20885) 2026-01-09 15:08:06 +00:00
yyhrnk
a59e9832e6 docs: document optional block param for trace_rawTransaction (#20812)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-09 15:04:29 +00:00
YK
07beb76cf7 feat(reth-bench-compare): add persistence-based flow optimization for reth-bench (#20869)
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-01-09 14:58:21 +00:00
FT
3ddf0bd729 docs: correct typo in hive.yml workflow comment (#20884) 2026-01-09 14:50:05 +00:00
iPLAY888
c3d92ddfc2 docs(engine): update outdated EthBuiltPayload comment (#20883) 2026-01-09 14:45:11 +00:00
kurahin
c0628dfbff refactor(config): delegate PruneConfig::has_receipts_pruning (#20809) 2026-01-09 14:44:43 +00:00
Sabnock
a2aa1f18df feat(rpc): add debug_getBlockAccessList endpoint for EIP-7928 (#20824)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-09 13:29:37 +00:00
Arun Dhyani
d489f80f6b feat: Add TrieUpdatesSorted and HashedPostStateSorted in all ExEx notifications (#20333)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2026-01-09 13:06:41 +00:00
Emilia Hane
bf272c9432 chore(consensus): Add trait object error variant to ConsensusError (#20875)
Co-authored-by: leeli <Leeliren@proton.me>
2026-01-09 13:01:22 +00:00
FT
ebb54d0dcc docs: typo in comment (#20879) 2026-01-09 13:00:22 +00:00
Matthias Seitz
1d7367c389 perf(engine): simplify get_prefetch_proof_targets (#20864)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 12:53:28 +00:00
refcell
824ae12d75 feat(exex): Make WAL Block Threshold Configurable (#20867) 2026-01-09 12:45:53 +00:00
Alexey Shekhirin
2db281e51d feat(reth-bench-compare): nP latency mean change percent (#20881) 2026-01-09 11:58:08 +00:00
Brian Picciano
8367ba473e feat(metrics): Add metrics for save_block steps and computed trie input sizes (#20878) 2026-01-09 11:40:35 +00:00
fig
f2abad5f5c perf(engine): destructure leaf to avoid clone() (#20863) 2026-01-09 11:19:49 +00:00
Matthias Seitz
4673d77c03 perf(trie): optimize ChunkedHashedPostState sorting (#20866) 2026-01-09 11:18:28 +00:00
Matthias Seitz
33bcd60348 feat(rpc): add persisted block subscription (#20877)
Co-authored-by: cakevm <cakevm@proton.me>
2026-01-09 10:37:46 +00:00
Matthias Seitz
8a9b5d90f4 feat(chain-state): add persisted block tracking (#20876)
Co-authored-by: cakevm <cakevm@proton.me>
2026-01-09 09:56:20 +00:00
joshieDo
c26cfa3dcb fix: pre-calculate transitions on append_blocks_with_state (#20850) 2026-01-09 09:26:46 +00:00
joshieDo
13e59651f1 fix: initialize transaction-senders sf during genesis (#20846) 2026-01-09 09:26:26 +00:00
Hwangjae Lee
0f4995d1ea chore(trie): fix typo in comment (#20870)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-09 09:19:14 +00:00
Matthias Seitz
cff7e8be53 perf(engine): avoid unnecessary B256 copy in get_proof_targets (#20845)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 04:57:23 +00:00
YK
5433d7a4ac feat(storage): add RocksDB history lookup methods and owned batch type [2/3] (#20543) 2026-01-09 04:52:15 +00:00
fig
1866db4d50 chore(engine): remove unnecessary debug-level clone() (#20862) 2026-01-08 22:21:29 +00:00
Danno Ferrin
c9b92550b6 feat(network): add customizable announcement filtering policy to APIs (#20861)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-08 22:08:41 +00:00
Sebastian Stammler
8e81ebfc1f feat(optimism): Also require non-zero elasticity in payload attributes (#20858) 2026-01-08 21:32:46 +00:00
joshieDo
1363205b5d feat: allow TransactionHashNumbers to be written to rocksdb during live sync (#20853) 2026-01-08 20:02:49 +00:00
DaniPopes
ed201cae0e chore(rbc): improve compilation log message (#20855) 2026-01-08 19:30:04 +00:00
Matthias Seitz
a5b10f11ce perf(engine): handle EmptyProof inline during prefetch batching (#20848)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 19:12:14 +00:00
Brian Picciano
a06644944f feat(trie): Keep cached storage roots on proof workers (#20838) 2026-01-08 17:04:42 +00:00
Matthias Seitz
8eecad3d1d chore(engine): remove state update batching in multiproof (#20842)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-08 16:04:12 +00:00
Emilia Hane
412f39e223 chore(consensus): Remove associated type Consensus::Error (#20843)
Co-authored-by: Josh_dfG <126518346+JoshdfG@users.noreply.github.com>
2026-01-08 15:54:31 +00:00
Matthias Seitz
13106233e4 perf(engine): use crossbeam select for persistence events (#20813) 2026-01-08 15:47:50 +00:00
joshieDo
e63fef0e79 ci: rocksdb job to unit.yml (#20839) 2026-01-08 13:20:43 +00:00
Dan Cline
eed34254f5 feat: add StaticFileSegment::AccountChangeSets (#18882)
Co-authored-by: Alexey Shekhirin <github@shekhirin.com>
2026-01-08 12:05:05 +00:00
Emilia Hane
b38d37a1e1 feat(sdk): Add custom TrieType (#20804)
Co-authored-by: jagroot <4516586+itschaindev@users.noreply.github.com>
2026-01-08 11:53:27 +00:00
Maxim Evtush
7efaf4ca97 docs: mention optional EraStage in DefaultStages documentation (#20836) 2026-01-08 11:51:10 +00:00
Emilia Hane
ef708792a9 chore(storage): Add trait object error variant to DatabaseError (#20096) 2026-01-08 11:40:09 +00:00
Alexey Shekhirin
bcd74d021b feat(metrics): configurable jeprof pprof dumps directory (#20834) 2026-01-08 11:21:42 +00:00
bigbear
0f0a181fe2 fix(trie): account for all flag in PrefixSet::is_empty() (#20801) 2026-01-08 11:20:55 +00:00
Matthias Seitz
9678d6c76d chore: tighten iat timeout (#20835) 2026-01-08 11:09:03 +00:00
Brian Picciano
7ceca70353 feat(trie): Add flag to enable proof v2 for storage proof workers (#20617)
Co-authored-by: YK <chiayongkang@hotmail.com>
2026-01-08 10:53:24 +00:00
Matthias Seitz
4412a501eb perf(chain-state): avoid clones in deferred trie computation (#20816) 2026-01-08 09:25:32 +00:00
YK
3ca5cf49b6 refactor(storage): extract shared find_changeset_block_from_index algorithm [1/3] (#20542) 2026-01-08 02:56:38 +00:00
Matthias Seitz
1d4603769f perf(trie): use sorted_unstable for proof target chunking (#20827) 2026-01-08 01:05:14 +00:00
Lorsmirq Benton
9bba8c7a98 docs(net): complete incomplete doc comment (#20793) 2026-01-07 21:16:00 +00:00
Alexey Shekhirin
6f0ef914b9 feat(metrics): jemalloc heap dump endpoint (#20811) 2026-01-07 19:36:08 +00:00
Alexey Shekhirin
d756e8310a chore(engine): more logs when cache is not available (#20817)
Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2026-01-07 19:35:27 +00:00
DaniPopes
74a7ba581c feat(rbc): don't wait in between FCUs when warming up (#20818) 2026-01-07 19:20:33 +00:00
Matthias Seitz
a8980bf7c1 chore: ignore RUSTSEC-2026-0002 (#20819) 2026-01-07 18:47:09 +00:00
Matthias Seitz
050d9f440f chore: ignore RUSTSEC-2025-0141 bincode advisory (#20815) 2026-01-07 19:10:30 +01:00
Brian Picciano
df33a8200f feat(reth-bench-compare): Do unwind first (#20808) 2026-01-07 16:49:07 +00:00
Matthias Seitz
d3dab613fc revert: "perf(engine): parellelize multiproof_targets_from_state (#206… (#20807) 2026-01-07 15:49:10 +00:00
Matthias Seitz
1b31739adf revert: "perf(engine): paralellize evm_state_to_hashed_post_state() (#… (#20806) 2026-01-07 15:47:15 +00:00
DaniPopes
6280abedd0 chore(reth-bench-compare): skip last unwind (#20805) 2026-01-07 15:44:36 +00:00
Mohan Somnath
4c064a4d20 docs: fix article and grammar errors in comments (#20794) 2026-01-07 15:00:13 +00:00
phrwlk
8d19a36492 docs: clarify pending pending_block build_block docs (#20800) 2026-01-07 14:09:54 +00:00
cui
78f2685ee9 perf: remove unnecessary code (#20719)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-07 12:12:17 +00:00
YK
fee7e997ff refactor(trie): replace TrieMasks with Option<BranchNodeMasks> (#20707) 2026-01-07 11:27:23 +00:00
Snezhkko
5fa1b99bb6 docs: clarify TreeRootEntry::content unsigned format (#20790) 2026-01-06 22:10:05 +00:00
Alexey Shekhirin
d52b337127 fix(engine): do not create another cache for multiproof task (#20755) 2026-01-06 20:52:06 +00:00
Richard Janis Goldschmidt
342a795ebe chore: relax = requirement on cc dependency (#20788) 2026-01-06 18:09:40 +00:00
Matthias Seitz
485eb2e8d5 perf(trie): add clone_into_sorted for TrieUpdates and StorageTrieUpdates (#20784)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-06 15:11:27 +00:00
fig
63842264f3 perf(engine): parellelize multiproof_targets_from_state (#20669) 2026-01-06 14:03:09 +00:00
ethfanWilliam
e1d984035f perf: handle RPC errors instead of panicking (#20768) 2026-01-06 13:22:56 +00:00
Satoshi Nakamoto
d5fd0c04fc docs: fix doc comment errors (#20776) 2026-01-06 13:22:36 +00:00
かりんとう
8c5ff4b2fd perf: preallocate capacity for filter chunk results (#20783) 2026-01-06 13:21:30 +00:00
andrewshab
0ad5574115 chore(chain-state): remove needless collect in test assertions (#20778) 2026-01-06 13:19:55 +00:00
bigbear
485f5b36ce fix(transaction-pool): finalized block number should never decrease (#20781) 2026-01-06 13:16:22 +00:00
yyhrnk
d488a7d130 docs: align net JSON-RPC docs with implementation (#20782) 2026-01-06 13:11:56 +00:00
かりんとう
7bc3c95f05 perf: use parallel signature recovery in debug_trace_raw_block (#20780)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-06 13:06:06 +00:00
Hwangjae Lee
a64ac7c1c7 fix(consensus): prevent infinite reconnection loop in RpcBlockProvider when channel is closed (#20772)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-06 11:37:15 +00:00
Micke
9773e6233d perf(engine): prevent duplicate block insertion in BlockBuffer (#20487)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-06 10:51:55 +00:00
Ekaterina Endofer
1fd7a88e2e fix(era): correct error messages in CompressedBody and CompressedReceipts (#20695) 2026-01-06 10:16:51 +00:00
dependabot[bot]
dea27a55a8 chore(deps): bump taiki-e/cache-cargo-install-action from 2 to 3 (#20760)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-06 10:02:29 +00:00
ethfanWilliam
5f8d7ddd21 chore: make error handling consistent (#20769) 2026-01-06 09:54:32 +00:00
YK
44452359b9 fix(net): delay BlockRangeUpdate to avoid immediate sending after connection (#20765) 2026-01-06 09:48:30 +00:00
Hwangjae Lee
c1ef67df70 docs(payload): fix typos and incorrect references in comments (#20771)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-06 09:42:37 +00:00
Hwangjae Lee
0c6688d056 chore(consensus): fix typo in RpcBlockProvider log message (#20773)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-06 09:38:58 +00:00
YK
0b71c21986 ci(hive): revert to self-hosted Reth runner group (#20764) 2026-01-06 09:38:35 +00:00
VolodymyrBg
4d1c2c4939 refactor(ethereum): cache RLP lengths in ethereum payload builder (#20758) 2026-01-05 20:00:26 +00:00
NaCl-Ezpz
39b2dc8f4f chore: era decompression bounds (#20423)
Co-authored-by: NaCl <nacl@gaysex.local>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-05 19:50:41 +00:00
Karl Yu
e9e940919a feat: make metrics layer configurable (#20703) 2026-01-05 19:30:42 +00:00
ethfanWilliam
b6f95866cc feat(primitives-traits): add set_timestamp to test utils (#20756) 2026-01-05 19:20:09 +00:00
DaniPopes
fa05d19f1b fix(bench-compare): add backward compat for old CSV format (#20754) 2026-01-05 17:58:20 +00:00
bobtajson
981d1da41a chore(chain-state): remove needless collect in test assertions (#20736) 2026-01-05 17:22:58 +00:00
andrewshab
5ded234131 docs: update NetworkInner struct definition in network.md (#20752) 2026-01-05 17:09:23 +00:00
Hwangjae Lee
cfeaedd389 docs(net): fix typos in comments (#20751)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-05 17:07:33 +00:00
Mablr
7779d484a3 feat(optimism): Flashblock Receipts Stream (#20061)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2026-01-05 16:58:05 +00:00
cui
790a73cd2a chore: update todo (#20693) 2026-01-05 15:13:07 +00:00
cui
39e2c5167a feat: remove todo (#20692) 2026-01-05 15:03:46 +00:00
Satoshi Nakamoto
0f1bec0ad1 docs(network): sync struct definitions with sour (#20747) 2026-01-05 15:02:01 +00:00
cui
17c1365368 perf: prealloc vector (#20713)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 13:57:24 +00:00
cui
a7841919d9 perf: prealloc vector (#20716)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 13:56:28 +00:00
cui
0dbbb3ff37 perf: prealloc B256Map (#20720)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 13:54:10 +00:00
cui
96ff33120e perf: prealloc vec (#20721)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 13:53:17 +00:00
cui
f920ffd5f9 refactor: simplify code (#20722)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 13:52:48 +00:00
GarmashAlex
da1d7e542f refactor(rpc): remove unused BlockTransactionsResponseSender (#20696) 2026-01-05 13:52:01 +00:00
Satoshi Nakamoto
186208fef9 docs: fix doc comment errors (#20746) 2026-01-05 13:07:30 +00:00
cui
5265079654 perf: avoid one vec alloc (#20717)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 12:40:03 +00:00
cui
9ca5cffaee chore: update alloy (#20709)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 12:05:59 +00:00
Satoshi Nakamoto
b51ce5c155 docs(network): sync request handler structs with source (#20726) 2026-01-05 11:56:07 +00:00
andrewshab
8e9e595799 docs: update db.md BodyStage unwind implementation (#20727) 2026-01-05 11:54:57 +00:00
Satoshi Nakamoto
b77898c00d docs: fix doc comment errors (#20728) 2026-01-05 11:53:35 +00:00
cui
58b0125784 refactor: optimize check whether all blobs ready (#20711)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 11:53:06 +00:00
cui
e8cc91ebc2 fix: inclusive range off-by-one (#20729)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 11:39:38 +00:00
cui
59486a64d4 fix: to block should not sub one (#20730)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2026-01-05 11:35:22 +00:00
Hwangjae Lee
b1263d4651 docs(evm): fix typos and remove stale TODO (#20742)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2026-01-05 11:25:42 +00:00
kurahin
a79432ffc6 docs: fix discv5 multiaddr peer id conversion comment (#20743) 2026-01-05 11:22:32 +00:00
Karl Yu
480029a678 feat: optimize send_raw_transaction_sync receipts fetching (#20689) 2026-01-05 11:22:04 +00:00
DaniPopes
66f3453b3c feat(reth-bench-compare): add per-build features and rustflags args (#20744) 2026-01-05 11:11:23 +00:00
github-actions[bot]
3d4efdb271 chore(deps): weekly cargo update (#20735)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-01-04 11:31:03 +00:00
Doohyun Cho
5ac9184ba6 perf(era-utils): replace Box<dyn Fn> with function pointer (#20701) 2026-01-03 10:46:42 +00:00
Rej Ect
0e6efdb91c chore: bump license year to 2026 (#20704) 2026-01-03 10:45:34 +00:00
zhygis
986e07f21a feat(cli): make Cli extensible with custom subcommands (#20710)
Co-authored-by: Amp <amp@ampcode.com>
2026-01-03 10:41:56 +00:00
Sophia Raye
5307da4794 docs(eth-wire): sync code examples with source (#20724) 2026-01-03 11:45:07 +01:00
Karl Yu
0c69e294c3 chore: optimize evm_env if header is available (#20691) 2025-12-31 13:45:35 +00:00
かりんとう
dc931f5669 chore: use chain_id() method instead of direct field access in prometheus setup (#20687) 2025-12-31 08:53:44 +00:00
Hwangjae Lee
9cfe5c7363 fix(ipc): trim leading whitespace in StreamCodec decode (#20615)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2025-12-31 08:51:56 +00:00
fig
454b060d5a chore(tree): use with_capacity at collect_blocks_for_canonical_unwind() (#20682) 2025-12-30 12:32:02 +00:00
Matthias Seitz
0808bd67c2 chore: shrink outgoing broadcast messages (#20672) 2025-12-30 11:30:37 +00:00
iPLAY888
3b4bc77532 docs(network): update FetchClient struct to use NetworkPrimitives generic (#20680) 2025-12-30 11:23:12 +00:00
Sophia Raye
4eaa5c7d46 docs(eth-wire): add missing eth/70 message types (#20676) 2025-12-30 10:25:43 +00:00
iPLAY888
34c6b8d81c docs(network): update Swarm struct to use NetworkPrimitives generic (#20677) 2025-12-30 10:12:00 +00:00
Matthias Seitz
f79fdf3564 perf: pre-alloc removed vec (#20679) 2025-12-30 10:09:39 +00:00
Karl Yu
16f75bb0c3 feat: avoid mutex locking (#20678) 2025-12-30 09:28:40 +00:00
Hwangjae Lee
5053322711 docs(storage): fix typos in storage crates (#20673)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-12-30 06:18:35 +00:00
YK
d72105b47c fix(storage): rocksdb consistency check on startup (#20596)
Co-authored-by: Federico Gimenez <fgimenez@users.noreply.github.com>
2025-12-30 06:17:32 +00:00
YK
0f585f892e perf(trie): flatten sparse trie branch node masks to reduce overhead (#20664) 2025-12-30 03:38:24 +00:00
iPLAY888
f7c77e72a7 docs(network): update NetworkConfig struct to match current API (#20665) 2025-12-29 22:00:40 +00:00
fig
fc248e3323 chore(stages): use with_capacity() at populate_range() (#20671) 2025-12-29 21:34:54 +00:00
Karl Yu
d564d9ba36 feat: add append_pooled_transaction_elements (#20654)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-29 21:00:40 +00:00
Hwangjae Lee
b7883953c4 chore(rpc): shrink active filters HashMap after clearing stale entries (#20660)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-29 20:45:52 +00:00
lisenokdonbassenok
b40b7dc210 docs: document http/ws api none option (#20666) 2025-12-29 20:43:27 +00:00
Matthias Seitz
65b5a149be chore: use with capacity (#20670) 2025-12-29 20:35:46 +00:00
Matthias Seitz
05ed753e58 chore: shrink range result vec to fit (#20639) 2025-12-29 10:22:11 +00:00
fig
624bfa1f49 perf(engine): paralellize evm_state_to_hashed_post_state() (#20635) 2025-12-29 10:06:08 +00:00
Desant pivo
d9c6f745c6 fix(chain-state): correct balance deduction in test block builder (#20308) 2025-12-29 09:59:19 +00:00
YK
240dc8602b perf(trie): flatten branch node mask to reduce overhead (#20659) 2025-12-29 07:35:46 +00:00
Matthias Seitz
489da4a38b perf: allocate signer vec exact size (#20638) 2025-12-29 02:18:27 +00:00
Matthias Seitz
05b3a8668c perf(trie): add FromIterator for HashedPostState and simplify from_bundle_state (#20653) 2025-12-28 11:29:07 +00:00
Hwangjae Lee
cb1de1ac19 docs(rpc): fix typos and complete incomplete doc comments (#20642)
Signed-off-by: Hwangjae Lee <meetrick@gmail.com>
2025-12-28 10:26:03 +00:00
github-actions[bot]
751a985ea7 chore(deps): weekly cargo update (#20650)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-28 09:37:00 +00:00
YK
a92cbb5e8b feat(storage): add AccountsHistory RocksDB consistency check (#20594) 2025-12-28 01:59:02 +00:00
DaniPopes
e595b58c28 feat: switch samply feature for CLI flags (#20586) 2025-12-27 15:16:49 +00:00
oooLowNeoNooo
a852084b43 fix(chainspec): use lazy error formatting in chain spec macro (#20643) 2025-12-26 11:18:57 +00:00
David Klank
5260532992 fix(rpc): use EthereumHardforks trait for Paris activation check (#20641) 2025-12-26 11:17:11 +00:00
bigbear
ca6853edd6 chore(primitives-traits): correct set_timestamp parameter name and type (#20637) 2025-12-25 12:07:03 +00:00
Matthias Seitz
8ae7a1c8d1 chore: ignore RUSTSEC-2025-0137 (#20633) 2025-12-24 23:32:49 +01:00
forkfury
150fd62bab docs: remove outdated gas metrics TODO (#20631) 2025-12-24 18:53:50 +01:00
fig
5fce0fea5e chore: remove stale insert_block_inner todo (#20632) 2025-12-24 18:35:37 +01:00
Doohyun Cho
0b90a613e0 perf(witness): avoid unnecessary HashMap clone when converting to BTreeMap (#20590) 2025-12-24 13:29:50 +00:00
James Niken
4fb453bb39 refactor: deduplicate dev_mining_mode logic (#20625) 2025-12-24 12:54:59 +00:00
ligt
97f6db61aa perf(persistence): optimize append_history_index with upsert (#19825)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-12-24 12:40:23 +00:00
Vitalyr
8e975f940c docs: remove deprecated --disable-deposit-contract-sync lighthouse flag (#20591) 2025-12-24 12:33:05 +00:00
Gigi
3ec1ca58e0 docs(exex): correct comparison order in backfill docs (#20592) 2025-12-24 12:30:31 +00:00
stevencartavia
ad37490e7d feat: integrate newPayload into ethstats (#20584)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-24 07:56:26 +00:00
Matthias Seitz
334d9f2a76 chore: defense against new variant (#20600) 2025-12-23 16:34:24 +00:00
Matthias Seitz
6627c19071 chore: add metric for batch size (#20610) 2025-12-23 16:10:38 +00:00
Brian Picciano
0b6361afa5 feat(engine): Prefetch storage and accounts when BAL is provided (#20468) 2025-12-23 16:04:05 +00:00
joshieDo
cf457689a6 docs: add additional context to PruneSenderRecoveryStage (#20606) 2025-12-23 15:30:23 +00:00
Matthias Seitz
6c49e5a89d chore: release lock early (#20605) 2025-12-23 15:09:45 +00:00
Brian Picciano
b79c58d835 feat(trie): Proof Rewrite: Support partial proofs (#20336)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-12-23 12:42:07 +00:00
Sophia Raye
9f2aea0494 docs: add missing debug methods to pruning tables (#20601) 2025-12-23 12:34:58 +00:00
strmfos
ff2081dcf0 fix(exex): update lowest_committed_block_height in WAL cache on insert (#20548)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 10:58:03 +00:00
Lorsmirq Benton
66db0839a0 chore: prevent false-positive log in trie repair (#20589)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-12-23 08:22:59 +00:00
AJStonewee
f8b927c6cd refactor(stages): use LazyLock for zero address hash (#20576)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 08:20:45 +00:00
DaniPopes
8374646e49 chore: fix formatting in launch_node (#20582) 2025-12-23 08:18:40 +00:00
DaniPopes
353c2a7f70 fix(cli): remove unnecessary bound from Cli::configure (#20583) 2025-12-23 03:52:04 +00:00
Matthias Seitz
21934d9946 fix: fuse shutdown (#20580) 2025-12-23 01:09:45 +00:00
cui
538de9e456 feat: update fork id in discv5[WIP] (#19139)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 00:30:36 +00:00
forkfury
b9d14d4a54 chore: delete redundant todo comment (#20571) 2025-12-23 00:14:05 +00:00
Matthew Vauxhall
529aa83777 chore: remove block_to_payload_v3 (#20540)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 00:10:38 +00:00
DaniPopes
da10201b88 chore: minor reth-bench cleanup (#20577) 2025-12-22 23:56:36 +00:00
Arsenii Kulikov
eec76a3faf perf: spawn prewarm workers in parallel (#20575) 2025-12-22 20:41:52 +00:00
Arsenii Kulikov
5e4a219182 perf: spawn prewarming before multiproof (#20572)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-12-22 17:56:14 +00:00
AJStonewee
ccb897f9a0 refactor(stages): cache hashed address in storage hashing loop (#20318)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-12-22 16:05:46 +00:00
radik878
f9d872e9cb fix(net): correct config builder doc comments (#20299) 2025-12-22 16:00:47 +00:00
Matthias Seitz
642bbea2a8 perf: make BlockState::parent_state_chain return iterator (#20496)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-22 15:58:46 +00:00
fuder.eth
1c4233d1b4 chore: prevent false-positive log when peer not found in transaction propagation (#20523) 2025-12-22 15:55:41 +00:00
Lorsmirq Benton
eeb2d55f44 docs: add debug execution witness methods to pruning tables (#20561) 2025-12-22 15:53:58 +00:00
fig
96c77fd8b2 feat(storage): make insert_block() operate with references (#20504)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-22 15:13:43 +00:00
VolodymyrBg
ed7a5696b7 fix(engine): sync invalid header cache count gauge on hit eviction (#20567) 2025-12-22 14:59:18 +00:00
Brian Picciano
5a3cffa3e9 fix(stage): Don't clear merkle changesets in unwind near genesis (#20568) 2025-12-22 14:56:18 +00:00
YK
535d97f39e refactor(provider): extract heal_segment for NippyJar consistency (#20508) 2025-12-22 14:01:12 +00:00
DaniPopes
f3aea8dac0 chore: simplify size functions (#20560) 2025-12-22 11:14:50 +00:00
Matthias Seitz
807fac0409 chore: use clone_into_consensus (#20530) 2025-12-22 12:15:09 +01:00
Brian Picciano
7b2fbdcd51 chore(db): Remove Sync from DbTx (#20516) 2025-12-22 10:13:57 +00:00
Merkel Tranjes
3b8acd4b07 feat(payload): add transaction_count to ExecutionPayload trait (#20534) 2025-12-22 10:07:31 +01:00
YK
62abfdaeb5 feat(cli): add tracing-samply to profiling (#20546) 2025-12-21 11:52:26 +00:00
emmmm
256a9fdb79 docs: add missing trace methods to pruning tables (#20547) 2025-12-21 12:40:58 +01:00
github-actions[bot]
4d9aff99bf chore(deps): weekly cargo update (#20545)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-12-21 12:40:14 +01:00
Vitalyr
28bb2891bb refactor(consensus): simplify verify_receipts return (#20517) 2025-12-20 19:05:50 +01:00
kurahin
1d8f265744 chore(net): remove stale ECIES rand TODO (#20531) 2025-12-20 19:05:37 +01:00
Matthias Seitz
c754caf8c7 fix: remove stale blobs (#20528) 2025-12-20 15:35:22 +00:00
cui
e1b0046329 chore: remove todo after jovian fork (#20535)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-12-20 15:31:08 +00:00
cui
ddfe177578 chore: remove todo (#20533)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-12-20 15:19:53 +00:00
Gigi
178558c6d7 fix(tree): correct block buffer eviction policy comment (#20512) 2025-12-20 09:44:51 +00:00
Emilia Hane
f4d3a9701f chore(trie): Rm redundant clone of propagated error (#20466)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-20 08:42:20 +00:00
Gigi
42e41a9370 docs: add reth JSON-RPC namespace documentation (#20522) 2025-12-20 08:03:06 +00:00
pepes
a66dcce834 chore(evm): remove deprecated state_change compatibility alias (#20518) 2025-12-20 07:50:12 +00:00
Arsenii Kulikov
21d835cf2b perf: use LRU eviction policy for precompile cache (#20527) 2025-12-20 02:12:42 +00:00
Alexey Shekhirin
29438631be fix: propagate keccak-cache-global feature to reth-node-core (#20524) 2025-12-19 17:11:41 +00:00
Brian Picciano
0eb4e0ce29 fix(stages): Fix two bugs related to stage checkpoints and pipeline syncs (#20521) 2025-12-19 16:09:57 +00:00
gustavo
9147f9aafe perf(trie): remove more unnecessary channels (#20489) 2025-12-19 15:34:42 +00:00
Snezhkko
13b111e058 refactor: remove dead storage multiproof path (#20485) 2025-12-19 15:11:31 +00:00
leniram159
25c247b14c refactor(engine): simplify fork detection in insert_block (#20441) 2025-12-19 14:49:33 +00:00
Matthias Seitz
72bea44d8c chore: remove redundant num hash (#20501) 2025-12-19 14:48:42 +00:00
alex017
63b9d5fe57 refactor(db-api): remove redundant clone and unused import in unwind (#20499)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-19 14:47:11 +00:00
Arsenii Kulikov
30162c535e perf: properly share precompile cache + use moka (#20502) 2025-12-18 22:42:44 +00:00
Federico Gimenez
cd8fec3273 feat(stages): use EitherWriter for TransactionLookupStage RocksDB writes (#20428) 2025-12-18 21:34:17 +00:00
Tomass
1e38c7fea8 chore(hardforks): drop unnecessary field reassignment in TTD branch (#20457)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-18 21:02:56 +00:00
Block Wizard
4dfaf238c9 chore(net): fix misleading comment about uncompressed message size check (#19510) 2025-12-18 20:34:50 +00:00
forkfury
4cf36dda54 docs: correct FinishedStateUpdates message name (#20471) 2025-12-18 20:16:15 +00:00
phrwlk
41ce3d3bbf docs: fix Docker db-access troubleshooting example (#20483) 2025-12-18 20:13:01 +00:00
sashass1315
429d13772e chore(cli): correct p2p body error message (#20498) 2025-12-18 20:01:59 +00:00
Gigi
0cbf89193d docs: correct intra-doc link references (#20467) 2025-12-18 19:56:57 +00:00
radik878
0c3c42bffe chore(primitives-traits): correct SealedBlock::senders return description (#20465) 2025-12-18 19:56:22 +00:00
cui
cdbbd08677 fix: session config should be read from config file (#20484)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-12-18 19:53:18 +00:00
Alexey Shekhirin
4adb1fa5ac fix(cli): default to 0 genesis block number (#20494) 2025-12-18 15:07:59 +00:00
Brian Picciano
b3a792ad1e fix(engine): Use OverlayStateProviderFactory for state root fallback (#20462) 2025-12-18 14:30:11 +00:00
Arsenii Kulikov
98a7095c7a fix: properly determine first stage during pipeline consistency check (#20460) 2025-12-18 10:43:08 +00:00
Matthias Seitz
701e5ec455 chore: add engine terminate (#20420)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2025-12-18 09:01:36 +00:00
Lorsmirq Benton
8e00e81af4 docs: remove orphaned debug.mdx (#20474) 2025-12-18 04:14:23 +00:00
YK
453514c48f perf(engine): share Arc<ExecutionOutcome> to avoid cloning BundleState (#20448) 2025-12-18 01:07:18 +00:00
James Niken
432ac7afa1 chore: fix blob count in validation benchmark (#20456) 2025-12-18 00:51:45 +00:00
Emilia Hane
c7fca9f2b4 chore(node): Report actual gas price to ethstats (#20461)
Co-authored-by: Rifvck Zieger <rifvckzieger@gmail.com>
2025-12-18 00:50:16 +00:00
DaniPopes
715ca5b980 chore: simplify prewarm state providers (#20469) 2025-12-17 22:11:11 +00:00
Federico Gimenez
9ae62aad26 feat(storage): add method to check invariants on RocksDB tables (#20340) 2025-12-17 20:26:51 +00:00
YK
c65df40526 perf: remove redundant contains_key check in ProofSequencer::add_proof (#20459) 2025-12-17 13:58:59 +00:00
Vui-Chee
d8acc1e4cf feat: support non-zero genesis block numbers (#19877)
Co-authored-by: JimmyShi22 <417711026@qq.com>
2025-12-17 11:03:12 +00:00
sashass1315
852aad8126 docs(exex): document ChainRevert flow in how-it-works (#20455) 2025-12-17 10:28:49 +00:00
Karl Yu
61c072ad20 feat: add engine_getBlobsV3 method (#20451) 2025-12-17 10:15:49 +00:00
Lorsmirq Benton
6a5b985113 docs: remove orphaned recover CLI documentation (#20447) 2025-12-17 10:13:55 +00:00
joshieDo
1adc6aec00 chore(engine): extract on_persistence_complete (#20443) 2025-12-17 09:07:54 +00:00
Matthias Seitz
5edc16ad85 perf: only populate cache during prewarm (#20445) 2025-12-17 08:46:16 +00:00
phrwlk
f54a8a1ef5 fix(payload): clarify PayloadTransactions mark_invalid semantics (#20452) 2025-12-17 08:44:17 +00:00
leniram159
c681851ec8 chore: make docs correct (#20440)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-12-17 04:32:18 +00:00
DaniPopes
d964fcbcde chore: simplify execution state providers (#20444) 2025-12-16 22:52:57 +00:00
Alexey Shekhirin
e79691aae7 feat: turn on asm-keccak by default, use maxperf profile in Dockerfiles (#20422) 2025-12-16 22:43:20 +00:00
bigbear
4231f4b688 docs: fix incorrect API example in node-components.mdx (#20297) 2025-12-16 15:09:29 +00:00
Léa Narzis
0b607113dc refactor(era): make era count in era file name optional (#20292) 2025-12-16 15:08:43 +00:00
emmmm
be4dc53b92 docs: fix --color auto option description (#20352) 2025-12-16 15:06:04 +00:00
emmmm
4afb555d06 docs(opstack): document all rollup CLI arguments (#20374) 2025-12-16 15:04:34 +00:00
Matthias Seitz
ab2ef99458 chore: add keccak-global (#20418) 2025-12-16 14:59:09 +00:00
Sophia Raye
bfd4b79245 docs(trace): remove duplicate comment (#20360) 2025-12-16 14:56:01 +00:00
Federico Gimenez
49057b1c0c feat(storage): add with_default_tables() to register RocksDB column families at initialization (#20416) 2025-12-16 12:59:58 +00:00
Gigi
b6772370d7 docs: fix incorrect method reference in try_recover_sealed_with_senders (#20410) 2025-12-16 12:27:53 +00:00
Karl Yu
d72935628a feat: add support for eth/70 eip-7975 (#20255)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-16 12:05:11 +00:00
YK
ad63b135d6 feat(storage): implement EitherWriter/EitherReader methods for RocksDB (#20408) 2025-12-16 11:26:31 +00:00
Brian Picciano
90651ae8e8 feat(engine): Use BAL in state root validation (#20383) 2025-12-16 11:05:51 +00:00
Matthias Seitz
bbd51862d4 chore: rm flaky bench (#20413) 2025-12-16 09:35:38 +00:00
Arsenii Kulikov
08a16a5bde perf: recover transactions in parallel during network import (#20385) 2025-12-16 09:33:24 +00:00
Snezhkko
f2c39db7a2 chore(rpc): fix misleading link and comment (#20367) 2025-12-16 09:32:25 +00:00
oooLowNeoNooo
ae9e84d6e3 fix(discv4): correct ping_interval default value in docs (#20396) 2025-12-16 09:29:45 +00:00
theo
c51da593d1 feat(net/p2p): support fixed external addresses with DNS resolution (#20411) 2025-12-16 09:28:31 +00:00
Matthias Seitz
0e08f9f56c perf: remove unnecessary channels from parallel trie operations (#20406) 2025-12-16 09:15:27 +00:00
sashass1315
7eef092110 docs(exex): sync hello-world notifications loop with code (#20403) 2025-12-16 08:39:45 +00:00
YK
40e8241bf5 feat(storage): use RocksDBBatch in EitherWriter and related modules (#20377) 2025-12-16 03:57:41 +00:00
dependabot[bot]
dd9ff731e4 chore(deps): bump peter-evans/create-pull-request from 7 to 8 (#20402)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-16 00:11:22 +00:00
dependabot[bot]
83f9d1837f chore(deps): bump actions/download-artifact from 4 to 7 (#20401)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-16 00:11:00 +00:00
dependabot[bot]
68911e617b chore(deps): bump actions/upload-artifact from 5 to 6 (#20400)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-16 00:10:40 +00:00
0xcharry
36ba6db029 chore: remove redundant .as_str() calls after to_string() (#20404) 2025-12-16 00:10:03 +00:00
Matthias Seitz
fec4432d82 perf: defer transaction pool notifications until after lock release (#20405) 2025-12-15 23:06:34 +00:00
Matthias Seitz
179da26305 perf: use RwLock for transaction pool listeners (#20398)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-12-15 21:47:59 +00:00
Matthias Seitz
b5e7a694d2 chore: update metric once (#20371) 2025-12-15 20:38:24 +00:00
Maxim Evtush
9489667814 fix: post-state generator to include deletions in proptest (#20276) 2025-12-15 16:43:02 +00:00
gustavo
004877ba59 refactor(cli): cleanup repair-trie metrics (#20226) 2025-12-15 16:41:48 +00:00
Brian Picciano
a9e36923e1 feat(trie): Proof Rewrite: Use cached branch nodes (#20075)
Co-authored-by: YK <chiayongkang@hotmail.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-12-15 15:27:04 +00:00
DaniPopes
74a3816611 ci: reduce feature powerset depth (#20379) 2025-12-15 14:42:14 +00:00
Alexey Shekhirin
5576d4547f revert: feat(engine): run sync state root if not enough parallelism (#20127) (#20378) 2025-12-15 14:05:54 +00:00
DaniPopes
21216e2f24 perf: use indexed parallel iterators for tx recovery (#20342) 2025-12-15 13:40:03 +00:00
YK
42c1e1afe1 feat(storage): add account history constructors to EitherWriter/EitherReader (#20366) 2025-12-15 12:45:07 +00:00
MoNyAvA
5f7e87fa2a docs: add blob sub-pool to tx pool docs (#20375) 2025-12-15 12:27:54 +00:00
Matthias Seitz
1b417dacc4 chore: sanity check for u64::Max (#20373) 2025-12-15 11:33:50 +00:00
Niven
bb952be5b5 feat(flashblocks): support eth_getBlockTransactionCount for flashblocks (#20291)
Co-authored-by: lucas <66681646+limyeechern@users.noreply.github.com>
Co-authored-by: lucas.lim <lucas.lim@okg.com>
2025-12-15 11:29:23 +00:00
Federico Magnani
f927eec880 chore: export FlashBlockDecoder (#20370) 2025-12-15 11:00:46 +00:00
Tomass
9c61f5568c fix(rpc-testing-util): use buffer_unordered in trace_block_opcode_gas_unordered (#20369) 2025-12-15 10:38:40 +00:00
ligt
662c0486a1 feat(storage): add rocksdb provider into database provider (#20253) 2025-12-15 10:15:57 +00:00
Matthias Seitz
997848c2a1 fix(txpool): remove stale senderinfo (#20368) 2025-12-15 10:00:25 +00:00
Olexandr88
155bdecf3b docs(repo): add Ethereum-specific crates section (#20363) 2025-12-15 09:56:40 +00:00
github-actions[bot]
679234f105 chore(deps): weekly cargo update (#20359)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-12-14 20:54:42 +00:00
phrwlk
419c7b489b fix(rpc): remove dead flashbots module config (#20364) 2025-12-14 20:54:15 +00:00
Rej Ect
06dac07b5f ci(hive): bump actions/cache to v5 (#20349) 2025-12-13 09:04:07 +00:00
YK
5621132b8b feat: add RocksDB variant to EitherReader and EitherWriter (#20288) 2025-12-13 04:06:44 +00:00
Matthias Seitz
3380eb69c8 fix: only collect already tracked accounts (#20341) 2025-12-12 22:09:21 +00:00
Arsenii Kulikov
0366497ada perf: skip redundant recovery (#20343) 2025-12-12 22:01:05 +00:00
Alexey Shekhirin
cd71f3d5a4 feat(engine): record total latencies on instrumented state provider drop (#20337) 2025-12-12 21:14:44 +00:00
Alexey Shekhirin
64909d33e6 feat(engine): cli argument to disable state cache (#20143) 2025-12-12 17:51:22 +00:00
Alexey Shekhirin
3c9ad31344 chore(engine): make InstrumentedStateProvider public (#20335) 2025-12-12 16:41:42 +00:00
gustavo
f3e14fd061 feat(rpc): handle dedicated eth_simulate errors (#20099) 2025-12-12 16:40:13 +00:00
Alexey Shekhirin
daf6b88dc6 feat(node): engine args defaults (#20203) 2025-12-12 15:54:05 +00:00
emmmm
d2d58f9a0e docs: add missing RPC namespaces to JSON-RPC intro (#20321) 2025-12-12 15:40:38 +00:00
Matthias Seitz
ace4e515b5 chore: bump inspectors 0.33.2 (#20334) 2025-12-12 15:39:04 +00:00
Hesham Shabanah
134164954b feat: add --max-peers CLI flag (#20139)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-12 13:26:44 +00:00
Lorsmirq Benton
2775dd1f23 docs: correct comments in custom-inspector (#20304) 2025-12-12 13:21:03 +00:00
Alexey Shekhirin
ac0f9687bd chore(engine): move noisy multiproof debug logs to trace level (#20331) 2025-12-12 13:01:01 +00:00
Arsenii Kulikov
a9c21a395d perf: spawn rpc handlers as blocking (#20330) 2025-12-12 12:15:02 +00:00
Federico Magnani
df7ad9ae45 chore(ethapi): increase visibility tx_batch_sender (#20315)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-12 12:14:43 +00:00
sashass1315
5903e42a98 docs: refresh repo layout crate lists (#20319) 2025-12-12 10:59:57 +00:00
Matthias Seitz
3c41b99599 chore: lower block buffer size (#20324) 2025-12-12 08:15:54 +00:00
pepes
d70d80fff1 fix(docs): document discv5 discovery port 9200 (#20322) 2025-12-12 08:12:08 +00:00
gustavo
ed3a8a03d5 feat(node-core): make rpc server args customizable (#20312) 2025-12-11 23:24:31 +00:00
YK
bfcd46d01d feat: add account_history_in_rocksdb field to StorageSettings (#20282) 2025-12-11 19:37:36 +00:00
Brian Picciano
194d545fae feat(engine): Add BAL stub methods to ExecutionPayload and BlockOrPayload (#20311)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-11 19:07:43 +00:00
sashass1315
97243ec1f4 docs: fix misleading links (#20300) 2025-12-11 18:49:18 +00:00
DaniPopes
93c1b0f52f ci: add more sccache (#20316) 2025-12-11 18:46:11 +00:00
Arsenii Kulikov
474c09095f feat: bump alloy-evm (#20314) 2025-12-11 19:46:34 +01:00
Matthias Seitz
24c298133f feat: allow larger ws frames on client side (#20307) 2025-12-11 16:43:10 +00:00
Block Wizard
da27336a1e docs: add architecture diagrams to ExEx documentation (#20193)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-11 11:41:15 +00:00
Matthias Seitz
2e567d6658 feat: add semaphore for blocking IO requests (#20289) 2025-12-11 11:35:50 +00:00
Alexey Shekhirin
28e7c8a7cb ci: scale down depot runners (#20295) 2025-12-11 11:33:49 +00:00
Matthias Seitz
a2a5e03cb8 perf: fetch header directly (#20294) 2025-12-11 11:18:51 +00:00
Sophia Raye
6073aa5b4a docs(exex): fix DebugApi comment (#20296) 2025-12-11 10:06:31 +00:00
Karl Yu
e90cfedf3d feat: add support for testing_ rpc namespace and testing_buildBlockV1 (#20094)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-11 08:56:46 +00:00
Matthias Seitz
8b27ca6fa2 chore: update engine_getBlobs metric (#20290) 2025-12-11 08:11:54 +00:00
Tomass
1752d6fb99 chore(optimism): move predeploy constant to op-alloy (#20181)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-11 07:04:01 +00:00
emmmm
ac891a780b docs: fix stages order and add missing EraStage (#20283) 2025-12-11 06:26:27 +00:00
Adrian
036626b8a7 docs: improve map_add_ons method documentation (#20248) 2025-12-11 06:03:34 +00:00
josé v
68f0c9812f feat: add transaction_hash_numbers_in_rocksdb field to StorageSettings (#20209) 2025-12-11 01:07:12 +00:00
sashass1315
c9920c9690 docs: clarify network mode, tx gossip and NAT (#20247) 2025-12-10 21:52:04 +00:00
Karl Yu
af82606ff4 feat: add support for debug_getBadBlock (#20177)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-10 21:03:53 +00:00
radik878
38331a362e fix(rpc): avoid signing Optimism deposit transactions (#20254) 2025-12-10 20:46:43 +00:00
Tomass
e8dae2ae7d chore(deps): bump op-alloy to 0.23.0 (#20256)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-12-10 20:44:54 +00:00
Sophia Raye
ce5f90175b docs(jsonrpc): add missing debug namespace RPC methods (#20267) 2025-12-10 17:24:29 +00:00
gustavo
8c361c87c2 feat(txpool): handle more simulated scenarios in test_utils/pool.rs (#20138) 2025-12-10 17:13:59 +00:00
Block Wizard
4fbbb1fe54 feat: add recover_transactions_unchecked_ref to BlockBody (#20266) 2025-12-10 17:13:08 +00:00
Brian Picciano
b7d8815104 perf(prune): use delete_current_duplicates for MerkleChangeSets tables (#20230) 2025-12-10 13:33:11 +00:00
Alexey Shekhirin
b91cd8f451 ci: sccache (#20265) 2025-12-10 13:05:25 +00:00
Alexey Shekhirin
09aee4e35a ci: use 16 cores for Hive workflow (#20264) 2025-12-10 13:02:14 +00:00
Alexey Shekhirin
505a384b10 ci: increase partitions for crate-checks to 3 (#20261) 2025-12-10 13:02:11 +00:00
phrwlk
6e00b99b67 docs: use canonical --rollup.sequencer and note aliases (#20260) 2025-12-10 12:18:36 +00:00
emmmm
1d389cfe7a docs(jsonrpc): add missing debug namespace RPC methods (#20258) 2025-12-10 12:17:50 +00:00
Matthias Seitz
2e62387469 feat: use max retries for debug consensus rpc client (#20257) 2025-12-10 11:06:38 +00:00
Block Wizard
31133255fe docs(reth-bench): fix incorrect authrpc.jwtsecret flag (#20249) 2025-12-10 09:30:50 +00:00
Matthias Seitz
a6b9472d1c fix: use generic header (#20250) 2025-12-10 09:11:39 +00:00
forkfury
6636d2a2ad docs: fix timestamp validation comment (#20246) 2025-12-10 08:41:23 +00:00
YK
ab6854d159 docs(reth-bench): fix incorrect output flag in README (#20240) 2025-12-10 07:18:34 +00:00
Charlie-Mack
5a274fc939 feat: add example for launching a node with custom rpc middleware (#20159) 2025-12-10 07:15:46 +00:00
radik878
c9431b224b refactor(rpc): remove dead got_notif flag from RpcService batch handler (#20171) 2025-12-10 07:15:09 +00:00
emmmm
8cbfd91db0 docs: add missing bodies_history and merkle_changesets prune config fields (#20244) 2025-12-10 07:10:57 +00:00
Block Wizard
43f9942ba7 docs(txpool): fix PoolSize total field comment to include blob pool (#20241) 2025-12-10 07:05:42 +00:00
Léa Narzis
06adc3ee0c refactor(rpc): return error instead of clamping for get_filter_block_range (#20218) 2025-12-10 07:03:30 +00:00
dependabot[bot]
fbf6be4cf2 chore(deps): bump dawidd6/action-homebrew-bump-formula from 6 to 7 (#20205)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-10 07:01:28 +00:00
Forostovec
21d61d40d1 docs: document state and block overrides for trace_call (#20217) 2025-12-10 07:00:59 +00:00
YK
cf7d709358 perf(engine): batch multiproof messages (#20066)
Co-authored-by: 0xSooki <0xsooki@gmail.com>
2025-12-10 03:42:08 +00:00
Vitalyr
e9355caba5 feat(reth-bench-compare): add reth command to summary output (#20089) 2025-12-10 02:12:57 +00:00
Brian Picciano
fdd9d5bb40 docs(trie): correct TrieInput::extend_with_blocks docstring (#20225) 2025-12-10 02:03:42 +00:00
AJStonewee
9eeba7e6b3 feat(transaction-pool): add new_blob_pool_transactions_listener (#20216)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-12-09 23:41:00 +00:00
forkfury
0085acc868 docs: remove incorrect total_difficulty mention from process_iter (#20234)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-12-09 23:27:16 +00:00
Alexey Shekhirin
c697147f90 ci: use depot runners (#20222) 2025-12-09 23:03:44 +00:00
kurahin
7388d6636d docs(config): clarify PruneConfig::merge semantics (#20235) 2025-12-09 21:15:02 +00:00
SashaMalysehko
0b859c0735 fix(rpc): validate fee history reward percentiles (#20198) 2025-12-09 21:03:17 +00:00
yyhrnk
a8e0606fa7 fix(cli): reference correct --without-evm flag in init-state error (#20231) 2025-12-09 21:00:45 +00:00
Galoretka
969689d9b6 docs: add admin_peers and admin_clearTxpool sections (#20185) 2025-12-09 20:59:44 +00:00
Adrian
ad2081493a docs: add missing documentation for serde_bincode_compat::ExExNotification (#20236) 2025-12-09 20:59:05 +00:00
Brian Picciano
abfb6d3965 feat(cli): Allow walking a range of an MDBX table using db mdbx get (#20233) 2025-12-09 20:37:06 +00:00
Alexey Shekhirin
0f0eb7a531 feat(net): pool transactions import duration metric (#20228) 2025-12-09 13:57:01 +00:00
Alexey Shekhirin
4f1e486b4f feat(engine): execution wait, pre, post metrics (#20166) 2025-12-09 13:30:58 +00:00
Alexey Shekhirin
05307d088c perf(chain-state): executed_block_receipts_ref (#20227) 2025-12-09 13:08:15 +00:00
Arsenii Kulikov
245cca7ce2 perf: avoid collect in truncate_pool (#20221) 2025-12-09 11:08:21 +00:00
Arsenii Kulikov
28d6996fc4 feat: add helper method to eth validator (#20206) 2025-12-08 22:48:54 +00:00
Karl Yu
0eaffdf489 feat: add StorageSettings for StoragesHistory in RocksDB (#20154) 2025-12-08 22:22:36 +00:00
futreall
9c141cac4b fix(rpc): return error if toBlock exceeds current head (#20202) 2025-12-08 17:42:01 +00:00
Léa Narzis
fc6ab35c5c test(era): complete int tests with roundtrip mainnet era files (#20064) 2025-12-08 17:01:21 +00:00
joshieDo
f88bf4e427 fix: set merkle changesets distance minimum to 128 (#20200) 2025-12-08 16:10:11 +00:00
Matthias Seitz
3d330caf36 perf: avoid duplicate storage get call (#20180) 2025-12-08 16:02:22 +00:00
Matthias Seitz
5a43e77771 fix: trace filter range off by one (#20199) 2025-12-08 15:54:08 +00:00
forkfury
5b3c479ed5 feat(primitives-traits): add recover_transactions_ref to avoid cloning (#20187)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-08 14:51:07 +00:00
Matthias Seitz
dc06b47abe fix: make inserted blocks part of fcu canonical (#20164)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-12-08 14:06:39 +00:00
Arsenii Kulikov
e9cd7cc003 feat: parallelize recovery (#20169)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-08 14:05:37 +00:00
Alexey Shekhirin
f633efc969 ci: run on ubuntu instead of reth runner (#20196) 2025-12-08 14:30:20 +01:00
github-actions[bot]
2f55b1c30f chore(deps): weekly cargo update (#20174)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-12-07 11:15:14 +00:00
Matthias Seitz
3e96557e69 chore: featuer gate rocksdb (#20170) 2025-12-06 18:55:55 +00:00
sashass1315
8bd970bad8 fix: make get_exact error on missing blobs to match trait contract (#19347)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-06 17:32:19 +00:00
Fallengirl
d765521c3d chore(deps): clean up unused imports and dependencies in reth-downloaders (#19875) 2025-12-06 16:27:27 +00:00
Charlie-Mack
4bde1bb048 fix(node): Added missing trait bound on RethRpcAddOns for EthereumAddOns (#20155) 2025-12-06 16:20:35 +00:00
Tomass
9146ca4501 chore(optimism): deduplicate ADDRESS_L2_TO_L1_MESSAGE_PASSER (#20160) 2025-12-06 14:28:38 +00:00
sashass1315
6655a9377a docs: add architecture diagram for EVM node component (#20162) 2025-12-06 13:35:45 +00:00
stevencartavia
56e60a3704 feat: add merge_if_module_configured_with that accepts a closure (#20158) 2025-12-06 10:49:47 +00:00
cui
193af2219b feat: generate part of sidebar (#20040) 2025-12-06 10:16:09 +00:00
Léa Narzis
73b4fcc41a docs(era): use lighthouse decoding support for era types (#20147) 2025-12-06 10:15:16 +00:00
GarmashAlex
6fc752d66a docs: fix broken link (#20076) 2025-12-06 10:13:46 +00:00
Bashmunta
ed104a964a refactor(net): remove unused enable_packet_filter and ban_duration from config (#20146) 2025-12-06 08:02:44 +00:00
ligt
00ccb2b9b4 feat(persistence): implement RocksDB provider (#20071)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-12-05 20:29:19 +00:00
Matthias Seitz
addb51f2e2 chore: use drop guard for transact task (#20134) 2025-12-05 18:18:55 +00:00
Brian Picciano
a80c290ca0 feat(cli): repair-trie metrics (#20121) 2025-12-05 16:10:43 +00:00
Alexey Shekhirin
3830c765e0 feat(node): tx pool optional args defaults (#20142) 2025-12-05 15:55:18 +00:00
Matthias Seitz
190297083a chore: relax server impl (#20141) 2025-12-05 15:21:58 +00:00
Matthias Seitz
9712fe56e5 chore: add identifying info to traces (#20140) 2025-12-05 14:57:43 +00:00
Alexey Shekhirin
0a6d20bd1b feat(node): tx pool args defaults (#20136) 2025-12-05 13:27:25 +00:00
Arsenii Kulikov
4c17de8553 fix: add missing 2718 impl for receipt (#20137) 2025-12-05 12:49:49 +00:00
Matthias Seitz
a0dc85fc95 chore: bump revm inspectors (#20132) 2025-12-05 11:44:39 +00:00
Merkel Tranjes
3c1fc99600 perf(rpc): use maybe_cached_block_and_receipts for AtBlockHash (#19910)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-05 11:31:43 +00:00
Fallengirl
49059f500e fix(rpc): remove redundant blob_gas_used calculation in eth_callBundle (#20131) 2025-12-05 11:30:28 +00:00
Alexey Shekhirin
f744ad6e0b feat(engine): more engine execution tracing spans (#20135) 2025-12-05 11:16:38 +00:00
Alexey Shekhirin
cfde951976 feat(engine): run sync state root if not enough parallelism (#20127) 2025-12-04 22:59:00 +00:00
Arsenii Kulikov
07bca4f26a perf(engine): only recover senders once (#20118) 2025-12-04 20:43:51 +00:00
Arsenii Kulikov
9e1b2474b0 fix: change Receipt rlp (#20074) 2025-12-04 20:29:22 +00:00
Matthias Seitz
d71cd129a7 chore: allow empty blobparams in ethconfig (#20105) 2025-12-04 18:48:37 +00:00
Ignacio Hagopian
e53990cf41 fix(chainspec): add ChainConfig to StatelessInput and add ChainConfig creator helpers (#20101)
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2025-12-04 18:46:04 +00:00
Matthias Seitz
61f5b4e06f chore: add payload info to trace (#20124) 2025-12-04 17:42:09 +00:00
Matthias Seitz
1f7d552d63 test: ensure invalid block hook is opt out (#20125) 2025-12-04 17:38:54 +00:00
gustavo
b8f0b5d67e fix(rpc): improve/preserve error messages for TransactionConversionError (#20057) 2025-12-04 15:43:42 +00:00
Ignacio Hagopian
409b74fc36 feat(tests): add Osaka fork specification to ForkSpec enum (#20120) 2025-12-04 14:33:38 +00:00
0xMushow
282932d3eb fix(net): enforce stricter bound on check_peer_blocks (#20116) 2025-12-04 11:50:36 +00:00
Block Wizard
b6d886f288 docs(engine): fix transact_batch comment (#20097) 2025-12-04 11:44:08 +00:00
joshieDo
d6caf7f063 fix: set minimum pruning distance to 64 blocks for trie changesets (#20108) 2025-12-04 10:12:38 +00:00
gustavo
7b90bcd3e1 chore(docker): upgrade lighthouse image to version 8.0.1 (#20109) 2025-12-03 22:55:59 +00:00
Bashmunta
a68980dd72 fix(txpool): derive accurate queued reason for SubPool::Blob (#20095) 2025-12-03 22:03:37 +00:00
Matthias Seitz
4adf163fdc chore: add alias for flashblocks-url (#20093) 2025-12-03 20:17:34 +00:00
Matthias Seitz
7e6a59b6ac chore: make ethconfig work with headermut (#20102) 2025-12-03 17:16:18 +00:00
Matthias Seitz
0b3fc3019f chore: add helper fn for building pool (#20100) 2025-12-03 16:02:36 +00:00
Đạt Nguyễn
3a9dbdc840 feat(tx-pool): make metrics, listener structs, and fields public (#20087) 2025-12-03 10:50:50 +00:00
gustavo
af1e12fd43 chore(txpool): feature gate test (#20082) 2025-12-03 10:04:07 +00:00
Block Wizard
8fd86ba516 docs(metrics): fix mpsc copy-paste doc errors (#20085) 2025-12-03 10:03:40 +00:00
YK
e0a6f54b42 perf(trie): add HashedPostStateSorted::from_reverts (#20047) 2025-12-03 05:05:23 +00:00
Bashmunta
98e9a1d09e fix(ipc): make IpcServer Debug impl generic (#20042) 2025-12-02 15:08:02 +00:00
joshieDo
8f2811dd19 fix: ensure MerkleChangeSets pruner only runs if pipeline stage has finished (#20073) 2025-12-02 14:08:47 +00:00
dependabot[bot]
9260f2fe40 chore(deps): bump actions/upload-artifact from 4 to 5 (#20063)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-02 13:58:49 +00:00
Block Wizard
cefddbb39d docs(engine): fix canonical_block_by_hash comments (#20067) 2025-12-02 11:06:40 +00:00
strmfos
8f5b4ae324 fix(rpc): check correct variable for division by zero in blob gas ratio (#20053) 2025-12-01 11:57:51 +00:00
Block Wizard
cdb896f8de docs(trace): fix trace_callMany params structure and formatting inconsistencies (#20051) 2025-12-01 10:25:20 +00:00
github-actions[bot]
4f5b842543 chore(deps): weekly cargo update (#20043)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-11-30 10:06:57 +00:00
Arsenii Kulikov
b3c00ed602 fix: convert headers in newHeads (#20036) 2025-11-28 20:27:08 +00:00
Alexey Shekhirin
7922edf63d feat(storage): log storage settings on startup (#19931) 2025-11-28 20:01:59 +00:00
Matthias Seitz
93d81ed4d5 chore: add elapsed info to logs (#20035) 2025-11-28 19:42:48 +00:00
Galoretka
0334953357 docs: correct profiling feature name and jemalloc env var (#20030) 2025-11-28 16:34:41 +00:00
Francis Li
194a01adda feat(engine): Update execution cache on inserted executed blocks (#19822)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-28 14:32:15 +00:00
oxBoni
c5764f51bd chore: avoid cloning block range when ranking peers (#20033)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-28 14:12:44 +00:00
dependabot[bot]
6becc6bd60 chore(deps): bump dawidd6/action-homebrew-bump-formula from 5 to 6 (#19951)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-28 14:04:50 +00:00
ANtutov
56cb1581d6 chore(ethereum): avoid cloning requests in try_into_v4 (#19851) 2025-11-28 14:00:54 +00:00
gustavo
c6b1a45ce4 feat(txpool): add append_* helpers (#20028) 2025-11-28 13:59:43 +00:00
Vitalyr
b92741a1db refactor(tree): remove unnecessary block clone (#19848) 2025-11-28 13:57:52 +00:00
cui
ef0c1e2d50 fix: update sidebar.ts (#20032)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-11-28 13:10:21 +00:00
Matthias Seitz
44ba8eb640 chore: drop jar early (#20031) 2025-11-28 12:44:33 +00:00
Matthias Seitz
507becb451 docs: fix trace call docs (#20029) 2025-11-28 13:10:56 +01:00
cui
e910e58778 feat: docs for op-reth (#20024)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-28 11:41:27 +00:00
radik878
47e8f51627 fix(transaction-pool): Spawn ValidationTask to keep channel open (#19943)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-28 11:14:57 +00:00
ANtutov
813786247a docs(trace): fix trace_call method invocation table (#19977)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-28 11:12:22 +00:00
Bashmunta
c9e661658b perf: disable storage branch masks for non-target accounts (#19598) 2025-11-28 11:11:55 +00:00
sashass1315
2695f00b83 fix: propagate-only pending listener dropping promoted txs (#20013) 2025-11-28 10:09:28 +00:00
ANtutov
73117ecd0a fix(rpc): unify EthFilterConfig TTL default with constant (#20026) 2025-11-28 09:57:07 +00:00
Fibonacci747
b2fe49efd9 fix: remove dead resolved_links state from SyncTree and its usage (#20022) 2025-11-28 09:55:23 +00:00
Matthias Seitz
6446f404ff test: add helper for tracing a range of blocks (#19959) 2025-11-28 11:01:19 +01:00
Matthias Seitz
846ffc6f7e chore: consume result logs (#20025) 2025-11-28 10:53:18 +01:00
Tomass
36c62807dc fix(mev): correct refund calculation in sim_bundle (#19991) 2025-11-28 09:20:32 +00:00
YK
e8fd2eedfd perf(trie): compute and sort trie inputs async (#19894) 2025-11-28 06:10:59 +00:00
Matthias Seitz
65d75a77c0 fix(net): back off slightly after graceful connection termination (#20020) 2025-11-27 23:41:09 +00:00
phrwlk
ac6069e1e0 docs(jsonrpc/trace): document opcode gas endpoints (#20011) 2025-11-27 22:09:33 +00:00
Matthias Seitz
8621308952 fix: keep peer status unchanged on new discovered updates (#20018) 2025-11-27 19:37:53 +00:00
YK
6598b88e02 fix(bench-compare): filter empty strings from additional reth args (#20004) 2025-11-27 18:07:55 +00:00
Matthias Seitz
78f8dddfc2 chore: add additional peer manager logs (#20015) 2025-11-27 17:01:26 +00:00
Artyom Bakhtin
014f115c47 feat: Reproducible builds and *.deb packages (#19678)
Signed-off-by: bakhtin <a@bakhtin.net>
2025-11-27 11:35:22 +00:00
stevencartavia
07c5956ce7 chore: move CliHeader to primitives traits and rename to HeaderMut (#20001) 2025-11-27 09:43:55 +00:00
oxBoni
d3f6c4c666 chore: remove unused stream item generic from SyncListener future impl (#20003) 2025-11-27 09:43:47 +00:00
Fibonacci747
0f4d475223 fix: preserve basic nodes from peers file by avoiding peer_config overwrite (#19887)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-26 23:08:00 +00:00
gustavo
c037a57d05 perf(payload): move fields instead of cloning in PayloadBuilderStack::try_build (#19998) 2025-11-26 22:03:54 +00:00
Galoretka
1e4b15b6cc docs: document missing config sections and fields (#19996) 2025-11-26 21:58:39 +00:00
josé v
eab90f8fe6 chore: refactor pooled_transaction_hashes_max for early termination (#19999) 2025-11-26 21:56:29 +00:00
Matthias Seitz
8aad5a6006 chore: rm unused warnings (#19958) 2025-11-26 23:05:41 +01:00
Snezhkko
f386f96f1e perf(payload): move parent_header in PayloadBuilderStack::build_empty_payload (#19995) 2025-11-26 19:13:29 +00:00
Matthias Seitz
dc8c4eebdc feat: add helper for is nonce too low (#19993) 2025-11-26 19:12:35 +00:00
Matthias Seitz
5b9d8c5008 chore: add clone into pooled (#19989) 2025-11-26 15:38:02 +00:00
Brian Picciano
7345e1e5b5 feat(trie): Benchmarks comparing proof_v2 to "legacy" proof implementation (#19967)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-11-26 14:18:15 +00:00
stevencartavia
ac120ffd31 feat: introduce PayloadValidator::payload_to_block (#19953) 2025-11-26 11:26:57 +00:00
Matthias Seitz
2f58f67974 feat!: accept error by ref (#19981) 2025-11-26 10:04:20 +00:00
cui
c72644f867 fix: docs link in https://reth.rs/cli/cli (#19961) 2025-11-26 09:47:24 +00:00
Rej Ect
e62cb8f82b ci: update checkout action to v6 (#19930) 2025-11-26 09:46:58 +00:00
Matthias Seitz
0f11d469bb chore: extract notify event helpers (#19985) 2025-11-26 09:25:04 +00:00
Matthias Seitz
21a4b13828 feat: add next_tx_and_priority for Besttransactions (#19982) 2025-11-26 09:11:45 +00:00
Arsenii Kulikov
8528769896 fix: better RpcConvert bounds (#19980) 2025-11-25 23:17:11 +00:00
Matthias Seitz
acf2d948b6 chore: more txpool pub (#19978) 2025-11-25 20:52:42 +00:00
Matthias Seitz
587b1f45db chore: add helper for Chain (#19976) 2025-11-25 18:13:43 +00:00
Matthias Seitz
69b97e3f63 chore: make more pool internals pub (#19974) 2025-11-25 17:43:37 +00:00
Matthias Seitz
cb932b3f7d feat: add helper for TransactionValidationOutcome (#19973) 2025-11-25 17:19:41 +00:00
Matthias Seitz
52defdc479 feat: export validator (#19971) 2025-11-25 16:42:22 +00:00
Bashmunta
a3ee6b2761 chore: avoid redundant factory construction in witness/proof overlay init (#19969) 2025-11-25 16:25:24 +00:00
Matthias Seitz
8b38877797 chore: make fields pub (#19970) 2025-11-25 15:36:19 +00:00
Arsenii Kulikov
70b8724b8d feat: PoolTransaction::requres_nonce_check (#19968) 2025-11-25 14:40:58 +00:00
Matthias Seitz
d9d833f556 feat: make a few more things pub (#19966) 2025-11-25 14:20:50 +00:00
gustavo
edc31d23e2 feat(txpool): add total_other_transactions metric (#19965) 2025-11-25 13:59:30 +00:00
strmfos
87e2716f3f fix(net): correct Debug impl for StatusEth69 (#19963) 2025-11-25 11:58:02 +00:00
Brian Picciano
1b59cd2155 feat(trie): Proof V2: retain proof nodes which match targets (#19941)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-11-25 11:23:27 +00:00
YK
1c31abce27 fix(metrics): remove duplicate trie_input_duration recording (#19955) 2025-11-25 10:25:40 +00:00
emmmm
8c8efc6082 docs(consensus): fix misleading docstring in validate_4844_header_standalone (#19960) 2025-11-25 08:54:43 +00:00
Forostovec
c680d2e7bd docs: fix incorrect default values in configuration.mdx (#19936) 2025-11-25 08:33:44 +00:00
Dan Cline
a7bd7bd626 feat(cli): add db account-storage command (#19952) 2025-11-25 08:32:32 +00:00
Francis Li
ba862da221 feat(flashblock): Enable eth_getTransactionByHash support for flashblock (#19954)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-25 08:31:24 +00:00
Dan Cline
e57fe4510c docs(cli): remove reference to engine experimental (#19944) 2025-11-24 22:47:49 +00:00
Vitalyr
f2600ace51 chore: avoid needless clone in module array conversion (#19939) 2025-11-24 21:50:17 +00:00
Matthias Seitz
366f509b2f chore: spawn tx iter earlier (#19948) 2025-11-24 21:22:59 +00:00
Francis Li
118fd3b372 feat(flashblocks): Cache recent flashblocks (#19786)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-24 18:01:46 +00:00
cui
b546aca5c1 fix: npm run build failed in docs/vocs directory (#19937) 2025-11-24 16:35:38 +00:00
Acat
c7b689016a fix(txpool): ensure skipped high-priority transactions are tracked in BestTransactions (#19940) 2025-11-24 15:31:47 +00:00
Arsenii Kulikov
4467bc9f4b fix: correctly fetch pending hashes (#19938) 2025-11-24 14:36:43 +00:00
YK
c2d73988de chore(test): Increase timeout for ethereum e2e tests (#19933) 2025-11-24 11:30:30 +00:00
Arsenii Kulikov
c2912a7333 refactor(tracing): introduce DebugInspector (#19925) 2025-11-24 10:38:13 +00:00
David Klank
bd9e41c551 chore(era): move reth-ethereum-primitives to dev-dependencies (#19847) 2025-11-24 09:56:30 +00:00
cui
b6f62473e0 feat: update docs link in cli/SUMMARY.mdx (#19909) 2025-11-24 09:56:02 +00:00
Bashmunta
d429a665b2 chore: remove unused lifetime from map_internal_err impl (#19924) 2025-11-24 09:52:39 +00:00
Andrés David Ramírez Chiquillo
75af47c456 feat(payload): enforce Osaka validation for GetPayloadV4 (#19929) 2025-11-24 09:51:12 +00:00
YK
f1fc979116 feat(reth-bench-compare): add standard deviation metrics to comparison report (#19928) 2025-11-24 09:39:27 +00:00
Maximilian Hubert
d278b75c3a chore(stages): fix naming and simplify add_stages implementation (#19923) 2025-11-24 08:47:54 +00:00
Đạt Nguyễn
e03c9da85c refactor: remove unused add_transactions_with_origins trait (#19824) 2025-11-24 06:53:10 +00:00
Arsenii Kulikov
ee63c7d6b4 refactor: simplify rpc state provider traits (#19920) 2025-11-23 19:06:10 +00:00
Matthias Seitz
1702107028 feat: make txpool notify fns pub (#19918) 2025-11-23 14:07:59 +01:00
github-actions[bot]
32f0a74462 chore(deps): weekly cargo update (#19917)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-11-23 11:50:58 +00:00
Arsenii Kulikov
a83ac8cc63 refactor(e2e): relax bounds (#19913) 2025-11-23 13:05:48 +01:00
Léa Narzis
7f40013cf6 feat(tracing-otlp): make trace id ratio sample customizable with --tracing-otlp.sample-ratio arg (#19438) 2025-11-21 21:05:43 +00:00
Arsenii Kulikov
6e365949c4 feat: allow customizing dev block timestamp (#19904) 2025-11-21 20:38:20 +00:00
Léa Narzis
e15b404a30 feat(era-file): back to era file support (#19482) 2025-11-21 20:03:28 +00:00
Alexey Shekhirin
39ef6216fb feat(provider, static-file): transaction senders segment (#19508)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-21 19:34:16 +00:00
Francis Li
5e0732404c chore(op-alloy): update op-alloy to v0.22.4 (#19905) 2025-11-21 18:25:05 +00:00
gustavo
9f3949cd35 chore(examples): complete state_provider_example (#19903) 2025-11-21 15:58:49 +00:00
Mablr
b0494a158a chore(rpc-eth-types): use FillTransaction from alloy (#19890) 2025-11-21 15:52:28 +00:00
YK
002e755dd4 chore(bench-compare): Add latency distribution stats to reth-bench-compare (#19873)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-21 14:52:55 +00:00
Arsenii Kulikov
a43128277f fix: correctly poll tx fetcher (#19900) 2025-11-21 14:41:28 +00:00
Alexey Shekhirin
86825ac3b7 refactor(cli): deduplicate ethereum init_tracing implementations (#19898) 2025-11-21 14:23:57 +00:00
Alexey Shekhirin
0ba122923a ci: partition cargo-checks job (#19897) 2025-11-21 12:48:31 +00:00
Dan Cline
2a953a821a fix: remove noisy storage proof spans (#19892) 2025-11-21 11:48:32 +00:00
Matthias Seitz
cc7edeb354 chore: dont treat invalid fork as fatal (#19888)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-11-20 20:51:49 +01:00
gejeduck
9cdcc8e087 feat: respect BlockRangeInfo when selecting peer for request (#16704)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-20 18:19:11 +00:00
Merkel Tranjes
55dacfc739 chore: bump op-alloy deps to 0.22.3 (#19885) 2025-11-20 18:18:53 +00:00
stevencartavia
1ca4348db7 chore: replace op-reth OpReceipt with op-alloy's (#19846)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-11-20 15:59:21 +00:00
Léa Narzis
8c2b037c9a fix(era): fix roundtrip, decoding receipt for era mainnet test (#19862) 2025-11-20 14:49:01 +00:00
Brian Picciano
b72bb6790a feat(trie): Proof rewrite: implement stack-based algorithm for calculating trie nodes from leaves (#19863)
Co-authored-by: YK <chiayongkang@hotmail.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-20 13:37:55 +00:00
Arsenii Kulikov
c48aed264c refactor: tx policy traits (#19878) 2025-11-20 13:33:46 +00:00
gustavo
d550e4eb07 test(provider): remove stale todo (#19876) 2025-11-20 12:21:51 +00:00
Brian Picciano
c195aee2b2 feat(trie): Implement set_hashed_address on mock trie cursors (#19864) 2025-11-20 11:53:22 +00:00
Matthias Seitz
2e5a155b6d chore: use installed client name for start log (#19868) 2025-11-20 01:58:53 +00:00
Matthias Seitz
5b6ce8bd64 fix: ensure we poll again (#19866) 2025-11-20 00:11:32 +00:00
sashass1315
c75dc322d9 feat(rpc): warn when --ws.api is set but --ws is disabled (#19855) 2025-11-19 23:57:44 +00:00
Alexey Shekhirin
cfc34367fb feat(provider): change storage settings on existing nodes via CLI (#19771)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-11-19 22:47:28 +00:00
Alexey Shekhirin
17985b2c94 chore(engine, trie): cleanup traces (#19856) 2025-11-19 17:46:36 +00:00
Brian Picciano
c57792cff4 feat(trie): Implement skeleton of proof_v2 (#19687) 2025-11-19 16:33:05 +00:00
YK
e58aa09f82 perf(engine): return sorted data from compute_trie_input (#19340) 2025-11-19 16:01:24 +00:00
Xzavier
a72c1dab88 fix(net): resolve external ip on startup (#19852) 2025-11-19 15:50:14 +00:00
Dan Cline
65f72e3209 chore(trie): add spans for how long we wait on proofs in recv (#19859) 2025-11-19 15:49:35 +00:00
Alexey Shekhirin
819330c596 feat(engine): new payload last gas/s metric (#19853) 2025-11-19 12:43:34 +00:00
joshieDo
e93bd0a087 fix: ensure that pruning all rows doesn't leave the offset file corrupted (#19819) 2025-11-18 22:07:23 +00:00
joshieDo
d10070e6f4 fix: stage drop command shouldnt delete jars (#19817) 2025-11-18 22:07:18 +00:00
Dan Cline
a301276e4b feat(primitives-traits): add teragas (#19843) 2025-11-18 22:04:50 +00:00
Arsenii Kulikov
27d28e5e7d feat: EthApiError::from_revert (#19836) 2025-11-18 19:51:26 +00:00
Đạt Nguyễn
7a72550745 perf(rpc): reduce estimate gas trait bounds to EvmStateProvider (#19746) 2025-11-18 18:54:37 +00:00
strmfos
a812aea8d1 fix: correct argument order in save_diff calls for invalid block hooks (#19676) 2025-11-18 18:36:03 +00:00
joshieDo
982fa4829a chore: add logs to StaticFileProvider::check_consistency (#19816) 2025-11-18 18:31:22 +00:00
Forostovec
4836062d7b feat(node): remove unnecessary ConnWrapper clone in connect() (#19456) 2025-11-18 18:07:07 +00:00
Alexey Shekhirin
9dc6e256a9 feat(trie): record cursor metrics as span fields (#19830) 2025-11-18 15:15:13 +00:00
Bashmunta
02fc6af313 fix(rpc): metered getPayloadBodiesByHash timing to await before recording (#19827) 2025-11-18 15:12:04 +00:00
gustavo
90e265134f chore: document filter topic usage in db-access example (#19829) 2025-11-18 14:56:33 +00:00
Karl Yu
4f94fa240f feat: add helpers for testing rpc requests with prestate (#19790)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-18 15:34:34 +01:00
Matthias Seitz
69c219eede chore: bump version v1.9.3 (#19831) 2025-11-18 14:59:51 +01:00
joshieDo
9501b4b55a fix: ensure receipt consistency check is done over block number (#19723) 2025-11-18 11:00:57 +00:00
radik878
d997bd0634 docs(db): refresh db crate docs to current API and paths (#19818) 2025-11-17 23:55:40 +00:00
ANtutov
8020cf4494 fix(era-downloader): align checksums with file index in fs::read_dir (#19793)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-17 22:27:16 +00:00
Matthias Seitz
d726375d11 chore: remove flaky benches (#19804) 2025-11-17 22:27:10 +00:00
Matthias Seitz
e634dc46c8 fix: remove bad reset and cancel on drop (#19821) 2025-11-17 22:26:43 +00:00
Matthias Seitz
940be8a092 fix(net): use external ip for discv5 config (#19784) 2025-11-17 22:26:19 +01:00
Dan Cline
23eb96c209 fix(cli): always commit the unwind for stage run headers (#19768) 2025-11-17 19:26:46 +00:00
Matthias Seitz
2a16222ea1 revert: "perf(persistence): improve write batch for HashedPostState & TrieUpdatesSorted" (#19814) 2025-11-17 20:39:01 +01:00
Alexey Shekhirin
fb763edb43 refactor(provider): unify static file indexes into one struct (#19803) 2025-11-17 19:02:28 +00:00
Alexey Shekhirin
6fa11ff2f8 test(prune): fix bodies static files expected block range (#19811) 2025-11-17 17:45:59 +00:00
phrwlk
1568f4c451 perf(payload): remove string allocations and unused import (#19799) 2025-11-17 17:10:13 +00:00
YK
d5025392d0 perf(trie): optimize chunking configuration (#19800)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-11-17 15:47:24 +00:00
Forostovec
90621de27c fix(prune): avoid extra iterator consumption (#19758)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-17 15:43:47 +00:00
gustavo
adbc68c66c fix: add alloy-rlp dependency to testing-utils (test_sign_eip_155) (#19807) 2025-11-17 15:41:50 +00:00
joshieDo
cac2443dfc chore: add logs around commit and update_index on StaticFileProvider (#19802)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-17 14:51:11 +00:00
Andrés David Ramírez Chiquillo
ea794ff387 chore(provider): use parking_lot RwLock for overlay cache (#19798) 2025-11-17 14:40:49 +00:00
Matthias Seitz
4efd3f8882 chore(op-reth/scr): update superchain-registry (#19806)
Co-authored-by: theo <80177219+theochap@users.noreply.github.com>
2025-11-17 15:44:16 +01:00
YK
c5365de1fb chore(bench-compare): clarify percentage calculation method for final report (#19796) 2025-11-17 13:11:44 +00:00
Ligt Nguyen
65ca4a3afa perf(persistence): improve write batch for HashedPostState & TrieUpdatesSorted (#19739) 2025-11-17 12:56:41 +00:00
gustavo
4260ccd2b5 chore: remove unnecessary todos in witness_db (#19801) 2025-11-17 10:57:17 +00:00
YK
ab5c4452c1 chore: add code owners for reth-bench-compare (#19797) 2025-11-17 00:28:34 +00:00
Vaibhav Arora
af2cc34c36 docs: update rust version (#19789) 2025-11-16 23:59:19 +00:00
Merkel Tranjes
74d9e8b73a chore: inline hardcoded filter name in segment filename (#19420) 2025-11-16 23:57:59 +00:00
Forostovec
48624dcd8c fix(net): fix update_root ENR/LINK handling (#19620) 2025-11-16 23:55:53 +00:00
Fibonacci747
55875ec8a4 fix(transaction-pool): mark TransactionEvent::Invalid as final (#19782) 2025-11-16 23:43:52 +00:00
Léa Narzis
d66069deb0 feat(rpc-provider): add MeteredBatchRequests(Future) (#19779) 2025-11-16 23:26:53 +00:00
Gengar
d1084ca43a docs: clarify BetterPayloadEmitter emits both Better and Freeze outcomes (#19795) 2025-11-16 23:24:19 +00:00
forkfury
46aa02876d fix(tasks): prevent infinite recursion in TaskSpawner implementation (#19788) 2025-11-16 23:22:14 +00:00
sashass1315
2ade18d111 chore(payload): remove redundant attr clone (#19791) 2025-11-16 10:24:50 +00:00
Francis Li
5866a82516 feat(flashblock): improve state root calculation condition (#19667) 2025-11-16 10:22:59 +00:00
github-actions[bot]
a3cebced10 chore(deps): weekly cargo update (#19785)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-11-16 07:17:05 +00:00
Block Wizard
fce0825f81 fix(grafana): restore DS_PROMETHEUS placeholder replacement (#19773) 2025-11-15 09:30:53 +00:00
Jennifer
7fdd9c39e3 refactor: rename state_root span to await_state_root (#19769) 2025-11-14 22:56:44 +00:00
Alexey Shekhirin
860a453930 refactor(cli): db subcommands (#19754) 2025-11-14 22:37:01 +00:00
Brian Picciano
f88fae0ea1 perf(trie): Cache overlays in the OverlayStateProviderFactory (#19752) 2025-11-14 22:20:58 +00:00
Avory
60f663e5b4 fix(payload): emit events for Freeze payload outcomes (#19435)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-14 17:13:39 +00:00
Alexey Shekhirin
c78bca259e chore: replace labels in Grafana dashboard for docker compose (#19756) 2025-11-14 16:35:08 +00:00
Alex Pikme
9eff492d48 feat(flashblocks): add metrics for current block and index (#19712)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-14 15:23:46 +00:00
Alexey Shekhirin
b6e6bd35c0 refactor(stages): empty transactions range (#19753) 2025-11-14 15:11:34 +00:00
Avory
d150b0a39b docs: remove obsolete max_changesets documentation (#19731) 2025-11-14 14:57:01 +00:00
Arsenii Kulikov
63409fe650 chore: bump revm (#19757) 2025-11-14 14:33:40 +00:00
cui
7191e9ca10 feat: add --netrestrict to node cmd like in geth (#19686)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-14 13:08:51 +00:00
Gengar
a21a3cc0d6 docs: add comprehensive documentation for NodeType enum (#19740) 2025-11-14 13:00:37 +00:00
radik878
26f575440d docs(stages): align stages.md with current pipeline and PoS semantics (#19733) 2025-11-14 12:58:27 +00:00
YK
3ac5bf4dd1 feat(bench-compare): add configurable OTLP trace queue size (#19737)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-14 12:55:33 +00:00
Chad
cce85b310b feat: make PayloadBuilderArgs defaults customizable (#19696)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-11-14 12:52:28 +00:00
Fallengirl
60d5687dbd docs: resolve broken intra-doc link in transactions module (#19744) 2025-11-14 12:43:45 +00:00
Matthias Seitz
20270ec616 fix: add minbasefee for jovian attributes (#19726) 2025-11-14 12:02:20 +00:00
Matthias Seitz
fb8b28fced feat: add --skip-invalid-blocks (#19750) 2025-11-14 11:27:09 +00:00
Matthias Seitz
bc7803dbe0 chore: use hex! macro in chainspec tests (#19671) 2025-11-14 09:57:38 +00:00
Matthias Seitz
947b67e8c6 chore: reset log interval on new stats (#19693) 2025-11-14 09:55:33 +00:00
Brian Picciano
531c8f4ced feat(db): Add metrics/spans to OverlayStateProviderFactory (#19745) 2025-11-14 09:47:41 +00:00
Matthias Seitz
cfd0e3f5ed chore: improve test database error messages (#19557) 2025-11-14 09:40:44 +00:00
YK
6db85df46d fix(bench-compare): fix CSV parser schema (#19742) 2025-11-14 08:47:08 +00:00
Matthias Seitz
326165185d feat: add more block meta to comparison (#19722)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-14 00:47:28 +00:00
Dan Cline
2233f8661c feat(docs): Add section about setting up Jaeger and OTLP (#19628)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-13 23:37:52 +00:00
Mablr
bedbfb83f3 refactor(rpc-convert): move rpc conversion traits/impls to alloy-evm (#19616) 2025-11-13 23:01:43 +00:00
forkfury
ba84eeaccd docs(revm): document lifetime requirements for CachedReads wrappers (#19725) 2025-11-13 22:58:02 +00:00
youyyytrok
bff7ddcdf3 docs: fixed dead Sentry link (#19714) 2025-11-13 22:57:33 +00:00
oooLowNeoNooo
c51cf92db0 fix(stateless): export stateless_validation function (#19729) 2025-11-13 20:56:06 +00:00
Matthias Seitz
86246b6f4b fix: ensure open db tx is dropped (#19727) 2025-11-13 20:07:19 +00:00
Léa Narzis
96993dd073 refactor(era-downloader): support both era and era1 file types in downloader (#19617) 2025-11-13 19:26:21 +00:00
Ignacio Hagopian
c5b7d4a58a chore(stateless): show wrapped error message (#19716)
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2025-11-13 18:05:04 +00:00
Alexey Shekhirin
ce2dc9203b feat(cli): reth db static-file-header (#19719) 2025-11-13 17:48:53 +00:00
Brian Picciano
d77e4815c3 feat(bench): Disable log styling in reth-bench-compare sub-processes (#19718) 2025-11-13 16:52:59 +00:00
joshieDo
88d853e724 feat: always write receipts to static files on new nodes (#19399) 2025-11-13 16:37:30 +00:00
Arsenii Kulikov
ca33e8a457 chore: bump revm-interpreter (#19709) 2025-11-13 12:19:04 +00:00
David Klank
270fb977ba fix(db-api): resolve test compilation errors (#19704)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-13 09:39:06 +00:00
Fibonacci747
a96b22875b chore: remove redundant eth/68 NewPooledTransactionHashes length validation (#19708) 2025-11-13 09:29:21 +00:00
0xLogicalx
7a599dc130 chore: remove redundant clone in exex subscription RPC setup (#19699) 2025-11-13 00:09:19 +00:00
Alex Pikme
474351a929 feat(op-rpc): support batch rpc calls in historical forwarding (#19679)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-12 23:32:35 +00:00
Dan Cline
95d8916825 chore(engine): add basic tx result information to execution spans (#19698) 2025-11-12 23:08:11 +00:00
Dan Cline
75e9359fec chore(cli): disable long read transaction for db list and pipeline (#19694) 2025-11-12 21:19:02 +00:00
Merkel Tranjes
ec92a839fc refactor(stages): use named structs for ExecInput returns (#19689) 2025-11-12 17:54:07 +00:00
Brian Picciano
573191e1d1 chore(trie): Allow reusing Hashed/TrieCursors (#19588) 2025-11-12 17:31:04 +00:00
Alexey Shekhirin
95b8a8535b feat(stages): get transaction range starting from first available block (#19662) 2025-11-12 14:43:39 +00:00
Alexey Shekhirin
c57a5204c2 refactor(provider): explicit static file segment matches (#19664)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2025-11-12 14:31:48 +00:00
leniram159
6c1296da5d feat: support block number in required-block-hashes parameter (#18546)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-12 13:52:38 +00:00
Brian Picciano
3f1a7b37e9 chore(trie): Add metrics to track all cursor operations in proof workers (#19633) 2025-11-12 13:35:37 +00:00
Andrés David Ramírez Chiquillo
55a49080c6 feat(db): introduce --db.page-size argument (#19594) 2025-11-12 13:21:56 +00:00
phrwlk
40f89af926 chore: remove unused latest_update_kind from TxPool (#19634) 2025-11-12 13:20:36 +00:00
josé v
a7a4c3bf59 chore: make extra_data_size_limit configurable in EthBeaconConsensus (#19496) 2025-11-12 13:15:47 +00:00
Avory
abe6bf6125 fix(stages): implement floor rounding for percentage in no_std mode (#19675) 2025-11-12 12:57:32 +00:00
Merkel Tranjes
54cca9efd0 fix(hardforks): don't print pre-merge section if empty (#19654)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-12 12:52:43 +00:00
Francis Li
12fd25892d refactor(flashblock): Move all flashblocks related data structure to op-alloy (#19608) 2025-11-12 12:26:42 +00:00
strmfos
43407d47f9 fix: require config path when not using --default (#19632) 2025-11-12 12:16:34 +00:00
Fibonacci747
385fcddbe0 fix(ethstats): prevent shutdown on read errors (#19672) 2025-11-12 12:15:08 +00:00
cui
8479f286ea feat: add --p2p-secret-key-hex which is similiar nodekeyhex in geth (#19670)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-11-12 12:15:03 +00:00
Delweng
d9537a416a feat(rpc): debug_traceCall support TxIndex (#18477)
Signed-off-by: jsvisa <delweng@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-12 11:49:04 +00:00
Arsenii Kulikov
bacb3522bb chore: bump revm v33 (#19674) 2025-11-12 11:46:40 +00:00
Salman Pathan
7b89167ce1 chore: add target: flashblock for all flashblock related traces (#19656) 2025-11-12 11:07:21 +00:00
Karl Yu
56ded417e9 feat: limit handling of incoming txs to trusted peers (#19666)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-12 10:45:26 +00:00
bigbear
2e5f6f8323 fix: preserve parent beacon root in pending env (#19645) 2025-11-12 09:29:43 +00:00
Matthias Seitz
b3c3affc5f chore: downgrade noisy log (#19660) 2025-11-12 09:28:26 +00:00
Alexey Shekhirin
64f33cf648 feat(node): allow to configure blocks per file for static file segments (#19562) 2025-11-12 09:23:08 +00:00
Hai | RISE
967edb541e fix: fix new casting error in signal handler (#19669) 2025-11-12 10:34:21 +01:00
Hai | RISE
ef2d9da53b fix(tree-engine): also update in-memory tree when there are attributes in an unwind forkchoice (#19668) 2025-11-12 10:34:00 +01:00
Alexey Shekhirin
01f497bc49 test(static-file): segment header serialization roundtrip and snapshots (#19657) 2025-11-11 20:02:09 +00:00
Alexey Shekhirin
151ae651ad ci: use macos-14 runner (#19658) 2025-11-11 18:37:19 +01:00
Alexey Shekhirin
c780256158 feat(cli): log warning if otlp feature is not enabled (#19648) 2025-11-11 16:38:47 +00:00
Ragnar
3c39444597 fix(stages): correct tip_tx field comment in PipelineBuilder (#19655) 2025-11-11 16:00:28 +00:00
YK
3a672ee0a4 feat(bench-compare): add OTLP tracing support for baseline/feature comparison (#19626) 2025-11-11 15:49:48 +00:00
YK
08dc9cb096 fix(metrics): move trie_input_duration recording to capture full setup (#19649) 2025-11-11 15:47:48 +00:00
Abhivansh
9bc2bf23f4 refactor: capped to to best_block (#19640) 2025-11-11 12:59:30 +00:00
Alexey Shekhirin
087b1665f1 chore: bump version to 1.9.2 (#19647) 2025-11-11 13:22:42 +01:00
Alexey Shekhirin
93003560cf revert: "refactor(prune): remove receipts log filter segment (#19184)" (#19646) 2025-11-11 12:01:39 +00:00
stevencartavia
5f6229fc56 feat: add support for eip-7872 Max blob flag for local builders (#19614) 2025-11-11 10:33:35 +00:00
Alexey Shekhirin
1c256b00ff refactor(provider): introduce EitherWriter::new_receipts (#19600) 2025-11-11 10:29:20 +00:00
YK
4621456ef9 feat(bench-compare): add block range to comparison report (#19643) 2025-11-11 09:31:37 +00:00
Dan Cline
cbc80bab7f chore(static-file): add note on underscores in names (#19639) 2025-11-10 22:18:43 +00:00
rakita
7b3300841f chore: bump op-revm v12.0.2 patch (#19629) 2025-11-10 14:53:28 +00:00
pepes
21b9e3af50 fix: log correct account worker count (#19619) 2025-11-10 12:16:04 +00:00
Matthias Seitz
2e5ac1ce13 chore: add feature propagation to sdk (#19627) 2025-11-10 11:52:30 +00:00
Léa Narzis
b539348bb5 feat(cli): add cli flag --txpool.disable-blobs-support to disable blob support (#19559)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-09 19:32:14 +00:00
Gengar
db1737ea87 docs(chainspec): improve fork_id and satisfy documentation (#19523) 2025-11-09 19:24:46 +00:00
github-actions[bot]
9a0418032d chore(deps): weekly cargo update (#19607)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-09 11:57:19 +00:00
Adrian
a07b83f2fd fix(chainspec): use correct Jovian timestamp constant for Base Sepolia test (#19606) 2025-11-09 11:57:06 +00:00
YK
4b8d2e8774 fix(codspeed): add harness = false for update benchmark in reth-trie-sparse (#19599) 2025-11-08 14:08:48 +00:00
Dan Cline
43e5cc7989 chore(trie): add number of target slots to storage proof span (#19590) 2025-11-08 08:37:32 +00:00
sashass1315
414e995c3d fix(storage): propagate IO errors in parse_accounts to avoid silent partial imports (#19582) 2025-11-08 06:34:20 +00:00
stevencartavia
ec7e8d450b chore: remove unused event variant in ConsensusEngineEvent enum (#19596) 2025-11-08 06:02:47 +00:00
Micke
32a80e8c49 perf(trie): replace static Vec with const slice for empty updates (#19499) 2025-11-07 17:55:00 +00:00
joshieDo
177ad4c0b8 chore: remove duplicated provider method transaction_block (#19585) 2025-11-07 15:03:39 +00:00
Brian Picciano
7faddbaaee chore(trie): Use Vec<Option<...>> in HashedPostStateCursors (#19487)
Co-authored-by: Francis Li <francis.li@uniswap.org>
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-11-07 14:05:22 +00:00
Alexey Shekhirin
5006d5fa87 chore: bump version to 1.9.1 (#19578)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-07 12:08:22 +00:00
Alexey Shekhirin
b0310d1394 feat(engine): metric for time diff between newPayload end and next forkchoiceUpdated start (#19577) 2025-11-07 11:53:44 +00:00
Alexey Shekhirin
05cc14f547 chore: use instance label in Grafana dashboard (#19573) 2025-11-07 11:47:17 +00:00
Brian Picciano
b48c72fad2 chore: BuiltPayloadExecutedBlock (#19430) 2025-11-07 09:16:55 +00:00
Matthias Seitz
4394860df4 ci: add independent tagging options (#19574) 2025-11-07 09:48:43 +01:00
YK
5464312672 fix(bench-compare): validate remote git references (#19569) 2025-11-07 08:10:16 +00:00
Matthias Seitz
9f9ab671c3 ci: tag (#19572) 2025-11-07 09:17:44 +01:00
rakita
42ac2aaeb6 chore: bump revm v31.0.1 (#19567) 2025-11-07 08:34:56 +01:00
Vitalyr
4d258cb98d fix: update docs and arg comments (#19537)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-07 00:31:09 +00:00
Matthias Seitz
f69c544da6 refactor: replace GenericArray with regular arrays in ECIES (#19563) 2025-11-06 23:43:58 +00:00
Matthias Seitz
e813681c5d feat(debug): re-establish block subscription (#19550) 2025-11-06 23:05:11 +00:00
Alexey Shekhirin
3385ec5e6e test(static-file): StaticFileSegment string and serde roundtrips (#19561) 2025-11-06 22:34:13 +00:00
MIHAO PARK
7ade95e9fa chore(consensus): update GasLimitInvalidIncrease/GasLimitInvalidDecrease error msg (#18561)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-06 21:53:45 +00:00
Arsenii Kulikov
4d9d712b43 refactor: provide default implementation for send_raw_transaction (#19564) 2025-11-06 21:33:57 +00:00
phrwlk
cb78b9da67 fix(net): preserve ECIESError in connect_without_timeout (#19558)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-06 21:26:07 +00:00
Alexey Shekhirin
7997cd4283 chore(provider): exhaustive segment match in static files check (#19556) 2025-11-06 18:06:43 +00:00
Alexey Shekhirin
27cf27a984 refactor(provider): introduce EitherWriter (#19554) 2025-11-06 17:36:03 +00:00
Erce Can Bektüre
a6c0ac8cf4 fix: Update filter last poll timestamp in filter logs (#19549) 2025-11-06 16:20:50 +00:00
Snezhkko
04093cc3be fix(prune): use saturating_sub in PruneLimiter::deleted_entries_limit_left (#19535) 2025-11-06 15:49:08 +00:00
Alexey Shekhirin
c5870312e4 feat(static-file): dynamic static file size (#19381) 2025-11-06 14:34:05 +00:00
Andrés Ramírez-Chiquillo
d81d547c93 docs: explain default db size and error in CLI help (#19533)
Co-authored-by: ¨Andrurachi¨ <¨andruvrch@gmail.com¨>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-06 13:33:15 +00:00
phrwlk
65acaf330e fix: remove redundant header insertion in extend_blocks and tests (#19534) 2025-11-06 12:51:18 +00:00
Karl Yu
9d9c1d2824 feat: add capabilities to fetch Peer type (#19543) 2025-11-06 12:16:32 +00:00
Alexey Shekhirin
4f1f2d8033 ci: check that Grafana dashboard doesn't contain DS_PROMETHEUS (#19541) 2025-11-06 11:39:04 +00:00
Alexey Shekhirin
671c690cc1 chore: add new engine metrics to dashboard, fix multiproof charts (#19540) 2025-11-06 11:39:01 +00:00
Alexey Shekhirin
b947455061 refactor(provider, cli): simplify getting provider for index or range (#19440) 2025-11-06 11:34:51 +00:00
Alexey Shekhirin
e5c47fe350 feat(provider): configurable blocks per static file segment (#19458) 2025-11-06 10:53:38 +00:00
David Klank
7cc4fdfaeb fix(stages-types): resolve compilation errors in tests (#19501) 2025-11-06 10:35:22 +00:00
Brian Picciano
ea4a686e86 fix(trie): InMemoryTrieCursor case where all DB nodes are deleted (#19464) 2025-11-06 09:19:39 +00:00
Avory
791de250d7 perf(era-utils): avoid unnecessary PathBuf clone in export (#19530) 2025-11-06 09:04:24 +00:00
oooLowNeoNooo
0928059f5c fix: replace unreachable libmdbx documentation URL (#19532) 2025-11-06 08:24:25 +00:00
Alexey Shekhirin
99fe175823 feat(engine): record newPayload/forkchoiceUpdated metrics outside of RPC (#19522) 2025-11-06 07:47:03 +00:00
joshieDo
e20e56b75e feat: add Metadata table and StorageSettings to ProviderFactory (#19384) 2025-11-06 00:39:49 +00:00
Léa Narzis
e3b38b2de5 chore(era): move era types to era module (#19527) 2025-11-05 19:42:07 +00:00
Fibonacci747
ba8be3fb64 feat(optimism): Simplify trait bounds in revalidate_interop_txs_stream (#19500) 2025-11-05 17:16:57 +00:00
Maxim Evtush
2bcd7388d7 docs: fix license links in README.md (#19519) 2025-11-05 17:16:04 +00:00
Léa Narzis
2ba17cf10d refactor(era): move era types and file handling to new module (#19520) 2025-11-05 17:07:45 +00:00
David Klank
629363a6ea refactor: use Url::as_str() directly in era modules (#19485) 2025-11-05 17:07:10 +00:00
Alexey Shekhirin
11d28b1abb chore: use dashboard variable in main Grafana dashboard (#19518) 2025-11-05 15:48:01 +00:00
Léa Narzis
1b5f1293bc refactor(era): move to e2s module e2s types and file handling (#19490) 2025-11-05 15:40:32 +00:00
Matthias Seitz
84785f025e chore: bump v1.9.0 (#19507) 2025-11-05 13:33:46 +00:00
Matthias Seitz
5b062b21e1 chore: bump hardforks (#19506) 2025-11-05 12:30:37 +00:00
Cypher Pepe
1cd5b50aaf fix: dead link Sentry (#19505) 2025-11-05 11:54:27 +00:00
Matthias Seitz
89be06f6ad chore: bump version 1.8.4 (#19503) 2025-11-05 12:38:37 +01:00
Matthias Seitz
644ecce821 chore: bump min ckzg (#19504) 2025-11-05 11:10:16 +01:00
Matthias Seitz
b90badbe6d fix: skip code check in get_transaction_by_sender_and_nonce (#19502) 2025-11-05 09:49:17 +00:00
josé v
f4715ee62f chore: add custom hardforks example (#19391)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-04 23:50:41 +00:00
Avory
8ac37f3c67 docs(banlist): document timeout update behavior on re-ban (#19497) 2025-11-04 23:19:08 +00:00
Matthias Seitz
3ae73e63e5 perf: improve ethsendrawsync for op with flashblock (#19462)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-11-04 20:48:55 +00:00
theo
c3a60fa75a chore(op-reth/scr): update superchain-registry configs. Commit 9e3f71cee0e4e2acb4864cb00f5fbee3555d8e9f (#19495) 2025-11-04 18:39:34 +00:00
Matthias Seitz
fdcc540492 fix: spawn block fetching blocking (#19491)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-11-04 17:52:09 +00:00
Arsenii Kulikov
29761637ef fix: use cost when checking fee cap (#19493) 2025-11-04 18:17:22 +01:00
Alexey Shekhirin
5a6d3ddcad feat(reth-bench-compare): upstream from personal repo (#19488)
Co-authored-by: Claude <noreply@anthropic.com>
2025-11-04 15:10:05 +00:00
Brian Picciano
dd25caec12 chore: Various cleanups after consistent DB view removal (#19489) 2025-11-04 14:49:12 +00:00
sashass1315
583eb837f0 docs(trie): fix PrefixSetMut docs and freeze() comment (#19467) 2025-11-04 14:27:12 +00:00
Karl Yu
736a730a32 feat: support pending block tag in eth_getLogs for flashblocks (#19388)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-04 14:02:50 +00:00
Matthias Seitz
2cb4e1bd2a perf: use latest hash directly (#19486) 2025-11-04 13:30:42 +00:00
Matthias Seitz
6021a68dab perf(rpc): use cache for latest block and receipts (#19483) 2025-11-04 10:08:52 +00:00
Block Wizard
44e99e56f0 fix(net): remove capacity inflation from buffered blocks size calculation (#19481) 2025-11-04 09:05:27 +00:00
Matthias Seitz
f3cf8d5e10 feat: add helper to disable discovery (#19478) 2025-11-04 08:51:33 +00:00
Matthias Seitz
a311423292 chore: add queued reason to event (#19476) 2025-11-04 00:35:39 +00:00
Matthias Seitz
0c00c1b48a chore: add --miner.gaslimit alias (#19475) 2025-11-04 00:35:07 +00:00
Doryu
3f2432761b chore: Remove unused jsonrpsee tracing import in exex subscription example (#19448) 2025-11-03 21:40:55 +00:00
MIHAO PARK
bb694fb576 chore(grafana): deduce label by aggregate metrics (#18550) 2025-11-03 20:41:23 +00:00
joshieDo
c9897ad230 fix: update min_block on StaticFileProvider::update_index (#19469) 2025-11-03 19:53:10 +00:00
MIHAO PARK
66957c7902 chore(node): compact duration formatting in stage progress logs (#18720) 2025-11-03 19:47:35 +00:00
Matthias Seitz
24fa984da4 chore: add js-tracer feature to bins (#19441) 2025-11-03 19:25:50 +00:00
Matthias Seitz
93649fed0b chore: bump revm 31 (#19470)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-11-03 18:49:08 +00:00
Brian Picciano
846025545c fix(db): OverlayStateProviderFactory: default validation lower bound to 0 (#19468) 2025-11-03 17:14:45 +00:00
Matthias Seitz
a0eccf7128 chore: use name const for cli name (#19466) 2025-11-03 17:06:48 +00:00
Matthias Seitz
ea69063aae feat: schedule fusaka (#19455) 2025-11-03 16:51:46 +00:00
Alexey Shekhirin
7438bdbdf6 refactor(prune): derive EnumIter instead of explicit array of segments (#19465) 2025-11-03 15:28:14 +00:00
Matthias Seitz
7905fba953 feat: add broadcast channel for received flashblocks (#19459)
Co-authored-by: Federico Gimenez <fgimenez@users.noreply.github.com>
2025-11-03 12:55:36 +01:00
Matthias Seitz
1e8f35c046 feat(op-reth): add FlashblocksListeners container and receipt helpers (#19446)
Co-authored-by: Claude <noreply@anthropic.com>
2025-11-03 09:30:20 +00:00
sashass1315
714ebf749c fix: avoid unnecessary self.clone() in OpNetworkBuilder::network_config (#19451) 2025-11-03 08:52:49 +00:00
Matthias Seitz
1e27e73494 chore: add config_mut helpers (#19436) 2025-11-03 09:51:54 +01:00
github-actions[bot]
0bca7b150d chore(deps): weekly cargo update (#19443)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-11-02 10:01:04 +00:00
Brian Picciano
780161a647 chore: OverlayStateProviderFactory: don't query for reverts unless necessary (#19412) 2025-11-01 15:13:51 +00:00
Matthias Seitz
e6aeba0d7d feat: support custom Download command defaults (#19437) 2025-11-01 10:51:46 +00:00
William Nwoke
dee0eca4d9 feat(tasks): distinguish blocking and non-blocking tasks in metrics (#18440)
Co-authored-by: Nathaniel Bajo <nathanielbajo@Nathaniels-MacBook-Pro.local>
Co-authored-by: Emilia Hane <emiliaha95@gmail.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-31 16:32:30 +00:00
Alexey Shekhirin
5f04690e28 revert: "feat: Add building and publishing of *.deb packages (#18615)" (#19011) 2025-10-31 16:30:47 +00:00
MIHAO PARK
71c124798c perf(cli): optimize StorageChangeSets import in merkle stage dump (#18022)
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-31 16:08:07 +00:00
anim001k
dff382b8e2 fix: Inline value match in SparseTrie::find_leaf to remove redundant wrapper (#19138)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-31 16:06:06 +00:00
FT
d8729a9d2c chore(docker): remove apt-get upgrade to ensure reproducible and faster builds (#19080) 2025-10-31 16:04:54 +00:00
oooLowNeoNooo
a5eb01b26b fix: rename variable in block_hash method from 'code' to 'hash' (#19269) 2025-10-31 16:00:06 +00:00
Alexey Shekhirin
a43345b54c perf(tree): only chunk multiproof targets if needed (#19326) 2025-10-31 15:45:03 +00:00
Ragnar
e894db8e07 perf: optimize SyncHeight event handling to avoid recursive calls (#19372)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-31 15:44:14 +00:00
bigbear
b05eb5f793 fix(txpool): correct propagate field name in Debug output (#19278) 2025-10-31 15:36:22 +00:00
Micke
1c5c709d61 chore(codecs): replace todo with unimplemented in Compact derive (#19284) 2025-10-31 15:32:28 +00:00
Avory
3bb90e64a2 fix(beacon-api-sidecar): use correct block metadata for reorged blobs (#19424) 2025-10-31 15:08:45 +00:00
Matthias Seitz
ecd49aed11 perf: only chunk if more > 1 available (#19427) 2025-10-31 15:03:10 +00:00
Udoagwa Franklin
af9b04c1a3 feat(op-reth): implement miner_setGasLimit RPC (#19247)
Co-authored-by: frankudoags <frankudoags.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-31 15:02:51 +00:00
Alexey Shekhirin
1f2f1d432f feat(node): CLI argument for sync state idle when backfill is idle (#19429) 2025-10-31 14:16:27 +00:00
Matthias Seitz
9f4f66dd8e perf: bias towards proof results (#19426) 2025-10-31 12:48:33 +00:00
Brian Picciano
728e03706c feat(reth-bench): Default --wait-time to 250ms (#19425) 2025-10-31 12:39:40 +00:00
Gengar
b6be053cbe fix(codecs): return remaining slice in EIP-1559 from_compact (#19413) 2025-10-31 11:55:19 +00:00
Matthias Seitz
8a72b519b2 chore: add count field to trace (#19422) 2025-10-31 11:53:01 +00:00
Brian Picciano
4d437c43bf fix: Properly set MerkleChangeSets checkpoint in stage's fast-path (#19421) 2025-10-31 10:56:37 +00:00
Ragnar
60fba66a4f fix(compact): prevent bitflag overflow by using usize accumulator (#19408) 2025-10-31 09:32:51 +00:00
Eric Woolsey
d29370ebf8 chore: update superchain reg to c9881d543174ff00b8f3a9ad3f31bf4630b9743b (#19418) 2025-10-31 09:09:29 +00:00
Yash
cff942ed0e chore: add tracing features to node-core crate (#19415)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-31 00:01:32 +00:00
Forostovec
6fafff5f14 fix: highest_nonces update in PendingPool::remove_transaction (#19301)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-30 20:43:11 +00:00
Wojtek Łopata
dc8efbf9b3 feat: add --rpc.evm-memory-limit flag (#19279)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-30 19:53:43 +00:00
Skylar Ray
fccf76a19a fix(engine): remove redundant parent_to_child cleanup in insert_executed (#19380) 2025-10-30 18:51:27 +00:00
Lancelot de Ferrière
59bf11779c feat: Output the block execution outputs after validating (reth-stateless) (#19360) 2025-10-30 15:50:29 +00:00
sashass1315
e9400527cd chore(net): avoid cloning GetBlockBodies request (#19404) 2025-10-30 15:12:10 +00:00
leniram159
5f5dbb0121 fix: accurate build features reporting in reth --version (#19124) 2025-10-30 14:48:30 +00:00
Brian Picciano
d87d0d1a1f fix: Prune checkpoint fixes (#19407) 2025-10-30 13:40:18 +00:00
Federico Gimenez
be291144ee fix(engine): trigger live sync after backfill completes at finalized (#19390) 2025-10-30 12:55:32 +00:00
Emilia Hane
7c007f7cda fix(cli): Metrics log when passed metrics port 0 (#19406)
Co-authored-by: Varun Doshi <doshivarun202@gmail.com>
2025-10-30 11:50:19 +00:00
Matthias Seitz
bec4d7c436 perf: box ForkId in Peer struct to reduce size (#19402) 2025-10-29 23:50:39 +00:00
Matthias Seitz
3fa10defd1 chore: bump discv5 (#19400) 2025-10-29 22:06:03 +00:00
Forostovec
f303b28974 chore: reuse gzip read buffer to avoid per-iteration allocation (#19398) 2025-10-29 22:02:30 +00:00
strmfos
b15c285310 perf(codecs): avoid String allocation in proc macro type checking (#19354) 2025-10-29 21:11:13 +00:00
Matthias Seitz
752891b7cb chore: fix unused warning (#19395) 2025-10-29 22:19:42 +01:00
Matthias Seitz
e808b9ab8f chore: fix unused dep (#19397) 2025-10-29 22:19:29 +01:00
leniram159
be50b284b3 feat: display blob params alongside hardfork info (#19358) 2025-10-29 20:34:31 +00:00
Galoretka
1ed41d5151 chore(primitives-traits): gate test-only modules (#19393) 2025-10-29 20:24:40 +00:00
theo
7dc07e8258 feat(jovian/rpc): update receipts to transmit over RPC with Jovian compatible fields (#19368)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-29 20:22:54 +00:00
Dan Cline
7989c7094b docs: fix otlp flag in monioring docs (#19394) 2025-10-29 20:09:43 +00:00
Avory
715369b819 docs: improve RESS protocol module documentation (#19370) 2025-10-29 16:36:02 +00:00
Merkel Tranjes
ea2b26f46a fix: remove PersistenceState from TreeCtx (#19356) 2025-10-29 16:32:43 +00:00
phrwlk
dbc93466ca fix(engine): align compute_trie_input docs with actual persistence behavior (#19385)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-10-29 15:55:35 +00:00
theo
1114a9c07e feat(precompiles/jovian): add jovian precompiles to op-reth (#19333)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-29 17:02:57 +01:00
Mablr
66cfa9ed1a feat(rpc): implement debug_dbGet (#19369) 2025-10-29 15:45:58 +00:00
Jennifer
30942597db fix: add more context to expected hive failures (#19363)
Co-authored-by: rakita <rakita@users.noreply.github.com>
2025-10-29 15:31:35 +00:00
theo
8a795e7d40 feat(jovian/timestamps): add jovian timestamps to op-reth (#19290) 2025-10-29 16:28:17 +01:00
Brian Picciano
d5a7ecf45a chore: Update nix flake (#19386) 2025-10-29 14:39:03 +00:00
emiliano-conduitxyz
5a4287aa6d fix(op-reth): use latest for runtime image (#19331) 2025-10-29 14:35:42 +01:00
Brian Picciano
6659080dc0 fix: Don't always clone in-memory overlays in OverlayStateProviderFactory (#19383) 2025-10-29 13:18:26 +00:00
Matthias Seitz
caaedfadcb chore: bump 1.8.3 (#19379) 2025-10-29 13:07:30 +01:00
joshieDo
644be05659 feat: add pruning of transactions from static-files (#19241) 2025-10-29 11:50:51 +00:00
Brian Picciano
527c24df6d fix(trie): use block hash in OverlayStateProviderFactory (#19353) 2025-10-29 10:34:51 +00:00
Đạt Nguyễn
17a984929b feat: impl a function to create new instance of TransactionEvents (#19375)
Co-authored-by: Neo Krypt <neo@canxium.org>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-29 10:00:37 +00:00
Karl Yu
3827e5cb1d perf: wrap tx with Arc to avoid deep cloning (#19350) 2025-10-29 08:30:29 +00:00
YK
10d9a7e3c6 refactor(trie): restructure proof task workers into structs (#19344) 2025-10-29 08:09:39 +00:00
theo
77ef028aca fix(op-reth/consensus): fixes header validation for jovian. decouple excess blob gas and blob gas used (#19338) 2025-10-29 07:39:29 +00:00
Matthias Seitz
ff46daddb6 feat: insert at timestamp (#19365) 2025-10-28 20:29:26 +00:00
Mablr
adb4f48471 feat(reth-optimism-node): Add OP E2E mineblock test with isthmus activated at genesis (#19305) 2025-10-28 20:13:44 +00:00
Matthias Seitz
6651ae7852 chore: add ChainHardforks::extend (#19332) 2025-10-28 20:36:23 +01:00
joshieDo
ac4f80ded3 chore: dont write receipts to both storages on archive node (#19361) 2025-10-28 17:22:20 +00:00
Matthias Seitz
3ce6e87ab9 chore: update docs for expected test failure (#19343) 2025-10-28 16:07:39 +00:00
joshieDo
020eb6ad7e fix(pipeline): ensure we dont pass an outdated target to header stage (#19351) 2025-10-28 15:02:19 +00:00
YK
5091482dec refactor(trie): reorder proof_task.rs for better code organization (#19342) 2025-10-28 11:14:08 +00:00
Avory
0f3e0eee63 refactor: make DatabaseProof trait stateful (#18753) 2025-10-28 10:14:07 +00:00
Francis Li
5e2ed163f3 fix(engine): Eliminates spurious warning logs in prewarm task (#19133)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-28 09:27:33 +00:00
dependabot[bot]
0da38b9732 chore(deps): bump actions/download-artifact from 5 to 6 (#19336)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-28 09:23:53 +00:00
dependabot[bot]
e547c027f3 chore(deps): bump actions/upload-artifact from 4 to 5 (#19335)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-28 09:22:33 +00:00
YK
7e6f676d16 feat(metrics): improve multiproof worker metrics (#19337) 2025-10-28 09:00:22 +00:00
YK
e2b5c7367c chore: update Grafana dashboard with split pending multiproof metrics (#19339) 2025-10-28 06:44:19 +00:00
josé v
50e88c29be chore: replace CacheDB with State<DB> in RPC crate (#19330)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-10-27 22:00:58 +00:00
Jennifer
1581aaa615 fix: update section name in expected failures, add more concise comments (#19328) 2025-10-27 21:46:29 +00:00
Brian Picciano
ffeaa4772d chore(engine): Remove ConsistentDbView (#19188)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-27 19:09:21 +00:00
Mablr
a264ccbbc2 feat(metrics): add push gateway support for Prometheus metrics (#19243) 2025-10-27 17:11:23 +00:00
Dan Cline
b1dfbc7e88 chore: remove trie capacity metrics (#19327) 2025-10-27 17:07:37 +00:00
Gengar
0569e884c4 docs: improve documentation for mock database and transactions (#19302) 2025-10-27 15:59:48 +00:00
theo
f9c89a9bc9 feat(jovian/block-validation): fix block validation for jovian (#19304) 2025-10-27 15:59:04 +00:00
Brian Picciano
7e59141c4b fix(trie): Rewrite InMemoryTrieOverlay (with proptests!) (#19277) 2025-10-27 15:18:48 +00:00
Alexey Shekhirin
080cf72464 chore(trie): reduce sparse trie tracing (#19321) 2025-10-27 15:16:56 +00:00
phrwlk
a6fe713a6c chore: remove dead OpL1BlockInfo.number field and writes (#19325) 2025-10-27 14:42:55 +00:00
YK
eed0d9686c refactor(trie): Unify proof return types (#19311) 2025-10-27 13:58:28 +00:00
Brian Picciano
fa1f86cb91 fix(prune): Add unused variants back to PruneSegment enum (#19318) 2025-10-27 13:12:22 +00:00
radik878
f088ec09cb docs(eth-wire): update docs to reflect eth-wire-types, alloy_rlp, version-aware decoding, and RLPx multiplexing (#19319) 2025-10-27 11:58:55 +00:00
Matthias Seitz
106ffefc0f chore: use hex bytes type (#19317) 2025-10-27 12:57:44 +01:00
Gengar
bb73d794fd docs: populate modify-node section with node-custom-rpc implementation guide (#18672) 2025-10-27 12:57:27 +01:00
sashass1315
19f5d51d86 chore: remove redundant PhantomData from NodeHooks (#19316) 2025-10-27 11:41:48 +00:00
Brian Picciano
be73e4a246 fix(trie): Fix trie_reverts not returning sorted nodes (#19280) 2025-10-27 10:48:17 +00:00
Alexey Shekhirin
6b3534d407 ci: pin Bun to v1.2.23 (#19315) 2025-10-27 10:32:37 +00:00
Alexey Shekhirin
763bf350be chore(net): upgrade some noisy spans to TRACE (#19312) 2025-10-27 10:02:52 +00:00
VolodymyrBg
094594142f fix(engine): module doc to reflect schnellru::LruMap backend (#19296) 2025-10-27 11:18:10 +01:00
Maximilian Hubert
4f660dac85 fix(fs): correct ReadLink error message and add missing read_link wra… (#19287) 2025-10-27 11:17:29 +01:00
Galoretka
74cc561917 chore(ethereum): remove redundant std::default::Default import (#19299) 2025-10-27 11:16:16 +01:00
guha-rahul
ded9d3ce33 refactor: add more Snap response types (#19303)
Co-authored-by: suhas-sensei <suhas.ghosal2002@gmail.com>
2025-10-27 10:49:39 +01:00
YK
53119fd5a1 refactor(trie): rename queue_storage_proof to send_storage_proof (#19310) 2025-10-27 10:49:04 +01:00
github-actions[bot]
159ff01cd2 chore(deps): weekly cargo update (#19300)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-10-26 16:37:00 +00:00
phrwlk
e22a511764 fix(node): classify connect_async failures as WebSocket and use Url parse error (#19286) 2025-10-25 06:37:22 +00:00
Alexey Shekhirin
0c8417288b feat(tracing): set default OTLP log level to WARN (#19283) 2025-10-24 18:39:08 +00:00
Alexey Shekhirin
25f0d896d9 chore(trie): do not create a parent span for proof worker handle (#19281) 2025-10-24 15:57:51 +00:00
AJStonewee
f177103937 fix(trie): correct comment in sparse_trie_reveal_node_1 test (#19193) 2025-10-24 15:13:12 +00:00
Alexey Shekhirin
dc781126c2 feat(trie): proof task tracing improvements (#19276) 2025-10-24 14:04:01 +00:00
Jennifer
a69bbb3d7b fix: hive tests consume test suite (#19240)
Co-authored-by: Federico Gimenez <federico.gimenez@gmail.com>
2025-10-24 13:50:53 +00:00
YK
f29f4caf0e perf: Eliminate spawn_blocking in multiproof manager (#19203) 2025-10-24 11:56:57 +00:00
Galoretka
b88b46ac1f fix(optimism): guard follow-up inserts by payload_id to prevent mixed sequences (#19264) 2025-10-24 11:48:29 +00:00
0xeabz
a767fe3b14 feat: allow using SafeNoSync for MDBX (#18945)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-24 11:25:14 +00:00
Dan Cline
4a24cb3b49 fix(engine): re-insert storage cache and use arc (#18879) 2025-10-24 09:32:55 +00:00
josé v
ddcfc8a440 chore: add add_or_replace_if_module_configured method (#19266) 2025-10-24 09:31:22 +00:00
strmfos
51fbd5a519 fix: no_std compatibility in reth-optimism-chainspec (#19271) 2025-10-24 08:36:30 +00:00
Yash
08fc0a918d feat: eth_fillTransaction (#19199)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Co-authored-by: jxom <7336481+jxom@users.noreply.github.com>
2025-10-24 08:16:21 +00:00
radik878
189b00b1e6 chore(net): remove unnecessary TODO (#19268) 2025-10-23 20:03:16 +00:00
joshieDo
5a9c7703d1 chore: rm StaticFileReceipts pruner (#19265) 2025-10-23 18:44:06 +00:00
joshieDo
3883df3e6c chore: remove db pruning of header/txs segments (#19260) 2025-10-23 17:20:55 +00:00
Arsenii Kulikov
4adfa286f7 fix: return hashed peer key as id (#19245) 2025-10-23 16:17:26 +00:00
Léa Narzis
6739914ce7 feat(otlp-tracing): enable to export traces with grpc export with tracing-otlp and tracing-otlp-protocol arg (#18985) 2025-10-23 14:44:24 +00:00
Dan Cline
7b7f563987 fix(engine): shrink tries after clearing (#19159) 2025-10-23 14:38:32 +00:00
Alexey Shekhirin
81b1949c3c fix(cli): prune CLI argument names (#19215) 2025-10-23 16:06:04 +02:00
Ragnar
f3b9349d6f docs: add usage examples and documentation to NoopConsensus (#19194) 2025-10-23 13:34:51 +00:00
Alexey Shekhirin
3d3a05386a refactor(static-file): remove unused segments (#19209) 2025-10-23 13:31:15 +00:00
Fallengirl
75931f8772 chore: align env filter comment with configured directives (#19237) 2025-10-23 13:13:03 +00:00
Matthias Seitz
c54719145b fix: use known paris activation blocks in genesis parsing (#19258) 2025-10-23 12:43:56 +00:00
Roman Hodulák
71f91cf4eb feat(prune): Add an empty reth-prune-db crate (#19232) 2025-10-23 11:43:24 +00:00
Matthias Seitz
ce876a96ad fix: use network id in p2p command (#19252) 2025-10-23 13:39:12 +02:00
Fallengirl
b2236d1db7 docs: correct Payment tx type from 0x7E to 0x2A (#19255) 2025-10-23 13:20:59 +02:00
YK
4548209e7b perf: rm pending queue from MultiproofManager (#19178) 2025-10-23 07:19:21 +00:00
Alexey Shekhirin
f8845c6fbb fix(engine): payload processor tracing event targets (#19223) 2025-10-23 04:36:16 +00:00
theo
bcef01ce47 feat(jovian): track da footprint block limit. Update basefee calculation (#19048)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-10-22 23:28:23 +00:00
Matthias Seitz
346ef408a4 chore: swap order for canon stream (#19242) 2025-10-22 20:38:53 +00:00
radik878
4f6cc7a359 fix(node): remove unused ConsensusLayerHealthEvent variants (#19238) 2025-10-22 18:20:25 +00:00
Dan Cline
1972ec0949 revert: "fix(engine): flatten storage cache (#18880)" (#19235) 2025-10-22 16:33:54 +00:00
Federico Gimenez
8119045258 chore(e2e): relax bounds (#19231) 2025-10-22 16:29:55 +00:00
Alexey Shekhirin
fa2f173aac chore(storage): remove UnifiedStorageWriterError (#19210) 2025-10-22 16:10:33 +00:00
Jennifer
bab9dee555 fix: rename consume-* test suite (#19230) 2025-10-22 15:16:29 +00:00
Roman Hodulák
df0da36bc4 test(hive): Ignore new failures that are won't fix (#19218) 2025-10-22 15:04:08 +00:00
Matthias Seitz
f438a6cc83 chore: add elapsed info log (#19211) 2025-10-22 15:02:37 +00:00
wizard
b9f6068f59 fix: incorrect RPC namespace reference (#19225) 2025-10-22 14:04:10 +00:00
Matthias Seitz
778146cb01 chore: use retrylayer for benchmarkcontext (#19227) 2025-10-22 13:36:49 +00:00
Brian Picciano
47dc43287f fix(reth-bench): Lower block channel capacity and make it configurable (#19226) 2025-10-22 13:27:03 +00:00
Brian Picciano
712569d4ce feat: warning log when blocked on execution cache (#19222) 2025-10-22 13:04:16 +00:00
Brian Picciano
35b28ea543 fix: OverlayStateProviderFactory: validating trie changeset range and revert target (#19207) 2025-10-22 12:30:26 +00:00
greg
7a98145def fix: captured impl trait lifetime (#19216)
Signed-off-by: Gregory Edison <gregory.edison1993@gmail.com>
2025-10-22 11:58:01 +00:00
Matthias Seitz
56d8cea939 chore: only alloc required capacity (#19217) 2025-10-22 11:40:56 +00:00
Matthias Seitz
bb620736b9 perf: check prewarm termination multiple times (#19214) 2025-10-22 11:29:00 +00:00
Arsenii Kulikov
0ea75f5edf fix: small features fix (#19212) 2025-10-22 11:21:59 +00:00
Alexey Shekhirin
b5df3f31b2 refactor(prune): remove receipts log filter segment (#19184) 2025-10-22 10:22:11 +00:00
robinsdan
4d3c163120 perf(net): convert Bytes to BytesMut to avoid reallocation (#19204) 2025-10-22 08:46:26 +00:00
Alexey Shekhirin
ada053aa67 chore: remove rkrasiuk from codeowners (#19206) 2025-10-22 10:10:47 +02:00
YK
60e3eded5e refactor: decouple max proof task concurrency from inflight proof limits (#19171) 2025-10-22 06:53:55 +00:00
Dan Cline
e810df943b feat(engine): improve payload validator tracing spans 2 (#19155) 2025-10-21 22:14:16 +00:00
Avory
c6af584b00 docs: improve SealedBlockRecoveryError documentation (#19120) 2025-10-21 19:19:56 +00:00
Merkel Tranjes
1d58ae1ff8 feat: improve oversized data error message (#19190) 2025-10-21 19:15:13 +00:00
Dmitry
ba6d593aa0 chore: fix misleading log message for body size check (#19173) 2025-10-21 19:13:25 +00:00
Alex Pikme
876346d143 fix: add arrayvec to dev-dependencies in reth-trie-common (#19192) 2025-10-21 19:12:57 +00:00
Matthias Seitz
21785a30e8 test: add node record parse test (#19172) 2025-10-21 21:20:09 +02:00
Matthias Seitz
2c086f0ed3 chore: rm generic array dep from discv4 (#19140) 2025-10-21 21:18:45 +02:00
0xsensei
563ae0d30b fix: drop support for total difficulty table (#16660)
Co-authored-by: Aditya Pandey <adityapandey@Adityas-MacBook-Air.local>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: joshieDo <93316087+joshieDo@users.noreply.github.com>
2025-10-21 16:55:08 +00:00
maradini77
645672916a fix: remove unnecessary trait bounds in extend_sorted_vec helper (#19154) 2025-10-21 15:53:08 +00:00
Federico Gimenez
01820fdaf7 feat(e2e): add builder API for configuring test node setups (#19146) 2025-10-21 13:04:19 +00:00
Brawn
93b63bc765 chore: fix incorrect hex value in comment (0x2A instead of 0x7E) (#19181) 2025-10-21 12:45:37 +00:00
David Klank
dbceffdcf4 refactor(ipc): simplify RpcServiceCfg from enum to struct (#19180) 2025-10-21 12:37:58 +00:00
Arsenii Kulikov
936baf1232 refactor: remove FullNodePrimitives (#19176) 2025-10-21 12:05:38 +00:00
Alexey Shekhirin
7263a7b4eb fix(cli): prune config saving to file (#19174) 2025-10-21 11:59:11 +00:00
joshieDo
e21048314c chore: remove total difficulty from HeaderProvider (#19151) 2025-10-21 10:56:36 +00:00
MozirDmitriy
f0c0b3db4e feat(storage): replace unreachable todo!() with explicit unreachable!() in compact derive (#19152) 2025-10-21 10:21:36 +00:00
Alex Pikme
792b82d895 perf: fix redundant Arc clone in file_client tests (#19170) 2025-10-21 10:48:46 +02:00
Dan Cline
49bbcdc38c chore: rm high frequency otel-related debug logs (#19147) 2025-10-20 17:09:57 +00:00
Brian Picciano
915b627f4f fix: Revert "feat(engine): improve payload validator tracing spans (#18960)" (#19145) 2025-10-20 16:06:23 +00:00
malik
e198a38d62 perf: batch byte for serialization (#19096)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-20 15:04:31 +00:00
0xMushow
be2306da31 chore(config): clean up gas limit code (#19144) 2025-10-20 14:41:10 +00:00
Skylar Ray
90e0d37367 fix: remove tautological assertions in validator tests (#19134) 2025-10-20 14:19:55 +00:00
Brian Picciano
6ee53922d0 fix(prune): Disable pruning limits (#19141) 2025-10-20 14:05:16 +00:00
Arsenii Kulikov
20f807778d Revert "refactor: unify Pipeline creation codepaths" (#19143) 2025-10-20 13:15:10 +00:00
Brian Picciano
ca19c19b38 chore: fix+update nix flake (#19142) 2025-10-20 13:04:05 +00:00
Brian Picciano
8eb5461dad chore(trie): Add lifetime to cursors returned from Trie/HashedCursorFactorys (#19114) 2025-10-20 12:18:24 +00:00
Andrew Huang
79c11ff567 fix: Add support for init-state for op-reth chains that are not op-mainnet… (#19116)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-20 14:06:15 +02:00
Arsenii Kulikov
c5a52c7d44 fix(e2e): gracefully wait for payload (#19137) 2025-10-20 10:50:51 +00:00
Matthias Seitz
11c449feb0 feat: add helper apply fns (#19122) 2025-10-20 09:29:09 +00:00
leopardracer
e185025447 fix: Remove duplicate debug log in write_blocks_to_rlp (#19132) 2025-10-20 10:57:03 +02:00
github-actions[bot]
2f9281b6c1 chore(deps): weekly cargo update (#19126)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-19 18:44:55 +02:00
Micke
67bf37babd chore: remove redundant collect in debug trace (#19121) 2025-10-18 17:17:43 +02:00
GarmashAlex
10ed1844e4 fix(net): correct error messages for decrypt and header paths (#19039) 2025-10-18 17:11:15 +02:00
Matthias Seitz
a718752bf5 chore: fix clippy (#19118) 2025-10-18 11:22:02 +02:00
Dmitry
a8ef47d14c docs: fix wrong label for --color=auto (#19110)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-18 11:21:10 +02:00
Ignacio Hagopian
46228d0a18 feat(stateless): make UncompressedPublicKey serializable (#19115)
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
2025-10-18 10:41:56 +02:00
GarmashAlex
8d91b9e443 feat(cli): Reuse a single StaticFileProducer across file import chunks (#18964)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-18 10:34:29 +02:00
Dan Cline
63f560705c feat: add capacity metrics for tries (#19117) 2025-10-18 09:56:56 +02:00
Alexey Shekhirin
4a32bc0fe5 feat(engine): improve payload validator tracing spans (#18960)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-10-17 21:20:12 +00:00
Arsenii Kulikov
a5618f57a8 feat: convert pooled blobs transition (#19095) 2025-10-17 17:34:38 +00:00
leopardracer
6a918f4cab fix: Deduplicate hashed storage preparation in MemoryOverlayStateProvider (#19087) 2025-10-17 15:48:22 +00:00
YK
d1f6637a5a refactor: naming fix for multiproof dispatch (#19102) 2025-10-17 15:46:17 +00:00
Dharm Singh
1b830e9ed1 feat: derive dev accounts from mnemonic in dev mode (#18299)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-10-17 15:19:21 +00:00
Matthias Seitz
928d91dbf9 chore: add comment section for claude (#19108) 2025-10-17 14:45:24 +00:00
crazykissshout
1634535e00 fix: add bundle and transaction context to call_many errors (#18127)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-17 14:40:26 +00:00
Arsenii Kulikov
ca26219aa6 feat: convert blobs at RPC (#19084) 2025-10-17 11:45:23 +00:00
sashass1315
cfb26912d3 fix(cli): remove redundant EthChainSpec bound in run_with_components (#19106) 2025-10-17 10:59:49 +00:00
maradini77
e46a9bc40c fix(sim): clamp bundle timeout to max instead of falling back to default (#18840)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-17 10:47:14 +00:00
futreall
4c7b1ed9d4 fix: add revm-state to dev-dependencies of chain-state crate (#19044) 2025-10-17 10:11:11 +00:00
Dan Cline
ff68bfe935 chore: lower ecies instrument calls to trace (#19004) 2025-10-17 10:05:18 +00:00
Matthias Seitz
a2c50947b8 chore: exhaustive match for builtin tracer (#19105) 2025-10-17 09:42:18 +00:00
Léa Narzis
3af2c93fc6 feat(cli): add method CliRunner::block_on (#19088) 2025-10-17 09:24:19 +00:00
Roman Hodulák
73af300286 fix(cli): Remove duplicit static file header and transaction append (#19103) 2025-10-17 08:45:00 +00:00
Matthias Seitz
a8e387bd10 chore: init state touchups (#19066) 2025-10-16 21:07:40 +00:00
stevencartavia
48d8298e1f feat: add Pool::remove_transaction(hash) (#19098) 2025-10-16 21:02:26 +00:00
Avory
53ef7a386c docs: fix duplicate method comments in ChainInfoTracker (#18929) 2025-10-16 20:53:36 +00:00
AJStonewee
25e8d6bb77 chore: clarify the wrong Length description (#19094) 2025-10-16 20:06:08 +00:00
Matthias Seitz
cc490b668a fix: accurately track account and code weighs (#19091) 2025-10-16 15:44:08 +00:00
Matthias Seitz
5887a15966 revert: "fix: Revert "chore: disable fee charge in env"" (#19073) 2025-10-16 14:30:36 +00:00
Matthias Seitz
ff2236e5b4 fix: support rlp hex in read_header_from_file (#19089) 2025-10-16 14:25:56 +00:00
MozirDmitriy
8788782f25 fix(net): remove redundant remove of evicted hash in fetcher (#19083) 2025-10-16 12:40:12 +00:00
Karl Yu
7e006d6845 chore: remove unused rayon pool from WorkloadExecutor (#19065)
Co-authored-by: sashass1315 <sashass1315@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-16 12:06:05 +00:00
Alexey Shekhirin
e969262c7e refactor: rename disable_caching_and_prewarming to disable_prewarming (#19072) 2025-10-16 10:58:42 +00:00
kevaundray
be648d950c feat: Stateless validation function receives public keys corresponding to each transaction (#17841)
Co-authored-by: Wolfgang Welz <welzwo@gmail.com>
2025-10-16 10:21:15 +00:00
Skylar Ray
5beeaedfae chore(fs-util): remove redundant tmp_path clone (#19003) 2025-10-16 10:10:11 +00:00
Mablr
386eaa3ff6 fix(discv5): get fork_id from Enr for all network stacks (#18988)
Co-authored-by: emhane <elsaemiliaevahane@gmail.com>
Co-authored-by: Emilia Hane <emiliaha95@gmail.com>
2025-10-16 09:56:27 +00:00
Brian Picciano
be94d0d393 feat(trie): Merge trie changesets changes into main (#19068)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
Co-authored-by: Roman Hodulák <roman.hodulak@polyglot-software.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-10-16 09:52:35 +00:00
GarmashAlex
3de82cf2bd fix(net): Increment out_of_order_requests in BodiesDownloader on range reset (#19063) 2025-10-16 08:58:05 +00:00
Alexey Shekhirin
84aa51481b chore: rename CLI argument --tracing-otlp-level to --tracing-otlp.filter (#19061)
Co-authored-by: Claude <noreply@anthropic.com>
2025-10-16 08:42:25 +00:00
YK
a84bef0832 refactor: revert Remove max_proof_task_concurrency as configurable variable" (#19062) 2025-10-16 07:28:04 +00:00
Copilot
926b1a43fe refactor: Remove max_proof_task_concurrency as configurable variable (#19009)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: yongkangc <46377366+yongkangc@users.noreply.github.com>
Co-authored-by: Yong Kang <chiayongkang@hotmail.com>
2025-10-15 23:52:27 +00:00
Matthias Seitz
a096709865 chore: defense for new SubscriptionKind item (#19054) 2025-10-15 21:28:29 +00:00
James Prestwich
65a7f35a56 feat: use env filter for otlp, respect otel env var (#19050) 2025-10-15 21:10:24 +00:00
drhgencer
5c19ce7580 refactor(txpool): reuse cached gas_limit value (#19052) 2025-10-15 20:19:03 +00:00
Arsenii Kulikov
f6a583ffc4 feat: stricter bound (#19049) 2025-10-15 20:15:47 +00:00
radik878
080d508ebf fix(session): remove Clone derive from SessionCounter (#19051) 2025-10-15 20:14:42 +00:00
Arsenii Kulikov
7779ed8c73 feat: bump revm (#18999) 2025-10-15 17:55:35 +00:00
sashass1315
fd4597e9bd chore(primitives-traits): relax SignerRecoverable bounds for Extended<B,T> (#19045) 2025-10-15 17:53:47 +00:00
Matthias Seitz
6bb0d1b929 chore: increase versioned hash index cache (#19038) 2025-10-15 17:52:03 +00:00
Arsenii Kulikov
20b14d59c7 fix: correct Compact impl for Option (#19042) 2025-10-15 16:08:26 +00:00
Matthias Seitz
8880119e17 fix: use header type generic for mask (#19037) 2025-10-15 14:27:44 +00:00
Federico Gimenez
daa91939f8 chore(ci): update expected failures (#19034) 2025-10-15 13:43:12 +00:00
YK
eb9b08c696 perf: background init of workers (#19012) 2025-10-15 13:16:54 +00:00
Galoretka
0cbd514e4b feat(engine): deprecate TestPipelineBuilder::with_executor_results (#19017) 2025-10-15 13:03:49 +00:00
Matthias Seitz
63ec808973 fix: respect cli blob size setting (#19024) 2025-10-15 14:52:43 +02:00
Matthias Seitz
1b952def26 fix: unused warnings for tracing (#19025) 2025-10-15 14:39:54 +02:00
Matthias Seitz
39ef9dd528 chore: bump alloy-core (#19026) 2025-10-15 14:39:06 +02:00
Luca Provini
fc03347cdd feat: add pending sequence as pub (#19022) 2025-10-15 14:02:26 +02:00
Skylar Ray
45194fc5df chore: remove unused Args struct from exex-subscription example (#19019) 2025-10-15 11:22:21 +00:00
Udoagwa Franklin
6b08d30e14 feat(devp2p): make eth p2p networkId configurable (#19020)
Co-authored-by: frankudoags <frankudoags.com>
2025-10-15 11:15:42 +00:00
Federico Gimenez
7fc3980904 chore(ci): bump hive eest to v5.3.0 (#19021) 2025-10-15 10:45:36 +00:00
josé v
731e107ee6 chore: refactor loop in add_new_transactions (#19006) 2025-10-15 09:42:11 +00:00
GarmashAlex
a1aed9d9f0 chore(privitives-traits): remove unused serde derives and camelCase attribute (#19014) 2025-10-15 09:41:02 +00:00
Ivan Wang
ee6cac72de feat: add metrics for safe and finalized block heights (#18987) 2025-10-15 09:07:42 +00:00
Matthias Seitz
2f82b7c771 chore: bump book timeout (#19016) 2025-10-15 11:06:34 +02:00
Jennifer
b6f7fae19a ci: Add tests for Paris scenario in hive.yml (#19013) 2025-10-15 08:49:51 +00:00
Brian Picciano
00f173307c fix: Set Era pipeline stage to last checkpoint when there is no target (#19000) 2025-10-15 08:15:34 +00:00
stevencartavia
06b33fd64b chore: replace poll_next_unpin loop with poll_recv_many (#18978) 2025-10-15 08:12:01 +00:00
Karl Yu
856ad08776 refactor(engine): simplify InvalidBlockWitnessHook::on_invalid_block for better testability (#18696) 2025-10-15 03:50:41 +00:00
Julian Meyer
092599bd2c fix: required optimism primitives features in db-api (#19005) 2025-10-15 03:38:21 +00:00
YK
11c9949add refactor(trie): remove proof task manager (#18934)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-15 01:49:39 +00:00
anim001k
082b5dad37 refactor(storage): fix ChainStateKey enum variant name (#18992) 2025-10-15 01:11:01 +00:00
YK
e0b7a86313 perf(tree): worker pooling for account proofs (#18901)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-15 00:26:02 +00:00
Dan Cline
169a1fb97b fix(engine): flatten storage cache (#18880) 2025-10-14 19:12:55 +00:00
Arsenii Kulikov
c661cd2f75 refactor: unify Pipeline creation codepaths (#18955) 2025-10-14 16:20:21 +00:00
Forostovec
7aebea2f37 chore(evm): mark ExecuteOutput as unused and slated for removal (#18754) 2025-10-14 14:18:33 +00:00
Forostovec
0470ee8735 fix(stateless): enforce BLOCKHASH ancestor header limit (#18920) 2025-10-14 14:05:47 +00:00
drhgencer
cec30cd9f3 chore: remove unused imports in blockchain_provider (#18867)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-14 16:06:06 +02:00
Alvarez
9fa2779959 fix(network): prevent metric leak in outgoing message queue on session teardown (#18847) 2025-10-14 13:33:45 +00:00
Léa Narzis
5065890823 chore: bump otlp crates (#18984) 2025-10-14 09:34:20 +00:00
stevencartavia
2a441d6261 refactor: convert satisfy_base_fee_ids to use closure (#18979) 2025-10-14 09:29:01 +00:00
MozirDmitriy
221d585f08 chore(optimism): remove unnecessary Debug bounds from header generics (#18989) 2025-10-14 08:54:55 +00:00
stevencartavia
ab2b11f40e feat: allow otlp level to be configurable (#18981) 2025-10-14 00:41:22 +00:00
Léa Narzis
59ace58925 feat(cli): enable traces export via tracing-otlp cli arg (#18242)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-10-13 20:28:16 +00:00
Alvarez
9b0a2c37b4 perf(tests): remove redundant format! in ef-tests run_only (#18909) 2025-10-13 18:27:03 +00:00
Federico Gimenez
2041188744 chore(ci): update eest 7594 issue link in hive expected failures file (#18976) 2025-10-13 18:03:43 +00:00
Forostovec
55d294dc7f chore(rpc): Remove redundant U256::from in suggested_priority_fee (#18969) 2025-10-13 17:22:07 +00:00
Alexey Shekhirin
0f919a949e ci: remove reproducible build from release.yml (#18958) 2025-10-13 16:51:32 +00:00
maradini77
1dfd0ff772 fix: use max B256 for upper bound in empty-storage check (#18962) 2025-10-13 15:25:01 +00:00
sashaodessa
211e330eb9 fix: remove noisy stderr prints in ERA1 cleanup (EraClient::delete_outside_range) (#18895) 2025-10-13 14:00:40 +00:00
sashaodessa
ea65aca0d7 fix: misleading error message in db list: show actual table name (#18896) 2025-10-13 13:48:42 +00:00
Brian Picciano
edc8261913 fix(trie): Properly upsert into StoragesTrie in repair-trie (#18941) 2025-10-13 13:29:50 +00:00
YK
691b14bfca perf(tree): add elapsed time to parallel state root completion log (#18959) 2025-10-13 12:53:12 +00:00
maradini77
6c27b35e19 refactor(cli): use structured logging (tracing) in p2p command (#18957) 2025-10-13 12:24:58 +00:00
maradini77
4415bc5d7a refactor: replace println! with structured logging in test_vectors (#18956) 2025-10-13 11:51:19 +00:00
Emilia Hane
0f14980d88 chore(rpc): Moves SequencerMetrics into reth-optimism-rpc (#18921) 2025-10-13 10:24:55 +00:00
radik878
16ba9e8979 fix(payload): correct Debug label for PayloadTimestamp in PayloadServiceCommand (#18954) 2025-10-13 12:19:28 +02:00
Brian Picciano
16e79888ae fix(testsuite): Fix unused updates in e2e-test-utils (#18953) 2025-10-13 09:36:17 +00:00
Tilak Madichetti
99a5da2f91 fix(example): launch with debug capabilities (#18947) 2025-10-11 10:50:52 +00:00
Tilak Madichetti
b1d6c90fbb fix(examples): change method to launch with debug capabilities (#18946) 2025-10-11 10:50:31 +00:00
emmmm
5c18df9889 refactor: remove needless collect() calls in trie tests (#18937) 2025-10-10 16:23:10 +00:00
MIHAO PARK
aec3e3dcc5 chore(grafana): use precompile address as legend (#18913) 2025-10-10 12:26:47 +00:00
YK
397a30defb perf(tree): worker pooling for storage in multiproof generation (#18887)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-10 07:58:15 +00:00
Léa Narzis
d2070f4de3 feat: wait for new blocks when build is in progress (#18831)
Co-authored-by: Roman Hodulák <roman.hodulak@polyglot-software.com>
2025-10-09 16:42:59 +00:00
emmmm
6f96a32812 chore: align node_config threshold constant (#18914) 2025-10-09 11:18:49 +00:00
stevencartavia
df6afe9daa docs: duplicate comment in Eip4844PoolTransactionError (#18858) 2025-10-08 15:03:44 +00:00
Federico Gimenez
c78378a8ce ci: cache hive simulator images to reduce prepare-hive job time (#18899) 2025-10-08 14:53:25 +00:00
Merkel Tranjes
c0caaa17be refactor: replace collect().is_empty() with next().is_none() in tests (#18902)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-10-08 14:20:39 +00:00
Dan Cline
6770ba9eed feat(provider): add get_account_before_block to ChangesetReader (#18898) 2025-10-08 13:11:16 +00:00
William Nwoke
bed26238dc refactor(engine): separate concerns in on_forkchoice_updated for better maintainability (#18661)
Co-authored-by: Nathaniel Bajo <nathanielbajo@Nathaniels-MacBook-Pro.local>
Co-authored-by: YK <chiayongkang@hotmail.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-10-08 11:54:59 +00:00
radik878
1aa312c12b chore(node): simplify EngineApiExt bounds by removing redundant constraints (#18905) 2025-10-08 11:46:20 +00:00
Brian Picciano
273ee08443 fix(trie): Reveal extension child when extension is last remaining child of a branch (#18891) 2025-10-08 11:05:27 +00:00
Léa Narzis
b82ad07775 chore: make clippy happy (#18900) 2025-10-08 10:18:49 +00:00
Arsenii Kulikov
319a8dceb4 chore: relax ChainSpec impls (#18894) 2025-10-07 17:54:25 +00:00
Skylar Ray
029509cc42 refactor: eliminate redundant allocation in precompile cache example (#18886) 2025-10-07 11:34:35 +00:00
Forostovec
2f3e2c6c97 fix(era-utils): fix off-by-one for Excluded end bound in process_iter (#18731)
Co-authored-by: Roman Hodulák <roman.hodulak@polyglot-software.com>
2025-10-07 11:23:54 +00:00
josé v
83cec3793b docs: yellowpaper sections in consensus implementation (#18881) 2025-10-06 21:33:12 +00:00
Alexey Shekhirin
e9598ba5ac feat(storage): read headers and transactions only from static files (#18788) 2025-10-06 11:39:48 +00:00
sprites0
d77bfd89b4 feat: Use generic HeaderTy for reth db get static-file headers (#18870)
Co-authored-by: sprites0 <199826320+sprites0@users.noreply.github.com>
2025-10-06 10:15:52 +00:00
Skylar Ray
f54741c52b fix: streamline payload conversion in custom engine API (#18864) 2025-10-06 10:06:12 +00:00
Dan Cline
978b8a2cd3 docs(engine): fix outdated comment on TreeMetrics (#18855) 2025-10-06 09:10:51 +00:00
Federico Gimenez
b550387602 chore: update hive expected/ignored failures (#18863) 2025-10-05 11:55:28 +00:00
Arsenii Kulikov
78535b0747 feat: make ChainSpec generic over header (#18856) 2025-10-03 17:18:57 +00:00
Artyom Bakhtin
fe10c07852 feat: Add building and publishing of *.deb packages (#18615)
Signed-off-by: bakhtin <a@bakhtin.net>
2025-10-03 15:36:56 +00:00
Brian Picciano
d276ce5758 feat: OverlayStateProvider (#18822)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-03 14:21:27 +00:00
GarmashAlex
373576704b chore(cli): remove unnecessary ProviderFactory clone in db_ro_exec! (#18845) 2025-10-03 12:37:17 +00:00
MozirDmitriy
5c05beb404 chore: relax trait bounds for EmptyBodyStorage in storage API (#18842) 2025-10-03 12:36:44 +00:00
Arsenii Kulikov
871bc82eee chore: do not generate fuzz tests in Compact macro (#18849) 2025-10-03 11:58:44 +00:00
Hai | RISE
8effbf265b perf(multiproof): cache storage proof root of missed leaves (#18750) 2025-10-03 10:57:31 +00:00
Federico Gimenez
fafe44d386 feat(rpc): support custom transaction error types in EthApiError (#18844) 2025-10-02 18:55:21 +00:00
DaniPopes
73f50ee9a1 ci: cache zepter installation (#18843) 2025-10-02 18:46:27 +00:00
futreall
656c00e3d6 perf: optimize account cache updates to reduce duplicate lookups (#18825) 2025-10-02 12:34:44 +00:00
Matthias Seitz
1d1fea72b6 docs: apply spelling and grammar fixes (#18836)
Co-authored-by: Jennifer Paffrath <jenpaff0@gmail.com>
Co-authored-by: Max <max@digi.net>
2025-10-02 11:22:43 +00:00
Mablr
467420ec25 feat(evm): Make ConfigureEngineEvm methods faillible (#18827) 2025-10-02 11:16:40 +00:00
Matthias Seitz
3a6ff3ba93 perf: avoid hash copies (#18834) 2025-10-02 11:15:10 +00:00
MozirDmitriy
9b005f36ce feat(flashblocks): relax Sync bounds on Sink and connect futures (#18830) 2025-10-02 10:10:31 +00:00
Arsenii Kulikov
2029842f77 feat: integrate EvmEnv helpers (#18817) 2025-10-02 10:10:30 +00:00
sashass1315
661400e857 fix(ress): avoid panic on Missing trie updates in ress provider witness construction (#18796) 2025-10-02 09:45:36 +00:00
Galoretka
33bf2b2acc chore(node): remove no-op impl for LaunchContextWith WithComponents (#18821) 2025-10-01 20:16:42 +00:00
Matthias Seitz
4f56de535f fix: track inemorysize more accurately (#18820) 2025-10-01 16:29:27 +00:00
nethoxa
f98e706072 fix: Add eth69 status validation (#18819)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-01 16:06:01 +00:00
Matthias Seitz
80b4d26b9d chore: use exact size for account weight (#18816) 2025-10-01 14:46:03 +00:00
Matthias Seitz
a18f1a2e38 chore: use correct inflight metric (#18815) 2025-10-01 13:41:12 +00:00
MIHAO PARK
a2bde852bb feat(node): reduce the status logging (#18010) 2025-10-01 09:56:31 +00:00
YK
83de2137f2 refactor(engine): simplify validate_block_with_state (#18659)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-01 08:22:42 +00:00
Julio
5004c2e1a3 feat(op-reth): add optional state root calc for flashblocks (#18721)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-10-01 07:57:38 +00:00
Karl Yu
7af393bb35 chore: update ETHEREUM_BLOCK_GAS_LIMIT (#18779) 2025-10-01 07:14:39 +00:00
Skylar Ray
f813a52c80 feat: impl Debug for FnLauncher (#18807) 2025-10-01 07:09:06 +00:00
futreall
bafb482ca1 fix: poll the pinger timeout Sleep future (#18797) 2025-10-01 07:07:57 +00:00
Federico Gimenez
22f9708f6a fix(storage): clean up HeaderNumbers entries during block unwinds (#18790) 2025-09-30 16:41:36 +00:00
viktorking7
0694abcee8 fix: Prevent u64 timestamp wrap-around in LocalMiner (#18791) 2025-09-30 15:29:14 +00:00
Matthias Seitz
530e62d0e9 chore: bump alloy 1.0.37 (#18795) 2025-09-30 16:27:04 +02:00
Tim
05d17bfe04 chore: bump version to 1.8.2 (#18792)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-30 16:02:45 +02:00
Matthias Seitz
a53c6205cc fix: remove cancun check (#18787) 2025-09-30 12:07:07 +00:00
GarmashAlex
2d4635b53d fix: remove the leading hash comparison from RecoveredBlock<B>::PartialEq. (#18785) 2025-09-30 11:54:32 +00:00
Federico Gimenez
db524d158e fix(op-reth): forward pre-bedrock transaction RPC calls to historical endpoint (#18784) 2025-09-30 10:09:46 +00:00
Ignacio Hagopian
7e5e8b55b3 feat(stateless): enable test runs to return execution witness (#18740)
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Kevaundray Wedderburn <kevtheappdev@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-30 08:44:02 +00:00
Yichi Zhang
0da9fabf87 fix(transaction-pool): Fix wrong assertion (#18778) 2025-09-30 08:14:43 +00:00
Andrea Simeoni
2cbdb42c2c feat(op-reth): custom FlashBlock decoder from bytes (#18770) 2025-09-30 08:13:01 +00:00
dustinjake
b3cbfa4ced feat(flashblocks): additional pending flashblock data (#18776) 2025-09-30 08:08:39 +00:00
YK
b8c16e392a refactor(engine): small nits - remove shallow abstraction for decoded_storage_proof (#18780) 2025-09-30 07:57:11 +00:00
futreall
2cf9fc8f54 refactor: remove redundant Setup::new() method (#18781) 2025-09-30 07:56:19 +00:00
Ragnar
121c0dedf8 feat(eth-wire): implement disconnect on Status message after handshake (#18773) 2025-09-29 19:35:49 +00:00
Alexey Shekhirin
058ffdc21e feat(storage): write headers and transactions only to static files (#18681) 2025-09-29 17:04:59 +00:00
James Niken
564e3a67fc fix: correct TxTypeCustom extended identifier decoding (#18769) 2025-09-29 14:38:37 +00:00
Merkel Tranjes
b940d0a9fb fix: prevent integer underflow in pipeline unwind target calculation (#18743) 2025-09-29 11:54:28 +00:00
sashass1315
18775914a4 fix(primitives-traits): use size_of::<H>() for ommers capacity in BlockBody (#18764) 2025-09-29 09:49:30 +00:00
YK
ec4e6aafde perf: optimize Optimism deposit transaction prewarming (#18327) 2025-09-29 09:06:17 +00:00
radik878
48b725aec2 chore(engine): remove unnecessary ChainSpecProvider bound from invalid block witness hook (#18760) 2025-09-28 16:30:28 +00:00
github-actions[bot]
c98833ba14 chore(deps): weekly cargo update (#18757)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-28 13:33:13 +02:00
Matthias Seitz
850083dbde chore: remove doc_auto_cfg feature (#18758) 2025-09-28 12:53:45 +02:00
nethoxa
abae566f13 fix(rpc): fix eth_config impl (#18744)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-28 12:42:08 +02:00
Marcin Papież
efbff54ea6 docs: add note to launch on --dev mode (#18745) 2025-09-28 12:41:45 +02:00
Adrian
be326fe047 test: add missing Drop trait tests for CancelOnDrop (#18749) 2025-09-28 12:38:37 +02:00
MIHAO PARK
722507ed41 docs(ethereum): extend run with debug.rpc-consensus-url (#18747) 2025-09-27 07:14:59 +00:00
stevencartavia
1addf61a23 feat: keep track of most recently emitted range update and change int… (#18722) 2025-09-26 16:02:38 +00:00
VolodymyrBg
95e8a65d33 chore(trie): demote verbose proof debug logs to TRACE (#18738) 2025-09-26 15:08:31 +00:00
Galoretka
c9fea939a1 fix(chain-state): remove redundant transaction clone in test utils (#18710)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-26 14:20:34 +00:00
MIHAO PARK
74c4cdbf09 fix(rpc-engine): don't fetch the pruned block (#18589) 2025-09-26 14:17:10 +00:00
MIHAO PARK
0299160e93 feat(rpc): merge the header not found and resource not found (#18657) 2025-09-26 14:09:23 +00:00
Mablr
6a50aa3ea5 feat: make more EVM and RPC conversions fallible (#18685) 2025-09-26 13:56:46 +00:00
Alexey Shekhirin
057c71281f feat(cli): configure multiproof chunking via arguments (#18736) 2025-09-26 13:00:16 +00:00
Waiting
5dc2857713 feat(downloaders): add file-client feature gate (#18707) 2025-09-26 12:59:08 +00:00
Delweng
597fa73023 fix(rpc/engine): check osaka in getBlobsV1 (#18669)
Signed-off-by: Delweng <delweng@gmail.com>
2025-09-26 15:14:09 +02:00
anim001k
8852269a7d fix: Apply WS CORS regardless of HTTP being enabled (#18729) 2025-09-26 11:53:52 +00:00
Brian Picciano
ff4cc6e3ba chore: Accept range in HashedPostState::from_reverts (#18728) 2025-09-26 11:29:37 +00:00
Hai | RISE
8d44bebf8d perf(multiproof): do not chunk more tasks when task queue is full (#18727) 2025-09-26 11:15:02 +00:00
Matthias Seitz
4b134c3a46 fix: increase backoff timeout (#18733) 2025-09-26 11:04:40 +00:00
viktorking7
aa192c255b fix: Bearer token parsing vulnerability (#18712) 2025-09-25 20:08:00 +00:00
Matthias Seitz
b6cf855738 docs: add note about v5 (#18701) 2025-09-25 19:03:53 +00:00
drhgencer
284d1b377f perf: avoid redundant bytecode hash calculation in RPC provider (#18711) 2025-09-25 18:24:45 +00:00
0xKitsune
0e4e32fb16 chore: update spawn maintenance tasks vis (#18709) 2025-09-25 16:55:08 +00:00
YK
8f881789b7 perf(engine): reduce cloning on terminate caching (#18693) 2025-09-25 14:58:25 +00:00
YK
a047a055ab chore: bump rust to edition 2024 (#18692) 2025-09-25 12:18:51 +00:00
Galoretka
9a26947db6 fix(primitives-traits): delegate is_create for Extended::Other to fix create-detection (#18699) 2025-09-25 10:34:32 +00:00
dustinjake
0f46e38a7d chore(flashblocks): flasblock service metrics (#18697) 2025-09-25 10:13:20 +00:00
sw4sy
a31dce9b3c feat(net): added check for non zero latest_hash in BlockRangeUpdate (#18695)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-25 08:11:43 +00:00
josé v
6cdfc48bc8 feat(flashblocks): prefill cache on canonical tip updates (#18691) 2025-09-25 07:55:01 +00:00
Forostovec
4d609847bf fix(engine): remove redundant parent_to_child removal during eviction (#18648) 2025-09-25 06:53:49 +00:00
Haotian
8f804d385d feat: node import support importing gzip compressed file (#17877)
Signed-off-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-24 21:08:54 +00:00
MIHAO PARK
bdc59799d0 fix(cli): replace unwrap with error propagation in merkle stage (#18656) 2025-09-24 20:35:10 +00:00
GarmashAlex
3b0d98f346 fix(engine): align sparse trie removal log target with engine::root::sparse (#18686) 2025-09-24 17:48:54 +00:00
radik878
8e488a730a chore(engine): remove unused EngineServiceError from engine service (#18666)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-24 14:35:27 +00:00
Arsenii Kulikov
468925fcaa feat: support empty SUPPORTED_CHAINS for ChainSpecParser (#18679) 2025-09-24 14:27:07 +00:00
Matthias Seitz
00e51575eb test: add unwind parse test (#18677) 2025-09-24 15:51:50 +02:00
morito
e6050e0332 docs: some fixes on discv4 docs (#18601)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-24 12:41:34 +00:00
phrwlk
6631fc4e82 feat(net): correct per-response size metric to avoid capacity/empty-block inflation (#18553) 2025-09-24 12:21:51 +00:00
Joly
27c0b7b8a0 chore: enable all Ethereum protocol versions instead of hardcoding (#18065)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-24 12:19:54 +00:00
Andrea Simeoni
324cce3461 feat(bootnode): Persists the discovery secret key (#18643) 2025-09-24 12:14:59 +00:00
Arsenii Kulikov
7fb24e57a8 refactor: simplify EthApiSpeс trait (#18674) 2025-09-24 14:13:49 +02:00
Hai | RISE
1a68d8e968 feat(db): add MDBX put-append for fast ordered puts (#18603) 2025-09-24 11:48:50 +00:00
Starkey
f07d9248b9 fix: avoid panic in new-payload-fcu benchmark (#18602) 2025-09-24 11:37:14 +00:00
YK
a80f0c83a3 chore(revert): add tokio runtime with custom thread naming (#18670) 2025-09-24 10:52:51 +00:00
Tim
70fdd2248e chore: update voc.config.to text to v1.8.1 (#18667) 2025-09-24 09:51:09 +00:00
crazykissshout
aeaa8ec5a2 docs(db): correct misleading test comments in post_state.rs (#18664)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-09-24 09:03:07 +00:00
Gengar
f364f7a813 docs: add comprehensive e2e test actions reference documentation (#18621)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-09-24 03:27:02 +00:00
Arsenii Kulikov
96c1566d9b chore: support custom transaction types in EthTransactionValidator (#18655) 2025-09-23 22:23:09 +00:00
Alvarez
4779fea9d4 docs: rm 8MB stack size comment in BlockingTaskPool (#18616) 2025-09-23 21:43:07 +00:00
GarmashAlex
5856c2e9f0 fix(payload): reversed-order test for validate_execution_requests (#18593)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-23 20:34:18 +00:00
Alvarez
8eaadf52d8 fix: Prevent potential underflow in static file header healing (#18628) 2025-09-23 20:32:46 +00:00
crazykissshout
a7632c7431 fix(engine): correct misleading test comments in cached_state.rs (#18652) 2025-09-23 20:12:26 +00:00
Federico Gimenez
4cc50f9799 feat(e2e): add beacon consensus handle to NodeClient (#18632) 2025-09-23 17:45:09 +00:00
YK
064694b2df refactor(engine): simplify on_new_payload (#18613) 2025-09-23 16:04:19 +00:00
Matthias Seitz
e6608be51e chore: release 1.8.1 (#18646) 2025-09-23 17:41:38 +02:00
Matthias Seitz
44aa0fbb0e fix: Revert "chore: disable fee charge in env" (#18645) 2025-09-23 17:40:40 +02:00
dependabot[bot]
6fdf6c4492 chore(deps): bump CodSpeedHQ/action from 3 to 4 (#18333)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-23 14:07:44 +00:00
Tim
e613ee9e85 chore: update voc.config.to text to v1.8.0 (#18644) 2025-09-23 14:07:29 +00:00
Tim
132f5b5204 chore: update version to 1.8.0 in Cargo.toml (#18638)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-23 13:48:38 +00:00
Matthias Seitz
faaebe7f6d fix: check request gas limit before (#18639) 2025-09-23 12:21:59 +00:00
YK
088a0d44c2 chore(observability): add tokio runtime with custom thread naming (#18635)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-09-23 12:05:35 +00:00
Tim
4c9942b920 docs: update dashboard table and rpc urls (#18637) 2025-09-23 12:01:19 +00:00
Matthias Seitz
70a8c06773 feat: add osaka+bpo timestamps (#18627)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-09-23 11:06:52 +00:00
Matthias Seitz
ee834fb892 chore: disable fee charge in env (#18634) 2025-09-23 13:01:20 +02:00
Matthias Seitz
f225751c12 chore: bump inspectors 0.30 (#18633) 2025-09-23 13:01:08 +02:00
YK
7dc3aea930 chore(revert): revert tokio runtime with custom thread naming (#18631) 2025-09-23 10:20:44 +00:00
Matthias Seitz
87c75b9836 chore: bump deps (#18630) 2025-09-23 10:03:07 +00:00
YK
2ec3671633 chore(observability): add tokio runtime with custom thread naming (#18623) 2025-09-23 09:04:54 +00:00
MozirDmitriy
b27a927413 chore(primitive-traits): remove redundant auto-trait bounds from FullNodePrimitives (#18626)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-23 09:03:12 +00:00
Dmitry
e3cc6e2ea5 docs: fix incorrect RPC method names in trace calls (#18619) 2025-09-23 07:56:11 +00:00
Andrea Simeoni
dfab5f9646 fix(cli): bootnode default address (#18617) 2025-09-22 20:19:40 +00:00
Galoretka
87078e9205 fix(primitives-traits): simplify Rayon bounds and fix docs (#18620) 2025-09-22 19:48:10 +00:00
josé v
9e3246e695 chore: specialize send_raw_transaction_sync for op-reth with flashblocks support (#18586)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-22 13:43:57 +00:00
VolodymyrBg
60658be734 fix(handshake): validate peer TD from their_status_message during eth handshake (#18611) 2025-09-22 13:33:55 +02:00
Matthias Seitz
0bd2097995 chore: enforce max tx gas limit on estimate and accesslit (#18612) 2025-09-22 13:04:26 +02:00
Matthias Seitz
39d5563ce8 fix: disable block gas limit (#18583) 2025-09-22 10:07:03 +00:00
Brian Picciano
79c71b8692 chore: Remove reth recover storage-tries sub-command (#18580) 2025-09-22 10:04:40 +00:00
emmmm
9806e07cf8 fix: replace tx_hash method with TxHashRef trait bound (#18357) (#18362)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-22 09:31:17 +00:00
Matthias Seitz
3ebfd7a25e test: add test case for op tx env conversion (#18581) 2025-09-22 11:39:28 +02:00
YK
36107c60ab fix(cache): Ensure execution cache remains locked until updated (#18564)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-09-22 11:38:02 +02:00
YK
95f1931c59 test(engine): add new payload handling tests for canonical insertion and invalid ancestors (#18608) 2025-09-22 08:38:53 +00:00
crStiv
4ddf3ddb45 docs: multiple small textual defects (#18598) 2025-09-21 08:36:24 +00:00
github-actions[bot]
aeb6eddba0 chore(deps): weekly cargo update (#18600)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-21 07:37:18 +00:00
Federico Gimenez
ff59089094 chore(ci): unpin teku image for kurtosis-op (#18595) 2025-09-20 13:59:01 +00:00
Federico Gimenez
aead6c17c5 chore(ci): update expected and ignored hive tests (#18594) 2025-09-20 13:58:41 +00:00
Hai | RISE
55cbefe836 perf(persistence): lookup segment operation once (#18588) 2025-09-20 07:22:31 +00:00
William Nwoke
3655dc7f09 feat(rpc): make send_raw_transaction_sync timeout configurable (#18558)
Co-authored-by: Nathaniel Bajo <nathanielbajo@Nathaniels-MacBook-Pro.local>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-20 05:50:56 +00:00
Matthias Seitz
379db45b40 fix: use timestamp derived max blob count on launch (#18590) 2025-09-20 05:41:56 +00:00
VolodymyrBg
fa531761c4 chore(payload-builder): relax Sync bounds on resolve futures (#18585) 2025-09-19 20:22:53 +00:00
Brian Picciano
ff51faaeac chore(db): Simplifications to trie-related storage-api methods (#18579) 2025-09-19 15:41:32 +00:00
YK
8f4cc90ef9 chore: clippy manual_string_new warning in version.rs (#18576) 2025-09-19 15:03:20 +00:00
Brian Picciano
ebe1a8b014 chore(trie): Use Vec<Option<...>> in InMemoryTrieCursor (#18479) 2025-09-19 13:24:46 +00:00
Dharm Singh
d6160de610 fix(rpc): return empty log set for invalid filter block ranges (#18112)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-19 11:47:38 +00:00
YK
8aeebe10ff fix(txpool): prevent double-processing of tx pool tier (#18446)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-19 11:10:01 +00:00
Alexey Shekhirin
5bc507bfaf fix(reth-bench): do not panic on empty results (#18570) 2025-09-19 10:37:50 +00:00
かとり
4e1c552d3a fix(optimism): always enable interop maintenance task if activated (#18563) 2025-09-19 09:57:49 +00:00
0xOsiris
4fcc4457c1 chore(evm): add public constructor to BlockAssemblerInput (#18559) 2025-09-19 11:59:24 +02:00
Arsenii Kulikov
c9a95d085d feat: add Future AT to LaunchNode and allow customizing local attributes builder (#18556) 2025-09-19 09:34:49 +00:00
Matthias Seitz
4e78f956fd chore: map NaN to 0.0 (#18560) 2025-09-18 22:35:48 +00:00
MozirDmitriy
df9b7a079b chore(chainspec): reuse local hardforks in DEV instead of cloning again (#18557) 2025-09-18 17:38:38 +00:00
MIHAO PARK
e2aa41733c chore(docker): add FEATURES for op dockerfile (#18489) 2025-09-18 13:15:33 +00:00
Federico Gimenez
6f385d0a01 chore(consensus): update EIP-7825 error message format (#18549) 2025-09-18 13:10:21 +00:00
MIHAO PARK
f9e5030386 docs(op): decompress the state file before init-state (#18416) 2025-09-18 15:18:21 +02:00
stevencartavia
ce6199abf6 feat: tree config setting for unwinding canonical header (#18420) 2025-09-18 12:59:08 +00:00
MIHAO PARK
70d634a3f8 feat(rpc): add admin_clearTxpool api (#18539) 2025-09-18 12:58:20 +00:00
Federico Gimenez
ea500f6af9 chore(ci): bump hive timeout (#18544) 2025-09-18 12:52:18 +00:00
Roman Hodulák
e8d32a5491 feat(rpc): Add convert_receipt_with_block method to ReceiptConverter (#18542)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-18 11:06:52 +00:00
Matthias Seitz
ece847287a chore: add cache traces (#18538) 2025-09-18 09:21:44 +00:00
Copilot
64b4ae60f5 docs: document critical cache safety assumptions in ExecutionCache (#18536)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: yongkangc <46377366+yongkangc@users.noreply.github.com>
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-09-18 08:52:13 +00:00
Julio
59cff107bc feat(op-reth): initial setup FlashBlockConsensusClient engine sidecar (#18443) 2025-09-18 08:13:22 +00:00
Dharm Singh
870389c5d6 refactor: EmptyBodyStorage block reader logic (#18508)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-17 23:51:27 +00:00
MIHAO PARK
d357d2acb3 feat(node): rename debug.rpc-consensus-ws to debug-rpc-consensus-url to suport HTTP (#18027)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-17 23:10:55 +00:00
Mablr
2b68d3a424 fix(rpc): use flashblock when preparing tx response on gettxreceipt (#18530) 2025-09-17 20:39:37 +00:00
Federico Gimenez
6bf405a143 chore(ci): bump hive eest tests to v5.1.0 (#18528) 2025-09-17 19:15:17 +00:00
leniram159
4a958f41b8 fix: use noopprovider for pending block state root (#18523) 2025-09-17 17:24:38 +00:00
Roman Hodulák
6e6a497ef2 refactor(evm): Replace revm_spec* functions with alloy-evm and alloy-op-evm versions (#18526) 2025-09-17 16:46:21 +00:00
Roman Hodulák
5a39e57e47 deps: Upgrade alloy and alloy-evm versions 1.0.30 => 1.0.32 and 0.21.0 => 0.21.1 respectively (#18525) 2025-09-17 15:53:24 +00:00
crazykissshout
4b4b122e75 docs(engine): improve cache naming and documentation (#18457)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-09-17 14:45:26 +00:00
Hai | RISE
98ce04d5e0 feat: relax OpEngineValidatorBuilder for more custom payload types (#18520) 2025-09-17 14:37:07 +00:00
Brian Picciano
d9c9810266 fix(trie): Don't run repair-trie if MerkleExecute is incomplete (#18497) 2025-09-17 14:32:02 +00:00
spencer
193f699057 chore(engine): remove calldata exception workaround (#18521) 2025-09-17 14:25:42 +00:00
Alexey Shekhirin
584d7164fd feat(engine): fallback for when both state root task and parallel state root failed (#18519) 2025-09-17 13:31:26 +00:00
Roman Hodulák
5c5b21e489 feat(optimism): Implement local_pending_state for RPC that uses pending_flashblock (#18518) 2025-09-17 12:59:27 +00:00
theo
fabf3e84d4 feat(op/jovian): implement min base fee in op-reth. bump alloy, alloy-evm deps. (#18407)
Co-authored-by: Emilia Hane <emiliaha95@gmail.com>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-09-17 12:47:01 +00:00
VolodymyrBg
8a3d984c11 fix(docs): correct BlockBody root docs and RecoveredBlock “safer variant” references (#18510) 2025-09-17 12:25:27 +00:00
Federico Gimenez
f113a97a78 chore(ci): run eest osaka tests on hive workflow (#18516) 2025-09-17 12:11:25 +00:00
YK
31ce037a25 chore: add myself to CODEOWNERS (#18514) 2025-09-17 10:42:32 +00:00
YK
088eb6c463 feat(metrics): add transaction error counter for prewarming (#18509) 2025-09-17 09:57:30 +00:00
Arsenii Kulikov
04c5820689 fix: don't override existing tables in create_tables_for (#18511)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-17 09:56:35 +00:00
Brian Picciano
9c892b0233 chore: add myself to CODEOWNERS for engine and stages (#18512) 2025-09-17 09:55:11 +00:00
Arsenii Kulikov
9fc89495d0 fix: don't require closure to be Debug (#18507) 2025-09-16 22:51:29 +00:00
sashass1315
c45817c1f2 chore(engine): avoid panic on mpsc send in sparse trie worker (#18502) 2025-09-16 20:39:33 +00:00
Arsenii Kulikov
7296fc68b6 feat: relax EthBlockAssembler (#18505) 2025-09-16 19:38:35 +00:00
Arsenii Kulikov
7af829ed37 feat: make EthBuiltPayload generic over NodePrimitives (#18504) 2025-09-16 19:12:11 +00:00
Arsenii Kulikov
bf58089286 feat: more flexible rpc receipts (#18501) 2025-09-16 20:49:41 +02:00
Matthias Seitz
5274f095fe chore: skip prewarm transact errors (#18498) 2025-09-16 15:13:20 +00:00
MozirDmitriy
1185514c1e fix(engine): exit MultiProofTask loop on closed internal channel (#18490) 2025-09-16 14:22:45 +00:00
Richard Janis Goldschmidt
847330cdfc fix(cli): disallow --instance 0 (#18496) 2025-09-16 14:16:39 +00:00
wizard
d1c966020b docs: fix incorrect transaction type count (#18437) 2025-09-16 12:20:03 +00:00
VolodymyrBg
18052836fe docs(engine): fix LiveSync target doc and clarify disable-parallel-sparse-trie semantics (#18478) 2025-09-16 12:05:39 +00:00
Matthias Seitz
1697826fdb chore: deconstruct non-exhaustive (#18492) 2025-09-16 12:00:37 +00:00
Matthias Seitz
976939ab6b chore: update superchain commit (#18481)
Co-authored-by: Federico Gimenez <federico.gimenez@gmail.com>
2025-09-16 10:55:57 +00:00
Nathaniel Bajo
05008e2841 feat(op-reth): specialize get_transaction_receipt to check pending flashblocks (#18374)
Co-authored-by: Nathaniel Bajo <nathanielbajo@Nathaniels-MacBook-Pro.local>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-09-16 02:07:01 +00:00
Matthias Seitz
8e65a1d1a2 fix: missing generic type hint for cursor (#18483) 2025-09-15 23:32:19 +00:00
CPerezz
b7e9f7608e feat(network): add shadowfork block hash filtering for peers (#18361)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-15 22:14:04 +00:00
Arsenii Kulikov
5f38ff7981 feat: Block::iter_recovered (#18476) 2025-09-15 20:26:19 +00:00
Alexey Shekhirin
5844ff7b17 feat(storage): bump MDBX map size to 8TB (#18360) 2025-09-15 16:42:37 +00:00
Matthias Seitz
2dabb23331 fix(rpc): disable tx gas limit in calls (#18473) 2025-09-15 15:53:23 +00:00
Federico Gimenez
7cf239ab59 feat: add CliApp wrapper for ethereum CLI configuration and execution (#18458) 2025-09-15 15:31:37 +00:00
Federico Gimenez
e578b1b933 chore(ci): update ignored hive tests (#18412) 2025-09-15 14:18:00 +00:00
MIHAO PARK
ec2a898ac6 fix(rpc): add validation for missing headers in debug execution witness (#18444) 2025-09-15 14:15:35 +00:00
Hai | RISE
ef85d93cd7 perf(db): open MDBX DBIs only once at startup (#18424) 2025-09-15 11:57:01 +00:00
MozirDmitriy
d2b9c571a2 fix(engine): remove redundant method-level where bound in InvalidBlockWitnessHook (#18459) 2025-09-15 10:39:20 +00:00
YK
d61349beb2 fix(engine): perform cache updates with guard (#18435) 2025-09-15 10:27:58 +00:00
Fredrik
7d5415a608 perf: Enforce EIP-7825 transaction gas limit for Osaka (#18439)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-15 10:25:16 +00:00
Federico Gimenez
5516ad2d4f chore(ci): unpin kurtosis op package (#18456) 2025-09-15 09:23:02 +00:00
crStiv
1b08843bc5 docs: multiple small textual defects (#18434)
Co-authored-by: YK <chiayongkang@hotmail.com>
2025-09-14 12:08:43 +00:00
Matthias Seitz
96f8454d42 chore: remove type aliases (#18433) 2025-09-14 12:23:46 +02:00
github-actions[bot]
2408586a51 chore(deps): weekly cargo update (#18431)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-09-14 11:27:26 +02:00
stevencartavia
27e4a05cf0 chore: move and rename PendingBlockAndReceipts to BlockAndReceipts (#18430) 2025-09-14 07:41:43 +00:00
lipperhey
1bd6cc21c2 chore: clean up TS warnings in search index & file finder (#18426) 2025-09-13 11:54:02 +00:00
Matthias Seitz
33c75e8e52 chore: add state and response to miner error (#18422) 2025-09-13 13:32:24 +02:00
stevencartavia
99b6dc7986 feat: add helper to PendingBlockAndReceipts (#18423) 2025-09-13 09:51:17 +00:00
stevencartavia
7694b9dee3 feat: fn recovered_tx to indexedTx (#18421) 2025-09-13 10:55:19 +02:00
Hai | RISE
f66e197171 chore(storage): remove unused primed_dbis (#18415) 2025-09-13 07:32:22 +00:00
Hai | RISE
bac0e1f83f perf: downsize mempool tx priority from U256 to u128 (#18413) 2025-09-13 07:30:46 +00:00
TMOT
e276480728 feat(observability): add phase-level observablity to newPayload processing (#18308)
Co-authored-by: YK <chiayongkang@hotmail.com>
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-13 02:01:48 +00:00
Matthias Seitz
44a48ab9fd fix: dont update canon chain to ancestor for opstack (#18410) 2025-09-12 19:36:05 +02:00
かとり
72c2d1b6a0 feat(txpool): break down queued transaction states into specific reasons (#18106)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-12 13:03:41 +00:00
Hai | RISE
51bf7e37e2 perf(db): reuse MDBX DBIs for the same tx (#18292) 2025-09-12 12:34:52 +00:00
Federico Gimenez
bd387cd495 chore: update e2e-test-utils code owners (#18397) 2025-09-12 10:41:12 +00:00
Snezhkko
82fb54763c fix(e2e): persist accepted header in CheckPayloadAccepted and align timestamp (#18275)
Co-authored-by: Federico Gimenez <federico.gimenez@gmail.com>
Co-authored-by: Federico Gimenez <fgimenez@users.noreply.github.com>
2025-09-12 10:41:04 +00:00
Cypher Pepe
87444ef8d0 chore: fixed broken link in history-expiry.mdx (#18400) 2025-09-12 10:38:39 +00:00
leniram159
6d4a1a3ccf chore: use decode_2718_exact for recover raw txs (#18381) 2025-09-12 08:40:17 +00:00
Hai | RISE
40a9954a8e fix: still use real chain id for no-op network (#18382) 2025-09-12 08:30:37 +00:00
stevencartavia
3e4c0cc402 feat: replace PendingBlockAndReceipts tuple with dedicated struct (#18395) 2025-09-11 22:32:09 +00:00
Federico Gimenez
f3aa57a10e fix: map EIP-7623 gas floor errors to expected exception type for test compatibility (#18389) 2025-09-11 20:15:53 +00:00
Yash Atreya
edc1ae8f4d fix(docs): mv search-index to dist from .vocs (#18390) 2025-09-11 14:49:19 +00:00
Yash Atreya
8c2d5cc484 fix(docs): disable jekyll which removes the search-index (#18388) 2025-09-11 12:37:07 +00:00
Matthias Seitz
9d3564ecba fix: relax nonce gap rule if configured (#18385) 2025-09-11 11:39:50 +00:00
Arsenii Kulikov
60568cca8f feat: add helper aliases for node adapters (#18366) 2025-09-11 07:55:13 +00:00
Arsenii Kulikov
a80ed916b1 refactor!: more type-safety in cli (#18375) 2025-09-11 07:54:34 +00:00
Brian Picciano
967a6fb1d5 perf(trie): Use ParallelSparseTrie (if enabled) for storage tries (#17959) 2025-09-10 22:51:52 +00:00
Matthias Seitz
f2350e509e fix: check payload id (#18370) 2025-09-10 18:46:48 +00:00
Federico Gimenez
17a41a2463 feat: bump hive eest tests (#18013) 2025-09-10 18:30:39 +00:00
Federico Gimenez
424974ca37 fix(engine): avoid block fetching inconsistencies for checks during reorgs (#18368) 2025-09-10 17:44:38 +00:00
Federico Gimenez
d6a92287ed feat(engine): check header validity after invalid transaction (#18356) 2025-09-10 12:00:28 +00:00
Yash Atreya
e94658f792 fix(docs): include .vocs to retain search-index (#18363) 2025-09-10 10:22:03 +00:00
Matthias Seitz
700f2e101a feat: add some ethapi builder fns (#18358) 2025-09-10 09:12:02 +00:00
malik
a3aaccd34a perf: optimize canonical_hashes_range with Vec::with_capacity pre-allocation + benchmark (#18072)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-10 07:36:51 +00:00
Rez
fe236cd571 fix: add is_osaka check before erroring in default_ethereum_payload (#18355) 2025-09-10 07:06:12 +00:00
Léa Narzis
3ce0a38108 fix: fix search in vocs doc (#18354) 2025-09-09 20:42:57 +00:00
Emilia Hane
4c363fe1aa feat(op-sdk): custom precompiles (#18350) 2025-09-09 20:04:41 +00:00
Brian Picciano
2fa52f32f4 fix(prune): TransactionLookup pruning issues with pre-merge expiry (#18348) 2025-09-09 16:55:17 +00:00
Arsenii Kulikov
90aa99cb3c feat: support customizable RPC namespace parsers (#18160)
Co-authored-by: Federico Gimenez <federico.gimenez@gmail.com>
2025-09-09 14:17:43 +00:00
Ignacio Hagopian
394a53d7b0 feat(stateless): Run EEST tests in stateless block validator & bug fixes (#18140)
Signed-off-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-09 12:48:14 +00:00
Matthias Seitz
4fdc1ceb0c refactor(revm): (#18150) use hardfork activation helpers (#18349)
Co-authored-by: Waiting-Chai <1753609696@qq.com>
2025-09-09 12:47:17 +00:00
malik
1423a30e15 perf: use debug_assert for parked pool lookup (#17712)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-09 12:45:11 +00:00
かとり
b7c2b562e1 fix(stages): implement entities checkpoint update in merkle stage unwind (#18131) 2025-09-09 12:02:52 +00:00
Federico Gimenez
6c9c96c132 fix(ci): pin teku image to fix kurtosis-op build (#18345) 2025-09-09 11:32:13 +00:00
nk_ysg
bfb37da2a9 perf(reth-engine-local): use VecDeque reduce removal operations (#18198) 2025-09-09 11:16:56 +00:00
theo
86eaa6f285 feat(op-reth/flashblocks): subscribe to the flashblock sequences produced (#18276)
Co-authored-by: julio4 <30329843+julio4@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-09 11:10:30 +00:00
Matthias Seitz
aa5e6ad417 fix: properly compute genesis hash (#18300) 2025-09-09 12:15:57 +02:00
Hai | RISE
64afc1e549 perf(merkle-stage): only fetch checkpoint in the branch that needs it (#18339) 2025-09-09 09:04:44 +00:00
Arsenii Kulikov
1e491bc85e feat: cache latest built payload (#18324) 2025-09-09 07:55:34 +00:00
dependabot[bot]
0d13d7f4ff chore(deps): bump actions/stale from 9 to 10 (#18335)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-09 07:50:59 +00:00
dependabot[bot]
e079ddc7a5 chore(deps): bump actions/github-script from 7 to 8 (#18334)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-09 07:50:45 +00:00
dependabot[bot]
4b29f5fafe chore(deps): bump actions/setup-go from 5 to 6 (#18332)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-09 07:50:16 +00:00
Brian Picciano
b4beab1a83 chore(trie): use read-only db handle during repair-trie dry-runs (#18328) 2025-09-09 06:56:26 +00:00
Matthias Seitz
a35b299ae5 docs: update public dashboards (#18331) 2025-09-09 00:34:29 +02:00
Matthias Seitz
23c2dcac9a chore: bump docs version 1.7.0 (#18326) 2025-09-08 23:27:08 +02:00
Matthias Seitz
9d56da53ec chore: bump version 1.7.0 (#18323) 2025-09-08 16:43:05 +02:00
Hai | RISE
6e950a1286 fix: DB benches (#18314) 2025-09-08 13:58:29 +00:00
radik878
cf19c9a10b fix(stateless): verify_execution_witness doc for pre-state mismatch (#18319) 2025-09-08 12:37:36 +00:00
Hai | RISE
1a4b5eca3c fix(bench): fix deadlock in test data generation (#18321) 2025-09-08 12:34:27 +00:00
Hai | RISE
77e13939d0 docs(reth-bench): fix markdown (#18322) 2025-09-08 14:34:45 +02:00
Alexey Shekhirin
e2368676cc ci: pin Rust to 1.88 when building for Windows in Cross (#18320) 2025-09-08 11:52:24 +00:00
Brian Picciano
366d641cc3 feat(trie): Add helper sub-command (#18301) 2025-09-08 11:05:15 +00:00
Julio
81b2e16fb6 feat(optimism): flashblock completed sequences (#18272) 2025-09-08 10:34:42 +00:00
Alexey Shekhirin
dd69dcbd01 refactor(engine): persistence logic (#18318) 2025-09-08 10:32:44 +00:00
kien-rise
bde7464e38 refactor: change PendingPool and PendingTransaction visibility to pub (#18267) 2025-09-08 10:16:45 +00:00
Roman Hodulák
4f930c25c4 refactor(optimism): Extract pending block building responsibility out of FlashBlockService (#18247)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-08 09:15:59 +00:00
Brian Picciano
a14f345c27 chore(trie): dont warn on blinded node reveals (#18317) 2025-09-08 09:09:02 +00:00
Emilia Hane
119ed881ec fix(rpc): error code eth_sendRawTransactionSync timeout (#18252)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-07 11:15:47 +00:00
github-actions[bot]
2e06bbc80f chore(deps): weekly cargo update (#18312)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-09-07 12:49:57 +02:00
Matthias Seitz
8b098755c1 chore: introduce validationtask with capacity (#18291) 2025-09-07 08:45:35 +00:00
Dan Cline
6e75f7b2e2 feat(download): support zst archives in reth download (#18237)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-06 15:33:58 +00:00
Matthias Seitz
de24793b19 chore: clippy happy (#18310) 2025-09-06 09:59:44 +02:00
Femi Bankole
ef337d46a2 feat: introduce maybe_pending method to StateProviderFactory (#18260)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-06 09:31:09 +02:00
James Niken
63a912e312 perf(e2e-test-utils): optimize block checking by fetching header instead of full block (#18254)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-06 08:36:57 +02:00
Matthias Seitz
62f03e41bc chore: fix various typos in comments and documentation (#18296) 2025-09-06 08:36:10 +02:00
Matthias Seitz
01d6f85690 perf: specialize len 1 (#18307) 2025-09-05 22:41:14 +00:00
Arsenii Kulikov
50e8409fa6 feat: expose EvmEnv to caller_gas_allowance (#18302) 2025-09-05 16:55:23 +00:00
Matthias Seitz
0bd1bb2b8c feat: introduce setting for delegated txs slots (#18298) 2025-09-05 16:52:52 +00:00
zhygis
e93e1fcecb feat(gpo): add default fee price argument (#18297)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-05 15:04:48 +00:00
Mablr
d6845357c1 feat(metrics): add TxPoolValidatorMetrics to track inflight validation jobs (#18295) 2025-09-05 12:11:41 +00:00
Matthias Seitz
9c61b46752 perf: specialize validate_transactions_with_origin for task validator (#18288) 2025-09-05 12:09:30 +00:00
Roman Hodulák
848d7fa830 test(optimism): Test that close message is responded to in WsFlashBlockStream (#18268) 2025-09-05 10:54:11 +00:00
Hai | RISE
0cdd54838b chore: delist unused deps with cargo-machete (#18259) 2025-09-05 10:23:52 +00:00
Matthias Seitz
f8b678cf17 perf: specialize single batch request (#18289) 2025-09-05 10:19:15 +00:00
Matthias Seitz
d99f37b243 perf: optimize send raw batching (#18280) 2025-09-05 10:02:51 +00:00
Matthias Seitz
30297092f6 fix: check prune checkpoints for unwind target limit (#18263) 2025-09-05 10:02:28 +00:00
YK
254860f2df chore(txpool): add sanity tests for blob fee bit handling (#18258) 2025-09-05 10:02:05 +00:00
Hai | RISE
4cc600c41e perf(db): do not heap-allocate the stage key per query (#18284) 2025-09-05 09:44:15 +00:00
Matthias Seitz
02ff408b10 perf: build local pending block without updates (#18271) 2025-09-05 10:54:49 +02:00
Matthias Seitz
7c8f5a402e perf: rm redundant collect (#18281) 2025-09-05 01:03:56 +00:00
Arsenii Kulikov
60311096e9 chore: extract validate_against_parent_gas_limit into separate fn (#18277) 2025-09-04 19:00:13 +00:00
Matthias Seitz
cf46aa017d chore: log prune settings on unwind (#18270) 2025-09-04 14:05:19 +00:00
Roman Hodulák
7f8674971f test(optimism): Test that UTF-8 encoded messages are received in WsFlashBlockStream (#18269) 2025-09-04 14:01:56 +00:00
Roman Hodulák
c57feda644 fix(optimism): Reconnect if ws stream ends in WsFlashBlockStream (#18226) 2025-09-04 12:23:32 +00:00
Roman Hodulák
ecd18987b0 feat(optimism): Respond to close messages in WsFlashBlockStream (#18256) 2025-09-04 12:03:36 +00:00
Hai | RISE
b1e19325b6 chore: remove redundant payload trait bounds (#18262) 2025-09-04 10:31:45 +00:00
Roman Hodulák
107399ff0e feat(optimism): Decode text messages in WsFlashBlockStream (#18257) 2025-09-04 09:07:43 +00:00
Roman Hodulák
36e39ebe3d fix(optimism): Compare parent hash and latest hash to invalidate cached flashblock (#18238) 2025-09-03 20:27:04 +00:00
Matthias Seitz
1d7fefecec chore: unify engine downloader targets (#18248) 2025-09-03 17:43:59 +00:00
quantix9
3d8d7ce781 chore: downgrade debug to trace for peer reputation logs (#18250) 2025-09-03 13:40:11 +00:00
Roman Hodulák
29685ce006 test(optimism): Test that WsFlashBlockStream pongs a ping (#18217) 2025-09-03 11:38:07 +00:00
Roman Hodulák
0550289c69 feat(optimism): Respond to ping messages with pong in WsFlashBlockStream (#18212) 2025-09-03 10:39:53 +00:00
Matthias Seitz
9121dba0b6 docs: update urls in docs (#18245) 2025-09-03 12:30:34 +02:00
YK
bb1dfc9e9d perf(txpool): eliminate allocations in basefee enforcement (#18218)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-03 09:49:15 +00:00
nk_ysg
a11655b515 perf(reth-optimism-flashblocks): rm redundant clone (#18196) 2025-09-03 09:21:32 +00:00
Ivan Wang
f0880f3ff0 fix: filter zero storage values when computing withdrawals root in genesis header (#18213) 2025-09-03 07:54:30 +00:00
Dan Cline
783ef65799 chore(trie): use instrument instead of manual span (#18239) 2025-09-03 07:46:18 +00:00
Dan Cline
0acebab68c chore(engine): add better logs and spans for execution (#18240) 2025-09-03 07:45:50 +00:00
Dan Cline
d5a4898384 fix(download): use updated merkle base URL (#18236) 2025-09-03 00:20:24 +02:00
Matthias Seitz
60ce536550 chore: improve flashblock logs (#18232) 2025-09-02 20:49:17 +00:00
Matthias Seitz
733e8cfce9 chore: safe None check (#18225) 2025-09-02 18:31:55 +00:00
Roman Hodulák
298a7cb5ea feat(optimism): Warn if FlashBlockService has stopped (#18227) 2025-09-02 20:27:54 +02:00
Roman Hodulák
44caf60afd test(optimism): Test that sequence stops before a gap (#18228) 2025-09-02 17:39:34 +00:00
Roman Hodulák
358b61b4ef fix(optimism): Prevent repeated executions of current flashblock sequence (#18224) 2025-09-02 14:02:18 +00:00
Matthias Seitz
6bcd5e07ac fix: incorrect blob fee comparison (#18216) 2025-09-02 12:02:47 +00:00
Matthias Seitz
dba13f4486 revert: "perf(txpool): eliminate allocations in basefee enforcement" (#18215) 2025-09-02 13:49:15 +02:00
Matthias Seitz
1788c5c6a2 fix: spawn flashblocks service as blocking (#18214) 2025-09-02 10:39:32 +00:00
Matthias Seitz
d10e5f6fb4 perf: prepare flashblock txs (#18201)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-09-01 19:41:34 +00:00
Matthias Seitz
4d94e201d7 chore: impl ExecutorTx for withtxenv (#18202) 2025-09-01 19:25:40 +00:00
Matthias Seitz
e9801a7997 chore: simplify flashblocks poll logic (#18194)
Co-authored-by: julio4 <30329843+julio4@users.noreply.github.com>
Co-authored-by: Roman Hodulák <roman.hodulak@polyglot-software.com>
2025-09-01 17:40:18 +00:00
Roman Hodulák
fe37279ab3 test(optimism): Test that streaming flashblocks from remote source is successful (#18170) 2025-09-01 13:20:09 +00:00
Brawn
b6fddd7d07 fix: struct serialization to match actual fields (#18189) 2025-09-01 13:20:06 +00:00
Roman Hodulák
945d50a7f1 test(optimism): Cover the case of repeatedly failing to connect to websocket in WsFlashBlockStream (#18169) 2025-09-01 12:40:43 +00:00
Roman Hodulák
e3772c4db9 test(optimism): Cover the case of stream returning errors in WsFlashBlockStream (#18167) 2025-09-01 11:59:50 +00:00
Roman Hodulák
e76c88c219 test(optimism): Cover the failure case of decoding a non-binary message in WsFlashBlockStream (#18166) 2025-09-01 11:26:26 +00:00
Roman Hodulák
9ec6459bda test(optimism): Cover successful decoding of websocket messages in WsFlashBlockStream (#18163) 2025-09-01 10:54:07 +00:00
Brian Picciano
651e34cec6 fix: Pass prefix set from init_from_state_dump into compute_state_root (#18185) 2025-09-01 10:16:35 +00:00
TMOT
d69fda1a2b feat(examples): added txpoolExt_clearTxpool to existing example (#18175) 2025-09-01 10:07:52 +00:00
Roman Hodulák
e9a57a72c8 refactor(optimism): Extract responsibility to connect to a flashblock websocket stream (#18158) 2025-09-01 09:22:04 +00:00
Julio
61b8015c84 perf(optimism): use cached db in FlashblockService (#18125)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-09-01 11:04:03 +02:00
YK
e30da67d35 perf(txpool): eliminate allocations in basefee enforcement (#18162) 2025-09-01 08:18:14 +00:00
Fynn
203cb6e158 feat: enhance engine tree metrics (#18000) 2025-09-01 01:29:22 +00:00
DaniPopes
3ad9743904 chore: avoid using hashmap hashers directly (#18176) 2025-08-31 13:40:13 +00:00
smileclown2024
42eb835569 perf(stages): optimize unwind operation by fetching headers instead full blocks (#18139) 2025-08-31 08:39:17 +00:00
github-actions[bot]
4cc2a4decd chore(deps): weekly cargo update (#18174)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-08-31 08:17:33 +00:00
Matthias Seitz
911ed27787 chore: simplify dev signed tx conversions (#18171) 2025-08-30 19:01:31 +00:00
David Klank
eab2ad7743 refactor: remove unnecessary PathBuf clone in CLI help generator (#18172) 2025-08-30 11:43:33 +00:00
VolodymyrBg
4a28cf4281 fix: correct logical error in delete_outside_range error message (#18031) 2025-08-30 08:07:31 +00:00
James Niken
339f18c48f ci: Fix .PHONY declaration for install-reth-bench target in Makefile (#18152) 2025-08-30 10:03:46 +02:00
pepes
9b863264d4 perf: optimize single-element collection creation (#18168) 2025-08-29 16:21:48 +00:00
dependabot[bot]
0e9cbc80b4 chore(deps): bump actions/upload-pages-artifact from 3 to 4 (#18076)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-29 14:17:38 +00:00
Julio
297304852b fix(optimism): find fb attrs in base fb (#18164) 2025-08-29 14:01:35 +00:00
quantix9
7170e14404 chore: Add 0x prefix and use macro (#18156) 2025-08-29 12:20:08 +00:00
Roman Hodulák
616e492c79 perf(optimism): Pass noop provider to skip state root calculations for flashblocks (#18161) 2025-08-29 11:27:00 +00:00
nk_ysg
64df86fe30 perf(reth-invalid-block-hooks): use Reverts::eq reduce clone (#18159) 2025-08-29 11:08:24 +00:00
Jonas Bostoen
21ba9c4e05 feat(optimism): add FlashblocksRx getter (#18155) 2025-08-29 10:40:49 +00:00
Brian Picciano
e7685789be fix(trie): Fix call to update_account in witness (#18154) 2025-08-29 10:31:02 +00:00
nk_ysg
5c0c8bb38d chore(reth-optimism-storage): small refactor code (#18104) 2025-08-29 08:58:04 +00:00
YK
ee5006c027 perf(engine): pre-allocate channel handles in prewarm task (#18147) 2025-08-29 08:23:01 +00:00
YK
f93dfec50f perf(engine): pre-allocate Vec capacity in payload processor (#18148) 2025-08-29 07:24:16 +00:00
Eric Woolsey
001fb927b5 feat: generalize impl EngineValidatorAddOn for OpAddOns (#18141) 2025-08-29 06:14:26 +00:00
Max Bytefield
0b316160a9 docs(op): op chains don't require deposit contracts, so as dev chain (#17988)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-28 18:22:26 +00:00
Arsenii Kulikov
66a0a14cf6 refactor: merge EthTransactionValidator and EthTransactionValidatorInner (#18129) 2025-08-28 18:22:01 +00:00
Matthias Seitz
354cfdf90e fix(txpool): ensure fee changes are updated (#18137) 2025-08-28 18:21:40 +00:00
Roman Hodulák
f13cf181ad fix(optimism): Fail if latest and base flashblock parent are different (#18132)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-28 17:44:54 +00:00
Matus Kysel
abf1dbd7a5 feat(net): implement support of subprotocols (#18080)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-28 17:06:16 +00:00
Louis Brown
8bc2bfdf90 feat: Forward transactions to a specified endpoint (#17444)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-08-28 16:18:03 +00:00
Haotian
94547b06a1 fix: import should count on the delta (#17819)
Signed-off-by: tmel <tmel0103@gmail.com>
Signed-off-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: tmel <tmel0103@gmail.com>
2025-08-28 15:27:41 +00:00
Roman Hodulák
594a67d87f fix(optimism): Verify that flashblocks are not old according to canon state (#18123) 2025-08-28 15:23:05 +00:00
Hai | RISE
fad93e95a8 perf(engine): only clone headers instead of full blocks for tree tasks (#18116) 2025-08-28 15:14:58 +00:00
Suyash Nayan
282abc708c fix(engine): Prevent instant miner from creating empty blocks (#18108)
Signed-off-by: 7suyash7 <suyashnyn1@gmail.com>
2025-08-28 15:12:58 +00:00
Matus Kysel
63a09bace9 refactor(eth-wire): remove EthVersion::total_messages in favor of EthMessageID::max (#17999) 2025-08-28 12:46:48 +00:00
Matthias Seitz
9e9a0b1867 chore: add prewarm traces (#18117) 2025-08-28 10:24:11 +00:00
Andrea Simeoni
b2c6852c29 fix(optimism): Fix endless poll on the FlashBlockService (#18120) 2025-08-28 09:39:55 +00:00
Arsenii Kulikov
3425a31a2f chore: make caller_gas_allowance an RPC trait method (#18101) 2025-08-28 09:22:47 +00:00
Roman Hodulák
07c62aebda fix(optimism): Prevent old pending flashblock from being returned from pending_flashblock (#18103) 2025-08-28 09:01:27 +00:00
Matthias Seitz
8a4b53361c chore: include err in log (#18119) 2025-08-28 08:44:16 +00:00
leniram159
87a4949f5c feat: add EIP-7934 block size check to validateBuilderSubmissionV5 (#18111) 2025-08-28 07:57:03 +00:00
Matthias Seitz
eb4496dbf0 ci: remove expected failures (#18099) 2025-08-27 21:49:26 +02:00
nk_ysg
1d893a1ce2 chore(reth-optimism-cli): use OpTypedTransaction::eip2718_encode (#18105) 2025-08-27 16:08:10 +00:00
Matthias Seitz
e62c7d2469 feat: add module manipulation methods and RPC server arg helpers (#18084) 2025-08-27 14:35:08 +00:00
Dharm Singh
0804131015 refactor: make transaction validator functions reusable (#17929)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-08-27 14:30:56 +00:00
Roman Hodulák
f376dd8031 feat(optimism): Remove builder of next block environment from FlashBlockService (#18100) 2025-08-27 13:59:02 +00:00
Roman Hodulák
9d1ec366f8 feat(optimism): Implement conversion of ExecutionPayloadBaseV1 into OpNextBlockEnvAttributes (#18097) 2025-08-27 13:30:47 +00:00
Hai | RISE
615bd4a30f perf(engine): only fetch headers instead of full blocks for tree tasks (#18088) 2025-08-27 12:27:37 +00:00
Roman Hodulák
3a5c992394 feat(optimism): Add flashblocks_url as part of rollup args of the op-reth CLI (#18094) 2025-08-27 11:32:00 +00:00
Matthias Seitz
dc598490ac feat: add helper for provider with wallet (#18085) 2025-08-27 10:27:08 +00:00
Matthias Seitz
2e6ab54248 feat: add NoopNetwork example (#18093) 2025-08-27 10:25:43 +00:00
Roman Hodulák
97f4b00fc0 feat(optimism): Launch FlashBlockService when websocket URL is provided in OpEthApi (#18077) 2025-08-27 09:51:33 +00:00
0xKitsune
b7b70a46a5 feat: optionally disable balance check for EthTransactionValidator (#18086) 2025-08-27 09:44:59 +00:00
nk_ysg
f67e7547df fix(era): SlotIndex offset support negative value (#18047) 2025-08-27 08:28:28 +00:00
malik
28774f7ad4 fix: clarify locking behavior comment in InMemoryState (#18081) 2025-08-27 08:05:52 +00:00
Brian Picciano
34de67ab57 fix: Fix state root related metrics (#18045) 2025-08-27 08:04:52 +00:00
Hai | RISE
0889a52ec0 chore(nix): add cargo-nextest to devShell (#18087) 2025-08-27 07:59:09 +00:00
Matthias Seitz
3d8033a03c chore: add helpers for setting minimum protocol basefee (#18083) 2025-08-26 23:51:55 +00:00
Haotian
9d2194fa43 feat: support importing multi files (#17928)
Signed-off-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: tmelhao <tmel0103@gmail.com>
2025-08-26 20:58:53 +00:00
Arsenii Kulikov
db04a19101 feat: fusaka changes (#18071)
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>
Co-authored-by: Bharath Vedartham <vedabharath12345@gmail.com>
2025-08-26 18:43:36 +00:00
Roman Hodulák
13e0fd55de feat(optimism): Change FlashBlockService output ExecutedBlock => PendingBlock (#18078) 2025-08-26 16:59:23 +00:00
Igor Markelov
92743a0d87 feat: FCU unwind: properly reorg in-memory canonical state and update latest block (#17938)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-26 16:54:50 +00:00
Roman Hodulák
3c7301e0bb feat(optimism): Add launch_wss_flashblocks_service function spawning a task sending last pending block (#18067) 2025-08-26 15:15:44 +00:00
Debjit Bhowal
87647b25ac fix(static_file_provider): Exception for Gnosis and Chiado (#18044)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-26 14:31:06 +00:00
Léa Narzis
8c8ffd4329 refactor(rpc): add TxEnv converter to RpcCoverter (#17792)
Co-authored-by: Roman Hodulák <roman.hodulak@polyglot-software.com>
2025-08-26 13:51:07 +00:00
ongyimeng
caa8c541ec perf: use FuturesOrdered instead of join_all to yield results (#17638)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-26 13:26:26 +00:00
Roman Hodulák
7ee085f393 feat(optimism): Add constructors to FlashBlockService and FlashBlockWsStream (#18064) 2025-08-26 13:23:01 +00:00
Hai | RISE
d14658dc5e perf(payload): do not clone full attributes for timestamp validation (#18054) 2025-08-26 15:29:07 +02:00
Roman Hodulák
b50eb7e514 feat(optimism): Wrap incoming stream item in Result for compatibility of FlashBlockService with FlashBlockWsStream (#18063) 2025-08-26 12:15:29 +00:00
Avory
089629ba64 fix: use deterministic RNG in state_root_task benchmark (#18049) 2025-08-26 11:47:53 +00:00
int88
f343b19c1b fix: add secp256k1 to dev-dependencies of dns crate (#18059) 2025-08-26 09:44:10 +00:00
bendanzhentan
138c9172bb fix(node/builder): correct left_mut() method implementation and docs (#18053) 2025-08-26 08:46:45 +00:00
YK
7703e6fb9d refactor(tree): move metered execution functions to tree module (#17912) 2025-08-26 01:14:31 +00:00
Matthias Seitz
dd4aa7cd2a chore: relax EngineValidatorAddOn impl (#18052) 2025-08-25 21:13:25 +02:00
smileclown2024
af57047654 perf: optimize canonical_hashes_range to O(n) complexity (#17975) 2025-08-25 18:42:19 +00:00
かとり
8bec55183e feat: remove the not used executor in sparse_trie (#17966) 2025-08-25 20:15:24 +02:00
Roman Hodulák
23cfd1bb7c feat(optimism): Add FlashBlockService that builds blocks from FlashBlocks (#18009) 2025-08-25 15:02:39 +00:00
Avory
c97b322c54 feat: bump jsonrpsee to v0.26.0 (#17901)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-25 16:54:30 +02:00
Matthias Seitz
d87280e793 chore: apply spelling and typo fixes (#18041) 2025-08-25 16:24:21 +02:00
DaniPopes
c3d211c6f7 chore: remove msrv from clippy.toml (#18034) 2025-08-25 15:21:23 +02:00
iPLAY888
f3c2a3dc27 Update README.md (#18021) 2025-08-25 13:55:08 +02:00
Hai | RISE
014e8dacc9 perf(pool): remove unused hash in tx insertion/validation (#18030) 2025-08-25 10:38:48 +00:00
Dharm Singh
01f667c228 feat(reth-bench): add --advance option for relative block ranges (#17996) 2025-08-25 01:51:24 +00:00
github-actions[bot]
848370b311 chore(deps): weekly cargo update (#18023)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-08-24 10:16:29 +00:00
Matthias Seitz
ce2ce23e30 feat: add accessor methods for RPC handle types (#18016) 2025-08-23 11:27:27 +00:00
Julio
13f7ae463e feat: add log.file.name cli arg (#17883)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-23 04:51:11 +00:00
Ishika Choudhury
304c9090e2 feat: added trace_transaction_storage_access (#16022)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-23 03:23:16 +00:00
Dharm Singh
28b085a352 feat: add CLI support for TransactionPropagationMode in NetworkArgs (#18012)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-23 02:59:34 +00:00
Kero
d5ade8504a fix: replace unwrap with proper error handling in ShardedKey decode (#17902) 2025-08-23 02:48:08 +00:00
Matthias Seitz
fcb74930af feat: add helper for setting tx propagation mode (#18007) 2025-08-22 15:34:10 +00:00
Federico Gimenez
530269e3a6 test(engine): add e2e tests for forkchoice update with finalized blocks (#18004) 2025-08-22 13:01:37 +00:00
Matthias Seitz
42f44a3d74 fix: rlp encoding for sealedblock (#18003) 2025-08-22 10:12:36 +00:00
Brian Picciano
8193fcff93 chore(trie): fully reveal sparse tries prior to leaf updates/removals (#17643)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-22 09:16:38 +00:00
leniram159
d8e8d67ff8 fix: remove unused base_fee_params_at_block function (#17992)
Co-authored-by: Dharm Singh <dharmhsing@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-22 08:01:45 +00:00
JP
e9d4020057 fix(revm-inspectors): update revm-inspectors to fix js tracer opcode gas calculation (#17986) 2025-08-22 09:38:59 +02:00
Roman Hodulák
a4dd305ee9 feat(optimism): Add FlashBlockWsStream for streaming flashblocks from a websocket connection (#17987) 2025-08-21 23:11:56 +02:00
Federico Gimenez
00ae7654e9 chore(cli): add log about state root computation for init-state (#17980) 2025-08-21 19:46:35 +00:00
MIHAO PARK
9209d37e72 chore: remove not used block/receipt memory limiter constants (#17989) 2025-08-21 21:52:54 +02:00
Starkey
b81bdc88f0 chore(db): remove empty TODO comment (#17981) 2025-08-21 19:33:11 +00:00
Roman Hodulák
12abfd76de feat(optimism): Add FlashBlock payload schema (#17984) 2025-08-21 17:35:54 +02:00
Ashin Gau
e0b5203cb0 refactor: Fix incorrect length parameter in StorageTrieEntry::from_compact (#17748) 2025-08-21 14:31:13 +00:00
Roman Hodulák
00dd9eccc6 feat(optimism): Add new reth-optimism-flashblocks crate (#17982) 2025-08-21 16:50:09 +02:00
Roman Hodulák
aabeb06a15 feat(rpc): Use pool-based pending block for pending state over latest (#17924) 2025-08-21 11:41:28 +00:00
MIHAO PARK
6264530a8a docs(net): add Rreceipts69 document (#17969)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-21 10:59:13 +00:00
Federico Gimenez
7ea6daf7d8 fix(optimism): add debug_traceTransaction support for pre-bedrock blocks (#17971) 2025-08-21 10:41:32 +00:00
Roman Hodulák
65907e3d86 feat(rpc): Add local_pending_state that creates a state provider out of a mem-pool built pending block (#17957) 2025-08-21 08:33:15 +00:00
Roman Hodulák
e0ca0407b2 docs(sdk): Add guide for custom transaction envelope macro usage (#17879) 2025-08-21 08:30:12 +00:00
Brian Picciano
df3bf2c00a perf(trie): default ParallelSparseTrie to enabled (accounts only still) (#17956) 2025-08-21 06:24:05 +00:00
Brian Picciano
4fe6ae411a fix: ParallelSparseTrie::update_leaf edge-case, and not correctly clearing all fields for re-use (#17955) 2025-08-21 06:23:42 +00:00
MIHAO PARK
a2751c316e fix(net): Receipts69 should respond with Receipts69 message (#17880) 2025-08-20 21:32:07 +00:00
Starkey
7884c1e063 fix: use len() instead of iter().count() for trace logging (#17968) 2025-08-20 20:30:22 +00:00
Dharm Singh
2c4d90671f docs(trie): document MDBX ordering assumptions in TrieWalker and Trie… (#17906) 2025-08-20 18:20:04 +00:00
Femi Bankole
a89646faee chore(engine): rename block validation task (#17964) 2025-08-20 18:16:19 +00:00
Femi Bankole
1ed7450d53 feat(engine): set default_memory_block_buffer_target to zero (#17963) 2025-08-20 18:01:00 +00:00
かとり
8435976563 feat(optimism): add supervisor_revalidation_duration_seconds metrics (#17897) 2025-08-20 17:32:50 +00:00
Léa Narzis
0110fbe0a9 refactor(evm): use execution payload getters (#17947) 2025-08-20 14:43:48 +00:00
Matthias Seitz
db6ee6428d chore: rm redundant runtime (#17961) 2025-08-20 14:11:24 +00:00
Roman Hodulák
441bad848b feat(rpc): Convert state_at_block_id into async function (#17954) 2025-08-20 14:09:32 +00:00
0xNarumi
4bd788e74c fix: allow at most one in-flight tx (#17960) 2025-08-20 14:04:41 +00:00
Matthias Seitz
81fe6ca05a chore: activate pool if node (#17950) 2025-08-20 13:01:03 +00:00
Matthias Seitz
e110c9b8d4 chore: add helpers to added tx state (#17951) 2025-08-20 13:00:33 +00:00
Léa Narzis
7542580170 refactor(era): add era types and file traits for shared behavior (#17873)
Co-authored-by: Roman Hodulák <hodulakr@gmail.com>
2025-08-20 11:43:20 +00:00
Roman Hodulák
0fa93840e8 feat(rpc): Add spawn_blocking_io_fut that accepts a future (#17953) 2025-08-20 09:45:43 +00:00
Starkey
93fcd82351 fix: replace todo!() with Ok(None) in NoopProvider transaction_block (#17949) 2025-08-20 10:00:18 +02:00
Solar Mithril
0f26562bb6 feat: Add transaction propagation kind 'None' (#17944) 2025-08-19 16:52:58 +00:00
crStiv
a4c57de5ec docs: multiple small textual defects (#17904) 2025-08-19 16:50:40 +00:00
bendanzhentan
d31e4ca835 fix(optimism): correct string formatting in error message (#17923) 2025-08-19 16:47:03 +00:00
dependabot[bot]
d8ade5af38 chore(deps): bump amannn/action-semantic-pull-request from 5 to 6 (#17933)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-19 16:45:20 +00:00
YK
a1a1b11e45 fix(trie): replace rayon with tokio for I/O operations in parallel trie (#17931) 2025-08-19 16:37:17 +00:00
Starkey
41aa3bf7ff fix: optimize empty directory check in is_database_empty (#17932) 2025-08-19 16:23:14 +00:00
Brian Picciano
97763ff7dd chore: fix clippy in nix flake (#17918) 2025-08-19 18:46:11 +02:00
crazykissshout
a3298ecfdd test: remove misleading TODO comments in MockEthProvider (#17926) 2025-08-19 12:45:39 +00:00
bigbear
b9e09d06b7 chore: replace reference (#17899)
Co-authored-by: Yash Atreya <44857776+yash-atreya@users.noreply.github.com>
2025-08-19 12:06:00 +00:00
malik
b81e133fbc perf: reduce cycles on indexing (#17916) 2025-08-19 07:33:10 +00:00
Mourad Kejji
91730cd326 docs: add paragraph about EIP-7702 transaction types (#17865) 2025-08-18 16:51:58 +00:00
Emilia Hane
1b9f9e2a2f chore(grafana): Add description to pruner panel (#17917) 2025-08-18 15:04:56 +00:00
bendanzhentan
56e641a878 chore(metrics): fix MeteredReceiver docs (#17913) 2025-08-18 14:19:14 +00:00
Kero
3f3e4fe7a7 fix: convert anchor() method from recursive to iterative (#17909) 2025-08-18 13:55:26 +00:00
robinsdan
29e4b20588 refactor: remove StateCommitment trait (#17812) 2025-08-18 13:53:53 +00:00
Forostovec
e617dd30c9 fix(ress/provider): return zero headers when request.limit == 0 (#17911) 2025-08-18 12:12:58 +00:00
github-actions[bot]
48df70eaff chore(deps): weekly cargo update (#17907)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-17 10:32:34 +00:00
malik
61662098aa chore(pool): replace saturating_sub with unchecked_sub (#17890) 2025-08-16 00:43:54 +00:00
Matthias Seitz
198ba18e86 chore: remove Beacon from type names (#17868)
Co-authored-by: petarjuki7 <petar.jukic7@gmail.com>
2025-08-15 20:54:05 +00:00
Matthias Seitz
7577ab81aa test: add tests for fetching header,body ranges (#17893) 2025-08-15 20:52:09 +00:00
0xKitsune
f180b0da9b feat: bubble up revm feature flags via revm-reth (#17896) 2025-08-15 18:39:26 +00:00
Roman Hodulák
b3479f6622 refactor(examples): Replace CustomTransactionEnvelope with Signed<TxPayment> as the variant type in the custom node example (#17894) 2025-08-15 14:37:29 +00:00
Shiyas Mohammed
de157aa3a0 feat(rpc): add configurable pending block behaviour (#17677) 2025-08-15 13:09:41 +00:00
Roman Hodulák
055331a667 fix(examples): Implement Compact using blanket implementation (#17878) 2025-08-15 13:01:53 +00:00
YK
3f86efc3bb fix: use map_pure_precompiles for precompile caching (#17886) 2025-08-15 11:48:39 +00:00
colin
87c29027b8 fix(network): off by one error in getting next header (#17889)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-15 13:47:31 +02:00
Matthias Seitz
0de24935c2 chore: clippy happy (#17892) 2025-08-15 13:18:37 +02:00
Emilia Hane
7744ee9e74 chore(tx-pool): Rm redundant async block (#17891) 2025-08-15 13:05:31 +02:00
かとり
6daf5fc777 chore: remove the deprecated ganache api (#17881) 2025-08-14 21:49:20 +00:00
Roman Hodulák
d030ef8b7a feat(rpc): Add RpcTxConverter to allow for providing custom converters with extra context (#17827) 2025-08-14 13:15:10 +00:00
viktorking7
4651b9ae7c fix: critical error handling in ExEx launcher (#17627)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-14 07:45:41 +00:00
Mablr
907448ff3b feat(rpc): Add support for custom Tokio runtime configuration in EthereumAddOns (#17693)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-14 05:40:29 +00:00
Rej Ect
84992f7508 chore(ci): migrate workflows to checkout v5 (#17813) 2025-08-14 05:19:40 +00:00
Jack Drogon
cd7a3c816f fix: replace unsafe unwrap with proper error handling (#17867)
Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
2025-08-14 04:40:40 +00:00
Eric Woolsey
b64eed99b5 feat: custom instance label and configurable datasource for mempool dash (#16634) 2025-08-14 04:18:21 +00:00
0xKitsune
e12e6c0d04 feat(txpool): Batch insertions into the Tx Pool (#17670)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-08-13 19:36:34 +00:00
DaniPopes
4e20417a87 fix: box some more futures (#17864) 2025-08-13 18:45:02 +00:00
nk_ysg
544eed8b72 test(chain-state): opt unit test (#17770) 2025-08-13 18:12:48 +00:00
Matthias Seitz
b5aa824120 chore: fix typos and improve documentation (#17862) 2025-08-13 20:33:52 +02:00
greg
cb03cb7e17 feat: make MockEthProvider more generic (#17780)
Signed-off-by: Gregory Edison <gregory.edison1993@gmail.com>
2025-08-13 17:55:10 +00:00
Bashmunta
ad9b528c1f docs(e2s_file): clarify automatic version insertion and entries behavior (#17789)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-13 17:38:57 +00:00
かとり
0fdc1ec28d chore: update crunchy to v0.2.4 (#17856) 2025-08-13 17:38:23 +00:00
phrwlk
f3b99cbf32 fix: remove unused import from execute.rs (#17811) 2025-08-13 17:29:54 +00:00
Roman Hodulák
8065229008 feat(rpc): Add SimTxConverter to allow for providing custom converters with extra context (#17821) 2025-08-13 17:13:55 +00:00
Jack Drogon
1cdc43d79c fix: typo initialise to initialize (#17851)
Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
2025-08-13 17:09:59 +00:00
かとり
5dda39dd8d chore: use receipt.into_logs instead of log.to_vec to reduce the unnecessary clone (#17852) 2025-08-13 16:52:31 +00:00
onbjerg
ee8c893f59 chore: remove myself from codeowners (#17855) 2025-08-13 15:14:32 +00:00
Ishika Choudhury
94c93583af feat: introduced configurable version globals (#17711)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-13 14:25:35 +00:00
georgehao
3fe6c0c3c6 fix(call): overwrite gas when exceed the RPC_DEFAULT_GAS_CAP (#17847) 2025-08-13 14:04:20 +00:00
Jack Drogon
f1da87e3e6 fix: clippy warnning manual_is_multiple_of (#17853)
Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
2025-08-13 13:47:58 +00:00
Dan Cline
f30016019d fix(db): make db get --raw work with DupSort tables (#17842) 2025-08-13 12:06:49 +00:00
Roman Hodulák
28c7113799 feat(examples): Add custom header extensions to payload attributes in custom_node example (#17797) 2025-08-13 10:45:10 +00:00
Max Bytefield
dfc58eac7c chore: remove s3 stage (#17831) 2025-08-13 09:22:22 +00:00
Pana
02eafd75f1 chore: update db-access example used method (#17815) 2025-08-13 09:10:52 +00:00
Dan Cline
fa31b9edcc chore(deps): bump revm 28.0.1, inspectors, alloy-evm (#17840) 2025-08-12 23:10:13 +00:00
malik
79571315be perf: use unwrap and save 198 cycles (#17836) 2025-08-12 19:34:52 +00:00
Haotian
f49b3202d1 chore(cli): rename file import_op to import_core for clarity (#17826)
Signed-off-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: tmelhao <tmel0103@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-12 18:56:18 +00:00
daksh
443d16f6f7 perf: iterate through nibbles (#17820)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-12 18:54:35 +00:00
Wolfgang Welz
810790c767 feat: allow external block recovery in reth-stateless (#17755) 2025-08-12 18:44:52 +00:00
Mablr
6e691c0f38 chore: Remove BlockMeta variants and unused code (#17835) 2025-08-12 18:29:04 +00:00
Léa Narzis
3cfc01d09b feat(tx-pool): add add_transactions_with_origins helper (#17802) 2025-08-12 17:41:10 +00:00
Cypher Pepe
82f1cc09ff chore: fixed dead links in repo (#17694) 2025-08-12 17:38:02 +02:00
ssolit
5733a32e27 test: modify discv5 startup test to use a random port (#17614) 2025-08-12 17:36:50 +02:00
DaniPopes
772d92056d fix: storage lock race condition (#17823) 2025-08-12 15:03:38 +00:00
malik
01c39f6738 perf: optimize condition ordering in ParkedPool for better short-circuiting (#17816) 2025-08-12 13:40:10 +00:00
Hai | RISE
1077904f55 perf: remove some clones around eth tracing (#17822) 2025-08-12 13:30:35 +00:00
dependabot[bot]
6a79d80ec5 chore(deps): bump actions/download-artifact from 4 to 5 (#17817)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 10:55:33 +00:00
dependabot[bot]
e741fac680 chore(deps): bump actions/checkout from 4 to 5 (#17814)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-12 08:12:55 +00:00
Max Bytefield
74dcb8afdb chore(test-vectors): remove TxDeposit compact TODO (#17800)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-08-12 02:10:22 +00:00
Max Bytefield
e208d380b7 chore: remove whitespace of the gas unit and threshold (#17808) 2025-08-12 02:04:39 +00:00
Max Bytefield
f0bd4c6843 chore: rename gas to gas_used in the node logs (#17767) 2025-08-11 21:37:48 +00:00
Solar Mithril
bcbd2d64ce chore: Expose payload builder handle and metrics (#17764) 2025-08-11 16:46:19 +00:00
viktorking7
3ba2370a57 chore: remove redundant words in comment (#17753) 2025-08-11 18:41:38 +02:00
Matthias Seitz
0b1c94a150 feat: add op db access example (#17796) 2025-08-11 15:45:53 +00:00
Femi Bankole
3e0ceda9f1 feat: persist origin on pooled tx backup for propagation setting (#17756)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-11 15:13:45 +00:00
Max Bytefield
76c4c02edb chore: replace ~/.cargo with $CARGO_HOME (#17776) 2025-08-11 14:46:13 +00:00
Max Bytefield
69a1951f54 docs: add optimism Access-list spec (#17775) 2025-08-11 11:32:32 +00:00
Max Bytefield
1ba9e680bc fix: reth dev node implement the --block-max-transactions arg (#17784)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-11 11:28:49 +00:00
colin
42ae8beee6 fix(network): push header before next header check in get_headers_response (#17766)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-11 10:16:54 +00:00
github-actions[bot]
6260c10c52 chore(deps): weekly cargo update (#17777)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-11 11:09:23 +02:00
georgehao
31dd1334e6 docs: remove deprecated difficulty check comment (#17781) 2025-08-11 08:42:50 +00:00
Matthias Seitz
5f0d33425e chore: msrv 1.88 (#17782) 2025-08-10 15:51:26 +00:00
Wolfgang Welz
d8f9f05e2c fix: add validation against parent header in reth-stateless (#17754) 2025-08-08 21:54:12 +00:00
morito
a9cd3fc83c chore: Fix typo tx_inf -> tx_info (#17763) 2025-08-08 18:12:27 +00:00
Snezhkko
c23e533779 refactor(witness): remove unnecessary curly braces in closure (#17752)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-08-08 02:55:10 +00:00
Brian Picciano
82bbed9795 feat: nix flake (#17757)
Co-authored-by: rob <mdnlss@outlook.com>
Co-authored-by: mdnlss <rob73hall@gmail.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-08-07 23:34:07 +00:00
Micke
9862481f18 fix(stages): use correct block number in error message (#17751) 2025-08-07 13:52:48 +00:00
Dan Cline
59e4a5556f feat(grafana): add state root duration histogram graph (#17745) 2025-08-06 22:23:50 +00:00
Fibonacci747
b5e65926a0 fix: add missing semicolon in wallet generation loop (#17739) 2025-08-06 18:30:18 +00:00
Matthias Seitz
baa03294cf fix: enforce propagate on getpooledtx (#17720)
Co-authored-by: Bharath Vedartham <vedabharath12345@gmail.com>
2025-08-06 20:18:05 +02:00
Arsenii Kulikov
f5c2502f55 feat: delay block -> payload conversions (#17681) 2025-08-06 17:53:37 +00:00
Léa Narzis
a4e85841d8 feat(chain-state): add IndexedTx helper (#17737) 2025-08-06 17:24:32 +00:00
queryfast
49f7543aa2 chore: remove redundant word in comment (#17728)
Signed-off-by: queryfast <queryfast@outlook.com>
2025-08-06 16:38:47 +00:00
Léa Narzis
bf2700aa3e feat: add jovian to OpChainSpec (#17671)
Co-authored-by: Emilia Hane <emiliaha95@gmail.com>
2025-08-06 11:14:04 +00:00
Matthias Seitz
62425b2643 chore: feature gate async (#17734) 2025-08-05 23:37:30 +00:00
radik878
f3a42bce55 fix: typo in file deletion error message (#17729) 2025-08-05 23:33:59 +00:00
Matthias Seitz
4f6f97d422 chore: rm trie dep (#17732) 2025-08-05 21:37:57 +00:00
Danno Ferrin
f052c46b84 feat: Execute execution-apis-tests in e2e tests (#17708) 2025-08-05 20:55:05 +00:00
Skanda Bhat
4d96ea0343 test(generators): add topics_count parameter to random_receipt (#17718) 2025-08-05 20:53:32 +00:00
Dan Cline
ac83c27531 fix(db-common): compute state root when initializing from genesis (#17731) 2025-08-05 20:30:30 +00:00
Danno Ferrin
944a5fc19f fix: execution-apis eth_syncing should return false (#17730) 2025-08-05 17:47:35 +00:00
Morty
48941e6db5 fix(GPO): calculate max_tx_gas_used corner case (#17679) 2025-08-04 21:58:02 +00:00
Alexey Shekhirin
1aee213133 deps: bump libmdbx to 0.13.7 (#17727)
Co-authored-by: Леонид Юрьев (Leonid Yuriev) <leo@yuriev.ru>
2025-08-04 21:49:29 +00:00
Matthias Seitz
4db6adfedd chore: fix clippy docs (#17726)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-08-04 20:25:09 +00:00
Bharath Vedartham
6c37ef5635 chore: add flag to disable txpool gossip (#17724) 2025-08-04 18:23:20 +02:00
Matthias Seitz
d5f59070bb test: add ordering test (#17703) 2025-08-04 05:57:02 +02:00
github-actions[bot]
cf3ab02b2f chore(deps): weekly cargo update (#17716)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-08-03 08:35:33 +00:00
nk_ysg
3a201c24bd test(exex): add advance backfill range test (#17714) 2025-08-02 17:52:08 +00:00
Matthias Seitz
6234f61c35 fix: forward unknown hashes pre bedrock (#17709) 2025-08-01 22:14:00 +00:00
stevencartavia
f74efdb02b chore: fix clippy warnings (#17707) 2025-08-01 20:37:25 +00:00
Matthias Seitz
8553bf9cda feat: add all_transaction_hashes (#17700) 2025-08-01 18:37:20 +00:00
Federico Gimenez
db779ed9db fix: feature-gate std-only methods in sparse trie (#17706) 2025-08-01 17:10:24 +00:00
Federico Gimenez
7d660b57b0 refactor: move BasicEngineValidator creation into EngineApiValidatorBuilder trait (#17664)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-08-01 17:08:00 +00:00
Léa Narzis
2170f1b97e test(op-chainspec): add isthmus checks (#17698) 2025-08-01 11:08:24 +00:00
Matthias Seitz
54a4a23f64 fix: skip pending tx updates with higher prio value (#17699) 2025-07-31 18:55:08 +00:00
Matthias Seitz
3a2bf263d7 fix(txpool): also emit promoted pending tx on pool drift (#17695) 2025-07-31 18:54:44 +00:00
Dan Cline
ed56417237 feat(trie): add blinded node metrics in ProofTaskManager (#17685) 2025-07-31 18:54:38 +00:00
Léa Narzis
575a99fd22 chore: bump alloy-op-hardforks and op-alloy (#17697) 2025-07-31 17:57:56 +00:00
0xMushow
0f1ff20926 fix(config): default back gas limit to 45M on mainnet (#17690) 2025-07-31 11:44:59 +00:00
Matthias Seitz
f0051e1016 fix: use primitive header type for fetching header (#17691) 2025-07-31 11:37:40 +00:00
Arsenii Kulikov
568a7e065d refactor: stream transactions while executing payload (#17661) 2025-07-31 11:37:10 +00:00
Emilia Hane
98e30d4340 chore(sdk): Add example for building offline TraceApi with node builder (#17682)
Co-authored-by: ongyimeng <ongyimeng@gmail.com>
2025-07-31 09:39:37 +00:00
Acat
6c7f7f7e54 fix(pool): optimize canonical state change benchmark (#17688) 2025-07-31 09:08:18 +00:00
Matthias Seitz
dd3479ff62 chore: rm clone for witness (#17684) 2025-07-30 23:20:27 +00:00
Dan Cline
6a587a23e9 perf(trie): reuse allocated trie input in payload processor (#17371) 2025-07-30 21:05:35 +00:00
Dan Cline
26173f99b8 feat(trie): add ParallelSparseTrieMetrics (#17405) 2025-07-30 21:05:16 +00:00
Andrea Cerone
3772535220 fix: RPC: feeHistoryEntry should return 0.0 when blob_params.max_blob_count is zero (#17669)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-30 15:15:46 +00:00
stevencartavia
7001f7a33d feat: convert BlockExecutionErrors (#17573) 2025-07-30 12:44:20 +00:00
Sergey Melnychuk
dd4b2869d3 docs(example): extract full contract state from db (#17601)
Co-authored-by: sergey-melnychuk <sergey-melnychuk@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-30 11:36:30 +00:00
Ishika Choudhury
dac5868a10 feat: tracked State for local pending block (#17600)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-30 10:35:33 +00:00
Dan Cline
938d589b52 feat(merkle): add IntermediateRootState for storage root progress (#17548) 2025-07-30 01:09:36 +00:00
Matthias Seitz
a5f2d58650 perf: remove redundant metrics update (#17660) 2025-07-30 01:07:41 +00:00
Haardik
32e27c04df fix: createtx_env after applying state overrides for estimate_gas (#17668) 2025-07-29 18:29:42 +00:00
Soubhik Singha Mahapatra
056ae2abce feat: added max-readers flag for db (#17663) 2025-07-29 14:47:59 +00:00
Shiyas Mohammed
6923e051ee refactor(cli): replace From<Header> with CliHeader trait (#17656)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-29 14:04:31 +00:00
Brian Picciano
489f262d95 docs(trie): update ParallelSparseTrie documentation (#17538)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
2025-07-29 11:05:42 +00:00
Matthias Seitz
12fb913383 perf: add benchmark for on_canonical_state_change (#17645) 2025-07-29 13:04:30 +02:00
Matthias Seitz
e38e247b40 perf: box larger futures (#17633) 2025-07-29 12:51:19 +02:00
Federico Gimenez
60bbd66319 refactor: move invalid block hook creation from LaunchContext to AddOnsContext (#17655) 2025-07-29 10:12:39 +00:00
Federico Gimenez
6487f0b906 feat: separate EngineValidator from PayloadValidator (#17641) 2025-07-29 07:24:16 +00:00
Matthias Seitz
f517e0159f perf: only notify if we have listeners (#17651) 2025-07-29 01:29:02 +02:00
Matthias Seitz
92020d9eb6 perf: can shortcircuit here if no peers (#17650) 2025-07-29 01:28:42 +02:00
Matthias Seitz
9ebe4e5653 chore: only cast basefee once (#17648) 2025-07-28 22:19:33 +00:00
Matthias Seitz
6e148e6b54 perf(txpool): rm unused best bijection (#17649) 2025-07-28 22:02:38 +00:00
Matthias Seitz
7ff8f3fff2 perf: avoid redundant notifications (#17647) 2025-07-28 21:22:34 +00:00
Léa Narzis
6430535dd6 fix(era-test): fix integration tests for era (#17646) 2025-07-28 19:53:35 +00:00
Brian Picciano
7f2bdbbdf8 perf(trie): Process multiproof reveals for storage tries in parallel (#17440) 2025-07-28 16:35:44 +00:00
strmfos
b1f1e9d711 docs: fix doc comments: clarify downloaded bytes and builder return condition (#17566) 2025-07-28 14:25:30 +00:00
Arsenii Kulikov
9d1af5a09c refactor: introduce Enginvalidator in tree (#17598)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-28 09:09:55 +00:00
Arsenii Kulikov
d392c3fdf2 chore: relax Cli::run_with_components (#17630) 2025-07-28 09:07:25 +00:00
github-actions[bot]
7ed3ab0ec6 chore(deps): weekly cargo update (#17628)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-27 16:40:27 +00:00
MozirDmitriy
812dd04b80 fix: correct comment for is_latest_invalid method (#17621) 2025-07-27 10:28:18 +00:00
crStiv
e63dafb3b5 docs: fix typos (#17624) 2025-07-26 14:39:23 +00:00
Matthias Seitz
8796a77cfa feat: support any network type in eth api builder (#17617)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-26 11:51:42 +00:00
anim001k
5748cf92a1 fix: Benchmarking Link in database.md (#17553) 2025-07-26 11:34:15 +00:00
Léa Narzis
3f3ccc3aa8 chore: remove duplicate deps (#17618) 2025-07-26 10:11:17 +00:00
Federico Gimenez
73091305ac chore: make clippy happy (#17620) 2025-07-26 09:53:49 +00:00
Starkey
0a416d33d7 docs: correct error comments in networking optimism modules (#17602) 2025-07-25 14:46:24 +00:00
Mablr
c549188a93 feat(rpc): add method to configure custom tokio runtime for RPC server (#17611) 2025-07-25 14:35:36 +00:00
Emilia Hane
a7cbf81b65 test(sdk): Add test for using node builder with noop components (#17560) 2025-07-25 11:34:24 +00:00
Léa Narzis
de5cbfe4cc test(era1): add more Receipt tests to verify decoding (#17592) 2025-07-25 11:31:41 +00:00
Matthias Seitz
876e964cbc chore: introduce engine module (#17591) 2025-07-24 08:42:18 +00:00
sashaodessa
dc90eb2ffe fix: typo in Cargo.toml (#17588) 2025-07-24 01:00:25 +00:00
Daniel Ramirez
e29707f0ee feat: Add IPC socket permission configuration (#17497)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-23 23:10:53 +00:00
Arsenii Kulikov
6b23818c76 refactor: small simplifications for tree types (#17589) 2025-07-23 22:39:36 +00:00
Micke
eaaf1ab4d8 fix: remove extra space in PostStateRootMismatch error message (#17590) 2025-07-23 20:41:57 +00:00
Starkey
bf36f95211 docs: fix the parameters (#17586) 2025-07-23 18:40:24 +00:00
Federico Gimenez
8bd6bf5dc1 feat(engine): add validate_payload and validate_block methods to EngineValidator trait (#17429) 2025-07-23 13:46:41 +00:00
Matthias Seitz
a72fe7a2d0 chore: move validation to standalone fns (#17582) 2025-07-23 13:44:33 +00:00
Matthias Seitz
9ff444ea9e fix(txpool): enforce encoded length check (#17581) 2025-07-23 13:34:51 +00:00
Tomass
c986441d87 fix: correct prune mode assignments in HistoryIndexingStages (#17575) 2025-07-23 13:03:18 +00:00
Arsenii Kulikov
ff76f66cd7 feat: abstraction for attributes -> NextBlockEnv conversion (#17570) 2025-07-23 11:39:38 +00:00
Léa Narzis
2c5a967898 feat(era): add era types (#17477) 2025-07-23 11:28:17 +00:00
Federico Gimenez
ed8eacfc5b refactor: move EngineValidator trait to reth-engine-tree (#17559) 2025-07-23 11:25:58 +00:00
Federico Gimenez
42c1947c8a chore(hive): update expected failures (#17580) 2025-07-23 10:10:23 +00:00
Federico Gimenez
81e0cb0385 feat(ci): add ignored tests management to hive workflow (#17577) 2025-07-23 10:01:52 +00:00
Rez
752637a5d7 feat: make CompactEnvelope trait public for external crate usage (#17576) 2025-07-23 08:10:14 +00:00
Alexey Shekhirin
58235419bb feat(reth-bench): add gas throughput chart to python script (#17572)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-22 18:51:11 +00:00
Léa Narzis
a1a4f2df7a refactor: use alloy Log::collect_for_receipt instead of macro to collect logs (#17569) 2025-07-22 17:19:12 +00:00
Federico Gimenez
8ce656f834 feat: add TreePayloadValidator (#17451) 2025-07-22 16:55:36 +00:00
Hai | RISE
868c421c5d feat(pool): return state of an added tx (#17442) 2025-07-22 14:51:03 +00:00
0xOsiris
c2098faea3 feat: make basic block builder pub (#17476) 2025-07-22 14:50:18 +00:00
nk_ysg
c1bfa31444 chore: rm unused file (#17563) 2025-07-22 14:50:07 +00:00
Amidamaru
2446c2fd42 perf: process chunks in par for get logs in block range eth_getLogs (#16675) 2025-07-22 14:41:39 +00:00
nk_ysg
ca645b40ee fix(exex): update batch threadshold calculate processed blocks (#17551) 2025-07-22 13:35:16 +00:00
Matthias Seitz
d8451e54e7 chore: bump version v1.6.0 (#17556) 2025-07-22 15:32:51 +02:00
Matthias Seitz
4fb1b8a614 ci: fix era sync test (#17561) 2025-07-22 12:51:59 +00:00
Alexey Shekhirin
a0de7f875e fix: convert latency to milliseconds in reth-bench script (#17555)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-22 11:22:49 +00:00
Arsenii Kulikov
53df3b803a feat: add AddOns for custom node example (#17544) 2025-07-22 13:04:37 +02:00
Matthias Seitz
48617dc33c ci: mark system eest tests as passing (#17542) 2025-07-22 12:58:20 +02:00
Matthias Seitz
3ab5bac40c chore: bump deps (#17554) 2025-07-22 12:57:48 +02:00
adust
58e6113584 feat: implement DatabaseProviderFactory for NoopProvider (#17134)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Emilia Hane <elsaemiliaevahane@gmail.com>
2025-07-22 09:34:53 +00:00
Arsenii Kulikov
7b76a1e00f chore: relax EthereumEthApiBuilder bound (#17546) 2025-07-22 08:47:27 +00:00
Alexey Shekhirin
39f1ee8795 feat(reth-bench): auto-create output directory (#17541)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-21 20:18:45 +00:00
Matthias Seitz
f532e49d2d chore(deps): bump inspectors 027 (#17543) 2025-07-21 20:17:46 +00:00
David Klank
1eff10d871 docs: fix typo in OpReceiptBuilder comment (#17540) 2025-07-21 18:11:34 +00:00
Brian Picciano
566ff51d04 perf(trie): Re-use storage tries across payloads (#17488)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-21 16:32:31 +00:00
PixelPilot
8c50d84187 docs: Fix broken fuzzing module link in database.md (#17523) 2025-07-21 15:17:54 +00:00
Arsenii Kulikov
0a8cb95eb9 feat: EthApiCtx::eth_api_builder (#17532) 2025-07-21 14:51:46 +00:00
Arsenii Kulikov
94c1c3f078 feat: ComponentsFor type alias (#17533) 2025-07-21 14:51:40 +00:00
cakevm
4bd2fd2dac refactor: rename AlloyRethProvider to RpcBlockchainProvider and move to storage (#17524) 2025-07-21 13:59:03 +00:00
Arsenii Kulikov
818e01773a feat: HeaderConverter (#17490)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-21 13:46:48 +00:00
Matthias Seitz
8f26b95643 chore: bump alloy-evm 015 (#17528) 2025-07-21 13:30:13 +00:00
Matthias Seitz
42f791924a fix: ensure required revm features are activated (#17526) 2025-07-21 12:34:33 +00:00
Matthias Seitz
5bc8589162 chore: extend exex ethapi example (#17481) 2025-07-21 14:50:04 +02:00
Matthias Seitz
84387f7c97 chore: sanity secp256k1+rayon activations (#17527) 2025-07-21 14:48:27 +02:00
Rez
ac2974867f feat: make payload validation functions generic over block header type (#17520) 2025-07-21 10:55:47 +00:00
Arsenii Kulikov
0b1f25e56e fix: logIndex in getBlockReceipts (#17519) 2025-07-21 12:40:45 +02:00
Avory
4639f94535 docs(trace): document trace format and response structure (#17517) 2025-07-21 09:44:27 +00:00
AJStonewee
5b01ca7738 docs: normalize dynamic CLI defaults in help generation (#17509) 2025-07-21 09:38:26 +00:00
Fallengirl
52a627bf4d docs: fix error in RawCapabilityMessage comment (#17411) 2025-07-21 09:36:32 +00:00
anim001k
a49fef80c1 fix: temporary file leak in atomic_write_file (#17505) 2025-07-21 09:30:24 +00:00
maradini77
c1ff79c074 fix: Refine Transaction Abstraction Link (#17502) 2025-07-21 09:28:32 +00:00
cakevm
c78f7e4501 feat(alloy-provider): compatibility for non-reth nodes (#17511) 2025-07-21 09:19:04 +00:00
Micke
54855e1798 docs: fix Sepolia URL description (#17495) 2025-07-21 09:17:38 +00:00
Matthias Seitz
bec451026d chore: migrate from codespell to typos (#17501) 2025-07-21 11:18:01 +02:00
Matthias Seitz
2c62cd8b46 ci: dont expect callenv to fail (#17516) 2025-07-21 11:14:46 +02:00
cakevm
8f38b42e3f feat(alloy-provider): implement receipts_by_block and other methods (#17507) 2025-07-20 11:04:48 +00:00
github-actions[bot]
1175f6c178 chore(deps): weekly cargo update (#17506)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-07-20 09:14:55 +00:00
anim001k
03ceac7e79 fix: refactor trace log key and comment formatting (#17459) 2025-07-19 11:08:34 +00:00
viktorking7
627658bda0 fix: correct documentation for block_mut method in SealedBlock (#17489) 2025-07-19 06:58:50 +00:00
NeoByteX
c1a33a2e6e docs: fix outdated file paths in database.md links (#17486) 2025-07-19 06:52:59 +00:00
Dan Cline
f0572fc9d3 perf(tree): add metric for payload conversion + validation latency (#17499) 2025-07-19 06:44:39 +00:00
Matthias Seitz
b0aed0dded fix: force set basefee to 0 if gasprice is 0 (#17496) 2025-07-18 18:12:43 +00:00
Matthias Seitz
81b93ac58b chore: downgrade threadpool init error (#17483) 2025-07-18 18:02:51 +00:00
cakevm
2ced409141 feat(alloy-provider): implement methods for BlockReaderIdExt (#17491) 2025-07-18 16:37:10 +00:00
ongyimeng
623920c63d fix: set correct timestamp when calculating basefee (#17493)
Co-authored-by: rose2221 <rose.jethani@nethermind.io>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-18 16:06:37 +00:00
ongyimeng
537ffeacac feat: continue opchainspec support (#17422)
Co-authored-by: rose2221 <rose.jethani@nethermind.io>
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-18 14:44:28 +00:00
Brian Picciano
8fb0fbba73 chore: fix reth-engine-tree dev-dependencies import (#17487) 2025-07-18 14:27:18 +00:00
cakevm
0aef0c35c8 feat(alloy-provider): implement receipt_by_hash method (#17456) 2025-07-18 12:20:25 +00:00
Femi Bankole
0f449f2b39 feat: add Middleware generic to AuthServerConfig (#17373)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-18 11:54:36 +00:00
Rez
1b6f72321a feat: enable CLI support for custom block headers (#17441) 2025-07-18 10:21:51 +00:00
Matthias Seitz
ca116aa7b7 docs: add code example to extend_rpc_modules method (#17446)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Jennifer <jenpaff0@gmail.com>
2025-07-18 09:57:07 +00:00
luory ✞
3c9ff6e157 fix: change hyperlink to reth_codec (#17437) 2025-07-18 09:56:59 +00:00
o-az
e089d902ca fix: edit link and config (#17453)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-18 09:30:52 +00:00
cakevm
3add4b1e3d feat(alloy-provider): implement transaction_by_hash method (#17479) 2025-07-18 09:14:12 +00:00
Matthias Seitz
87000e3359 chore: expose chainspec getter (#17461) 2025-07-18 11:14:36 +02:00
Yash Atreya
6927afac16 fix(docs): rustdocs module and nested links (#17478) 2025-07-18 07:49:38 +00:00
Matthias Seitz
65a63e129e feat: add envelope conversion for op (#17469) 2025-07-17 18:48:50 +00:00
Yash Atreya
0fff798cb6 fix(docs): change sdk overview path to /sdk (#17467) 2025-07-17 17:41:22 +00:00
bigbear
d4d3e22f79 fix: correct documentation for block_mut method in RecoveredBlock (#17472) 2025-07-17 15:47:55 +00:00
cakevm
1912ac7547 feat(alloy-provider): implement bytecode_by_hash method (#17471) 2025-07-17 15:39:47 +00:00
Matthias Seitz
425541d5a6 fix: use primitives headers for pruner (#17458) 2025-07-17 14:03:15 +00:00
Arsenii Kulikov
05fed6f991 feat: add helper for building pending block env (#17464) 2025-07-17 14:00:13 +00:00
cakevm
61a19c1bcb feat(alloy-provider): implement sealed_header method (#17455) 2025-07-17 13:56:21 +00:00
Léa Narzis
0b1d950f67 feat(tx-pool): add submit methods to TransactionPool (#17431) 2025-07-17 13:46:10 +00:00
strmfos
237e97ab83 docs: fix typo from optstack to opstack (#17454) 2025-07-17 13:41:33 +00:00
Arsenii Kulikov
7ccb37ebe3 refactor: move receipt conversions to RpcConverter (#17450) 2025-07-17 13:19:30 +00:00
cakevm
2afd109816 chore: correct spelling errors (#17462) 2025-07-17 13:19:19 +00:00
Rez
824e099055 feat: make engine API metered methods and utilities public (#17460) 2025-07-17 11:48:46 +00:00
Tomass
1e20871043 docs: fix typo in NetworkManager diagram (#17448) 2025-07-16 15:40:52 +00:00
Brian Picciano
802be64ef8 perf(trie): parallelize ParallelSparseTrie::reveal_nodes (#17372) 2025-07-16 15:22:32 +00:00
maradini77
825222f3b0 fix: Update JWT Secret Flag in Benchmark Documentation (#17447) 2025-07-16 14:46:18 +00:00
Matthias Seitz
f86959f4c1 docs: enhance direct database access documentation (#17445)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-16 14:38:10 +00:00
anim001k
2d1f8cdea1 fix: rename highest_static_fileted_block to highest_static_file_block (#17427) 2025-07-16 14:26:39 +00:00
viktorking7
fdefed3d79 fix: Update Docker Compose Docs Link in etc/README.md (#17414) 2025-07-16 13:44:06 +00:00
maradini77
8cbd119940 fix: Rename WitnessBlindedProvider to WitnessTrieNodeProvider (#17426) 2025-07-16 13:13:04 +00:00
Alexey Shekhirin
c01f230ffb chore(bin): missing --jwt-secret message in reth-bench (#17443) 2025-07-16 13:11:17 +00:00
cakevm
1179da2222 chore: simplify blob count extraction using new blob_count() method (#17439) 2025-07-16 10:56:13 +00:00
Rez
8e5efb36c3 feat: make revm_spec generic over header type (#17436) 2025-07-16 10:53:13 +00:00
Matthias Seitz
2643324668 chore: bump revm 273 (#17412) 2025-07-16 12:53:48 +02:00
adust
b0d05b69e2 refactor: remove unused sparse trie methods (#17433)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-16 08:00:16 +00:00
Dan Cline
76b19f37ab chore(consensus): refactor fork and ommers check into standalone fn (#17406) 2025-07-15 19:17:23 +00:00
Matthias Seitz
5d72088ecd chore: add txpool submit examples (#17420) 2025-07-15 17:34:06 +02:00
Alexey Shekhirin
cd737052c3 test(engine): enable parallel sparse trie in e2e tests (#17423) 2025-07-15 15:15:06 +00:00
maradini77
4364cd09bc refactor: use DefaultTrieNodeProviderFactory in state root calculation (#17425) 2025-07-15 14:57:33 +00:00
Matthias Seitz
55fa57bb11 chore: box import future (#17424) 2025-07-15 14:43:51 +00:00
Aliaksei Misiukevich
fe1d2d2425 refactor: BlindedPovider rename (#17208)
Signed-off-by: Aliaksei Misiukevich <taberlick@gmail.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-07-15 12:40:52 +00:00
fantasyup
fb9f3cce92 feat: Add support for ethstats (#16396)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-15 10:56:43 +00:00
Dan Cline
c667bc972e chore(txpool): use alloy-primitives HashMap for SenderIdentifiers (#17408) 2025-07-15 10:10:24 +00:00
Federico Gimenez
00d259dbea feat(sdk): make engine API (auth server) optional for custom consensus integrations (#17376) 2025-07-15 09:28:21 +00:00
cakevm
13c59dc1c4 feat(alloy-provider): implement header methods (#17402) 2025-07-15 09:20:58 +00:00
Yash Atreya
13d3d9b577 fix(docs): rustdoc search functionality (#17410)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 09:16:27 +00:00
Rez
253721d226 feat: add generic database support for Receipt<T> (#17409) 2025-07-15 09:13:14 +00:00
Roman Hodulák
73f2edb90c feat(rpc): Use generic transaction request as input (#17092)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-14 17:46:52 +00:00
Léa Narzis
52bd07b8fd refactor(rpc): change receipt to Cow<R> for build_receipt (#17382) 2025-07-14 17:15:55 +00:00
Léa Narzis
f83e29cdd3 docs(guides): add export era in history section (#17391) 2025-07-14 16:45:42 +00:00
Matthias Seitz
61bbe5ee29 perf: release listner lock early (#17400) 2025-07-14 15:23:10 +00:00
Acat
44cc67be00 perf: optimize txpool_status RPC by avoiding full transaction collection (#17392)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-14 14:07:32 +00:00
Acat
b9c63f6a10 fix(txpool): Propagate promoted transactions on account updates (#17396)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-14 11:55:08 +00:00
Matthias Seitz
4edd55aacd chore: make clippy happy (#17399) 2025-07-14 11:05:20 +00:00
github-actions[bot]
b19b1b0790 chore(deps): weekly cargo update (#17386)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-07-14 12:19:39 +02:00
nekomoto911
332c656617 perf(blob): optimize blob store gets (#17388) 2025-07-13 09:44:18 +00:00
maradini77
e5e42e79f9 fix: broken link to system requirements in troubleshooting guide (#17384) 2025-07-13 09:03:41 +00:00
Matthias Seitz
b08586946c chore: consolidate typo fixes from multiple PRs (#17387) 2025-07-13 08:57:45 +00:00
crStiv
e010ec290a docs: typos (#17283) 2025-07-13 08:35:00 +00:00
Léa Narzis
ac5d335796 feat: add into_logs() to TxReceipt for Receipt/OpReceipt (#17383) 2025-07-13 08:24:00 +00:00
crStiv
4767e1c251 docs: typos (#17335)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-12 15:55:12 +00:00
otc group
e9389dc640 docs: fix link to installation (#17375)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-12 13:44:56 +02:00
Léa Narzis
1d6a830803 feat: make Receipt generic over TxType (#17237)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-12 06:49:36 +00:00
Alexey Shekhirin
80767f1f30 perf(engine): clear accounts trie in background to not block state root (#17369) 2025-07-11 17:17:51 +00:00
Yash Atreya
f6839ac352 fix(docs): rustdocs search functionality (#17367) 2025-07-11 15:28:29 +00:00
Federico Gimenez
99baeeb413 chore(ci): unpin hive (#17370) 2025-07-11 13:27:07 +00:00
Dan Cline
96f8faf8f0 feat(trie): wire parallel trie config to PayloadProcessor (#17355) 2025-07-11 13:26:22 +00:00
Tomass
2060813af5 docs:fix spelling error in flowchart (#17346) 2025-07-11 12:41:34 +00:00
Dan Cline
bcc9ed461e chore(trie): impl HashedPostState::drain_into_sorted (#17362) 2025-07-11 12:05:15 +00:00
Dan Cline
00d117dd3e chore(trie): impl TrieUpdates::drain_into_sorted (#17361) 2025-07-11 12:05:03 +00:00
Yash Atreya
88ce599f65 fix(docs): update-book-cli job (#17365) 2025-07-11 11:05:51 +00:00
Dan Cline
cbf2ceb344 chore(consensus): remove outdated comment from validate_block_pre_execution (#17360) 2025-07-11 10:27:58 +00:00
Arsenii Kulikov
ea35ebfda2 feat: make ethereum Cli generic over node and remove debug commands (#17363) 2025-07-11 10:07:38 +00:00
Brian Picciano
98c68c1f8a perf(trie): reuse update action buffers in parallel sparse trie processing (#17352) 2025-07-11 09:28:45 +00:00
Federico Gimenez
f148cb3199 feat(rpc): specialise contiguous receipt queries for logs (#16441)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-11 09:21:08 +00:00
Dan Cline
06a7d05649 feat(cli): add enable-parallel-sparse-trie flag (#17357)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-07-10 23:47:25 +00:00
Arsenii Kulikov
4560ac4fe7 feat: support isthmus in reth-bench (#17351) 2025-07-10 23:43:32 +00:00
Dan Cline
a1dd69ee0e feat(trie): add TrieUpdates::clear (#17359) 2025-07-10 22:57:06 +00:00
Dan Cline
2b142fb198 feat(trie): add HashedPostState::clear (#17358) 2025-07-10 22:57:00 +00:00
Matthias Seitz
e263daebce chore: broadcast raw tx for opethapi (#17342) 2025-07-10 22:04:24 +00:00
Matthias Seitz
5479e115f9 chore: add helper to access invalid tx error (#17353) 2025-07-10 21:43:21 +00:00
Matthias Seitz
ee11b424fc chore: add helper convert into error object (#17354) 2025-07-10 21:05:03 +00:00
Dan Cline
2bf4646e2d chore(trie): add Either type for SparseTrieInterface (#17267) 2025-07-10 20:31:43 +00:00
fuder.eth
4668614f41 fix: Typographical Errors in Comments (#17333) 2025-07-10 20:24:38 +00:00
Amidamaru
ccc1493848 chore: make OpAddonsBuilder generic over middleware (#17347) 2025-07-10 20:00:01 +00:00
Matthias Seitz
2813776d4e chore: add helpers for disabling read-tx timeout (#17339)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-10 15:48:19 +00:00
Brian Picciano
6561e8ff46 chore(trie): Implement ParallelSparseTrie::find_leaf (#17326) 2025-07-10 15:04:29 +00:00
Brian Picciano
d7aa751379 feat: add graph selection option to newpayload latency comparison script (#17097) 2025-07-10 13:42:27 +00:00
Dan Cline
c274422bba feat(trie): add generics to SparseTrieTask (#17269)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-07-10 12:45:14 +00:00
Léa Narzis
60c86aeca2 feat(era1): add subcommand export-era (#17132)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-10 12:37:17 +00:00
Alexey Shekhirin
da2ab711d3 refactor: rename RevealedSparseTrie to SerialSparseTrie (#17345) 2025-07-10 12:06:29 +00:00
Federico Gimenez
26b7258d57 feat(ci): reorganize e2e tests with dedicated nextest filter and CI workflow (#17290) 2025-07-10 10:41:48 +00:00
Arsenii Kulikov
1a7c335a60 feat: re-execute command (#17330) 2025-07-10 10:21:51 +00:00
Yash Atreya
ea944fa75a fix(docs): broken rustdocs link (#17341) 2025-07-10 09:33:25 +00:00
Alexey Shekhirin
0f49e35fbb fix(trie): reset hashes of nodes along the path of removed leaf (#17331)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-07-10 09:27:23 +00:00
Matthias Seitz
0326dab81c chore: replace CacheDb with trait bounds (#17315) 2025-07-10 11:34:18 +02:00
Matthias Seitz
b3d722f1fd chore: simplify receipt envelope conversion (#17337) 2025-07-09 22:46:57 +00:00
Matthias Seitz
e3d2632be2 chore: remove type hints (#17336) 2025-07-09 22:46:46 +00:00
Matthias Seitz
b317431b77 chore: make tracer match non-exhaustive (#17338) 2025-07-09 22:29:23 +00:00
Matthias Seitz
4cd0c0d613 test: allow empty response (#17332) 2025-07-09 23:19:42 +02:00
Roman Krasiuk
959323fa6f feat(sync): track time spent in stages (#17321) 2025-07-09 22:44:49 +02:00
Léa Narzis
73f820af40 feat(sdk): add local_payload_attributes_builder to DebugNodeLauncher (#17297)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-09 19:19:25 +02:00
Alexey Shekhirin
9ec522d914 fix(trie): move masks to ParallelSparseTrie level (#17322)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-09 15:06:55 +00:00
Brian Picciano
7195eca1cb fix(trie): ParallelSparseTrie::update_leaf: add moved leaves to the prefix set (#17317) 2025-07-09 14:58:04 +00:00
nekomoto911
0cbb4823c9 perf(txpool): reduce one BTree lookup operation in add_transaction (#17313) 2025-07-09 14:52:44 +00:00
Alexey Shekhirin
b0cf23af44 fix(trie): duplicate hash mask check in sparse trie implementations (#17316)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-09 13:52:10 +00:00
Matthias Seitz
7e3eb03939 docs: add section for enabling pre-merge history expiry (#17320) 2025-07-09 15:44:15 +02:00
catconcat
700b1fd312 feat: make build_receipt infallable (#17287)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-09 13:29:46 +00:00
Matthias Seitz
e15be6584c chore: bump vdocs version (#17318) 2025-07-09 13:23:00 +00:00
Matthias Seitz
162568b297 chore: relax era export bounds (#17312) 2025-07-09 12:26:08 +02:00
Fallengirl
9d8248528b fix: correct typos (#17296) 2025-07-09 10:05:03 +00:00
Bilog WEB3
9a2c66a508 fix(docs): correct duplicated function reference in documentation (#17301) 2025-07-09 09:44:35 +00:00
stevencartavia
e238fc4823 feat: add --prune.receipts.premerge setting (#17295) 2025-07-09 09:14:39 +00:00
Starkey
818712124b docs: myrpc_ext.rs: fix namespace inconsistency in myrpcExt comments (#17300) 2025-07-09 09:10:22 +00:00
Roman Hodulák
cb42ac94b5 refactor(examples): Use TransactionEnvelope macro from alloy for CustomPooledTransaction in the custom-node example (#17302) 2025-07-09 09:09:10 +00:00
Dan Cline
15c6562636 chore(trie): remove Default bound from SparseTrieInterface (#17268) 2025-07-08 18:44:27 +00:00
Federico Gimenez
3ba16128af feat(test): add rpc e2e tests (#17284) 2025-07-08 17:23:14 +00:00
Roman Krasiuk
038ddd6614 perf: remove block cloning from is_descendant check (#17286) 2025-07-08 16:58:40 +00:00
Dan Cline
34f1a606b7 chore(trie): move from_root out of SparseTrieInterface (#17266) 2025-07-08 16:23:57 +00:00
Alexey Shekhirin
34b1d3d5cf ci: add https:// to image URLs in release.yml (#17280) 2025-07-08 13:51:31 +00:00
Alexey Shekhirin
eaf2e50f0f test(trie): add sparse trie tests to parallel sparse trie (#17258)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-07-08 13:28:54 +00:00
Brian Picciano
bb1e44e8ab fix(trie): ParallelSparseTrie: remove leaves from upper subtrie when update in a lower (#17278) 2025-07-08 11:57:40 +00:00
Matthias Seitz
dbe7ee9c21 chore: bump 1.5.1 (#17277) 2025-07-08 13:31:56 +02:00
Merkel Tranjes
9fe0f25e7b docs: fix correction in storage reverts iterator test comment (#17276) 2025-07-08 11:15:59 +00:00
Roman Hodulák
62c5a57302 docs(guides): Add history expiry (#17274) 2025-07-08 10:31:19 +00:00
Dan Cline
7017627a9f chore(trie): add Send and Sync to SparseTrieInterface (#17270) 2025-07-08 10:15:40 +00:00
Dan Cline
11db28e9b7 feat(trie): add parallel sparse trie to TreeConfig (#17265) 2025-07-08 10:15:04 +00:00
Noisy
68309cac28 docs: update snapshot URL from downloads.merkle.io to snapshots.merkle.io (#17248)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-08 12:14:33 +02:00
Femi Bankole
38f02bb46e feat: include chain-id query param for etherscan v2 API (#17167)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-08 09:56:41 +00:00
Brian Picciano
e9a4222c8a fix(trie): correctly handle path field on cleared ParallelSparseTrie lower subtries (#17259) 2025-07-08 09:45:23 +00:00
Federico Gimenez
557836b93d feat(test): add apply_with_import method to e2e Setup (#17263) 2025-07-08 09:26:27 +00:00
Matthias Seitz
5645659d59 chore: bump alloy (#17275) 2025-07-08 09:24:56 +00:00
GarmashAlex
7c69ab1c8d docs: fix typo basfee → basefee in txpool.mmd (#17252) 2025-07-08 09:23:22 +00:00
VolodymyrBg
af004c0c0d chore: fix typos (#17251) 2025-07-08 09:22:52 +00:00
Galoretka
36d568a404 chore: Fix typo in block number reader comment (#17250) 2025-07-07 23:09:14 +00:00
Brian
1eccb5b7f6 fix: dead link (#17200) 2025-07-07 23:08:48 +00:00
Arsenii Kulikov
78bad34091 chore: check blob fee (#17272) 2025-07-07 23:02:09 +00:00
Matthias Seitz
e4574326ea chore: update size metrics once (#17242) 2025-07-07 21:50:37 +00:00
Alexey Shekhirin
09b4c5e987 fix(trie): add lower subtrie root paths to upper subtrie prefix set (#17262) 2025-07-07 19:56:32 +00:00
Federico Gimenez
e66caca5e9 feat(test): spin up e2e test nodes with imported data (#17261) 2025-07-07 19:13:32 +00:00
Federico Gimenez
dddde9eff9 feat(test): allow to create testing nodes with specific datadir (#17260) 2025-07-07 14:34:38 +00:00
Brian Picciano
468e925077 fix(trie): track branch node updates only in ParallelSparseTrie, not subtries (#17223) 2025-07-07 14:29:19 +00:00
crStiv
927e9c4661 docs: typos (#17246) 2025-07-07 13:38:42 +00:00
James Niken
1f557b399a docs: fix typo fileted to filtered (#17257) 2025-07-07 13:38:13 +00:00
Federico Gimenez
e70f6871b8 refactor: extract import functionality to separate module (#17253) 2025-07-07 13:26:20 +00:00
Alexey Shekhirin
a64dafdb54 fix(trie): ParallelSparseTrie::default should have an empty root node (#17256) 2025-07-07 11:46:23 +00:00
Max Bytefield
44b361a4e2 fix: correct comment in static file writer (#17254) 2025-07-07 09:26:45 +00:00
github-actions[bot]
651f1b97e5 chore(deps): weekly cargo update (#17247)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-07-06 09:42:47 +00:00
Fallengirl
8e800d6f73 docs: deleted extra duplicate environment.rs (#17249) 2025-07-06 09:19:27 +00:00
emmmm
3277333df6 docs: correction comments (#17244) 2025-07-05 10:50:18 +00:00
Udoagwa Franklin
1e9866c858 refactor(rpc): Arc PendingBlock internals (#17240)
Co-authored-by: frankudoags <frankudoags.com>
2025-07-05 08:26:29 +00:00
leopardracer
0592bd06a8 docs: Consistent Spelling for "Reuse" in Documentation (#17232) 2025-07-05 07:38:25 +00:00
bigbear
30a9690a4d fix: correct typo in ValidationApi comment (#17241) 2025-07-05 04:50:14 +00:00
Varun Doshi
beb8fac91b feat: add v5 flashbots relay block validation api for Fusaka (#17179)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-05 04:28:10 +00:00
Udoagwa Franklin
593477c673 refactor(txpool): Remove txhash from PoolUpdate (#17239)
Co-authored-by: frankudoags <frankudoags.com>
2025-07-05 04:24:56 +00:00
Micke
29c1a35e8d docs: fix typo mod.rs (#17233) 2025-07-04 19:12:05 +00:00
Galoretka
e948ab12fc fix: logical error in pruning test for storage_history PruneMode::Full (#17235) 2025-07-04 18:40:15 +00:00
fantasyup
ca36316f3b chore: add capabilities to NetworkStatus (#17236) 2025-07-04 18:13:52 +00:00
fantasyup
dcf3469d56 chore(doc): update exclude list for doc/cli (#17234)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-04 16:44:50 +00:00
Ritesh Das
89d0e6a919 feat(p2p): separate args for (header, body) (#17184)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-04 15:28:12 +00:00
leopardracer
47d2ed55d1 docs: fix typo in documentation comments (#17207) 2025-07-04 14:53:29 +00:00
Matthias Seitz
a46d0c0273 chore: use alloy traits for build receipt (#17211) 2025-07-04 16:52:59 +02:00
Fallengirl
19d4d4f4f3 docs: fix typos across documentation (#17212) 2025-07-04 14:34:25 +00:00
Galoretka
6bf87384ca Fix typo in EVM component documentation (#17227) 2025-07-04 12:53:42 +00:00
GarmashAlex
d101fb7b90 Update metrics documentation link to new official Reth docs (#17220) 2025-07-04 15:01:55 +02:00
Udoagwa Franklin
250f2104ca fix: Returns Arc<RecoveredBlock> in BlockAndReceiptsResult (#17213)
Co-authored-by: frankudoags <frankudoags.com>
2025-07-04 12:43:17 +00:00
Matthias Seitz
9a58ef18a7 chore: load kzg settings in background (#17224) 2025-07-04 12:41:45 +00:00
Arsenii Kulikov
cc46a27ebf chore: make receipt root mismatch log more useful (#17225) 2025-07-04 12:35:49 +00:00
Matthias Seitz
62b1d574e1 docs: improve NodeAddOns trait documentation (#17178)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-04 14:40:18 +02:00
MozirDmitriy
2962f2ea35 chore: fix typo in documentation comment in environment.rs (#17218) 2025-07-04 12:00:17 +00:00
Roman Hodulák
342bab5e82 deps: Upgrade alloy version 1.0.16 => 1.0.17 and all other deps minor versions (#17217)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-04 11:31:28 +00:00
Francis Li
5c47be25c4 feat(txpool): add minimal priority fee configuration for transaction pool (#17183) 2025-07-04 11:22:48 +00:00
Brian Picciano
3b92a23599 chore(trie): make SparseStateTrie generic with respect to trie implementation (#17205)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Federico Gimenez <federico.gimenez@gmail.com>
2025-07-04 10:53:28 +00:00
Federico Gimenez
3457358880 chore: make clippy happy (#17219) 2025-07-04 10:35:23 +00:00
Matthias Seitz
e49bbe416e chore: bump evm 0.14 (#17206) 2025-07-03 20:39:13 +00:00
Matthias Seitz
3b1b2a0229 fix: dont double serialize resp (#17204) 2025-07-03 16:11:36 +00:00
Arsenii Kulikov
037be8d7ac chore(test): don't use EvmInternals::new (#17188) 2025-07-03 16:01:00 +00:00
Alexey Shekhirin
d026630746 perf(trie): implement SparseTrieInterface for ParallelSparseTrie (#17192)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-03 15:06:08 +00:00
Alexey Shekhirin
7a8a0da1a5 perf(trie): implement SparseTrieInterface for RevealedSparseTrie (#17191)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-03 15:01:18 +00:00
leopardracer
a550025a8f docs: fix typo in trie test comment (#17199) 2025-07-03 14:24:03 +00:00
Alexey Shekhirin
8c38c8b33a perf(trie): sparse trie trait (#17181)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-03 14:19:57 +00:00
Matthias Seitz
d949061fc0 chore: bump inspectors (#17198) 2025-07-03 15:09:29 +02:00
Brian Picciano
c2a2d7d449 feat(trie): ParallelSparseTrie: Compute lower subtrie hashes in parallel (#17173)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-03 10:03:34 +00:00
crStiv
c6e6a54d5b docs: typos (#17168) 2025-07-03 09:46:32 +00:00
PixelPilot
c2737957d7 docs: update snapshot URL from downloads.merkle.io to snapshots.merkle.io (#17190)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-03 09:30:26 +00:00
Dan Cline
f86445e094 feat(trie): add ParallelSparseTrie::update_leaf (#16956)
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-07-03 06:00:41 +00:00
Ferran Borreguero
60940dd243 Add bootnode cmd to cli runner (#17180)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-02 16:46:56 +00:00
Matthias Seitz
b286a61db8 chore: relax rpc middleware generic (#17174) 2025-07-02 14:52:16 +00:00
CrazyFrog
f54cef5e28 docs: update Grafana repository URL in monitoring documentation (#17175) 2025-07-02 13:58:42 +00:00
Rez
40fd91a068 feat: expose chain_spec field in LocalPayloadAttributesBuilder (#17151) 2025-07-02 13:55:04 +00:00
Aliaksei Misiukevich
3a3bc5f795 feat: trait impl for dbmock (#17124)
Signed-off-by: Aliaksei Misiukevich <taberlick@gmail.com>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-07-02 13:00:33 +00:00
Guro
9c045810ad docs: update metrics link in ethereum.mdx (#17170) 2025-07-02 11:38:23 +00:00
Brian Picciano
b1f9f716a8 chore(trie): factor out SparseTrieState (#17166)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
Co-authored-by: Alexey Shekhirin <5773434+shekhirin@users.noreply.github.com>
2025-07-02 11:36:16 +00:00
Rebustron
a37917dd7a chore: removed link for book repo/layout.md (#17164) 2025-07-02 00:42:28 +00:00
Aliaksei Misiukevich
4199dd4676 feat: eth addons' middleware setter (#17159)
Signed-off-by: Aliaksei Misiukevich <taberlick@gmail.com>
2025-07-01 16:18:24 +00:00
Matthias Seitz
1c169257b6 chore: add debug for forkid mismatch (#17157) 2025-07-01 13:31:46 +00:00
Brian Picciano
7350c0151e fix(trie): correct ParallelSparseTrie lower subtrie path management (#17143) 2025-07-01 11:00:50 +00:00
Matthias Seitz
1bd5761b32 chore: bump revm (#17153)
Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
2025-07-01 10:51:16 +00:00
Matthias Seitz
06b542c556 docs: fix broken links and typos (#17149) 2025-07-01 10:30:57 +00:00
Matthias Seitz
fcf58cb5ac fix: use safe math for withdrawals check (#17150) 2025-06-30 22:14:17 +00:00
Niran Babalola
7276dae4ee feat: introduce max_tx_gas_limit feature to enforce per-transaction gas limits (#17028)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-30 20:44:28 +00:00
youyyytrok
22d271a714 chore: fixed dead link in docs/.../sync-op-mainnet.mdx (#17146) 2025-06-30 20:14:58 +00:00
Brian Picciano
c9f20728f2 chore: pass provider into SparseTrie and SparseStateTrie via impl argument in update/remove_leaf (#17099) 2025-06-30 16:11:51 +00:00
Matthias Seitz
2819ab2c0e chore: promote trace to debug (#17144) 2025-06-30 15:05:45 +00:00
Arsenii Kulikov
bdb3debdf1 feat: remove redundant generic from EthereumEngineValidatorBuilder (#17108) 2025-06-30 14:07:39 +00:00
Roman Hodulák
c63459884e refactor: Replace reth recover_singer_with_buf with alloy (#17107)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-30 13:41:35 +00:00
Matthias Seitz
678b5cd1fc chore: rm unused either type (#17126) 2025-06-30 11:53:04 +00:00
Matthias Seitz
42eb672473 feat(optimism): add debug namespace endpoints to historical RPC forwarding (#17133) 2025-06-30 11:38:32 +00:00
Cypher Pepe
5409d3146b chore: fixed broken links in opstack.mdx (#17135) 2025-06-30 11:27:07 +00:00
Alex Pikme
515e2077b4 docs: fix spelling errors (#17139) 2025-06-30 11:25:09 +00:00
PixelPilot
bf260bfcb8 docs: update Engine API link in ethereum.mdx (#17137) 2025-06-30 11:10:46 +00:00
Matthias Seitz
772c65eab8 docs: add comprehensive documentation for LaunchContext type system (#17120) 2025-06-30 13:12:34 +02:00
Noisy
f67629fe91 docs: fix installation source URL in ARM devices guide (#17128)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-29 11:39:20 +00:00
adust
c08d41a2f7 docs: remove reference to ContextStatefulPrecompile in precompile cache example (#17130)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-29 11:35:24 +00:00
github-actions[bot]
63f6845152 chore(deps): weekly cargo update (#17131)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-06-29 11:22:08 +00:00
Hopium
a072de32d1 docs: fix broken tutorial link (#17127) 2025-06-29 11:13:01 +00:00
PixelPilot
a8fa75148c Replace Book with Docs references (#17125) 2025-06-28 18:27:03 +00:00
cakevm
6f1497cc18 feat(alloy-provider): implement fetch block (#16934) 2025-06-28 09:49:07 +00:00
kilavvy
0a8a4ac2ca docs: fix typo in section of node-components.mdx (#17105) 2025-06-28 09:43:22 +00:00
Matthias Seitz
31d0bb1d58 refactor: move consensus layer events to launch context (#17117) 2025-06-27 23:19:05 +00:00
Matthias Seitz
bfd745117b refactor: move ERA import source creation to LaunchContext (#17115) 2025-06-27 22:46:13 +00:00
Matthias Seitz
8fa928ec5f refactor: make get_healthy_node_client async (#17119) 2025-06-27 22:22:29 +00:00
Matthias Seitz
2c52fc3f93 chore: tell claude to run fmt before opening a pr (#17118) 2025-06-27 22:04:05 +00:00
Matthias Seitz
5c82812072 refactor: move ExEx launching to LaunchContext method (#17114) 2025-06-27 22:02:21 +00:00
strmfos
8980944997 docs: fix error in config.rs (#17113) 2025-06-27 21:58:13 +00:00
Arsenii Kulikov
fae433319c refactor: simplify handling of NetworkPrimitives in CLI (#17112) 2025-06-27 19:39:07 +00:00
Matthias Seitz
34d95414db fix: track earliest available block correctly (#17095) 2025-06-27 16:33:45 +00:00
Matthias Seitz
40e8fb6d4d docs: fix typos across documentation (#17102)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-27 15:33:52 +00:00
Arsenii Kulikov
e89ea409e4 feat: relax EthereumNode ChainSpec bounds (#17106) 2025-06-27 15:26:16 +00:00
Arsenii Kulikov
b2000155de feat: use Header AT in EthChainSpec::next_block_base_fee (#17101) 2025-06-27 14:37:23 +00:00
Roman Hodulák
5f8aa53c6c deps: Upgrade alloy and op-alloy versions 1.0.13 => 0.18.7 and 0.18.9 (#17103)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-27 14:26:15 +00:00
Matthias Seitz
43b091b0e6 docs: debug clarify healtyh node rpc url setting (#17100) 2025-06-27 14:18:03 +00:00
Matthias Seitz
1d9a255f18 chore: rm redundant bounds (#17104) 2025-06-27 14:17:24 +00:00
kevaundray
384e64ed00 feat: Add StatelessTrie trait for reth-stateless (#17098)
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com>
2025-06-27 13:05:00 +00:00
Alexey Shekhirin
0ae4238789 feat: add per-address metrics for precompile cache (#17058)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-27 12:53:47 +00:00
Yash Atreya
a33be2e02e chore(docs): move to docs from book (#17096)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-27 12:48:45 +00:00
Matthias Seitz
8066771473 fix: use safe conversions for number and timestamps (#17093) 2025-06-26 23:38:26 +00:00
Brian Picciano
cfdd173afc perf(trie): implement remove_leaf for ParallelSparseTrie (#17035) 2025-06-26 16:33:42 +00:00
Femi Bankole
0e832c2c30 chore: replace revm_utils with alloy_evm helpers (#17046)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-26 15:28:16 +00:00
Bilog WEB3
8aeaa4ef35 docs: error fixes for clarity (#17091) 2025-06-26 15:10:32 +00:00
Rez
07b19553a1 feat: centralize EIP-1559 base fee calculation in EthChainSpec (#16927)
Co-authored-by: rose2221 <rose.jethani@nethermind.io>
Co-authored-by: Rose Jethani <101273941+rose2221@users.noreply.github.com>
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-06-26 14:38:31 +00:00
Varun Doshi
d635035be7 feat: punish malicious peers (#16818)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-06-26 12:16:34 +00:00
Matthias Seitz
3c2ef0e28f chore: bump version in docs (#17085) 2025-06-26 14:30:21 +02:00
Yash Atreya
a7e19963fb feat(docs): serve rustdocs (#17084)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-26 12:06:01 +00:00
Matthias Seitz
61e38f9af1 chore: bump version 1.5.0 (#17083) 2025-06-26 11:50:41 +00:00
Matthias Seitz
9b3f2576d1 feat: add blanket impl for Receipt trait (#17082) 2025-06-26 11:43:52 +00:00
Yash Atreya
777ee2de29 fix(docs/sdk): heading hierarchy (#17079) 2025-06-26 11:15:59 +00:00
Alexey Shekhirin
2e799062f1 feat: convert reth-bench scripts to use uv script format (#17078)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-26 10:53:23 +00:00
Skylar Ray
55840bb32b docs: error fixes for clarity (#17062) 2025-06-26 10:49:28 +00:00
Yash Atreya
471f6a375e fix(docs): redo system reqs, fix links, rebrand to docs (#17071) 2025-06-26 10:07:49 +00:00
Matthias Seitz
f9e6b10730 chore: bump alloy 1.0.13 (#17072) 2025-06-26 10:58:39 +02:00
Matthias Seitz
4e4937ffd1 feat: include eth_sendRawTransactionSync in eth namesapce (#17070) 2025-06-26 08:30:31 +00:00
Maxim Evtush
988c0f0c53 docs: typo in comment for get_pending_transactions_by_origin (#17065) 2025-06-26 08:17:22 +00:00
Matthias Seitz
142c6342e3 fix(cli): propagate max-tx-input-bytes setting (#17066) 2025-06-25 21:49:41 +00:00
Alexey Shekhirin
bde35a329c docs: add libmdbx restriction to CLAUDE.md (#17060)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-25 21:20:29 +00:00
Roman Hodulák
7349abd126 refactor(examples): Use TransactionEnvelope macro from alloy for CustomTransaction in the custom-node example (#17057) 2025-06-25 21:16:09 +00:00
Matthias Seitz
79d737e6c8 chore: bump alloy patches (#17067) 2025-06-25 21:11:24 +00:00
0xsensei
f6278a1989 feat(trie): add assert_eq_parallel_sparse_trie_proof_nodes (#17052)
Co-authored-by: Aditya Pandey <adityapandey@Adityas-MacBook-Air.local>
2025-06-25 21:05:54 +00:00
Maximilian Hubert
30110bca04 docs: fix typo "takes effect" (#17053) 2025-06-25 15:21:49 +00:00
Eric Woolsey
7267734d5c chore: delete reth-performance dashboard (#16635) 2025-06-25 14:20:24 +00:00
Brian Picciano
eef134521c chore: Add precompile cache hit rate graph to grafana overview (#17055) 2025-06-25 13:54:37 +00:00
Alexey Shekhirin
56f6da5ed1 feat: make jwt-secret argument consistent across reth-bench commands (#17050)
Co-authored-by: Claude <noreply@anthropic.com>
2025-06-25 13:13:22 +00:00
1680 changed files with 163548 additions and 76985 deletions

View File

@@ -0,0 +1,4 @@
---
---
Added site-level meta description for SEO.

View File

@@ -0,0 +1,5 @@
---
reth-transaction-pool: patch
---
Renamed and documented validation methods for clarity. `validate_one_no_state` and `validate_one_against_state` are now public methods `validate_stateless` and `validate_stateful` with improved documentation explaining their respective validation phases.

20
.changelog/config.toml Normal file
View File

@@ -0,0 +1,20 @@
# Changelogs configuration for reth
# https://github.com/wevm/changelogs
# How to bump packages that depend on changed packages
dependent_bump = "patch"
[changelog]
# Generate per-crate changelogs (vs single root changelog)
format = "per-crate"
# Fixed groups: all always share the same version
# reth binaries share version
[[fixed]]
members = ["reth"]
# Packages to ignore (internal/test-only crates)
ignore = [
"reth-testing-utils",
"reth-bench",
]

View File

@@ -0,0 +1,17 @@
---
reth: minor
reth-cli-commands: minor
reth-e2e-test-utils: minor
reth-ethereum-cli: minor
reth-node-core: minor
reth-optimism-bin: minor
reth-optimism-cli: minor
reth-prune: patch
reth-stages: patch
reth-storage-api: minor
reth-storage-db-api: minor
reth-storage-db-common: patch
reth-storage-provider: patch
---
Introduced `--storage.v2` flag to control storage mode defaults, replacing the `edge` feature flag with `rocksdb` feature. The new flag enables v2 storage settings (static files + RocksDB routing) while individual `--static-files.*` and `--rocksdb.*` flags can still override defaults. Updated feature gates from `edge` to `rocksdb` across all affected crates.

View File

@@ -0,0 +1,5 @@
---
reth: patch
---
Removed Windows platform support from the codebase, including the Windows cross-compilation Dockerfile, build targets in Cross.toml and Makefile, and Windows-specific options in the bug report template.

View File

@@ -0,0 +1,5 @@
---
reth-network: minor
---
Added reason label to backed_off_peers metric. The metric now tracks backed off peers by reason (too_many_peers, graceful_close, connection_error) to improve observability.

View File

@@ -0,0 +1,5 @@
---
reth-trie-sparse-parallel: patch
---
Fixed parallel sparse trie to skip revealing disconnected leaves by checking parent branch reachability before inserting leaf nodes.

View File

@@ -0,0 +1,5 @@
---
ef-tests: patch
---
Removed reth-stateless crate and stateless validation from ef-tests.

View File

@@ -0,0 +1,6 @@
---
reth-engine-tree: patch
reth-trie-sparse-parallel: patch
---
Added tracing spans and debug logs to sparse trie operations for better observability during parallel state root computation.

View File

@@ -0,0 +1,6 @@
---
reth-exex: patch
reth-exex-types: patch
---
Added configurable backfill thresholds to ExEx notifications stream and added regression tests for state provider parity between pipeline and backfill execution paths.

View File

@@ -0,0 +1,4 @@
---
---
Added WebSocket subscription integration tests for eth_subscribe.

View File

@@ -0,0 +1,4 @@
---
---
Improved nightly Docker build failure Slack notification with more detailed formatting and context.

View File

@@ -0,0 +1,5 @@
---
reth-engine-tree: patch
---
Reordered cache size calculations in `ExecutionCache::new` to group related operations together.

View File

@@ -0,0 +1,7 @@
---
reth: patch
reth-cli-commands: patch
reth-node-core: patch
---
Removed experimental ress protocol support for stateless Ethereum nodes.

View File

@@ -0,0 +1,5 @@
---
reth-node-builder: patch
---
Removed biased select in engine service loop to allow fair scheduling of shutdown requests alongside event processing.

View File

@@ -0,0 +1,5 @@
---
reth-transaction-pool: patch
---
Fixed swapped arguments in `blob_tx_priority` function calls, correcting the parameter order to match the function signature.

View File

@@ -0,0 +1,4 @@
---
---
Improved documentation overview page with better structure and clarity.

View File

@@ -0,0 +1,5 @@
---
reth: patch
---
Re-enabled changelog workflow to run automatically on pull requests.

View File

@@ -0,0 +1,5 @@
---
reth-node-events: patch
---
Updated consensus engine log message to be more accurate about received updates.

View File

@@ -0,0 +1,6 @@
---
reth-chainspec: minor
reth-network-peers: minor
---
Removed OP stack bootnodes from default chain configurations and network peers module.

View File

@@ -0,0 +1,9 @@
---
reth-network-api: minor
reth-network-types: minor
reth-network: minor
reth-node-core: minor
reth: minor
---
Added optional ENR fork ID enforcement to filter out peers from incompatible networks during peer discovery, controlled by the `--enforce-enr-fork-id` CLI flag.

View File

@@ -0,0 +1,5 @@
---
reth-primitives: patch
---
Moved feature-referenced dependencies from dev-dependencies to optional dependencies to ensure they are available when their corresponding features are enabled.

View File

@@ -0,0 +1,5 @@
---
reth-transaction-pool: minor
---
Added `IntoIter: Send` bounds to `validate_transactions` and `validate_transactions_with_origin` in the `TransactionValidator` trait, avoiding unnecessary `Vec` collects. Simplified default `validate_transactions_with_origin` to delegate to `validate_transactions`.

View File

@@ -0,0 +1,6 @@
---
reth-static-file-types: patch
reth-provider: patch
---
Move changeset offsets from segment header to external `.csoff` sidecar file for incremental writes and crash recovery.

View File

@@ -0,0 +1,5 @@
---
reth-provider: patch
---
Removed unused staging types from ProviderFactoryBuilder.

View File

@@ -0,0 +1,5 @@
---
reth: patch
---
Added automated changelog generation infrastructure using wevm/changelogs-rs with Claude Code integration. Configured per-crate changelog format with fixed version groups for reth binaries and exclusions for internal test utilities.

View File

@@ -0,0 +1,5 @@
---
reth-trie-sparse: minor
---
Removed `SerialSparseTrie` from the workspace, consolidating on `ParallelSparseTrie` as the single sparse trie implementation in `reth-trie-sparse`.

View File

@@ -0,0 +1,5 @@
---
reth-trie-sparse: patch
---
Fixed a bug where trie nodes could appear in both `updated_nodes` and `removed_nodes` simultaneously by removing entries from `removed_nodes` when a node is inserted as updated.

View File

@@ -0,0 +1,5 @@
---
reth: patch
---
Updated Alloy dependencies from 1.5.2 to 1.6.1.

View File

@@ -0,0 +1,4 @@
---
---
Expanded CLI integration tests with subcommand help coverage, config TOML validation, genesis JSON validation, and send transaction round-trip test for dev mode.

View File

@@ -0,0 +1,5 @@
---
reth-network: minor
---
Added direction labels to `closed_sessions` and `pending_session_failures` metrics. Operators can now distinguish session closures and failures by direction (`active`, `incoming_pending`, `outgoing_pending` for closed sessions; `inbound`, `outbound` for pending session failures).

View File

@@ -0,0 +1,4 @@
---
---
Moved Kurtosis CI failure notifications to the hive Slack channel.

View File

@@ -0,0 +1,7 @@
---
reth-rpc-api: minor
reth-rpc-builder: patch
reth-rpc: minor
---
Added `subscribeFinalizedChainNotifications` RPC endpoint that buffers committed chain notifications and emits them once a new finalized block is received.

View File

@@ -0,0 +1,6 @@
---
reth-trie: minor
reth-trie-parallel: minor
---
Added `root_node` and `storage_root_node` methods to proof calculators for efficient root-only calculations. These methods directly return the root node without requiring dummy targets, replacing the previous workaround of passing fake targets to proof generation.

View File

@@ -0,0 +1,5 @@
---
reth-trie: patch
---
Fixed a potential panic in `ProofCalculator` by clearing internal computation state (`branch_stack`, `child_stack`, `branch_path`, etc.) after errors, preventing stale state from causing `usize` underflow panics when the calculator is reused. Added a test verifying correct behavior after simulated mid-computation errors.

View File

@@ -1,3 +0,0 @@
[codespell]
skip = .git,target,./crates/storage/libmdbx-rs/mdbx-sys/libmdbx,Cargo.toml,Cargo.lock
ignore-words-list = crate,ser,ratatui

View File

@@ -5,3 +5,22 @@ slow-timeout = { period = "30s", terminate-after = 4 }
[[profile.default.overrides]]
filter = "test(general_state_tests)"
slow-timeout = { period = "1m", terminate-after = 10 }
[[profile.default.overrides]]
filter = "test(eest_fixtures)"
slow-timeout = { period = "2m", terminate-after = 10 }
# E2E tests using the testsuite framework from crates/e2e-test-utils
# These tests are located in tests/e2e-testsuite/ directories across various crates
[[profile.default.overrides]]
filter = "binary(e2e_testsuite)"
slow-timeout = { period = "2m", terminate-after = 3 }
[[profile.default.overrides]]
filter = "package(reth-era) and binary(it)"
slow-timeout = { period = "2m", terminate-after = 10 }
# Allow slower ethereum node e2e tests (p2p + blobs) to run up to 5 minutes.
[[profile.default.overrides]]
filter = "package(reth-node-ethereum) and binary(e2e)"
slow-timeout = { period = "1m", terminate-after = 5 }

View File

@@ -12,7 +12,7 @@ workflows:
# Check that `A` activates the features of `B`.
"propagate-feature",
# These are the features to check:
"--features=std,op,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,serde-bincode-compat,serde,test-utils,arbitrary,bench,alloy-compat",
"--features=std,op,dev,asm-keccak,jemalloc,jemalloc-prof,tracy-allocator,tracy,serde-bincode-compat,serde,test-utils,arbitrary,bench,alloy-compat,min-error-logs,min-warn-logs,min-info-logs,min-debug-logs,min-trace-logs,otlp,otlp-logs,js-tracer,portable,keccak-cache-global",
# Do not try to add a new section to `[features]` of `A` only because `B` exposes that feature. There are edge-cases where this is still needed, but we can add them manually.
"--left-side-feature-missing=ignore",
# Ignore the case that `A` it outside of the workspace. Otherwise it will report errors in external dependencies that we have no influence on.

View File

@@ -4,6 +4,7 @@
# include source files
!/bin
!/crates
!/pkg
!/testing
!book.toml
!Cargo.lock
@@ -11,6 +12,7 @@
!Cross.toml
!deny.toml
!Makefile
!README.md
# include for vergen constants
!/.git

2
.gitattributes vendored
View File

@@ -2,3 +2,5 @@ book/cli/**/*.md linguist-vendored
book/cli/cli.md -linguist-vendored
crates/storage/libmdbx-rs/mdbx-sys/libmdbx/** linguist-vendored
bun.lock linguist-language=JSON-with-Comments

77
.github/CODEOWNERS vendored
View File

@@ -1,50 +1,51 @@
* @gakonst
bin/ @onbjerg
crates/blockchain-tree-api/ @rakita @rkrasiuk @mattsse @Rjected
crates/blockchain-tree/ @rakita @rkrasiuk @mattsse @Rjected
crates/chain-state/ @fgimenez @mattsse @rkrasiuk
crates/chain-state/ @fgimenez @mattsse
crates/chainspec/ @Rjected @joshieDo @mattsse
crates/cli/ @onbjerg @mattsse
crates/config/ @onbjerg
crates/consensus/ @rkrasiuk @mattsse @Rjected
crates/e2e-test-utils/ @mattsse @Rjected
crates/engine @rkrasiuk @mattsse @Rjected
crates/engine/ @rkrasiuk @mattsse @Rjected @fgimenez
crates/era/ @mattsse @RomanHodulak
crates/cli/ @mattsse
crates/config/ @shekhirin @mattsse @Rjected
crates/consensus/ @mattsse @Rjected
crates/e2e-test-utils/ @mattsse @Rjected @klkvr @fgimenez
crates/engine/ @mattsse @Rjected @mediocregopher @yongkangc
crates/era/ @mattsse
crates/era-downloader/ @mattsse
crates/era-utils/ @mattsse
crates/errors/ @mattsse
crates/ethereum-forks/ @mattsse @Rjected
crates/ethereum/ @mattsse @Rjected
crates/etl/ @joshieDo @shekhirin
crates/evm/ @rakita @mattsse @Rjected
crates/exex/ @onbjerg @shekhirin
crates/fs-util/ @onbjerg
crates/metrics/ @onbjerg
crates/evm/ @mattsse @Rjected @klkvr
crates/exex/ @shekhirin
crates/fs-util/ @mattsse
crates/metrics/ @mattsse @Rjected
crates/net/ @mattsse @Rjected
crates/net/downloaders/ @onbjerg @rkrasiuk
crates/node/ @mattsse @Rjected @onbjerg @klkvr
crates/optimism/ @mattsse @Rjected @fgimenez
crates/net/downloaders/ @Rjected
crates/node/ @mattsse @Rjected @klkvr
crates/payload/ @mattsse @Rjected
crates/primitives-traits/ @Rjected @RomanHodulak @mattsse @klkvr
crates/primitives-traits/ @Rjected @mattsse @klkvr
crates/primitives/ @Rjected @mattsse @klkvr
crates/prune/ @shekhirin @joshieDo
crates/ress @rkrasiuk
crates/revm/ @mattsse @rakita
crates/rpc/ @mattsse @Rjected @RomanHodulak
crates/stages/ @onbjerg @rkrasiuk @shekhirin
crates/ress/ @shekhirin @Rjected
crates/revm/ @mattsse
crates/rpc/ @mattsse @Rjected
crates/stages/ @shekhirin @mediocregopher
crates/static-file/ @joshieDo @shekhirin
crates/stateless/ @mattsse
crates/storage/codecs/ @joshieDo
crates/storage/db-api/ @joshieDo @rakita
crates/storage/db-common/ @Rjected @onbjerg
crates/storage/db/ @joshieDo @rakita
crates/storage/errors/ @rakita @onbjerg
crates/storage/libmdbx-rs/ @rakita @shekhirin
crates/storage/db-api/ @joshieDo
crates/storage/db-common/ @Rjected
crates/storage/db/ @joshieDo
crates/storage/errors/ @joshieDo
crates/storage/libmdbx-rs/ @shekhirin
crates/storage/nippy-jar/ @joshieDo @shekhirin
crates/storage/provider/ @rakita @joshieDo @shekhirin
crates/storage/storage-api/ @joshieDo @rkrasiuk
crates/tasks/ @mattsse
crates/tokio-util/ @fgimenez
crates/tracing/ @onbjerg
crates/transaction-pool/ @mattsse
crates/trie/ @rkrasiuk @Rjected @shekhirin @mediocregopher
etc/ @Rjected @onbjerg @shekhirin
.github/ @onbjerg @gakonst @DaniPopes
crates/storage/provider/ @joshieDo @shekhirin @yongkangc
crates/storage/storage-api/ @joshieDo
crates/tasks/ @mattsse @DaniPopes
crates/tokio-util/ @mattsse
crates/tracing/ @mattsse @shekhirin
crates/tracing-otlp/ @mattsse @Rjected
crates/transaction-pool/ @mattsse @yongkangc
crates/trie/ @Rjected @shekhirin @mediocregopher @yongkangc
bin/reth/ @mattsse @shekhirin @Rjected
bin/reth-bench/ @mattsse @Rjected @shekhirin @yongkangc
bin/reth-bench-compare/ @mediocregopher @shekhirin @yongkangc
etc/ @Rjected @shekhirin
.github/ @gakonst @DaniPopes

View File

@@ -43,7 +43,6 @@ body:
- `~/.cache/reth/logs` on Linux
- `~/Library/Caches/reth/logs` on macOS
- `%localAppData%/reth/logs` on Windows
render: text
validations:
required: false
@@ -58,8 +57,6 @@ body:
- Linux (ARM)
- Mac (Intel)
- Mac (Apple Silicon)
- Windows (x86)
- Windows (ARM)
- type: dropdown
id: container_type
attributes:

7
.github/actionlint.yaml vendored Normal file
View File

@@ -0,0 +1,7 @@
self-hosted-runner:
labels:
- depot-ubuntu-latest
- depot-ubuntu-latest-2
- depot-ubuntu-latest-4
- depot-ubuntu-latest-8
- depot-ubuntu-latest-16

View File

@@ -1,88 +0,0 @@
#!/usr/bin/env bash
set +e # Disable immediate exit on error
# Array of crates to check
crates_to_check=(
reth-codecs-derive
reth-primitives
reth-primitives-traits
reth-network-peers
reth-trie-common
reth-trie-sparse
reth-chainspec
reth-consensus
reth-consensus-common
reth-prune-types
reth-static-file-types
reth-storage-errors
reth-execution-errors
reth-errors
reth-execution-types
reth-db-models
reth-evm
reth-revm
reth-storage-api
## ethereum
reth-evm-ethereum
reth-ethereum-forks
reth-ethereum-primitives
reth-ethereum-consensus
reth-stateless
## optimism
reth-optimism-chainspec
reth-optimism-forks
reth-optimism-consensus
reth-optimism-primitives
reth-optimism-evm
)
# Array to hold the results
results=()
# Flag to track if any command fails
any_failed=0
for crate in "${crates_to_check[@]}"; do
cmd="cargo +stable build -p $crate --target riscv32imac-unknown-none-elf --no-default-features"
if [ -n "$CI" ]; then
echo "::group::$cmd"
else
printf "\n%s:\n %s\n" "$crate" "$cmd"
fi
set +e # Disable immediate exit on error
# Run the command and capture the return code
$cmd
ret_code=$?
set -e # Re-enable immediate exit on error
# Store the result in the dictionary
if [ $ret_code -eq 0 ]; then
results+=("1:✅:$crate")
else
results+=("2:❌:$crate")
any_failed=1
fi
if [ -n "$CI" ]; then
echo "::endgroup::"
fi
done
# Sort the results by status and then by crate name
IFS=$'\n' sorted_results=($(sort <<<"${results[*]}"))
unset IFS
# Print summary
echo -e "\nSummary of build results:"
for result in "${sorted_results[@]}"; do
status="${result#*:}"
status="${status%%:*}"
crate="${result##*:}"
echo "$status $crate"
done
# Exit with a non-zero status if any command fails
exit $any_failed

View File

@@ -1,110 +0,0 @@
# tracked by https://github.com/paradigmxyz/reth/issues/13879
rpc-compat:
- debug_getRawBlock/get-invalid-number (reth)
- debug_getRawHeader/get-invalid-number (reth)
- debug_getRawReceipts/get-invalid-number (reth)
- debug_getRawReceipts/get-block-n (reth)
- debug_getRawTransaction/get-invalid-hash (reth)
- eth_call/call-callenv (reth)
- eth_getStorageAt/get-storage-invalid-key-too-large (reth)
- eth_getStorageAt/get-storage-invalid-key (reth)
- eth_getTransactionReceipt/get-access-list (reth)
- eth_getTransactionReceipt/get-blob-tx (reth)
- eth_getTransactionReceipt/get-dynamic-fee (reth)
- eth_getTransactionReceipt/get-legacy-contract (reth)
- eth_getTransactionReceipt/get-legacy-input (reth)
- eth_getTransactionReceipt/get-legacy-receipt (reth)
# after https://github.com/paradigmxyz/reth/pull/16742 we start the node in
# syncing mode, the test expects syncing to be false on start
- eth_syncing/check-syncing (reth)
# no fix due to https://github.com/paradigmxyz/reth/issues/8732
engine-withdrawals:
- Withdrawals Fork On Genesis (Paris) (reth)
- Withdrawals Fork on Block 1 (Paris) (reth)
- Withdrawals Fork on Block 2 (Paris) (reth)
- Withdrawals Fork on Block 3 (Paris) (reth)
- Withdraw to a single account (Paris) (reth)
- Withdraw to two accounts (Paris) (reth)
- Withdraw many accounts (Paris) (reth)
- Withdraw zero amount (Paris) (reth)
- Empty Withdrawals (Paris) (reth)
- Corrupted Block Hash Payload (INVALID) (Paris) (reth)
- Withdrawals Fork on Block 1 - 8 Block Re-Org NewPayload (Paris) (reth)
- Withdrawals Fork on Canonical Block 8 / Side Block 7 - 10 Block Re-Org (Paris) (reth)
engine-api: []
# no fix due to https://github.com/paradigmxyz/reth/issues/8732
engine-cancun:
- Invalid PayloadAttributes, Missing BeaconRoot, Syncing=True (Cancun) (reth)
# the test fails with older verions of the code for which it passed before, probably related to changes
# in hive or its dependencies
- Blob Transaction Ordering, Multiple Clients (Cancun) (reth)
sync: []
# https://github.com/ethereum/hive/issues/1277
engine-auth:
- "JWT Authentication: No time drift, correct secret (Paris) (reth)"
- "JWT Authentication: Negative time drift, within limit, correct secret (Paris) (reth)"
- "JWT Authentication: Positive time drift, within limit, correct secret (Paris) (reth)"
# 7702 test - no fix: its too expensive to check whether the storage is empty on each creation
# 6110 related tests - may start passing when fixtures improve
# 7002 related tests - post-fork test, should fix for spec compliance but not
# realistic on mainnet
# 7251 related tests - modified contract, not necessarily practical on mainnet,
# worth re-visiting when more of these related tests are passing
eest/consume-engine:
- tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_to_non_empty_storage[fork_Prague-blockchain_test_engine-zero_nonce]-reth
- tests/prague/eip7251_consolidations/test_modified_consolidation_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x0000bbddc7ce488642fb579f8b00f3a590007251]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x00000961ef480eb55e80d19ad83579a64c007002]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_True]-reth
# the next test expects a concrete new format in the error message, there is no spec for this message, so it is ok to ignore
- tests/cancun/eip4844_blobs/test_blob_txs.py::test_blob_type_tx_pre_fork[fork_ShanghaiToCancunAtTime15k-blockchain_test_engine_from_state_test-one_blob_tx]-reth
# 7702 test - no fix: its too expensive to check whether the storage is empty on each creation
# rest of tests - see above
eest/consume-rlp:
- tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_to_non_empty_storage[fork_Prague-blockchain_test-zero_nonce]-reth
- tests/prague/eip7251_consolidations/test_modified_consolidation_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x0000bbddc7ce488642fb579f8b00f3a590007251]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x00000961ef480eb55e80d19ad83579a64c007002]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_True]-reth
- tests/prague/eip7251_consolidations/test_modified_consolidation_contract.py::test_system_contract_errors[fork_Prague-blockchain_test-system_contract_reaches_gas_limit-system_contract_0x0000bbddc7ce488642fb579f8b00f3a590007251]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-zero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py::test_system_contract_errors[fork_Prague-blockchain_test-system_contract_reaches_gas_limit-system_contract_0x00000961ef480eb55e80d19ad83579a64c007002]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-zero_balance]-reth

View File

@@ -1,29 +0,0 @@
ethereum_package:
participants:
- el_type: reth
el_extra_params:
- "--rpc.eth-proof-window=100"
cl_type: teku
network_params:
preset: minimal
genesis_delay: 5
additional_preloaded_contracts: '
{
"0x4e59b44847b379578588920cA78FbF26c0B4956C": {
"balance": "0ETH",
"code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3",
"storage": {},
"nonce": "1"
}
}'
optimism_package:
chains:
- participants:
- el_type: op-geth
cl_type: op-node
- el_type: op-reth
cl_type: op-node
el_image: "ghcr.io/paradigmxyz/op-reth:kurtosis-ci"
network_params:
holocene_time_offset: 0
isthmus_time_offset: 0

View File

@@ -4,3 +4,17 @@ updates:
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "cargo"
directory: "/"
schedule:
interval: "weekly"
labels:
- "A-dependencies"
commit-message:
prefix: "chore(deps)"
open-pull-requests-limit: 1
groups:
cargo-weekly:
applies-to: "version-updates"
patterns: ["*"]
update-types: ["minor", "patch"]

48
.github/scripts/check_rv32imac.sh vendored Executable file
View File

@@ -0,0 +1,48 @@
#!/usr/bin/env bash
set -uo pipefail
crates_to_check=(
reth-codecs-derive
reth-primitives
reth-primitives-traits
reth-network-peers
reth-trie-common
reth-trie-sparse
reth-chainspec
reth-consensus
reth-consensus-common
reth-prune-types
reth-static-file-types
reth-storage-errors
reth-execution-errors
reth-errors
reth-execution-types
reth-db-models
reth-evm
reth-revm
reth-storage-api
## ethereum
reth-evm-ethereum
reth-ethereum-forks
reth-ethereum-primitives
reth-ethereum-consensus
)
any_failed=0
tmpdir=$(mktemp -d 2>/dev/null || mktemp -d -t reth-check)
trap 'rm -rf -- "$tmpdir"' EXIT INT TERM
for crate in "${crates_to_check[@]}"; do
outfile="$tmpdir/$crate.log"
if cargo +stable build -p "$crate" --target riscv32imac-unknown-none-elf --no-default-features --color never >"$outfile" 2>&1; then
echo "$crate"
else
echo "$crate"
sed 's/^/ /' "$outfile"
echo ""
any_failed=1
fi
done
exit $any_failed

View File

@@ -1,16 +1,16 @@
#!/usr/bin/env bash
set +e # Disable immediate exit on error
set -uo pipefail
# Array of crates to compile
crates=($(cargo metadata --format-version=1 --no-deps | jq -r '.packages[].name' | grep '^reth' | sort))
readarray -t crates < <(
cargo metadata --format-version=1 --no-deps | jq -r '.packages[].name' | grep '^reth' | sort
)
# Array of crates to exclude
# Used with the `contains` function.
# shellcheck disable=SC2034
exclude_crates=(
# The following require investigation if they can be fixed
reth-basic-payload-builder
reth-bench
reth-bench-compare
reth-cli
reth-cli-commands
reth-cli-runner
@@ -39,15 +39,12 @@ exclude_crates=(
reth-node-ethereum
reth-node-events
reth-node-metrics
reth-optimism-cli
reth-optimism-node
reth-optimism-payload-builder
reth-optimism-rpc
reth-optimism-storage
reth-rpc
reth-rpc-api
reth-rpc-api-testing-util
reth-rpc-builder
reth-rpc-convert
reth-rpc-e2e-tests
reth-rpc-engine-api
reth-rpc-eth-api
reth-rpc-eth-types
@@ -58,13 +55,15 @@ exclude_crates=(
reth-ress-provider
# The following are not supposed to be working
reth # all of the crates below
reth-alloy-provider
reth-storage-rpc-provider
reth-invalid-block-hooks # reth-provider
reth-libmdbx # mdbx
reth-mdbx-sys # mdbx
reth-payload-builder # reth-metrics
reth-provider # tokio
reth-prune # tokio
reth-prune-static-files # reth-provider
reth-tasks # tokio rt-multi-thread
reth-stages-api # reth-provider, reth-prune
reth-static-file # tokio
reth-transaction-pool # c-kzg
@@ -72,76 +71,41 @@ exclude_crates=(
reth-trie-parallel # tokio
reth-trie-sparse-parallel # rayon
reth-testing-utils
reth-optimism-txpool # reth-transaction-pool
reth-era-downloader # tokio
reth-era-utils # tokio
reth-tracing-otlp
reth-node-ethstats
)
# Array to hold the results
results=()
# Flag to track if any command fails
any_failed=0
tmpdir=$(mktemp -d 2>/dev/null || mktemp -d -t reth-check)
trap 'rm -rf -- "$tmpdir"' EXIT INT TERM
# Function to check if a value exists in an array
contains() {
local array="$1[@]"
local seeking=$2
local in=1
local seeking="$2"
local element
for element in "${!array}"; do
if [[ "$element" == "$seeking" ]]; then
in=0
break
fi
[[ "$element" == "$seeking" ]] && return 0
done
return $in
return 1
}
for crate in "${crates[@]}"; do
if contains exclude_crates "$crate"; then
results+=("3:⏭️:$crate")
echo "⏭️ $crate"
continue
fi
cmd="cargo +stable build -p $crate --target wasm32-wasip1 --no-default-features"
if [ -n "$CI" ]; then
echo "::group::$cmd"
outfile="$tmpdir/$crate.log"
if cargo +stable build -p "$crate" --target wasm32-wasip1 --no-default-features --color never >"$outfile" 2>&1; then
echo "$crate"
else
printf "\n%s:\n %s\n" "$crate" "$cmd"
fi
set +e # Disable immediate exit on error
# Run the command and capture the return code
$cmd
ret_code=$?
set -e # Re-enable immediate exit on error
# Store the result in the dictionary
if [ $ret_code -eq 0 ]; then
results+=("1:✅:$crate")
else
results+=("2:❌:$crate")
echo "$crate"
sed 's/^/ /' "$outfile"
echo ""
any_failed=1
fi
if [ -n "$CI" ]; then
echo "::endgroup::"
fi
done
# Sort the results by status and then by crate name
IFS=$'\n' sorted_results=($(sort <<<"${results[*]}"))
unset IFS
# Print summary
echo -e "\nSummary of build results:"
for result in "${sorted_results[@]}"; do
status="${result#*:}"
status="${status%%:*}"
crate="${result##*:}"
echo "$status $crate"
done
# Exit with a non-zero status if any command fails
exit $any_failed

View File

@@ -1,14 +0,0 @@
#!/usr/bin/env bash
set -eo pipefail
# TODO: Benchmarks run WAY too slow due to excessive amount of iterations.
cmd=(cargo codspeed build --profile profiling)
crates=(
-p reth-primitives
-p reth-trie
-p reth-trie-common
-p reth-trie-sparse
)
"${cmd[@]}" --features test-utils "${crates[@]}"

View File

@@ -11,7 +11,8 @@ go build .
# Run each hive command in the background for each simulator and wait
echo "Building images"
./hive -client reth --sim "ethereum/eest" --sim.buildarg fixtures=https://github.com/ethereum/execution-spec-tests/releases/download/v4.4.0/fixtures_develop.tar.gz --sim.buildarg branch=v4.4.0 -sim.timelimit 1s || true &
# TODO: test code has been moved from https://github.com/ethereum/execution-spec-tests to https://github.com/ethereum/execution-specs we need to pin eels branch with `--sim.buildarg branch=<release-branch-name>` once we have the fusaka release tagged on the new repo
./hive -client reth --sim "ethereum/eels" --sim.buildarg fixtures=https://github.com/ethereum/execution-spec-tests/releases/download/v5.3.0/fixtures_develop.tar.gz -sim.timelimit 1s || true &
./hive -client reth --sim "ethereum/engine" -sim.timelimit 1s || true &
./hive -client reth --sim "devp2p" -sim.timelimit 1s || true &
./hive -client reth --sim "ethereum/rpc-compat" -sim.timelimit 1s || true &
@@ -27,8 +28,8 @@ docker save hive/hiveproxy:latest -o ../hive_assets/hiveproxy.tar & saving_pids+
docker save hive/simulators/devp2p:latest -o ../hive_assets/devp2p.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/engine:latest -o ../hive_assets/engine.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/rpc-compat:latest -o ../hive_assets/rpc_compat.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/eest/consume-engine:latest -o ../hive_assets/eest_engine.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/eest/consume-rlp:latest -o ../hive_assets/eest_rlp.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/eels/consume-engine:latest -o ../hive_assets/eels_engine.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/eels/consume-rlp:latest -o ../hive_assets/eels_rlp.tar & saving_pids+=( $! )
docker save hive/simulators/smoke/genesis:latest -o ../hive_assets/smoke_genesis.tar & saving_pids+=( $! )
docker save hive/simulators/smoke/network:latest -o ../hive_assets/smoke_network.tar & saving_pids+=( $! )
docker save hive/simulators/ethereum/sync:latest -o ../hive_assets/ethereum_sync.tar & saving_pids+=( $! )
@@ -37,6 +38,6 @@ for pid in "${saving_pids[@]}"; do
done
# Make sure we don't rebuild images on the CI jobs
git apply ../.github/assets/hive/no_sim_build.diff
git apply ../.github/scripts/hive/no_sim_build.diff
go build .
mv ./hive ../hive_assets/

View File

@@ -0,0 +1,243 @@
# tracked by https://github.com/paradigmxyz/reth/issues/13879
rpc-compat:
- debug_getRawBlock/get-invalid-number (reth)
- debug_getRawHeader/get-invalid-number (reth)
- debug_getRawReceipts/get-invalid-number (reth)
- debug_getRawReceipts/get-block-n (reth)
- debug_getRawTransaction/get-invalid-hash (reth)
- eth_getStorageAt/get-storage-invalid-key-too-large (reth)
- eth_getStorageAt/get-storage-invalid-key (reth)
- eth_getTransactionReceipt/get-legacy-contract (reth)
- eth_getTransactionReceipt/get-legacy-input (reth)
- eth_getTransactionReceipt/get-legacy-receipt (reth)
# after https://github.com/paradigmxyz/reth/pull/16742 we start the node in
# syncing mode, the test expects syncing to be false on start
- eth_syncing/check-syncing (reth)
# no fix due to https://github.com/paradigmxyz/reth/issues/8732
engine-withdrawals:
- Withdrawals Fork On Genesis (Paris) (reth)
- Withdrawals Fork on Block 1 (Paris) (reth)
- Withdrawals Fork on Block 2 (Paris) (reth)
- Withdrawals Fork on Block 3 (Paris) (reth)
- Withdraw to a single account (Paris) (reth)
- Withdraw to two accounts (Paris) (reth)
- Withdraw many accounts (Paris) (reth)
- Withdraw zero amount (Paris) (reth)
- Empty Withdrawals (Paris) (reth)
- Corrupted Block Hash Payload (INVALID) (Paris) (reth)
- Withdrawals Fork on Canonical Block 8 / Side Block 7 - 10 Block Re-Org (Paris) (reth)
engine-api: [ ]
# no fix due to https://github.com/paradigmxyz/reth/issues/8732
engine-cancun:
- Invalid PayloadAttributes, Missing BeaconRoot, Syncing=True (Cancun) (reth)
# the test fails with older versions of the code for which it passed before, probably related to changes
# in hive or its dependencies
- Blob Transaction Ordering, Multiple Clients (Cancun) (reth)
sync: [ ]
engine-auth: [ ]
# EIP-7610 related tests (Revert creation in case of non-empty storage):
#
# tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_to_non_empty_storage
# The test artificially creates an empty account with storage, then tests EIP-7610's behavior.
# On mainnet, ~25 such accounts exist as contract addresses (derived from keccak(prefix, caller,
# nonce/salt), not from public keys). No private key exists for contract addresses. To trigger
# this with EIP-7702, you'd need to recover a private key from one of the already deployed contract addresses - mathematically impossible.
#
# tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_*
# Requires hash collision on create2 address to target already deployed accounts with storage.
# ~20-30 such accounts exist from before the state-clear EIP. Creating new accounts targeting
# these requires hash collision - mathematically impossible to trigger on mainnet.
# ref: https://github.com/ethereum/go-ethereum/pull/28666#issuecomment-1891997143
#
# System contract tests (already fixed and deployed):
#
# tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout and test_invalid_log_length
# System contract is already fixed and deployed; tests cover scenarios where contract is
# malformed which can't happen retroactively. No point in adding checks.
#
# tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment
# tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment
# Post-fork system contract deployment tests. Should fix for spec compliance but not realistic
# on mainnet as these contracts are already deployed at the correct addresses.
eels/consume-engine:
- tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_to_non_empty_storage[fork_Prague-blockchain_test_engine-zero_nonce]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_True]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Osaka-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Osaka-blockchain_test_engine-slice_bytes_True]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_engine_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_engine_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_1-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_2-blockchain_test_engine_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_0-blockchain_test_engine_from_state_test-non-empty-balance-correct-initcode]-reth
# Blob limit tests:
#
# tests/osaka/eip7594_peerdas/test_max_blob_per_tx.py::test_max_blobs_per_tx_fork_transition[fork_PragueToOsakaAtTime15k-blob_count_7-blockchain_test]
# this test inserts a chain via chain.rlp where the last block is invalid, but expects import to stop there, this doesn't work properly with our pipeline import approach hence the import fails when the invalid block is detected.
#. In other words, if this test fails, this means we're correctly rejecting the block.
#. The same test exists in the consume-engine simulator where it is passing as expected
eels/consume-rlp:
- tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_set_code_to_non_empty_storage[fork_Prague-blockchain_test-zero_nonce]-reth
- tests/prague/eip7251_consolidations/test_modified_consolidation_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x0000bbddc7ce488642fb579f8b00f3a590007251]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_modified_withdrawal_contract.py::test_system_contract_errors[fork_Prague-blockchain_test_engine-system_contract_reaches_gas_limit-system_contract_0x00000961ef480eb55e80d19ad83579a64c007002]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Prague-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_amount_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_amount_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_index_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_index_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_pubkey_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_pubkey_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_signature_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_signature_size-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_withdrawal_credentials_offset-value_zero]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_layout[fork_Osaka-blockchain_test_engine-log_argument_withdrawal_credentials_size-value_zero]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test_engine-deploy_after_fork-zero_balance]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Prague-blockchain_test_engine-slice_bytes_True]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Osaka-blockchain_test_engine-slice_bytes_False]-reth
- tests/prague/eip6110_deposits/test_modified_contract.py::test_invalid_log_length[fork_Osaka-blockchain_test_engine-slice_bytes_True]-reth
- tests/osaka/eip7594_peerdas/test_max_blob_per_tx.py::test_max_blobs_per_tx_fork_transition[fork_PragueToOsakaAtTime15k-blob_count_7-blockchain_test]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7251_consolidations/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-zero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-nonzero_balance]-reth
- tests/prague/eip7002_el_triggerable_withdrawals/test_contract_deployment.py::test_system_contract_deployment[fork_CancunToPragueAtTime15k-blockchain_test-deploy_after_fork-zero_balance]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_1-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_0-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_0-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_2-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_1-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_1-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_1-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_2-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_1-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_2-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_0-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_2-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_1-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Cancun-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Osaka-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Paris-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Prague-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_from_state_test-opcode_CREATE-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_0-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_opcode[fork_Shanghai-blockchain_test_from_state_test-opcode_CREATE2-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_1-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_2-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_1-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_2-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_1-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_2-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Osaka-tx_type_0-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_0-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_2-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Paris-tx_type_0-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_0-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Cancun-tx_type_0-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_2-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_1-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Prague-tx_type_2-blockchain_test_from_state_test-non-empty-balance-revert-initcode]-reth
- tests/paris/eip7610_create_collision/test_initcollision.py::test_init_collision_create_tx[fork_Shanghai-tx_type_0-blockchain_test_from_state_test-non-empty-balance-correct-initcode]-reth

36
.github/scripts/hive/ignored_tests.yaml vendored Normal file
View File

@@ -0,0 +1,36 @@
# Ignored Tests Configuration
#
# This file contains tests that should be ignored for various reasons (flaky, known issues, etc).
# These tests will be IGNORED in the CI results - they won't cause the build to fail
# regardless of whether they pass or fail.
#
# Format
# test_suite:
# - "test name 1"
# - "test name 2"
#
# When a test should no longer be ignored, remove it from this list.
# flaky
engine-withdrawals:
- Withdrawals Fork on Block 1 - 8 Block Re-Org NewPayload (Paris) (reth)
- Withdrawals Fork on Block 8 - 10 Block Re-Org NewPayload (Paris) (reth)
- Withdrawals Fork on Canonical Block 8 / Side Block 7 - 10 Block Re-Org (Paris) (reth)
- Sync after 128 blocks - Withdrawals on Block 2 - Multiple Withdrawal Accounts (Paris) (reth)
engine-cancun:
- Transaction Re-Org, New Payload on Revert Back (Cancun) (reth)
- Transaction Re-Org, Re-Org to Different Block (Cancun) (reth)
- Transaction Re-Org, Re-Org Out (Cancun) (reth)
- Invalid Missing Ancestor ReOrg, StateRoot, EmptyTxs=False, Invalid P9 (Cancun) (reth)
- Multiple New Payloads Extending Canonical Chain, Wait for Canonical Payload (Cancun) (reth)
engine-api:
- Transaction Re-Org, Re-Org Out (Paris) (reth)
- Transaction Re-Org, Re-Org to Different Block (Paris) (reth)
- Transaction Re-Org, New Payload on Revert Back (Paris) (reth)
- Transaction Re-Org, Re-Org to Different Block (Paris) (reth)
- Invalid Missing Ancestor Syncing ReOrg, Transaction Nonce, EmptyTxs=False, CanonicalReOrg=False, Invalid P9 (Paris) (reth)
- Invalid Missing Ancestor Syncing ReOrg, Transaction Signature, EmptyTxs=False, CanonicalReOrg=True, Invalid P9 (Paris) (reth)
- Invalid Missing Ancestor Syncing ReOrg, Transaction Signature, EmptyTxs=False, CanonicalReOrg=False, Invalid P9 (Paris) (reth)
- Invalid Missing Ancestor ReOrg, StateRoot, EmptyTxs=True, Invalid P10 (Paris) (reth)
- Multiple New Payloads Extending Canonical Chain, Wait for Canonical Payload (Paris) (reth)
- Multiple New Payloads Extending Canonical Chain, Set Head to First Payload Received (Paris) (reth)

View File

@@ -11,8 +11,8 @@ IMAGES=(
"/tmp/smoke_genesis.tar"
"/tmp/smoke_network.tar"
"/tmp/ethereum_sync.tar"
"/tmp/eest_engine.tar"
"/tmp/eest_rlp.tar"
"/tmp/eels_engine.tar"
"/tmp/eels_rlp.tar"
"/tmp/reth_image.tar"
)

View File

@@ -7,6 +7,7 @@ import argparse
parser = argparse.ArgumentParser(description="Check for unexpected test results based on an exclusion list.")
parser.add_argument("report_json", help="Path to the hive report JSON file.")
parser.add_argument("--exclusion", required=True, help="Path to the exclusion YAML file.")
parser.add_argument("--ignored", required=True, help="Path to the ignored tests YAML file.")
args = parser.parse_args()
# Load hive JSON
@@ -18,13 +19,30 @@ with open(args.exclusion, 'r') as file:
exclusion_data = yaml.safe_load(file)
exclusions = exclusion_data.get(report['name'], [])
# Load ignored tests YAML
with open(args.ignored, 'r') as file:
ignored_data = yaml.safe_load(file)
ignored_tests = ignored_data.get(report['name'], [])
# Collect unexpected failures and passes
unexpected_failures = []
unexpected_passes = []
ignored_results = {'passed': [], 'failed': []}
for test in report['testCases'].values():
test_name = test['name']
test_pass = test['summaryResult']['pass']
# Check if this is an ignored test
if test_name in ignored_tests:
# Track ignored test results for informational purposes
if test_pass:
ignored_results['passed'].append(test_name)
else:
ignored_results['failed'].append(test_name)
continue # Skip this test - don't count it as unexpected
# Check against expected failures
if test_name in exclusions:
if test_pass:
unexpected_passes.append(test_name)
@@ -32,6 +50,19 @@ for test in report['testCases'].values():
if not test_pass:
unexpected_failures.append(test_name)
# Print summary of ignored tests if any were ignored
if ignored_results['passed'] or ignored_results['failed']:
print("Ignored Tests:")
if ignored_results['passed']:
print(f" Passed ({len(ignored_results['passed'])} tests):")
for test in ignored_results['passed']:
print(f" {test}")
if ignored_results['failed']:
print(f" Failed ({len(ignored_results['failed'])} tests):")
for test in ignored_results['failed']:
print(f" {test}")
print()
# Check if there are any unexpected failures or passes and exit with error
if unexpected_failures or unexpected_passes:
if unexpected_failures:

View File

@@ -7,7 +7,7 @@ sim="${1}"
limit="${2}"
run_hive() {
hive --sim "${sim}" --sim.limit "${limit}" --sim.parallelism 8 --client reth 2>&1 | tee /tmp/log || true
hive --sim "${sim}" --sim.limit "${limit}" --sim.parallelism 16 --client reth 2>&1 | tee /tmp/log || true
}
check_log() {

53
.github/scripts/verify_image_arch.sh vendored Executable file
View File

@@ -0,0 +1,53 @@
#!/usr/bin/env bash
# Verifies that Docker images have the expected architectures.
#
# Usage:
# ./verify_image_arch.sh <targets> <registry> <ethereum_tags>
#
# Environment:
# DRY_RUN=true - Skip actual verification, just print what would be checked.
set -euo pipefail
TARGETS="${1:-}"
REGISTRY="${2:-}"
ETHEREUM_TAGS="${3:-}"
DRY_RUN="${DRY_RUN:-false}"
verify_image() {
local image="$1"
shift
local expected_archs=("$@")
echo "Checking $image..."
if [[ "$DRY_RUN" == "true" ]]; then
echo " [dry-run] Would verify architectures: ${expected_archs[*]}"
return 0
fi
manifest=$(docker manifest inspect "$image" 2>/dev/null) || {
echo "::error::Failed to inspect manifest for $image"
return 1
}
for arch in "${expected_archs[@]}"; do
if ! echo "$manifest" | jq -e ".manifests[] | select(.platform.architecture == \"$arch\" and .platform.os == \"linux\")" > /dev/null; then
echo "::error::Missing architecture $arch for $image"
return 1
fi
echo " ✓ linux/$arch"
done
}
if [[ "$TARGETS" == *"nightly"* ]]; then
verify_image "${REGISTRY}/reth:nightly" amd64 arm64
verify_image "${REGISTRY}/reth:nightly-profiling" amd64
verify_image "${REGISTRY}/reth:nightly-edge-profiling" amd64
else
for tag in $(echo "$ETHEREUM_TAGS" | tr ',' ' '); do
verify_image "$tag" amd64 arm64
done
fi
echo "All image architectures verified successfully"

View File

@@ -11,18 +11,29 @@ env:
CARGO_TERM_COLOR: always
BASELINE: base
SEED: reth
RUSTC_WRAPPER: "sccache"
name: bench
jobs:
codspeed:
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
strategy:
matrix:
partition: [1, 2]
total_partitions: [2]
include:
- partition: 1
crates: "-p reth-primitives -p reth-trie-common -p reth-trie-sparse"
- partition: 2
crates: "-p reth-trie"
name: codspeed (${{ matrix.partition }}/${{ matrix.total_partitions }})
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -31,9 +42,10 @@ jobs:
with:
tool: cargo-codspeed
- name: Build the benchmark target(s)
run: ./.github/scripts/codspeed-build.sh
run: cargo codspeed build --profile profiling --features test-utils ${{ matrix.crates }}
- name: Run the benchmarks
uses: CodSpeedHQ/action@v3
uses: CodSpeedHQ/action@v4
with:
run: cargo codspeed run --workspace
run: cargo codspeed run ${{ matrix.crates }}
mode: instrumentation
token: ${{ secrets.CODSPEED_TOKEN }}

View File

@@ -10,36 +10,49 @@ on:
types: [opened, reopened, synchronize, closed]
merge_group:
env:
RUSTC_WRAPPER: "sccache"
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 60
runs-on: depot-ubuntu-latest-8
timeout-minutes: 90
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install bun
uses: oven-sh/setup-bun@v2
with:
bun-version: v1.2.23
- name: Install Playwright browsers
# Required for rehype-mermaid to render Mermaid diagrams during build
run: |
cd book/vocs/
cd docs/vocs/
bun i
npx playwright install --with-deps chromium
- name: Install Rust nightly
uses: dtolnay/rust-toolchain@nightly
- uses: mozilla-actions/sccache-action@v0.0.9
- name: Build docs
run: cd docs/vocs && bash scripts/build-cargo-docs.sh
- name: Build Vocs
run: |
cd book/vocs/ && bun run build
cd docs/vocs/ && bun run build
echo "Vocs Build Complete"
- name: Setup Pages
uses: actions/configure-pages@v5
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
uses: actions/upload-pages-artifact@v4
with:
path: "./book/vocs/docs/dist"
path: "./docs/vocs/docs/dist"
deploy:
# Only deploy if a push to main

25
.github/workflows/changelog.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: Changelog
on:
pull_request:
types: [opened, synchronize]
jobs:
changelog:
# Skip for fork PRs since they can't access secrets
if: github.event.pull_request.head.repo.full_name == github.repository
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.sha }}
- run: npm install -g @anthropic-ai/claude-code
- uses: wevm/changelogs/check@master
with:
ai: 'claude -p'
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}

65
.github/workflows/check-alloy.yml vendored Normal file
View File

@@ -0,0 +1,65 @@
# Checks reth compilation against alloy branches to detect breaking changes.
# Run on-demand via workflow_dispatch.
name: Check Alloy Breaking Changes
on:
workflow_dispatch:
inputs:
alloy_branch:
description: 'Branch/rev for alloy-rs/alloy (leave empty to skip)'
required: false
type: string
alloy_evm_branch:
description: 'Branch/rev for alloy-rs/evm (alloy-evm, alloy-op-evm) (leave empty to skip)'
required: false
type: string
op_alloy_branch:
description: 'Branch/rev for alloy-rs/op-alloy (leave empty to skip)'
required: false
type: string
env:
CARGO_TERM_COLOR: always
jobs:
check:
name: Check compilation with patched alloy
runs-on: depot-ubuntu-latest-16
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Apply alloy patches
run: |
ARGS=""
if [ -n "${{ inputs.alloy_branch }}" ]; then
ARGS="$ARGS --alloy ${{ inputs.alloy_branch }}"
fi
if [ -n "${{ inputs.alloy_evm_branch }}" ]; then
ARGS="$ARGS --evm ${{ inputs.alloy_evm_branch }}"
fi
if [ -n "${{ inputs.op_alloy_branch }}" ]; then
ARGS="$ARGS --op ${{ inputs.op_alloy_branch }}"
fi
if [ -z "$ARGS" ]; then
echo "No branches specified, nothing to patch"
exit 1
fi
./scripts/patch-alloy.sh $ARGS
echo "=== Final patch section ==="
tail -50 Cargo.toml
- name: Check workspace
run: cargo clippy --workspace --lib --examples --tests --benches --all-features --locked
env:
RUSTFLAGS: -D warnings

View File

@@ -13,25 +13,25 @@ on:
env:
CARGO_TERM_COLOR: always
RUSTC_WRAPPER: "sccache"
name: compact-codec
jobs:
compact-codec:
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
strategy:
matrix:
bin:
- cargo run --bin reth --features "dev"
- cargo run --bin op-reth --features "dev" --manifest-path crates/optimism/bin/Cargo.toml
steps:
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Checkout base
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
ref: ${{ github.base_ref || 'main' }}
# On `main` branch, generates test vectors and serializes them to disk using `Compact`.
@@ -39,7 +39,7 @@ jobs:
run: |
${{ matrix.bin }} -- test-vectors compact --write
- name: Checkout PR
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
clean: false
# On incoming merge try to read and decode previously generated vectors with `Compact`

View File

@@ -15,6 +15,7 @@ permissions:
jobs:
update:
uses: ithacaxyz/ci/.github/workflows/cargo-update-pr.yml@main
if: github.repository == 'paradigmxyz/reth'
uses: tempoxyz/ci/.github/workflows/cargo-update-pr.yml@main
secrets:
token: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -1,54 +0,0 @@
# Publishes the Docker image, only to be used with `workflow_dispatch`. The
# images from this workflow will be tagged with the git sha of the branch used
# and will NOT tag it as `latest`.
name: docker-git
on:
workflow_dispatch: {}
env:
REPO_NAME: ${{ github.repository_owner }}/reth
IMAGE_NAME: ${{ github.repository_owner }}/reth
OP_IMAGE_NAME: ${{ github.repository_owner }}/op-reth
CARGO_TERM_COLOR: always
DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/reth
OP_DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/op-reth
DOCKER_USERNAME: ${{ github.actor }}
GIT_SHA: ${{ github.sha }}
jobs:
build:
name: build and push
runs-on: ubuntu-24.04
permissions:
packages: write
contents: read
strategy:
fail-fast: false
matrix:
build:
- name: 'Build and push the git-sha-tagged reth image'
command: 'make PROFILE=maxperf GIT_SHA=$GIT_SHA docker-build-push-git-sha'
- name: 'Build and push the git-sha-tagged op-reth image'
command: 'make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME GIT_SHA=$GIT_SHA PROFILE=maxperf op-docker-build-push-git-sha'
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Install cross main
id: cross_main
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Log in to Docker
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin
- name: Set up Docker builder
run: |
docker run --privileged --rm tonistiigi/binfmt --install arm64,amd64
docker buildx create --use --name cross-builder
- name: Build and push ${{ matrix.build.name }}
run: ${{ matrix.build.command }}

View File

@@ -1,61 +0,0 @@
# Publishes the nightly Docker image.
name: docker-nightly
on:
workflow_dispatch:
schedule:
- cron: "0 1 * * *"
env:
REPO_NAME: ${{ github.repository_owner }}/reth
IMAGE_NAME: ${{ github.repository_owner }}/reth
OP_IMAGE_NAME: ${{ github.repository_owner }}/op-reth
CARGO_TERM_COLOR: always
DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/reth
OP_DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/op-reth
DOCKER_USERNAME: ${{ github.actor }}
jobs:
build:
name: build and push
runs-on: ubuntu-24.04
permissions:
packages: write
contents: read
strategy:
fail-fast: false
matrix:
build:
- name: 'Build and push the nightly reth image'
command: 'make PROFILE=maxperf docker-build-push-nightly'
- name: 'Build and push the nightly profiling reth image'
command: 'make PROFILE=profiling docker-build-push-nightly-profiling'
- name: 'Build and push the nightly op-reth image'
command: 'make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME PROFILE=maxperf op-docker-build-push-nightly'
- name: 'Build and push the nightly profiling op-reth image'
command: 'make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME PROFILE=profiling op-docker-build-push-nightly-profiling'
steps:
- uses: actions/checkout@v4
- name: Remove bloatware
uses: laverdet/remove-bloatware@v1.0.0
with:
docker: true
lang: rust
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Install cross main
id: cross_main
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Log in to Docker
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin
- name: Set up Docker builder
run: |
docker run --privileged --rm tonistiigi/binfmt --install arm64,amd64
docker buildx create --use --name cross-builder
- name: Build and push ${{ matrix.build.name }}
run: ${{ matrix.build.command }}

43
.github/workflows/docker-tag-latest.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
# Tag a specific Docker release version as latest
name: docker-tag-latest
on:
workflow_dispatch:
inputs:
version:
description: 'Release version to tag as latest (e.g., v1.8.4)'
required: true
type: string
tag_reth:
description: 'Tag reth image as latest'
required: false
type: boolean
default: true
env:
DOCKER_USERNAME: ${{ github.actor }}
jobs:
tag-reth-latest:
name: Tag reth as latest
runs-on: ubuntu-24.04
if: ${{ inputs.tag_reth }}
permissions:
packages: write
contents: read
steps:
- name: Log in to Docker
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin
- name: Pull reth release image
run: |
docker pull ghcr.io/${{ github.repository_owner }}/reth:${{ inputs.version }}
- name: Tag reth as latest
run: |
docker tag ghcr.io/${{ github.repository_owner }}/reth:${{ inputs.version }} ghcr.io/${{ github.repository_owner }}/reth:latest
- name: Push reth latest tag
run: |
docker push ghcr.io/${{ github.repository_owner }}/reth:latest

53
.github/workflows/docker-test.yml vendored Normal file
View File

@@ -0,0 +1,53 @@
name: Build test Docker image
on:
workflow_call:
inputs:
hive_target:
required: true
type: string
description: "Docker bake target to build (e.g. hive-stable, hive-edge)"
artifact_name:
required: false
type: string
default: "artifacts"
description: "Name for the uploaded artifact"
jobs:
build:
if: github.repository == 'paradigmxyz/reth'
timeout-minutes: 45
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- uses: actions/checkout@v6
- run: mkdir -p artifacts
- name: Get git info
id: git
run: |
echo "sha=${{ github.sha }}" >> "$GITHUB_OUTPUT"
echo "describe=$(git describe --always --tags)" >> "$GITHUB_OUTPUT"
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Build reth image
uses: depot/bake-action@v1
env:
DEPOT_TOKEN: ${{ secrets.DEPOT_TOKEN }}
VERGEN_GIT_SHA: ${{ steps.git.outputs.sha }}
VERGEN_GIT_DESCRIBE: ${{ steps.git.outputs.describe }}
with:
project: ${{ vars.DEPOT_PROJECT_ID }}
files: docker-bake.hcl
targets: ${{ inputs.hive_target }}
push: false
- name: Upload reth image
uses: actions/upload-artifact@v6
with:
name: ${{ inputs.artifact_name }}
path: ./artifacts

View File

@@ -1,4 +1,9 @@
# Publishes the Docker image.
# Publishes Docker images.
#
# Triggers:
# - Push tag v*: builds release (RC or latest)
# - Schedule: builds nightly + profiling
# - Manual: builds git-sha or nightly
name: docker
@@ -6,84 +11,133 @@ on:
push:
tags:
- v*
env:
IMAGE_NAME: ${{ github.repository_owner }}/reth
OP_IMAGE_NAME: ${{ github.repository_owner }}/op-reth
CARGO_TERM_COLOR: always
DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/reth
OP_DOCKER_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/op-reth
DOCKER_USERNAME: ${{ github.actor }}
schedule:
- cron: "0 1 * * *"
workflow_dispatch:
inputs:
build_type:
description: "Build type"
required: true
type: choice
options:
- git-sha
- nightly
default: git-sha
dry_run:
description: "Skip pushing images (dry run)"
required: false
type: boolean
default: false
jobs:
build-rc:
if: contains(github.ref, '-rc')
name: build and push as release candidate
runs-on: ubuntu-24.04
permissions:
packages: write
contents: read
strategy:
fail-fast: false
matrix:
build:
- name: "Build and push reth image"
command: "make IMAGE_NAME=$IMAGE_NAME DOCKER_IMAGE_NAME=$DOCKER_IMAGE_NAME PROFILE=maxperf docker-build-push"
- name: "Build and push op-reth image"
command: "make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME PROFILE=maxperf op-docker-build-push"
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Install cross main
id: cross_main
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Log in to Docker
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin
- name: Set up Docker builder
run: |
docker run --privileged --rm tonistiigi/binfmt --install arm64,amd64
docker buildx create --use --name cross-builder
- name: Build and push ${{ matrix.build.name }}
run: ${{ matrix.build.command }}
build:
if: ${{ !contains(github.ref, '-rc') }}
name: build and push as latest
if: github.repository == 'paradigmxyz/reth'
name: Build Docker images
runs-on: ubuntu-24.04
permissions:
packages: write
contents: read
strategy:
fail-fast: false
matrix:
build:
- name: "Build and push reth image"
command: "make IMAGE_NAME=$IMAGE_NAME DOCKER_IMAGE_NAME=$DOCKER_IMAGE_NAME PROFILE=maxperf docker-build-push-latest"
- name: "Build and push op-reth image"
command: "make IMAGE_NAME=$OP_IMAGE_NAME DOCKER_IMAGE_NAME=$OP_DOCKER_IMAGE_NAME PROFILE=maxperf op-docker-build-push-latest"
id-token: write
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- uses: actions/checkout@v6
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Log in to GHCR
uses: docker/login-action@v3
with:
cache-on-failure: true
- name: Install cross main
id: cross_main
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Get git info for vergen
id: git
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Log in to Docker
echo "sha=${{ github.sha }}" >> "$GITHUB_OUTPUT"
echo "describe=$(git describe --always --tags)" >> "$GITHUB_OUTPUT"
echo "dirty=false" >> "$GITHUB_OUTPUT"
- name: Determine build parameters
id: params
run: |
echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io --username ${DOCKER_USERNAME} --password-stdin
- name: Set up Docker builder
REGISTRY="ghcr.io/${{ github.repository_owner }}"
if [[ "${{ github.event_name }}" == "push" ]]; then
VERSION="${GITHUB_REF#refs/tags/}"
echo "targets=ethereum" >> "$GITHUB_OUTPUT"
# Add 'latest' tag for non-RC releases
if [[ ! "$VERSION" =~ -rc ]]; then
echo "ethereum_tags=${REGISTRY}/reth:${VERSION},${REGISTRY}/reth:latest" >> "$GITHUB_OUTPUT"
{
echo "ethereum_set<<EOF"
echo "ethereum.tags=${REGISTRY}/reth:${VERSION}"
echo "ethereum.tags=${REGISTRY}/reth:latest"
echo "EOF"
} >> "$GITHUB_OUTPUT"
else
echo "ethereum_tags=${REGISTRY}/reth:${VERSION}" >> "$GITHUB_OUTPUT"
echo "ethereum_set=ethereum.tags=${REGISTRY}/reth:${VERSION}" >> "$GITHUB_OUTPUT"
fi
elif [[ "${{ github.event_name }}" == "schedule" ]] || [[ "${{ inputs.build_type }}" == "nightly" ]]; then
echo "targets=nightly" >> "$GITHUB_OUTPUT"
echo "ethereum_tags=${REGISTRY}/reth:nightly" >> "$GITHUB_OUTPUT"
echo "ethereum_set=ethereum.tags=${REGISTRY}/reth:nightly" >> "$GITHUB_OUTPUT"
else
# git-sha build
echo "targets=ethereum" >> "$GITHUB_OUTPUT"
echo "ethereum_tags=${REGISTRY}/reth:${{ github.sha }}" >> "$GITHUB_OUTPUT"
echo "ethereum_set=ethereum.tags=${REGISTRY}/reth:${{ github.sha }}" >> "$GITHUB_OUTPUT"
fi
- name: Build and push images
uses: depot/bake-action@v1
env:
VERGEN_GIT_SHA: ${{ steps.git.outputs.sha }}
VERGEN_GIT_DESCRIBE: ${{ steps.git.outputs.describe }}
VERGEN_GIT_DIRTY: ${{ steps.git.outputs.dirty }}
DEPOT_TOKEN: ${{ secrets.DEPOT_TOKEN }}
with:
project: ${{ vars.DEPOT_PROJECT_ID }}
files: docker-bake.hcl
targets: ${{ steps.params.outputs.targets }}
push: ${{ !(github.event_name == 'workflow_dispatch' && inputs.dry_run) }}
set: |
${{ steps.params.outputs.ethereum_set }}
- name: Verify image architectures
env:
DRY_RUN: ${{ github.event_name == 'workflow_dispatch' && inputs.dry_run }}
run: |
docker run --privileged --rm tonistiigi/binfmt --install arm64,amd64
docker buildx create --use --name cross-builder
- name: Build and push ${{ matrix.build.name }}
run: ${{ matrix.build.command }}
./.github/scripts/verify_image_arch.sh \
"${{ steps.params.outputs.targets }}" \
"ghcr.io/${{ github.repository_owner }}" \
"${{ steps.params.outputs.ethereum_tags }}"
notify:
name: Notify on failure
runs-on: ubuntu-latest
needs: build
if: failure() && github.event_name == 'schedule'
steps:
- name: Slack Webhook Action
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: danger
SLACK_ICON_EMOJI: ":rotating_light:"
SLACK_USERNAME: "GitHub Actions"
SLACK_TITLE: ":rotating_light: Nightly Docker Build Failed"
SLACK_MESSAGE: |
The scheduled nightly Docker build failed.
*Commit:* `${{ github.sha }}`
*Branch:* `${{ github.ref_name }}`
*Run:* <https://github.com/paradigmxyz/reth/actions/runs/${{ github.run_id }}|View logs>
*Action required:* Re-run the workflow or investigate the build failure.
SLACK_FOOTER: "paradigmxyz/reth · docker.yml"
MSG_MINIMAL: true
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}

68
.github/workflows/e2e.yml vendored Normal file
View File

@@ -0,0 +1,68 @@
# Runs e2e tests using the testsuite framework
name: e2e
on:
pull_request:
merge_group:
push:
branches: [main]
env:
CARGO_TERM_COLOR: always
SEED: rustethereumethereumrust
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
test:
name: e2e-testsuite
runs-on: depot-ubuntu-latest-4
env:
RUST_BACKTRACE: 1
timeout-minutes: 90
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: taiki-e/install-action@nextest
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Run e2e tests
run: |
cargo nextest run \
--no-fail-fast \
--locked --features "asm-keccak" \
--workspace \
--exclude 'example-*' \
--exclude 'exex-subscription' \
--exclude 'reth-bench' \
--exclude 'ef-tests' \
--exclude 'reth' \
-E 'binary(e2e_testsuite)'
rocksdb:
name: e2e-rocksdb
runs-on: depot-ubuntu-latest-4
env:
RUST_BACKTRACE: 1
timeout-minutes: 60
steps:
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: taiki-e/install-action@nextest
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Run RocksDB e2e tests
run: |
cargo nextest run \
--no-fail-fast \
--locked --features "edge" \
-p reth-e2e-test-utils \
-E 'binary(rocksdb)'

21
.github/workflows/grafana.yml vendored Normal file
View File

@@ -0,0 +1,21 @@
name: grafana
on:
pull_request:
merge_group:
push:
branches: [main]
jobs:
check-dashboard:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Check for ${DS_PROMETHEUS} in overview.json
run: |
if grep -Fn '${DS_PROMETHEUS}' etc/grafana/dashboards/overview.json; then
echo "Error: overview.json contains '\${DS_PROMETHEUS}' placeholder"
echo "Please replace it with '\${datasource}'"
exit 1
fi
echo "✓ overview.json does not contain '\${DS_PROMETHEUS}' placeholder"

View File

@@ -5,7 +5,7 @@ name: hive
on:
workflow_dispatch:
schedule:
- cron: "0 */6 * * *"
- cron: "0 0 * * *"
env:
CARGO_TERM_COLOR: always
@@ -15,45 +15,76 @@ concurrency:
cancel-in-progress: true
jobs:
prepare-reth:
uses: ./.github/workflows/prepare-reth.yml
build-reth-stable:
uses: ./.github/workflows/docker-test.yml
with:
image_tag: ghcr.io/paradigmxyz/reth:latest
binary_name: reth
hive_target: hive-stable
artifact_name: "reth-stable"
secrets: inherit
build-reth-edge:
uses: ./.github/workflows/docker-test.yml
with:
hive_target: hive-edge
artifact_name: "reth-edge"
secrets: inherit
prepare-hive:
if: github.repository == 'paradigmxyz/reth'
timeout-minutes: 45
runs-on:
group: Reth
runs-on: depot-ubuntu-latest-4
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Checkout hive tests
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: ethereum/hive
# TODO: unpin when https://github.com/ethereum/hive/issues/1306 is fixed
ref: edd9969338dd1798ba2e61f049c7e3a15cef53e6
path: hivetests
- uses: actions/setup-go@v5
- name: Get hive commit hash
id: hive-commit
run: echo "hash=$(cd hivetests && git rev-parse HEAD)" >> $GITHUB_OUTPUT
- uses: actions/setup-go@v6
with:
go-version: "^1.13.1"
- run: go version
- name: Restore hive assets cache
id: cache-hive
uses: actions/cache@v5
with:
path: ./hive_assets
key: hive-assets-${{ steps.hive-commit.outputs.hash }}-${{ hashFiles('.github/scripts/hive/build_simulators.sh') }}
- name: Build hive assets
run: .github/assets/hive/build_simulators.sh
if: steps.cache-hive.outputs.cache-hit != 'true'
run: .github/scripts/hive/build_simulators.sh
- name: Load cached Docker images
if: steps.cache-hive.outputs.cache-hit == 'true'
run: |
cd hive_assets
for tar_file in *.tar; do
if [ -f "$tar_file" ]; then
echo "Loading $tar_file..."
docker load -i "$tar_file"
fi
done
# Make hive binary executable
chmod +x hive
- name: Upload hive assets
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: hive_assets
path: ./hive_assets
test:
timeout-minutes: 60
timeout-minutes: 120
strategy:
fail-fast: false
matrix:
storage: [stable, edge]
# ethereum/rpc to be deprecated:
# https://github.com/ethereum/hive/pull/1117
scenario:
@@ -63,7 +94,7 @@ jobs:
- sim: devp2p
limit: discv4
# started failing after https://github.com/ethereum/go-ethereum/pull/31843, no
# action on our side, remove from here when we get unxpected passes on these tests
# action on our side, remove from here when we get unexpected passes on these tests
# - sim: devp2p
# limit: eth
# include:
@@ -114,63 +145,71 @@ jobs:
- debug_
# consume-engine
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/osaka.*
- sim: ethereum/eels/consume-engine
limit: .*tests/prague.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/cancun.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/shanghai.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/berlin.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/istanbul.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/homestead.*
- sim: ethereum/eest/consume-engine
- sim: ethereum/eels/consume-engine
limit: .*tests/frontier.*
- sim: ethereum/eels/consume-engine
limit: .*tests/paris.*
# consume-rlp
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/osaka.*
- sim: ethereum/eels/consume-rlp
limit: .*tests/prague.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/cancun.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/shanghai.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/berlin.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/istanbul.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/homestead.*
- sim: ethereum/eest/consume-rlp
- sim: ethereum/eels/consume-rlp
limit: .*tests/frontier.*
- sim: ethereum/eels/consume-rlp
limit: .*tests/paris.*
needs:
- prepare-reth
- build-reth-stable
- build-reth-edge
- prepare-hive
name: run ${{ matrix.scenario.sim }}${{ matrix.scenario.limit && format(' - {0}', matrix.scenario.limit) }}
runs-on:
group: Reth
name: ${{ matrix.storage }} / ${{ matrix.scenario.sim }}${{ matrix.scenario.limit && format(' - {0}', matrix.scenario.limit) }}
runs-on: depot-ubuntu-latest-4
permissions:
issues: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Download hive assets
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
with:
name: hive_assets
path: /tmp
- name: Download reth image
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
with:
name: artifacts
name: reth-${{ matrix.storage }}
path: /tmp
- name: Load Docker images
run: .github/assets/hive/load_images.sh
run: .github/scripts/hive/load_images.sh
- name: Move hive binary
run: |
@@ -178,7 +217,7 @@ jobs:
chmod +x /usr/local/bin/hive
- name: Checkout hive tests
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: ethereum/hive
ref: master
@@ -198,11 +237,11 @@ jobs:
FILTER="/"
fi
echo "filter: $FILTER"
.github/assets/hive/run_simulator.sh "${{ matrix.scenario.sim }}" "$FILTER"
.github/scripts/hive/run_simulator.sh "${{ matrix.scenario.sim }}" "$FILTER"
- name: Parse hive output
run: |
find hivetests/workspace/logs -type f -name "*.json" ! -name "hive.json" | xargs -I {} python .github/assets/hive/parse.py {} --exclusion .github/assets/hive/expected_failures.yaml
find hivetests/workspace/logs -type f -name "*.json" ! -name "hive.json" | xargs -I {} python .github/scripts/hive/parse.py {} --exclusion .github/scripts/hive/expected_failures.yaml --ignored .github/scripts/hive/ignored_tests.yaml
- name: Print simulator output
if: ${{ failure() }}
@@ -216,12 +255,11 @@ jobs:
notify-on-error:
needs: test
if: failure()
runs-on:
group: Reth
runs-on: ubuntu-latest
steps:
- name: Slack Webhook Action
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: ${{ job.status }}
SLACK_MESSAGE: "Failed run: https://github.com/paradigmxyz/reth/actions/runs/${{ github.run_id }}"
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK: ${{ secrets.SLACK_HIVE_WEBHOOK_URL }}

View File

@@ -14,6 +14,7 @@ on:
env:
CARGO_TERM_COLOR: always
SEED: rustethereumethereumrust
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -21,38 +22,34 @@ concurrency:
jobs:
test:
name: test / ${{ matrix.network }}
name: test / ${{ matrix.network }} / ${{ matrix.storage }}
if: github.event_name != 'schedule'
runs-on:
group: Reth
runs-on: depot-ubuntu-latest-4
env:
RUST_BACKTRACE: 1
strategy:
matrix:
network: ["ethereum", "optimism"]
network: ["ethereum"]
storage: ["stable", "edge"]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- name: Install Geth
run: .github/assets/install_geth.sh
run: .github/scripts/install_geth.sh
- uses: taiki-e/install-action@nextest
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- if: matrix.network == 'ethereum'
name: Run tests
- name: Run tests
run: |
cargo nextest run \
--locked --features "asm-keccak ${{ matrix.network }}" \
--no-fail-fast \
--locked --features "asm-keccak ${{ matrix.network }} ${{ matrix.storage == 'edge' && 'edge' || '' }}" \
--workspace --exclude ef-tests \
-E "kind(test)"
- if: matrix.network == 'optimism'
name: Run tests
run: |
cargo nextest run \
--locked -p reth-optimism-node
-E "kind(test) and not binary(e2e_testsuite)"
integration-success:
name: integration success
@@ -68,15 +65,16 @@ jobs:
era-files:
name: era1 file integration tests once a day
if: github.event_name == 'schedule'
if: github.event_name == 'schedule' && github.repository == 'paradigmxyz/reth'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: taiki-e/install-action@nextest
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: run era1 files integration tests
run: cargo nextest run --package reth-era --test it -- --ignored
run: cargo nextest run --no-fail-fast --release --package reth-era --test it -- --ignored

View File

@@ -1,100 +0,0 @@
# Runs simple OP stack setup in Kurtosis
name: kurtosis-op
on:
workflow_dispatch:
schedule:
- cron: "0 */6 * * *"
push:
tags:
- '*'
env:
CARGO_TERM_COLOR: always
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
prepare-reth:
uses: ./.github/workflows/prepare-reth.yml
with:
image_tag: ghcr.io/paradigmxyz/op-reth:kurtosis-ci
binary_name: op-reth
cargo_features: asm-keccak
cargo_package: crates/optimism/bin/Cargo.toml
test:
timeout-minutes: 60
strategy:
fail-fast: false
name: run kurtosis
runs-on:
group: Reth
needs:
- prepare-reth
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Download reth image
uses: actions/download-artifact@v4
with:
name: artifacts
path: /tmp
- name: Load Docker image
run: |
docker load -i /tmp/reth_image.tar &
wait
docker image ls -a
- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
- name: Run kurtosis
run: |
echo "deb [trusted=yes] https://apt.fury.io/kurtosis-tech/ /" | sudo tee /etc/apt/sources.list.d/kurtosis.list
sudo apt update
sudo apt install kurtosis-cli
kurtosis engine start
# TODO: unpin optimism-package when https://github.com/ethpandaops/optimism-package/issues/340 is fixed
# kurtosis run --enclave op-devnet github.com/ethpandaops/optimism-package --args-file .github/assets/kurtosis_op_network_params.yaml
kurtosis run --enclave op-devnet github.com/ethpandaops/optimism-package@452133367b693e3ba22214a6615c86c60a1efd5e --args-file .github/assets/kurtosis_op_network_params.yaml
ENCLAVE_ID=$(curl http://127.0.0.1:9779/api/enclaves | jq --raw-output 'keys[0]')
GETH_PORT=$(curl "http://127.0.0.1:9779/api/enclaves/$ENCLAVE_ID/services" | jq '."op-el-2151908-1-op-geth-op-node-op-kurtosis".public_ports.rpc.number')
RETH_PORT=$(curl "http://127.0.0.1:9779/api/enclaves/$ENCLAVE_ID/services" | jq '."op-el-2151908-2-op-reth-op-node-op-kurtosis".public_ports.rpc.number')
echo "GETH_RPC=http://127.0.0.1:$GETH_PORT" >> $GITHUB_ENV
echo "RETH_RPC=http://127.0.0.1:$RETH_PORT" >> $GITHUB_ENV
- name: Assert that clients advance
run: |
for i in {1..100}; do
sleep 5
BLOCK_GETH=$(cast bn --rpc-url $GETH_RPC)
BLOCK_RETH=$(cast bn --rpc-url $RETH_RPC)
if [ $BLOCK_GETH -ge 100 ] && [ $BLOCK_RETH -ge 100 ] ; then exit 0; fi
echo "Waiting for clients to advance..., Reth: $BLOCK_RETH Geth: $BLOCK_GETH"
done
kurtosis service logs -a op-devnet op-el-2151908-2-op-reth-op-node-op-kurtosis
kurtosis service logs -a op-devnet op-cl-2151908-2-op-node-op-reth-op-kurtosis
exit 1
notify-on-error:
needs: test
if: failure()
runs-on:
group: Reth
steps:
- name: Slack Webhook Action
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: ${{ job.status }}
SLACK_MESSAGE: "Failed run: https://github.com/paradigmxyz/reth/actions/runs/${{ github.run_id }}"
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}

View File

@@ -5,11 +5,11 @@ name: kurtosis
on:
workflow_dispatch:
schedule:
- cron: "0 */6 * * *"
- cron: "0 0 * * *"
push:
tags:
- '*'
- "*"
env:
CARGO_TERM_COLOR: always
@@ -19,28 +19,28 @@ concurrency:
cancel-in-progress: true
jobs:
prepare-reth:
uses: ./.github/workflows/prepare-reth.yml
build-reth:
if: github.repository == 'paradigmxyz/reth'
uses: ./.github/workflows/docker-test.yml
with:
image_tag: ghcr.io/paradigmxyz/reth:kurtosis-ci
binary_name: reth
hive_target: kurtosis
secrets: inherit
test:
timeout-minutes: 60
strategy:
fail-fast: false
name: run kurtosis
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
needs:
- prepare-reth
- build-reth
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Download reth image
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
with:
name: artifacts
path: /tmp
@@ -54,17 +54,16 @@ jobs:
- name: Run kurtosis
uses: ethpandaops/kurtosis-assertoor-github-action@v1
with:
ethereum_package_args: '.github/assets/kurtosis_network_params.yaml'
ethereum_package_args: ".github/assets/kurtosis_network_params.yaml"
notify-on-error:
needs: test
if: failure()
runs-on:
group: Reth
runs-on: ubuntu-latest
steps:
- name: Slack Webhook Action
uses: rtCamp/action-slack-notify@v2
env:
SLACK_COLOR: ${{ job.status }}
SLACK_MESSAGE: "Failed run: https://github.com/paradigmxyz/reth/actions/runs/${{ github.run_id }}"
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
SLACK_WEBHOOK: ${{ secrets.SLACK_HIVE_WEBHOOK_URL }}

View File

@@ -11,13 +11,13 @@ jobs:
issues: write
pull-requests: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Label PRs
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
script: |
const label_pr = require('./.github/assets/label_pr.js')
const label_pr = require('./.github/scripts/label_pr.js')
await label_pr({github, context})

View File

@@ -12,7 +12,7 @@ jobs:
actionlint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download actionlint
id: get_actionlint
run: bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)

View File

@@ -8,11 +8,12 @@ on:
env:
CARGO_TERM_COLOR: always
RUSTC_WRAPPER: "sccache"
jobs:
clippy-binaries:
name: clippy binaries / ${{ matrix.type }}
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
@@ -21,11 +22,12 @@ jobs:
args: --workspace --lib --examples --tests --benches --locked
features: "ethereum asm-keccak jemalloc jemalloc-prof min-error-logs min-warn-logs min-info-logs min-debug-logs min-trace-logs"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@clippy
with:
components: clippy
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -40,14 +42,15 @@ jobs:
clippy:
name: clippy
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
with:
components: clippy
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -56,15 +59,16 @@ jobs:
RUSTFLAGS: -D warnings
wasm:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
with:
target: wasm32-wasip1
- uses: taiki-e/install-action@cargo-hack
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -72,68 +76,72 @@ jobs:
- name: Run Wasm checks
run: |
sudo apt update && sudo apt install gcc-multilib
.github/assets/check_wasm.sh
.github/scripts/check_wasm.sh
riscv:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
with:
target: riscv32imac-unknown-none-elf
- uses: taiki-e/install-action@cargo-hack
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- uses: dcarbone/install-jq-action@v3
- name: Run RISC-V checks
run: .github/assets/check_rv32imac.sh
run: .github/scripts/check_rv32imac.sh
crate-checks:
runs-on: ubuntu-latest
timeout-minutes: 30
name: crate-checks (${{ matrix.partition }}/${{ matrix.total_partitions }})
runs-on: depot-ubuntu-latest-4
strategy:
matrix:
partition: [1, 2, 3]
total_partitions: [3]
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: taiki-e/install-action@cargo-hack
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- run: cargo hack check --workspace
- run: cargo hack check --workspace --partition ${{ matrix.partition }}/${{ matrix.total_partitions }}
msrv:
name: MSRV
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
include:
- binary: reth
- binary: op-reth
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@master
with:
toolchain: "1.86" # MSRV
toolchain: "1.88" # MSRV
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- run: cargo build --bin "${{ matrix.binary }}" --workspace
- run: cargo build --bin reth --workspace
env:
RUSTFLAGS: -D warnings
docs:
name: docs
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest-4
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -145,25 +153,27 @@ jobs:
fmt:
name: fmt
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
with:
components: rustfmt
- uses: mozilla-actions/sccache-action@v0.0.9
- name: Run fmt
run: cargo fmt --all --check
udeps:
name: udeps
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -172,37 +182,36 @@ jobs:
book:
name: book
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@nightly
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- run: cargo build --bin reth --workspace --features ethereum
- run: cargo build --bin reth --workspace
env:
RUSTFLAGS: -D warnings
- run: ./book/cli/update.sh target/debug/reth
- name: Check book changes
- run: ./docs/cli/update.sh target/debug/reth
- name: Check docs changes
run: git diff --exit-code
codespell:
typos:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: codespell-project/actions-codespell@v2
with:
skip: "*.json"
- uses: actions/checkout@v6
- uses: crate-ci/typos@v1
check-toml:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Run dprint
uses: dprint/check@v2.3
with:
@@ -212,7 +221,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Check dashboard JSON with jq
uses: sergeysova/jq-action@v2
with:
@@ -222,48 +231,55 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- name: Ensure no arbitrary or proptest dependency on default build
run: cargo tree --package reth -e=features,no-dev | grep -Eq "arbitrary|proptest" && exit 1 || exit 0
# Checks that selected rates can compile with power set of features
# Checks that selected crates can compile with power set of features
features:
name: features
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@clippy
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: cargo install cargo-hack
uses: taiki-e/install-action@cargo-hack
- run: make check-features
- run: |
cargo hack check \
--package reth-codecs \
--package reth-primitives-traits \
--package reth-primitives \
--feature-powerset \
--depth 2
env:
RUSTFLAGS: -D warnings
# Check crates correctly propagate features
feature-propagation:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v4
- name: fetch deps
run: |
# Eagerly pull dependencies
time cargo metadata --format-version=1 --locked > /dev/null
- name: run zepter
run: |
cargo install zepter -f --locked
zepter --version
time zepter run check
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: rui314/setup-mold@v1
- uses: taiki-e/cache-cargo-install-action@v3
with:
tool: zepter
- name: Eagerly pull dependencies
run: cargo metadata --format-version=1 --locked > /dev/null
- run: zepter run check
deny:
uses: ithacaxyz/ci/.github/workflows/deny.yml@main
uses: tempoxyz/ci/.github/workflows/deny.yml@main
lint-success:
name: lint success
@@ -278,7 +294,7 @@ jobs:
- fmt
- udeps
- book
- codespell
- typos
- grafana
- no-test-deps
- features

View File

@@ -21,7 +21,7 @@ jobs:
steps:
- name: Check title
id: lint_pr_title
uses: amannn/action-semantic-pull-request@v5
uses: amannn/action-semantic-pull-request@v6
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:

View File

@@ -1,57 +0,0 @@
name: Prepare Reth Image
on:
workflow_call:
inputs:
image_tag:
required: true
type: string
description: "Docker image tag to use"
binary_name:
required: false
type: string
default: "reth"
description: "Binary name to build (reth or op-reth)"
cargo_features:
required: false
type: string
default: "asm-keccak"
description: "Cargo features to enable"
cargo_package:
required: false
type: string
description: "Optional cargo package path"
jobs:
prepare-reth:
if: github.repository == 'paradigmxyz/reth'
timeout-minutes: 45
runs-on:
group: Reth
steps:
- uses: actions/checkout@v4
- run: mkdir artifacts
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build and export reth image
uses: docker/build-push-action@v6
with:
context: .
file: .github/assets/hive/Dockerfile
tags: ${{ inputs.image_tag }}
outputs: type=docker,dest=./artifacts/reth_image.tar
build-args: |
CARGO_BIN=${{ inputs.binary_name }}
MANIFEST_PATH=${{ inputs.cargo_package }}
FEATURES=${{ inputs.cargo_features }}
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Upload reth image
id: upload
uses: actions/upload-artifact@v4
with:
name: artifacts
path: ./artifacts

View File

@@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Update Homebrew formula
uses: dawidd6/action-homebrew-bump-formula@v5
uses: dawidd6/action-homebrew-bump-formula@v7
with:
token: ${{ secrets.HOMEBREW }}
no_fork: true

View File

@@ -1,11 +1,11 @@
# This workflow is for building and pushing reproducible Docker images for releases.
# This workflow is for building and pushing reproducible artifacts for releases
name: release-reproducible
on:
push:
tags:
- v*
workflow_run:
workflows: [release]
types: [completed]
env:
DOCKER_REPRODUCIBLE_IMAGE_NAME: ghcr.io/${{ github.repository_owner }}/reth-reproducible
@@ -13,23 +13,41 @@ env:
jobs:
extract-version:
name: extract version
if: ${{ github.event.workflow_run.conclusion == 'success' }}
runs-on: ubuntu-latest
steps:
- name: Extract version
run: echo "VERSION=$(echo ${GITHUB_REF#refs/tags/})" >> $GITHUB_OUTPUT
- name: Extract version from triggering tag
id: extract_version
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# Get the tag that points to the head SHA of the triggering workflow
TAG=$(gh api /repos/${{ github.repository }}/git/refs/tags \
--jq '.[] | select(.object.sha == "${{ github.event.workflow_run.head_sha }}") | .ref' \
| head -1 \
| sed 's|refs/tags/||')
if [ -z "$TAG" ]; then
echo "No tag found for SHA ${{ github.event.workflow_run.head_sha }}"
exit 1
fi
echo "VERSION=$TAG" >> $GITHUB_OUTPUT
outputs:
VERSION: ${{ steps.extract_version.outputs.VERSION }}
build-reproducible:
name: build and push reproducible image
name: build and push reproducible image and binaries
runs-on: ubuntu-latest
needs: extract-version
needs: [extract-version]
permissions:
packages: write
contents: read
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
ref: ${{ needs.extract-version.outputs.VERSION }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
@@ -40,12 +58,37 @@ jobs:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push reproducible image
- name: Extract Rust version
id: rust_version
run: |
RUST_TOOLCHAIN=$(rustc --version | cut -d' ' -f2)
echo "RUST_TOOLCHAIN=$RUST_TOOLCHAIN" >> $GITHUB_OUTPUT
- name: Build reproducible artifacts
uses: docker/build-push-action@v6
id: docker_build
with:
context: .
file: ./Dockerfile.reproducible
build-args: |
RUST_TOOLCHAIN=${{ steps.rust_version.outputs.RUST_TOOLCHAIN }}
VERSION=${{ needs.extract-version.outputs.VERSION }}
target: artifacts
outputs: type=local,dest=./docker-artifacts
cache-from: type=gha
cache-to: type=gha,mode=max
env:
DOCKER_BUILD_RECORD_UPLOAD: false
- name: Build and push final image
uses: docker/build-push-action@v6
with:
context: .
file: ./Dockerfile.reproducible
push: true
build-args: |
RUST_TOOLCHAIN=${{ steps.rust_version.outputs.RUST_TOOLCHAIN }}
VERSION=${{ needs.extract-version.outputs.VERSION }}
tags: |
${{ env.DOCKER_REPRODUCIBLE_IMAGE_NAME }}:${{ needs.extract-version.outputs.VERSION }}
${{ env.DOCKER_REPRODUCIBLE_IMAGE_NAME }}:latest
@@ -54,3 +97,30 @@ jobs:
provenance: false
env:
DOCKER_BUILD_RECORD_UPLOAD: false
- name: Prepare artifacts from Docker build
run: |
mkdir reproducible-artifacts
cp docker-artifacts/reth reproducible-artifacts/reth-reproducible-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu
cp docker-artifacts/*.deb reproducible-artifacts/reth-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu-reproducible.deb
- name: Configure GPG and create artifacts
env:
GPG_SIGNING_KEY: ${{ secrets.GPG_SIGNING_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
run: |
export GPG_TTY=$(tty)
echo -n "$GPG_SIGNING_KEY" | base64 --decode | gpg --batch --import
cd reproducible-artifacts
tar -czf reth-reproducible-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu.tar.gz reth-reproducible-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu --remove-files
echo "$GPG_PASSPHRASE" | gpg --passphrase-fd 0 --pinentry-mode loopback --batch -ab reth-reproducible-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu.tar.gz
echo "$GPG_PASSPHRASE" | gpg --passphrase-fd 0 --pinentry-mode loopback --batch -ab reth-${{ needs.extract-version.outputs.VERSION }}-x86_64-unknown-linux-gnu-reproducible.deb
- name: Upload reproducible artifacts to release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release upload ${{ needs.extract-version.outputs.VERSION }} \
reproducible-artifacts/*

View File

@@ -17,11 +17,10 @@ on:
env:
REPO_NAME: ${{ github.repository_owner }}/reth
IMAGE_NAME: ${{ github.repository_owner }}/reth
OP_IMAGE_NAME: ${{ github.repository_owner }}/op-reth
REPRODUCIBLE_IMAGE_NAME: ${{ github.repository_owner }}/reth-reproducible
CARGO_TERM_COLOR: always
DOCKER_IMAGE_NAME_URL: ghcr.io/${{ github.repository_owner }}/reth
DOCKER_OP_IMAGE_NAME_URL: ghcr.io/${{ github.repository_owner }}/op-reth
DOCKER_IMAGE_NAME_URL: https://ghcr.io/${{ github.repository_owner }}/reth
RUSTC_WRAPPER: "sccache"
jobs:
dry-run:
@@ -49,8 +48,9 @@ jobs:
needs: extract-version
if: ${{ github.event.inputs.dry_run != 'true' }}
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- name: Verify crate version matches tag
# Check that the Cargo version starts with the tag,
# so that Cargo version 1.4.8 can be matched against both v1.4.8 and v1.4.8-rc.1
@@ -78,17 +78,13 @@ jobs:
profile: maxperf
allow_fail: false
- target: x86_64-apple-darwin
os: macos-13
os: macos-14
profile: maxperf
allow_fail: false
- target: aarch64-apple-darwin
os: macos-14
profile: maxperf
allow_fail: false
- target: x86_64-pc-windows-gnu
os: ubuntu-24.04
profile: maxperf
allow_fail: false
- target: riscv64gc-unknown-linux-gnu
os: ubuntu-24.04
profile: maxperf
@@ -96,14 +92,13 @@ jobs:
build:
- command: build
binary: reth
- command: op-build
binary: op-reth
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
with:
target: ${{ matrix.configs.target }}
- uses: mozilla-actions/sccache-action@v0.0.9
- name: Install cross main
id: cross_main
run: |
@@ -123,8 +118,7 @@ jobs:
- name: Move binary
run: |
mkdir artifacts
[[ "${{ matrix.configs.target }}" == *windows* ]] && ext=".exe"
mv "target/${{ matrix.configs.target }}/${{ matrix.configs.profile }}/${{ matrix.build.binary }}${ext}" ./artifacts
mv "target/${{ matrix.configs.target }}/${{ matrix.configs.profile }}/${{ matrix.build.binary }}" ./artifacts
- name: Configure GPG and create artifacts
env:
@@ -141,14 +135,14 @@ jobs:
- name: Upload artifact
if: ${{ github.event.inputs.dry_run != 'true' }}
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}.tar.gz
path: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}.tar.gz
- name: Upload signature
if: ${{ github.event.inputs.dry_run != 'true' }}
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v6
with:
name: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}.tar.gz.asc
path: ${{ matrix.build.binary }}-${{ needs.extract-version.outputs.VERSION }}-${{ matrix.configs.target }}.tar.gz.asc
@@ -166,11 +160,11 @@ jobs:
steps:
# This is necessary for generating the changelog.
# It has to come before "Download Artifacts" or else it deletes the artifacts.
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Download artifacts
uses: actions/download-artifact@v4
uses: actions/download-artifact@v7
- name: Generate full changelog
id: changelog
run: |
@@ -223,7 +217,7 @@ jobs:
| Payload Builders | <TODO> |
| Non-Payload Builders | <TODO> |
*See [Update Priorities](https://paradigmxyz.github.io/reth/installation/priorities.html) for more information about this table.*
*See [Update Priorities](https://reth.rs/installation/priorities) for more information about this table.*
## All Changes
@@ -231,7 +225,7 @@ jobs:
## Binaries
[See pre-built binaries documentation.](https://paradigmxyz.github.io/reth/installation/binaries.html)
[See pre-built binaries documentation.](https://reth.rs/installation/binaries)
The binaries are signed with the PGP key: `50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E`
@@ -241,21 +235,9 @@ jobs:
|:---:|:---:|:---:|:---|
| <img src="https://www.svgrepo.com/download/473700/linux.svg" width="50"/> | x86_64 | [reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/473700/linux.svg" width="50"/> | aarch64 | [reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/513083/windows-174.svg" width="50"/> | x86_64 | [reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/511330/apple-173.svg" width="50"/> | x86_64 | [reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/511330/apple-173.svg" width="50"/> | aarch64 | [reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/473589/docker.svg" width="50"/> | Docker | [${{ env.IMAGE_NAME }}](${{ env.DOCKER_IMAGE_NAME_URL }}) | - |
### OP-Reth
| System | Architecture | Binary | PGP Signature |
|:---:|:---:|:---:|:---|
| <img src="https://www.svgrepo.com/download/473700/linux.svg" width="50"/> | x86_64 | [op-reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/473700/linux.svg" width="50"/> | aarch64 | [op-reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-aarch64-unknown-linux-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/513083/windows-174.svg" width="50"/> | x86_64 | [op-reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-pc-windows-gnu.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/511330/apple-173.svg" width="50"/> | x86_64 | [op-reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-x86_64-apple-darwin.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/511330/apple-173.svg" width="50"/> | aarch64 | [op-reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz) | [PGP Signature](https://github.com/${{ env.REPO_NAME }}/releases/download/${{ env.VERSION }}/op-reth-${{ env.VERSION }}-aarch64-apple-darwin.tar.gz.asc) |
| <img src="https://www.svgrepo.com/download/473589/docker.svg" width="50"/> | Docker | [${{ env.OP_IMAGE_NAME }}](${{ env.DOCKER_OP_IMAGE_NAME_URL }}) | - |
ENDBODY
)
assets=()

View File

@@ -7,32 +7,75 @@ on:
jobs:
build:
if: github.repository == 'paradigmxyz/reth'
name: build reproducible binaries
runs-on: ubuntu-latest
runs-on: ${{ matrix.runner }}
strategy:
matrix:
include:
- runner: ubuntu-latest
machine: machine-1
- runner: ubuntu-22.04
machine: machine-2
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: actions/checkout@v6
- uses: dtolnay/rust-toolchain@stable
with:
target: x86_64-unknown-linux-gnu
- name: Install cross main
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build reproducible binary with Docker
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Install cargo-cache
RUST_TOOLCHAIN=$(rustc --version | cut -d' ' -f2)
docker build \
--build-arg "RUST_TOOLCHAIN=${RUST_TOOLCHAIN}" \
-f Dockerfile.reproducible -t reth:release \
--target artifacts \
--output type=local,dest=./target .
- name: Calculate SHA256
id: sha256
run: |
cargo install cargo-cache
- uses: Swatinem/rust-cache@v2
sha256sum target/reth > checksum.sha256
echo "Binaries SHA256 on ${{ matrix.machine }}: $(cat checksum.sha256)"
- name: Upload the hash
uses: actions/upload-artifact@v6
with:
cache-on-failure: true
- name: Build Reth
name: checksum-${{ matrix.machine }}
path: |
checksum.sha256
retention-days: 1
compare:
name: compare reproducible binaries
needs: build
runs-on: ubuntu-latest
steps:
- name: Download artifacts from machine-1
uses: actions/download-artifact@v7
with:
name: checksum-machine-1
path: machine-1/
- name: Download artifacts from machine-2
uses: actions/download-artifact@v7
with:
name: checksum-machine-2
path: machine-2/
- name: Compare SHA256 hashes
run: |
make build-reproducible
mv target/x86_64-unknown-linux-gnu/release/reth reth-build-1
- name: Clean cache
run: make clean && cargo cache -a
- name: Build Reth again
run: |
make build-reproducible
mv target/x86_64-unknown-linux-gnu/release/reth reth-build-2
- name: Compare binaries
run: cmp reth-build-1 reth-build-2
echo "=== SHA256 Comparison ==="
echo "Machine 1 hash:"
cat machine-1/checksum.sha256
echo "Machine 2 hash:"
cat machine-2/checksum.sha256
if cmp -s machine-1/checksum.sha256 machine-2/checksum.sha256; then
echo "✅ SUCCESS: Binaries are identical (reproducible build verified)"
else
echo "❌ FAILURE: Binaries differ (reproducible build failed)"
exit 1
fi

View File

@@ -12,6 +12,7 @@ env:
CARGO_TERM_COLOR: always
FROM_BLOCK: 0
TO_BLOCK: 50000
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -22,22 +23,22 @@ jobs:
name: stage-run-test
# Only run stage commands test in merge groups
if: github.event_name == 'merge_group'
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Build reth
run: |
cargo install --features asm-keccak,jemalloc --path bin/reth
cargo install --path bin/reth
- name: Run headers stage
run: |
reth stage run headers --from ${{ env.FROM_BLOCK }} --to ${{ env.TO_BLOCK }} --commit --checkpoints

View File

@@ -9,12 +9,13 @@ on:
jobs:
close-issues:
if: github.repository == 'paradigmxyz/reth'
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/stale@v9
- uses: actions/stale@v10
with:
days-before-stale: 21
days-before-close: 7

View File

@@ -9,6 +9,7 @@ on:
env:
CARGO_TERM_COLOR: always
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -16,9 +17,9 @@ concurrency:
jobs:
sync:
if: github.repository == 'paradigmxyz/reth'
name: sync (${{ matrix.chain.bin }})
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
@@ -32,16 +33,11 @@ jobs:
tip: "0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4"
block: 100000
unwind-target: "0x52e0509d33a988ef807058e2980099ee3070187f7333aae12b64d4d675f34c5a"
- build: install-op
bin: op-reth
chain: base
tip: "0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7"
block: 10000
unwind-target: "0x118a6e922a8c6cab221fc5adfe5056d2b72d58c6580e9c5629de55299e2cf8de"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -53,7 +49,7 @@ jobs:
--chain ${{ matrix.chain.chain }} \
--debug.tip ${{ matrix.chain.tip }} \
--debug.max-block ${{ matrix.chain.block }} \
--debug.terminate
--debug.terminate \
--era.enable
- name: Verify the target block hash
run: |
@@ -64,4 +60,4 @@ jobs:
${{ matrix.chain.bin }} stage unwind num-blocks 100 --chain ${{ matrix.chain.chain }}
- name: Run stage unwind to block hash
run: |
${{ matrix.chain.bin }} stage unwind to-block ${{ matrix.chain.unwind-target }} --chain ${{ matrix.chain.chain }}
${{ matrix.chain.bin }} stage unwind to-block ${{ matrix.chain.unwind-target }} --chain ${{ matrix.chain.chain }}

View File

@@ -9,6 +9,7 @@ on:
env:
CARGO_TERM_COLOR: always
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -16,9 +17,9 @@ concurrency:
jobs:
sync:
if: github.repository == 'paradigmxyz/reth'
name: sync (${{ matrix.chain.bin }})
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
@@ -32,16 +33,11 @@ jobs:
tip: "0x91c90676cab257a59cd956d7cb0bceb9b1a71d79755c23c7277a0697ccfaf8c4"
block: 100000
unwind-target: "0x52e0509d33a988ef807058e2980099ee3070187f7333aae12b64d4d675f34c5a"
- build: install-op
bin: op-reth
chain: base
tip: "0xbb9b85352c7ebca6ba8efc63bd66cecd038c92ec8ebd02e153a3e0b197e672b7"
block: 10000
unwind-target: "0x118a6e922a8c6cab221fc5adfe5056d2b72d58c6580e9c5629de55299e2cf8de"
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -63,4 +59,4 @@ jobs:
${{ matrix.chain.bin }} stage unwind num-blocks 100 --chain ${{ matrix.chain.chain }}
- name: Run stage unwind to block hash
run: |
${{ matrix.chain.bin }} stage unwind to-block ${{ matrix.chain.unwind-target }} --chain ${{ matrix.chain.chain }}
${{ matrix.chain.bin }} stage unwind to-block ${{ matrix.chain.unwind-target }} --chain ${{ matrix.chain.chain }}

View File

@@ -11,6 +11,7 @@ on:
env:
CARGO_TERM_COLOR: always
SEED: rustethereumethereumrust
RUSTC_WRAPPER: "sccache"
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
@@ -18,35 +19,25 @@ concurrency:
jobs:
test:
name: test / ${{ matrix.type }} (${{ matrix.partition }}/${{ matrix.total_partitions }})
runs-on:
group: Reth
name: test / ${{ matrix.type }} / ${{ matrix.storage }}
runs-on: depot-ubuntu-latest-4
env:
RUST_BACKTRACE: 1
EDGE_FEATURES: ${{ matrix.storage == 'edge' && 'edge' || '' }}
strategy:
matrix:
type: [ethereum]
storage: [stable, edge]
include:
- type: ethereum
args: --features "asm-keccak ethereum" --locked
partition: 1
total_partitions: 2
- type: ethereum
args: --features "asm-keccak ethereum" --locked
partition: 2
total_partitions: 2
- type: optimism
args: --features "asm-keccak" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum"
partition: 1
total_partitions: 2
- type: optimism
args: --features "asm-keccak" --locked --exclude reth --exclude reth-bench --exclude "example-*" --exclude "reth-ethereum-*" --exclude "*-ethereum"
partition: 2
total_partitions: 2
features: asm-keccak ethereum
exclude_args: ""
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
@@ -58,48 +49,58 @@ jobs:
- name: Run tests
run: |
cargo nextest run \
${{ matrix.args }} --workspace \
--no-fail-fast \
--features "${{ matrix.features }} $EDGE_FEATURES" --locked \
${{ matrix.exclude_args }} --workspace \
--exclude ef-tests --no-tests=warn \
--partition hash:${{ matrix.partition }}/2 \
-E "!kind(test)"
-E "!kind(test) and not binary(e2e_testsuite)"
state:
name: Ethereum state tests
runs-on:
group: Reth
runs-on: depot-ubuntu-latest-4
env:
RUST_LOG: info,sync=error
RUST_BACKTRACE: 1
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Checkout ethereum/tests
uses: actions/checkout@v4
uses: actions/checkout@v6
with:
repository: ethereum/tests
ref: 81862e4848585a438d64f911a19b3825f0f4cd95
path: testing/ef-tests/ethereum-tests
submodules: recursive
fetch-depth: 1
- name: Download & extract EEST fixtures (public)
shell: bash
env:
EEST_TESTS_TAG: v4.5.0
run: |
set -euo pipefail
mkdir -p testing/ef-tests/execution-spec-tests
URL="https://github.com/ethereum/execution-spec-tests/releases/download/${EEST_TESTS_TAG}/fixtures_stable.tar.gz"
curl -L "$URL" | tar -xz --strip-components=1 -C testing/ef-tests/execution-spec-tests
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: taiki-e/install-action@nextest
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- run: cargo nextest run --release -p ef-tests --features "asm-keccak ef-tests"
- run: cargo nextest run --no-fail-fast --cargo-profile hivetests -p ef-tests --features "asm-keccak ef-tests"
doc:
name: doc tests
runs-on:
group: Reth
runs-on: depot-ubuntu-latest
env:
RUST_BACKTRACE: 1
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
- uses: mozilla-actions/sccache-action@v0.0.9
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true

View File

@@ -1,36 +0,0 @@
name: Update Superchain Config
on:
schedule:
- cron: '0 3 * * 0'
workflow_dispatch:
permissions:
contents: write
jobs:
update-superchain:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install required tools
run: |
sudo apt-get update
sudo apt-get install -y jq zstd qpdf yq
- name: Run fetch_superchain_config.sh
run: |
chmod +x crates/optimism/chainspec/res/fetch_superchain_config.sh
cd crates/optimism/chainspec/res
./fetch_superchain_config.sh
- name: Create Pull Request
uses: peter-evans/create-pull-request@v7
with:
commit-message: "chore: update superchain config"
title: "chore: update superchain config"
body: "This PR updates the superchain configs via scheduled workflow."
branch: "ci/update-superchain-config"
delete-branch: true

View File

@@ -1,49 +0,0 @@
# Windows build
name: windows
on:
push:
branches: [main]
pull_request:
branches: [main]
merge_group:
jobs:
check-reth:
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
with:
target: x86_64-pc-windows-gnu
- uses: taiki-e/install-action@cross
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: mingw-w64
run: sudo apt-get install -y mingw-w64
- name: Check Reth
run: cargo check --target x86_64-pc-windows-gnu
check-op-reth:
runs-on: ubuntu-24.04
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: rui314/setup-mold@v1
- uses: dtolnay/rust-toolchain@stable
with:
target: x86_64-pc-windows-gnu
- uses: taiki-e/install-action@cross
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: mingw-w64
run: sudo apt-get install -y mingw-w64
- name: Check OP-Reth
run: cargo check -p op-reth --target x86_64-pc-windows-gnu

18
.gitignore vendored
View File

@@ -12,6 +12,9 @@ target/
# Generated by Intellij-based IDEs.
.idea
# ck-search metadata
.ck
# Generated by MacOS
.DS_Store
@@ -55,7 +58,20 @@ rustc-ice-*
book/sources/Cargo.lock
# vocs node_modules
book/vocs/node_modules
docs/vocs/node_modules
# Cargo chef recipe file
recipe.json
_
# broken links report
links-report.json
# Python cache
__pycache__/
*.py[cod]
*$py.class
# direnv
.envrc
.direnv/

103
CLAUDE.md
View File

@@ -18,13 +18,13 @@ Reth is a high-performance Ethereum execution client written in Rust, focusing o
6. **Pipeline (`crates/stages/`)**: Staged sync architecture for blockchain synchronization
7. **Trie (`crates/trie/`)**: Merkle Patricia Trie implementation with parallel state root computation
8. **Node Builder (`crates/node/`)**: High-level node orchestration and configuration
9 **The Consensus Engine (`crates/engine/`)**: Handles processing blocks received from the consensus layer with the Engine API (newPayload, forkchoiceUpdated)
9. **The Consensus Engine (`crates/engine/`)**: Handles processing blocks received from the consensus layer with the Engine API (newPayload, forkchoiceUpdated)
### Key Design Principles
- **Modularity**: Each crate can be used as a standalone library
- **Performance**: Extensive use of parallelism, memory-mapped I/O, and optimized data structures
- **Extensibility**: Traits and generic types allow for different implementations (Ethereum, Optimism, etc.)
- **Extensibility**: Traits and generic types allow for different chain implementations
- **Type Safety**: Strong typing throughout with minimal use of dynamic dispatch
## Development Workflow
@@ -38,7 +38,7 @@ Reth is a high-performance Ethereum execution client written in Rust, focusing o
2. **Linting**: Run clippy with all features
```bash
RUSTFLAGS="-D warnings" cargo +nightly clippy --workspace --lib --examples --tests --benches --all-features --locked
cargo +nightly clippy --workspace --lib --examples --tests --benches --all-features
```
3. **Testing**: Use nextest for faster test execution
@@ -162,25 +162,25 @@ Based on PR patterns, avoid:
2. **Mixing unrelated changes**: One logical change per PR
3. **Ignoring CI failures**: All checks must pass
4. **Incomplete implementations**: Finish features before submitting
5. **Modifying libmdbx sources**: Never modify files in `crates/storage/libmdbx-rs/mdbx-sys/libmdbx/` - this is vendored third-party code
### CI Requirements
Before submitting changes, ensure:
1. **Format Check**: `cargo +nightly fmt --all --check`
2. **Clippy**: No warnings with `RUSTFLAGS="-D warnings"`
2. **Clippy**: No warnings
3. **Tests Pass**: All unit and integration tests
4. **Documentation**: Update relevant docs and add doc comments with `cargo docs --document-private-items`
5. **Commit Messages**: Follow conventional format (feat:, fix:, chore:, etc.)
### Opening PRs against <https://github.com/paradigmxyz/reth>
Label PRs appropriately, first check the available labels and then apply the relevant ones:
* when changes are RPC related, add A-rpc label
* when changes are docs related, add C-docs label
* when changes are optimism related (e.g. new feature or exclusive changes to crates/optimism), add A-op-reth label
* ... and so on, check the available labels for more options.
* if being tasked to open a pr, ensure that all changes are properly formatted: `cargo +nightly fmt --all`
If changes in reth include changes to dependencies, run commands `zepter` and `make lint-toml` before finalizing the pr. Assume `zepter` binary is installed.
@@ -232,7 +232,86 @@ Tests often need expansion for:
Common refactoring pattern:
- Replace concrete types with generics
- Add trait bounds for flexibility
- Enable reuse across different chain types (Ethereum, Optimism)
- Enable reuse across different chain types
#### When to Comment
Write comments that remain valuable after the PR is merged. Future readers won't have PR context - they only see the current code.
##### ✅ DO: Add Value
**Explain WHY and non-obvious behavior:**
```rust
// Process must handle allocations atomically to prevent race conditions
// between dealloc on drop and concurrent limit checks
unsafe impl GlobalAlloc for LimitedAllocator { ... }
// Binary search requires sorted input. Panics on unsorted slices.
fn find_index(items: &[Item], target: &Item) -> Option<usize>
// Timeout set to 5s to match EVM block processing limits
const TRACER_TIMEOUT: Duration = Duration::from_secs(5);
```
**Document constraints and assumptions:**
```rust
/// Returns heap size estimate.
///
/// Note: May undercount shared references (Rc/Arc). For precise
/// accounting, combine with an allocator-based approach.
fn deep_size_of(&self) -> usize
```
**Explain complex logic:**
```rust
// We reset limits at task start because tokio reuses threads in
// spawn_blocking pool. Without reset, second task inherits first
// task's allocation count and immediately hits limit.
THREAD_ALLOCATED.with(|allocated| allocated.set(0));
```
##### ❌ DON'T: Describe Changes
```rust
// ❌ BAD - Describes the change, not the code
// Changed from Vec to HashMap for O(1) lookups
// ✅ GOOD - Explains the decision
// HashMap provides O(1) symbol lookups during trace replay
```
```rust
// ❌ BAD - PR-specific context
// Fix for issue #234 where memory wasn't freed
// ✅ GOOD - Documents the actual behavior
// Explicitly drop allocations before limit check to ensure
// accurate accounting
```
```rust
// ❌ BAD - States the obvious
// Increment counter
counter += 1;
// ✅ GOOD - Explains non-obvious purpose
// Track allocations across all threads for global limit enforcement
GLOBAL_COUNTER.fetch_add(1, Ordering::SeqCst);
```
✅ **Comment when:**
- Non-obvious behavior or edge cases
- Performance trade-offs
- Safety requirements (unsafe blocks must always be documented)
- Limitations or gotchas
- Why simpler alternatives don't work
❌ **Don't comment when:**
- Code is self-explanatory
- Just restating the code in English
- Describing what changed in this PR
##### The Test: "Will this make sense in 6 months?"
Before adding a comment, ask: Would someone reading just the current code (no PR, no history) find this helpful?
### Example Contribution Workflow
@@ -268,11 +347,11 @@ Let's say you want to fix a bug where external IP resolution fails on startup:
}
```
5. **Run checks**:
5. **Run checks** (IMPORTANT!):
```bash
cargo +nightly fmt --all
cargo clippy --all-features
cargo test -p reth-discv4
cargo clippy --workspace --all-features # Make sure WHOLE WORKSPACE compiles!
cargo nextest run -p reth-discv4
```
6. **Commit with clear message**:
@@ -293,7 +372,7 @@ Let's say you want to fix a bug where external IP resolution fails on startup:
cargo +nightly fmt --all
# Run lints
RUSTFLAGS="-D warnings" cargo +nightly clippy --workspace --all-features --locked
cargo +nightly clippy --workspace --all-features
# Run tests
cargo nextest run --workspace
@@ -302,7 +381,7 @@ cargo nextest run --workspace
cargo bench --bench bench_name
# Build optimized binary
cargo build --release --features "jemalloc asm-keccak"
cargo build --release
# Check compilation for all features
cargo check --workspace --all-features

View File

@@ -3,7 +3,7 @@
Thanks for your interest in improving Reth!
There are multiple opportunities to contribute at any level. It doesn't matter if you are just getting started with Rust
or are the most weathered expert, we can use your help.
or if you are already the most weathered expert, we can use your help.
**No contribution is too small and all contributions are valued.**
@@ -51,11 +51,9 @@ elsewhere.
<!-- - **Asking in the support Telegram:** The [Foundry Support Telegram][support-tg] is a fast and easy way to ask questions. -->
<!-- - **Opening a discussion:** This repository comes with a discussions board where you can also ask for help. Click the "Discussions" tab at the top. -->
If you have reviewed existing documentation and still have questions, or you are having problems, you can get help by *
*opening a discussion**. This repository comes with a discussions board where you can also ask for help. Click the "
Discussions" tab at the top.
If you have reviewed existing documentation and still have questions, or you are having problems, you can get help by **opening a discussion**. This repository comes with a discussions board where you can also ask for help. Click the "Discussions" tab at the top.
As Reth is still in heavy development, the documentation can be a bit scattered. The [Reth Book][reth-book] is our
As Reth is still in heavy development, the documentation can be a bit scattered. The [Reth Docs][reth-docs] is our
current best-effort attempt at keeping up-to-date information.
### Submitting a bug report
@@ -235,7 +233,7 @@ _Adapted from the [Foundry contributing guide][foundry-contributing]_.
[dev-tg]: https://t.me/paradigm_reth
[reth-book]: https://github.com/paradigmxyz/reth/tree/main/book
[reth-docs]: https://github.com/paradigmxyz/reth/tree/main/docs
[mcve]: https://stackoverflow.com/help/mcve

5880
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
[workspace.package]
version = "1.4.8"
edition = "2021"
rust-version = "1.86"
version = "1.11.3"
edition = "2024"
rust-version = "1.88"
license = "MIT OR Apache-2.0"
homepage = "https://paradigmxyz.github.io/reth"
repository = "https://github.com/paradigmxyz/reth"
@@ -10,8 +10,9 @@ exclude = [".github/"]
[workspace]
members = [
"bin/reth-bench/",
"bin/reth-bench-compare/",
"bin/reth/",
"crates/alloy-provider/",
"crates/storage/rpc-provider/",
"crates/chain-state/",
"crates/chainspec/",
"crates/cli/cli/",
@@ -67,22 +68,10 @@ members = [
"crates/node/api/",
"crates/node/builder/",
"crates/node/core/",
"crates/node/ethstats",
"crates/node/events/",
"crates/node/metrics",
"crates/node/types",
"crates/optimism/bin",
"crates/optimism/chainspec",
"crates/optimism/cli",
"crates/optimism/consensus",
"crates/optimism/evm/",
"crates/optimism/hardforks/",
"crates/optimism/node/",
"crates/optimism/payload/",
"crates/optimism/primitives/",
"crates/optimism/reth/",
"crates/optimism/rpc/",
"crates/optimism/storage",
"crates/optimism/txpool/",
"crates/payload/basic/",
"crates/payload/builder/",
"crates/payload/builder-primitives/",
@@ -91,10 +80,9 @@ members = [
"crates/payload/util/",
"crates/primitives-traits/",
"crates/primitives/",
"crates/prune/db",
"crates/prune/prune",
"crates/prune/types",
"crates/ress/protocol",
"crates/ress/provider",
"crates/revm/",
"crates/rpc/ipc/",
"crates/rpc/rpc-api/",
@@ -105,12 +93,12 @@ members = [
"crates/rpc/rpc-layer",
"crates/rpc/rpc-server-types/",
"crates/rpc/rpc-testing-util/",
"crates/rpc/rpc-e2e-tests/",
"crates/rpc/rpc-convert/",
"crates/rpc/rpc/",
"crates/stages/api/",
"crates/stages/stages/",
"crates/stages/types/",
"crates/stateless",
"crates/static-file/static-file",
"crates/static-file/types/",
"crates/storage/codecs/",
@@ -134,29 +122,28 @@ members = [
"crates/trie/db",
"crates/trie/parallel/",
"crates/trie/sparse",
"crates/trie/sparse-parallel/",
"crates/trie/trie",
"examples/beacon-api-sidecar-fetcher/",
"examples/beacon-api-sse/",
"examples/bsc-p2p",
"examples/custom-dev-node/",
"examples/custom-node/",
"examples/custom-engine-types/",
"examples/custom-evm/",
"examples/custom-hardforks/",
"examples/custom-inspector/",
"examples/custom-node-components/",
"examples/custom-payload-builder/",
"examples/custom-rlpx-subprotocol",
"examples/custom-node",
"examples/custom-rpc-middleware",
"examples/db-access",
"examples/engine-api-access",
"examples/exex-hello-world",
"examples/exex-subscription",
"examples/exex-test",
"examples/full-contract-state",
"examples/manual-p2p/",
"examples/network-txpool/",
"examples/network/",
"examples/network-proxy/",
"examples/node-builder-api/",
"examples/node-custom-rpc/",
"examples/node-event-hooks/",
"examples/polygon-p2p/",
@@ -166,10 +153,11 @@ members = [
"examples/custom-beacon-withdrawals",
"testing/ef-tests/",
"testing/testing-utils",
"testing/runner",
"crates/tracing-otlp",
]
default-members = ["bin/reth"]
exclude = ["book/sources", "book/cli"]
exclude = ["docs/cli"]
# Explicitly set the resolver to version 2, which is the default for packages with edition >= 2021
# https://doc.rust-lang.org/edition-guide/rust-2021/default-cargo-resolver.html
@@ -181,6 +169,7 @@ rust.missing_docs = "warn"
rust.rust_2018_idioms = { level = "deny", priority = -1 }
rust.unreachable_pub = "warn"
rust.unused_must_use = "deny"
rust.rust_2024_incompatible_pat = "warn"
rustdoc.all = "warn"
# rust.unnameable-types = "warn"
@@ -317,13 +306,24 @@ inherits = "release"
lto = "fat"
codegen-units = 1
[profile.maxperf-symbols]
inherits = "maxperf"
debug = "full"
strip = "none"
[profile.reproducible]
inherits = "release"
panic = "abort"
codegen-units = 1
incremental = false
[workspace.dependencies]
# reth
op-reth = { path = "crates/optimism/bin" }
reth = { path = "bin/reth" }
reth-alloy-provider = { path = "crates/alloy-provider" }
reth-storage-rpc-provider = { path = "crates/storage/rpc-provider" }
reth-basic-payload-builder = { path = "crates/payload/basic" }
reth-bench = { path = "bin/reth-bench" }
reth-bench-compare = { path = "bin/reth-bench-compare" }
reth-chain-state = { path = "crates/chain-state" }
reth-chainspec = { path = "crates/chainspec", default-features = false }
reth-cli = { path = "crates/cli/cli" }
@@ -357,17 +357,16 @@ reth-era-utils = { path = "crates/era-utils" }
reth-errors = { path = "crates/errors" }
reth-eth-wire = { path = "crates/net/eth-wire" }
reth-eth-wire-types = { path = "crates/net/eth-wire-types" }
reth-ethereum-cli = { path = "crates/ethereum/cli" }
reth-ethereum-payload-builder = { path = "crates/ethereum/payload" }
reth-ethereum-cli = { path = "crates/ethereum/cli", default-features = false }
reth-ethereum-consensus = { path = "crates/ethereum/consensus", default-features = false }
reth-ethereum-engine-primitives = { path = "crates/ethereum/engine-primitives", default-features = false }
reth-ethereum-forks = { path = "crates/ethereum/hardforks", default-features = false }
reth-ethereum-payload-builder = { path = "crates/ethereum/payload" }
reth-ethereum-primitives = { path = "crates/ethereum/primitives", default-features = false }
reth-ethereum = { path = "crates/ethereum/reth" }
reth-etl = { path = "crates/etl" }
reth-evm = { path = "crates/evm/evm", default-features = false }
reth-evm-ethereum = { path = "crates/ethereum/evm", default-features = false }
reth-optimism-evm = { path = "crates/optimism/evm", default-features = false }
reth-execution-errors = { path = "crates/evm/execution-errors", default-features = false }
reth-execution-types = { path = "crates/evm/execution-types", default-features = false }
reth-exex = { path = "crates/exex/exex" }
@@ -391,20 +390,10 @@ reth-node-api = { path = "crates/node/api" }
reth-node-builder = { path = "crates/node/builder" }
reth-node-core = { path = "crates/node/core" }
reth-node-ethereum = { path = "crates/ethereum/node" }
reth-node-ethstats = { path = "crates/node/ethstats" }
reth-node-events = { path = "crates/node/events" }
reth-node-metrics = { path = "crates/node/metrics" }
reth-optimism-node = { path = "crates/optimism/node" }
reth-node-types = { path = "crates/node/types" }
reth-op = { path = "crates/optimism/reth", default-features = false }
reth-optimism-chainspec = { path = "crates/optimism/chainspec", default-features = false }
reth-optimism-cli = { path = "crates/optimism/cli" }
reth-optimism-consensus = { path = "crates/optimism/consensus", default-features = false }
reth-optimism-forks = { path = "crates/optimism/hardforks", default-features = false }
reth-optimism-payload-builder = { path = "crates/optimism/payload" }
reth-optimism-primitives = { path = "crates/optimism/primitives", default-features = false }
reth-optimism-rpc = { path = "crates/optimism/rpc" }
reth-optimism-storage = { path = "crates/optimism/storage" }
reth-optimism-txpool = { path = "crates/optimism/txpool" }
reth-payload-builder = { path = "crates/payload/builder" }
reth-payload-builder-primitives = { path = "crates/payload/builder-primitives" }
reth-payload-primitives = { path = "crates/payload/primitives" }
@@ -420,6 +409,7 @@ reth-rpc = { path = "crates/rpc/rpc" }
reth-rpc-api = { path = "crates/rpc/rpc-api" }
reth-rpc-api-testing-util = { path = "crates/rpc/rpc-testing-util" }
reth-rpc-builder = { path = "crates/rpc/rpc-builder" }
reth-rpc-e2e-tests = { path = "crates/rpc/rpc-e2e-tests" }
reth-rpc-engine-api = { path = "crates/rpc/rpc-engine-api" }
reth-rpc-eth-api = { path = "crates/rpc/rpc-eth-api" }
reth-rpc-eth-types = { path = "crates/rpc/rpc-eth-types", default-features = false }
@@ -429,7 +419,6 @@ reth-rpc-convert = { path = "crates/rpc/rpc-convert" }
reth-stages = { path = "crates/stages/stages" }
reth-stages-api = { path = "crates/stages/api" }
reth-stages-types = { path = "crates/stages/types", default-features = false }
reth-stateless = { path = "crates/stateless" }
reth-static-file = { path = "crates/static-file/static-file" }
reth-static-file-types = { path = "crates/static-file/types", default-features = false }
reth-storage-api = { path = "crates/storage/storage-api", default-features = false }
@@ -437,110 +426,127 @@ reth-storage-errors = { path = "crates/storage/errors", default-features = false
reth-tasks = { path = "crates/tasks" }
reth-testing-utils = { path = "testing/testing-utils" }
reth-tokio-util = { path = "crates/tokio-util" }
reth-tracing = { path = "crates/tracing" }
reth-tracing = { path = "crates/tracing", default-features = false }
reth-tracing-otlp = { path = "crates/tracing-otlp" }
reth-transaction-pool = { path = "crates/transaction-pool" }
reth-trie = { path = "crates/trie/trie" }
reth-trie-common = { path = "crates/trie/common", default-features = false }
reth-trie-db = { path = "crates/trie/db" }
reth-trie-parallel = { path = "crates/trie/parallel" }
reth-trie-sparse = { path = "crates/trie/sparse", default-features = false }
reth-trie-sparse-parallel = { path = "crates/trie/sparse-parallel" }
reth-zstd-compressors = { path = "crates/storage/zstd-compressors", default-features = false }
reth-ress-protocol = { path = "crates/ress/protocol" }
reth-ress-provider = { path = "crates/ress/provider" }
# revm
revm = { version = "26.0.1", default-features = false }
revm-bytecode = { version = "5.0.0", default-features = false }
revm-database = { version = "6.0.0", default-features = false }
revm-state = { version = "6.0.0", default-features = false }
revm-primitives = { version = "20.0.0", default-features = false }
revm-interpreter = { version = "22.0.1", default-features = false }
revm-inspector = { version = "7.0.1", default-features = false }
revm-context = { version = "7.0.1", default-features = false }
revm-context-interface = { version = "7.0.0", default-features = false }
revm-database-interface = { version = "6.0.0", default-features = false }
op-revm = { version = "7.0.1", default-features = false }
revm-inspectors = "0.25.0"
revm = { version = "34.0.0", default-features = false }
revm-bytecode = { version = "8.0.0", default-features = false }
revm-database = { version = "10.0.0", default-features = false }
revm-state = { version = "9.0.0", default-features = false }
revm-primitives = { version = "22.0.0", default-features = false }
revm-interpreter = { version = "32.0.0", default-features = false }
revm-database-interface = { version = "9.0.0", default-features = false }
op-revm = { version = "15.0.0", default-features = false }
revm-inspectors = "0.34.2"
# eth
alloy-chains = { version = "0.2.0", default-features = false }
alloy-dyn-abi = "1.2.0"
alloy-dyn-abi = "1.5.6"
alloy-primitives = { version = "1.5.6", default-features = false, features = [
"map-foldhash",
] }
alloy-sol-types = { version = "1.5.6", default-features = false }
alloy-chains = { version = "0.2.5", default-features = false }
alloy-eip2124 = { version = "0.2.0", default-features = false }
alloy-evm = { version = "0.12", default-features = false }
alloy-primitives = { version = "1.2.0", default-features = false, features = ["map-foldhash"] }
alloy-rlp = { version = "0.3.10", default-features = false, features = ["core-net"] }
alloy-sol-macro = "1.2.0"
alloy-sol-types = { version = "1.2.0", default-features = false }
alloy-trie = { version = "0.9.0", default-features = false }
alloy-eip7928 = { version = "0.3.0", default-features = false }
alloy-evm = { version = "0.27.2", default-features = false }
alloy-rlp = { version = "0.3.13", default-features = false, features = [
"core-net",
] }
alloy-trie = { version = "0.9.4", default-features = false }
alloy-hardforks = "0.2.7"
alloy-hardforks = "0.4.5"
alloy-consensus = { version = "1.0.12", default-features = false }
alloy-contract = { version = "1.0.12", default-features = false }
alloy-eips = { version = "1.0.12", default-features = false }
alloy-genesis = { version = "1.0.12", default-features = false }
alloy-json-rpc = { version = "1.0.12", default-features = false }
alloy-network = { version = "1.0.12", default-features = false }
alloy-network-primitives = { version = "1.0.12", default-features = false }
alloy-provider = { version = "1.0.12", features = ["reqwest"], default-features = false }
alloy-pubsub = { version = "1.0.12", default-features = false }
alloy-rpc-client = { version = "1.0.12", default-features = false }
alloy-rpc-types = { version = "1.0.12", features = ["eth"], default-features = false }
alloy-rpc-types-admin = { version = "1.0.12", default-features = false }
alloy-rpc-types-anvil = { version = "1.0.12", default-features = false }
alloy-rpc-types-beacon = { version = "1.0.12", default-features = false }
alloy-rpc-types-debug = { version = "1.0.12", default-features = false }
alloy-rpc-types-engine = { version = "1.0.12", default-features = false }
alloy-rpc-types-eth = { version = "1.0.12", default-features = false }
alloy-rpc-types-mev = { version = "1.0.12", default-features = false }
alloy-rpc-types-trace = { version = "1.0.12", default-features = false }
alloy-rpc-types-txpool = { version = "1.0.12", default-features = false }
alloy-serde = { version = "1.0.12", default-features = false }
alloy-signer = { version = "1.0.12", default-features = false }
alloy-signer-local = { version = "1.0.12", default-features = false }
alloy-transport = { version = "1.0.12" }
alloy-transport-http = { version = "1.0.12", features = ["reqwest-rustls-tls"], default-features = false }
alloy-transport-ipc = { version = "1.0.12", default-features = false }
alloy-transport-ws = { version = "1.0.12", default-features = false }
alloy-consensus = { version = "1.6.3", default-features = false }
alloy-contract = { version = "1.6.3", default-features = false }
alloy-eips = { version = "1.6.3", default-features = false }
alloy-genesis = { version = "1.6.3", default-features = false }
alloy-json-rpc = { version = "1.6.3", default-features = false }
alloy-network = { version = "1.6.3", default-features = false }
alloy-network-primitives = { version = "1.6.3", default-features = false }
alloy-provider = { version = "1.6.3", features = [
"reqwest",
"debug-api",
], default-features = false }
alloy-pubsub = { version = "1.6.3", default-features = false }
alloy-rpc-client = { version = "1.6.3", default-features = false }
alloy-rpc-types = { version = "1.6.3", features = [
"eth",
], default-features = false }
alloy-rpc-types-admin = { version = "1.6.3", default-features = false }
alloy-rpc-types-anvil = { version = "1.6.3", default-features = false }
alloy-rpc-types-beacon = { version = "1.6.3", default-features = false }
alloy-rpc-types-debug = { version = "1.6.3", default-features = false }
alloy-rpc-types-engine = { version = "1.6.3", default-features = false }
alloy-rpc-types-eth = { version = "1.6.3", default-features = false }
alloy-rpc-types-mev = { version = "1.6.3", default-features = false }
alloy-rpc-types-trace = { version = "1.6.3", default-features = false }
alloy-rpc-types-txpool = { version = "1.6.3", default-features = false }
alloy-serde = { version = "1.6.3", default-features = false }
alloy-signer = { version = "1.6.3", default-features = false }
alloy-signer-local = { version = "1.6.3", default-features = false }
alloy-transport = { version = "1.6.3" }
alloy-transport-http = { version = "1.6.3", features = [
"reqwest-rustls-tls",
], default-features = false }
alloy-transport-ipc = { version = "1.6.3", default-features = false }
alloy-transport-ws = { version = "1.6.3", default-features = false }
# op
alloy-op-evm = { version = "0.12", default-features = false }
alloy-op-hardforks = "0.2.2"
op-alloy-rpc-types = { version = "0.18.6", default-features = false }
op-alloy-rpc-types-engine = { version = "0.18.6", default-features = false }
op-alloy-network = { version = "0.18.6", default-features = false }
op-alloy-consensus = { version = "0.18.6", default-features = false }
op-alloy-rpc-jsonrpsee = { version = "0.18.6", default-features = false }
alloy-op-evm = { version = "0.27.2", default-features = false }
alloy-op-hardforks = "0.4.4"
op-alloy-rpc-types = { version = "0.23.1", default-features = false }
op-alloy-rpc-types-engine = { version = "0.23.1", default-features = false }
op-alloy-network = { version = "0.23.1", default-features = false }
op-alloy-consensus = { version = "0.23.1", default-features = false }
op-alloy-rpc-jsonrpsee = { version = "0.23.1", default-features = false }
op-alloy-flz = { version = "0.13.1", default-features = false }
# misc
either = { version = "1.15.0", default-features = false }
arrayvec = { version = "0.7.6", default-features = false }
aquamarine = "0.6"
auto_impl = "1"
backon = { version = "1.2", default-features = false, features = ["std-blocking-sleep", "tokio-sleep"] }
backon = { version = "1.2", default-features = false, features = [
"std-blocking-sleep",
"tokio-sleep",
] }
bincode = "1.3"
bitflags = "2.4"
blake3 = "1.5.5"
boyer-moore-magiclen = "0.2.16"
bytes = { version = "1.5", default-features = false }
bytes = { version = "1.11.1", default-features = false }
brotli = "8"
cfg-if = "1.0"
clap = "4"
color-eyre = "0.6"
dashmap = "6.0"
derive_more = { version = "2", default-features = false, features = ["full"] }
dirs-next = "2.0.0"
dyn-clone = "1.0.17"
eyre = "0.6"
fdlimit = "0.3.0"
generic-array = "0.14"
fixed-map = { version = "0.9", default-features = false }
humantime = "2.1"
humantime-serde = "1.1"
itertools = { version = "0.14", default-features = false }
linked_hash_set = "0.1"
lz4 = "1.28.1"
modular-bitfield = "0.11.2"
notify = { version = "8.0.0", default-features = false, features = ["macos_fsevent"] }
nybbles = { version = "0.4.0", default-features = false }
once_cell = { version = "1.19", default-features = false, features = ["critical-section"] }
modular-bitfield = "0.13.1"
notify = { version = "8.0.0", default-features = false, features = [
"macos_fsevent",
] }
nybbles = { version = "0.4.8", default-features = false }
once_cell = { version = "1.19", default-features = false, features = [
"critical-section",
] }
parking_lot = "0.12"
paste = "1.0"
rand = "0.9"
@@ -552,27 +558,32 @@ serde_json = { version = "1.0", default-features = false, features = ["alloc"] }
serde_with = { version = "3", default-features = false, features = ["macros"] }
sha2 = { version = "0.10", default-features = false }
shellexpand = "3.0.0"
shlex = "1.3"
smallvec = "1"
strum = { version = "0.27", default-features = false }
strum_macros = "0.27"
syn = "2.0"
thiserror = { version = "2.0.0", default-features = false }
tar = "0.4.44"
tracing = { version = "0.1.0", default-features = false }
tracing = { version = "0.1.0", default-features = false, features = [
"attributes",
] }
tracing-appender = "0.2"
url = { version = "2.3", default-features = false }
zstd = "0.13"
byteorder = "1"
mini-moka = "0.10"
tar-no-std = { version = "0.3.2", default-features = false }
miniz_oxide = { version = "0.8.4", default-features = false }
fixed-cache = { version = "0.1.7", features = ["stats"] }
moka = "0.12"
tar-no-std = { version = "0.4.2", default-features = false }
miniz_oxide = { version = "0.9.0", default-features = false }
chrono = "0.4.41"
# metrics
metrics = "0.24.0"
metrics-derive = "0.1"
metrics-exporter-prometheus = { version = "0.16.0", default-features = false }
metrics-derive = "0.1.1"
metrics-exporter-prometheus = { version = "0.18.0", default-features = false }
metrics-process = "2.1.0"
metrics-util = { default-features = false, version = "0.19.0" }
metrics-util = { default-features = false, version = "0.20.0" }
# proc-macros
proc-macro2 = "1.0"
@@ -581,9 +592,11 @@ quote = "1.0"
# tokio
tokio = { version = "1.44.2", default-features = false }
tokio-stream = "0.1.11"
tokio-tungstenite = "0.28.0"
tokio-util = { version = "0.7.4", features = ["codec"] }
# async
async-compression = { version = "0.4", default-features = false }
async-stream = "0.3"
async-trait = "0.1.68"
futures = "0.3"
@@ -592,82 +605,96 @@ futures-util = { version = "0.3", default-features = false }
hyper = "1.3"
hyper-util = "0.1.5"
pin-project = "1.0.12"
reqwest = { version = "0.12", default-features = false }
reqwest = { version = "0.12", default-features = false, features = [
"rustls-tls",
"rustls-tls-native-roots",
"stream",
] }
tracing-futures = "0.2"
tower = "0.5"
tower-http = "0.6"
# p2p
discv5 = "0.9"
if-addrs = "0.13"
discv5 = "0.10"
if-addrs = "0.14"
# rpc
jsonrpsee = "0.25.1"
jsonrpsee-core = "0.25.1"
jsonrpsee-server = "0.25.1"
jsonrpsee-http-client = "0.25.1"
jsonrpsee-types = "0.25.1"
jsonrpsee = "0.26.0"
jsonrpsee-core = "0.26.0"
jsonrpsee-server = "0.26.0"
jsonrpsee-http-client = "0.26.0"
jsonrpsee-types = "0.26.0"
# http
http = "1.0"
http-body = "1.0"
http-body-util = "0.1.2"
jsonwebtoken = "9"
proptest-arbitrary-interop = "0.1.0"
# crypto
enr = { version = "0.13", default-features = false }
k256 = { version = "0.13", default-features = false, features = ["ecdsa"] }
secp256k1 = { version = "0.30", default-features = false, features = ["global-context", "recovery"] }
secp256k1 = { version = "0.30", default-features = false, features = [
"global-context",
"recovery",
] }
# rand 8 for secp256k1
rand_08 = { package = "rand", version = "0.8" }
# for eip-4844
c-kzg = "2.1.1"
c-kzg = "2.1.5"
# config
toml = "0.8"
toml = "0.9"
# rocksdb
rocksdb = { version = "0.24" }
# otlp obs
opentelemetry_sdk = "0.31"
opentelemetry = "0.31"
opentelemetry-otlp = "0.31"
opentelemetry-semantic-conventions = "0.31"
opentelemetry-appender-tracing = "0.31"
tracing-opentelemetry = "0.32"
# misc-testing
arbitrary = "1.3"
assert_matches = "1.5.0"
criterion = { package = "codspeed-criterion-compat", version = "2.7" }
criterion = { package = "codspeed-criterion-compat", version = "4.3" }
insta = "1.41"
proptest = "1.7"
proptest-derive = "0.5"
proptest-derive = "0.7"
similar-asserts = { version = "1.5.0", features = ["serde"] }
tempfile = "3.20"
test-fuzz = "7"
rstest = "0.24.0"
rstest = "0.26.1"
test-case = "3"
# ssz encoding
ethereum_ssz = "0.9.0"
ethereum_ssz_derive = "0.9.0"
ethereum_ssz = "0.10.1"
ethereum_ssz_derive = "0.10.1"
# allocators
jemalloc_pprof = { version = "0.8", default-features = false }
tikv-jemalloc-ctl = "0.6"
tikv-jemallocator = "0.6"
tracy-client = "0.18.0"
snmalloc-rs = { version = "0.3.7", features = ["build_cc"] }
# TODO: When we build for a windows target on an ubuntu runner, crunchy tries to
# get the wrong path, update this when the workflow has been updated
#
# See: https://github.com/eira-fransham/crunchy/issues/13
crunchy = "=0.2.2"
aes = "0.8.1"
ahash = "0.8"
anyhow = "1.0"
bindgen = { version = "0.70", default-features = false }
block-padding = "0.3.2"
cc = "=1.2.15"
bindgen = { version = "0.72", default-features = false }
block-padding = "0.3"
cc = "1.2.15"
cipher = "0.4.3"
comfy-table = "7.0"
concat-kdf = "0.1.0"
convert_case = "0.7.0"
crossbeam-channel = "0.5.13"
crossterm = "0.28.0"
crossterm = "0.29.0"
csv = "1.3.0"
ctrlc = "3.4"
ctr = "0.9.2"
data-encoding = "2"
delegate = "0.13"
@@ -678,7 +705,7 @@ hmac = "0.12.1"
human_bytes = "0.4.1"
indexmap = "2"
interprocess = "2.2.0"
lz4_flex = { version = "0.11", default-features = false }
lz4_flex = { version = "0.12", default-features = false }
memmap2 = "0.9.4"
mev-share-sse = { version = "0.5.0", default-features = false }
num-traits = "0.2.15"
@@ -686,53 +713,58 @@ page_size = "0.6.0"
parity-scale-codec = "3.2.1"
plain_hasher = "0.2"
pretty_assertions = "1.4"
ratatui = { version = "0.29", default-features = false }
ringbuffer = "0.15.0"
ratatui = { version = "0.30", default-features = false }
ringbuffer = "0.16.0"
rmp-serde = "1.3"
roaring = "0.10.2"
roaring = "0.11.3"
rolling-file = "0.2.0"
sha3 = "0.10.5"
snap = "1.1.1"
socket2 = { version = "0.5", default-features = false }
sysinfo = { version = "0.33", default-features = false }
socket2 = { version = "0.6", default-features = false }
sysinfo = { version = "0.38", default-features = false }
tracing-journald = "0.3"
tracing-logfmt = "0.3.3"
tracing-logfmt = "=0.3.5"
tracing-samply = "0.1"
tracing-subscriber = { version = "0.3", default-features = false }
tracing-tracy = "0.11"
triehash = "0.8"
typenum = "1.15.0"
vergen = "9.0.4"
vergen = "9.1.0"
visibility = "0.1.1"
walkdir = "2.3.3"
vergen-git2 = "1.0.5"
vergen-git2 = "9.1.0"
# networking
ipnet = "2.11"
[patch.crates-io]
alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-contract = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016ed950b6e65f810fc9cdef7cf38fbc63f6" }
# alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-contract = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "3049f232fbb44d1909883e154eb38ec5962f53a3" }
# op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "a79d6fc" }
# op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "a79d6fc" }
@@ -747,3 +779,11 @@ alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "08fa016
# jsonrpsee-server = { git = "https://github.com/paradigmxyz/jsonrpsee", branch = "matt/make-rpc-service-pub" }
# jsonrpsee-http-client = { git = "https://github.com/paradigmxyz/jsonrpsee", branch = "matt/make-rpc-service-pub" }
# jsonrpsee-types = { git = "https://github.com/paradigmxyz/jsonrpsee", branch = "matt/make-rpc-service-pub" }
# alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "df124c0" }
# alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "df124c0" }
# revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "3020ea8" }
# alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "072c248" }
# alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "072c248" }

View File

@@ -15,15 +15,6 @@ pre-build = [
"apt-get update && apt-get install --assume-yes --no-install-recommends llvm-dev libclang-dev clang",
]
[target.x86_64-pc-windows-gnu]
# Why do we need a custom Dockerfile on Windows:
# 1. `reth-libmdbx` stopped working with MinGW 9.3 that cross image comes with.
# 2. To be able to update the version of MinGW, we need to also update the Ubuntu that the image is based on.
#
# Also see https://github.com/cross-rs/cross/issues/1667
# Inspired by https://github.com/cross-rs/cross/blob/9e2298e17170655342d3248a9c8ac37ef92ba38f/docker/Dockerfile.x86_64-pc-windows-gnu#L51
dockerfile = "./Dockerfile.x86_64-pc-windows-gnu"
[target.riscv64gc-unknown-linux-gnu]
image = "ubuntu:24.04"
pre-build = [

Some files were not shown because too many files have changed in this diff Show More