Releases: lambdaclass/ethrex
ethrex: v8.0.0
Highlights
Simplified Store API
Streamlined the storage backend interface, making it much easier and faster to add new store engine implementations.
Performance
Added parallelized account state merkleization to improve throughput in multi-core setups. We also exploited the fact that many transaction calls execute the same contract code, by adding a dedicated bytecode cache.
On the discovery side, we added discv4 ENR support to filter peers during discovery, allowing for lower resource usage, with improved peer discovery rate. Big thanks to our external contributors for driving this!
Metrics
We've been working on improving operator visibility by adding RPC error rate metrics and expanding peer/network ones both with dedicated rows and panels in Grafana. So networking health is easier to monitor. For more information about the latest state of our dashboards please take a look here.
UX
We added stronger startup checks around database compatibility to make sure we have a way to tell when a re-sync is needed. In addition, the client now warns if CL messages stop arriving for a while and a periodic check for newer releases was added to make staying up to date more straightforward.
Shared Bridge
Ethrex L2s can now participate in permissioned shared bridges and move interact between other ethrex L2s. See the official docs to learn more about this new feature https://docs.ethrex.xyz/l2/fundamentals/shared_bridge.html
ZisK and OpenVM as L1 Proving Backends
Ethrex now supports ZisK and OpenVM backends for proving L1 blocks.
Changelog
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
9feefd2- compress some tables (PR #5323 by @iovoid):compress some tables (#5323)
-
due to
e08d7e4- shared bridge (PR #5192 by @avilagaston9):shared bridge (#5192)
-
due to
fa6dbc5- fail opening DB without schema version (PR #5597 by @MegaRedHand):fail opening DB without schema version (#5597)
✨ New Features
2e98c07- l1: change folder for dev mode db (PR #5363 by @fedacking)da11206- l2: add optional--abiflag for contracts compilation (PR #5371 by @ilitteri)6ef14c8- l1: code cache rocksdb (PR #5307 by @pablodeymo)fa3a298- l1: add rpc error rates to metrics and panels (PR #5335 by @rodrigo-o)↘️ addresses issue #5379 opened by @rodrigo-o
d4f04f1- l1: log warning if no CL messages are received in a while (PR #5256 by @SDartayet)↘️ addresses issue #5234 opened by @MegaRedHand
7d7a6bb- l1: add target and script to run multiple benchmark runs (PR #5368 by @MegaRedHand)c68e76d- l2: add ZisK backend (PR #5392 by @xqft)d7470b7- l2: add helper functions for l2 eth client (PR #5433 by @tomip01)3f0bf4f- l2: prover backend for OpenVM (PR #5412 by @xqft)3fb2e90- l2: accelerate deployer (PR #5394 by @avilagaston9)badb617- l1,l2: allow eip 7702 on generic transactions (PR #5460 by @tomip01)0c0759e- l2: add timed prover API (PR #5478 by @ilitteri)57c98c8- l1: handle parallel merkleization edge case (PR #5389 by @MegaRedHand)↘️ addresses issue #5387 opened by @MegaRedHand
e48b55c- l1: cache block hash lookup for BLOCKHASH opcode (PR #5434 by @fmoletta)70463a1- l1: periodically fetch node records from peers. (PR #5446 by @lakshya-sky)bb1eb9e- l1: add "eth" entry to local ENR (PR #5453 by @lakshya-sky)↘️ addresses issue #5066 opened by @MegaRedHand
9feefd2- l1: compress some tables (PR #5323 by @iovoid)e08d7e4- l2: shared bridge (PR #5192 by @avilagaston9)6be9a43- l1: periodically check if there is a newer release available (PR #5322 by @fmoletta)7ec096e- l1: exposing peer related metrics + panel dashboards (PR #5520 by @rodrigo-o)4a3f3cf- l1: enr fork id filtering (PR #5500 by @edg-l)↘️ addresses issue #5506 opened by @ElFantasma
f450b6e- l1: check DB version compatibility upon startup (PR #5330 by @fmoletta)df6595b- l1: pinexecution-apisversion when runningrpc-compathive suite in Makefile targets (PR #5463 by @fmoletta)78a5d85- l1: detect and update stale enr on ping pong (PR #5507 by @lakshya-sky)↘️ addresses issue #5488 opened by @MegaRedHand
24d4b64- l2: add optimize option to sdk compile contract (PR #5544 by @tomip01)aa566b3- l1, l2: new database interface (PR #4623 by @damiramirez)fa6dbc5- l1: fail opening DB without schema version (PR #5597 by @MegaRedHand)↘️ addresses issue #5541 opened by @MegaRedHand
🐛 Bug Fixes
ba5b565- l1: make from and to optional ineth_getLogs(PR #5361 by @MegaRedHand)↘️ fixes issue #5360 opened by @ManuelBilbao
76434f3- l1, l2: fix mdbook workflow (PR #5386 by @jrchatruc)11e1072- l1: remove deprecated lighthouse flag (PR #5332 by @fmoletta)f505c00- l1: wait before retring on error in dev's block producer (PR #5391 by @ManuelBilbao)16192b4- l1: handle missing payloads in engine_getPayloadBodiesByRange (PR #5408 by @MegaRedHand)↘️ fixes issue #5403 opened by @rodrigo-o
dc83c60- l1,l2: fix encoding of nodes in witness (PR #5421 by @JereSalo)647e76f- l1: fix P256 precompile name in eth_config response (PR #5418 by @SDartayet)0773636- l2: replace ticker with sleep in dev-mode block producer (PR #5429 by @avilagaston9)44b34c8- l2: fix ZisK install (PR #5430 by @xqft)0ef3272- l1: avoid blocking during fullsync (PR #5445 by @iovoid)b67d7b2- l1: use correct block_num for base_fee in gas_tip_estimator (PR #5444 by @figtracer)- [
e5d1bd6](https://github.com/lambdaclass/ethrex/comm...
ethrex: v8.0.0-rc.2
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
9feefd2- compress some tables (PR #5323 by @iovoid):compress some tables (#5323)
-
due to
e08d7e4- shared bridge (PR #5192 by @avilagaston9):shared bridge (#5192)
-
due to
fa6dbc5- fail opening DB without schema version (PR #5597 by @MegaRedHand):fail opening DB without schema version (#5597)
✨ New Features
2e98c07- l1: change folder for dev mode db (PR #5363 by @fedacking)da11206- l2: add optional--abiflag for contracts compilation (PR #5371 by @ilitteri)6ef14c8- l1: code cache rocksdb (PR #5307 by @pablodeymo)fa3a298- l1: add rpc error rates to metrics and panels (PR #5335 by @rodrigo-o)↘️ addresses issue #5379 opened by @rodrigo-o
d4f04f1- l1: log warning if no CL messages are received in a while (PR #5256 by @SDartayet)↘️ addresses issue #5234 opened by @MegaRedHand
7d7a6bb- l1: add target and script to run multiple benchmark runs (PR #5368 by @MegaRedHand)c68e76d- l2: add ZisK backend (PR #5392 by @xqft)d7470b7- l2: add helper functions for l2 eth client (PR #5433 by @tomip01)3f0bf4f- l2: prover backend for OpenVM (PR #5412 by @xqft)3fb2e90- l2: accelerate deployer (PR #5394 by @avilagaston9)badb617- l1,l2: allow eip 7702 on generic transactions (PR #5460 by @tomip01)0c0759e- l2: add timed prover API (PR #5478 by @ilitteri)57c98c8- l1: handle parallel merkleization edge case (PR #5389 by @MegaRedHand)↘️ addresses issue #5387 opened by @MegaRedHand
e48b55c- l1: cache block hash lookup for BLOCKHASH opcode (PR #5434 by @fmoletta)70463a1- l1: periodically fetch node records from peers. (PR #5446 by @lakshya-sky)bb1eb9e- l1: add "eth" entry to local ENR (PR #5453 by @lakshya-sky)↘️ addresses issue #5066 opened by @MegaRedHand
9feefd2- l1: compress some tables (PR #5323 by @iovoid)e08d7e4- l2: shared bridge (PR #5192 by @avilagaston9)6be9a43- l1: periodically check if there is a newer release available (PR #5322 by @fmoletta)7ec096e- l1: exposing peer related metrics + panel dashboards (PR #5520 by @rodrigo-o)4a3f3cf- l1: enr fork id filtering (PR #5500 by @edg-l)↘️ addresses issue #5506 opened by @ElFantasma
f450b6e- l1: check DB version compatibility upon startup (PR #5330 by @fmoletta)df6595b- l1: pinexecution-apisversion when runningrpc-compathive suite in Makefile targets (PR #5463 by @fmoletta)78a5d85- l1: detect and update stale enr on ping pong (PR #5507 by @lakshya-sky)↘️ addresses issue #5488 opened by @MegaRedHand
24d4b64- l2: add optimize option to sdk compile contract (PR #5544 by @tomip01)aa566b3- l1, l2: new database interface (PR #4623 by @damiramirez)fa6dbc5- l1: fail opening DB without schema version (PR #5597 by @MegaRedHand)↘️ addresses issue #5541 opened by @MegaRedHand
🐛 Bug Fixes
ba5b565- l1: make from and to optional ineth_getLogs(PR #5361 by @MegaRedHand)↘️ fixes issue #5360 opened by @ManuelBilbao
76434f3- l1, l2: fix mdbook workflow (PR #5386 by @jrchatruc)11e1072- l1: remove deprecated lighthouse flag (PR #5332 by @fmoletta)f505c00- l1: wait before retring on error in dev's block producer (PR #5391 by @ManuelBilbao)16192b4- l1: handle missing payloads in engine_getPayloadBodiesByRange (PR #5408 by @MegaRedHand)↘️ fixes issue #5403 opened by @rodrigo-o
dc83c60- l1,l2: fix encoding of nodes in witness (PR #5421 by @JereSalo)647e76f- l1: fix P256 precompile name in eth_config response (PR #5418 by @SDartayet)0773636- l2: replace ticker with sleep in dev-mode block producer (PR #5429 by @avilagaston9)44b34c8- l2: fix ZisK install (PR #5430 by @xqft)0ef3272- l1: avoid blocking during fullsync (PR #5445 by @iovoid)b67d7b2- l1: use correct block_num for base_fee in gas_tip_estimator (PR #5444 by @figtracer)e5d1bd6- l1: show proper exported number of blocks (PR #5448 by @fedacking)c00b76c- l1: validate pivot block body during snap sync (PR #5451 by @MegaRedHand)7a0ede3- l2: fix OpenVM release workflow (PR #5461 by @xqft)1bebff3- l1: revert "refactor chainconfig (#5233)" (PR #5464 by @fmoletta)2c81438- l1: sending ping to each neighbor found (PR #5481 by @ElFantasma)↘️ fixes issue #5480 opened by @lakshya-sky
f07b2b3- l1: record new inbound peers as new discoveries (PR #5498 by @MegaRedHand)610df53- l1: reduce spammy trace-level logs during snap-sync (PR #5492 by @MegaRedHand)2e644ab- l1: preventing invalid contact errors from propagating on ENRRequest handling (PR #5496 by @ElFantasma)7722c65- l1: improve import benchmark (PR #5525 by @MegaRedHand)bce7bb1- l1: properly set p2p flag as disa...
ethrex: v8.0.0-rc.1
Installation and running instructions can be found in our docs
✨ New Features
2e98c07- l1: change folder for dev mode db (PR #5363 by @fedacking)da11206- l2: add optional--abiflag for contracts compilation (PR #5371 by @ilitteri)6ef14c8- l1: code cache rocksdb (PR #5307 by @pablodeymo)fa3a298- l1: add rpc error rates to metrics and panels (PR #5335 by @rodrigo-o)↘️ addresses issue #5379 opened by @rodrigo-o
d4f04f1- l1: log warning if no CL messages are received in a while (PR #5256 by @SDartayet)↘️ addresses issue #5234 opened by @MegaRedHand
7d7a6bb- l1: add target and script to run multiple benchmark runs (PR #5368 by @MegaRedHand)c68e76d- l2: add ZisK backend (PR #5392 by @xqft)d7470b7- l2: add helper functions for l2 eth client (PR #5433 by @tomip01)3f0bf4f- l2: prover backend for OpenVM (PR #5412 by @xqft)3fb2e90- l2: accelerate deployer (PR #5394 by @avilagaston9)badb617- l1,l2: allow eip 7702 on generic transactions (PR #5460 by @tomip01)0c0759e- l2: add timed prover API (PR #5478 by @ilitteri)57c98c8- l1: handle parallel merkleization edge case (PR #5389 by @MegaRedHand)↘️ addresses issue #5387 opened by @MegaRedHand
e48b55c- l1: cache block hash lookup for BLOCKHASH opcode (PR #5434 by @fmoletta)70463a1- l1: periodically fetch node records from peers. (PR #5446 by @lakshya-sky)bb1eb9e- l1: add "eth" entry to local ENR (PR #5453 by @lakshya-sky)↘️ addresses issue #5066 opened by @MegaRedHand
🐛 Bug Fixes
ba5b565- l1: make from and to optional ineth_getLogs(PR #5361 by @MegaRedHand)↘️ fixes issue #5360 opened by @ManuelBilbao
76434f3- l1, l2: fix mdbook workflow (PR #5386 by @jrchatruc)11e1072- l1: remove deprecated lighthouse flag (PR #5332 by @fmoletta)f505c00- l1: wait before retring on error in dev's block producer (PR #5391 by @ManuelBilbao)16192b4- l1: handle missing payloads in engine_getPayloadBodiesByRange (PR #5408 by @MegaRedHand)↘️ fixes issue #5403 opened by @rodrigo-o
dc83c60- l1,l2: fix encoding of nodes in witness (PR #5421 by @JereSalo)647e76f- l1: fix P256 precompile name in eth_config response (PR #5418 by @SDartayet)0773636- l2: replace ticker with sleep in dev-mode block producer (PR #5429 by @avilagaston9)44b34c8- l2: fix ZisK install (PR #5430 by @xqft)0ef3272- l1: avoid blocking during fullsync (PR #5445 by @iovoid)b67d7b2- l1: use correct block_num for base_fee in gas_tip_estimator (PR #5444 by @figtracer)e5d1bd6- l1: show proper exported number of blocks (PR #5448 by @fedacking)c00b76c- l1: validate pivot block body during snap sync (PR #5451 by @MegaRedHand)7a0ede3- l2: fix OpenVM release workflow (PR #5461 by @xqft)1bebff3- l1: revert "refactor chainconfig (#5233)" (PR #5464 by @fmoletta)2c81438- l1: sending ping to each neighbor found (PR #5481 by @ElFantasma)↘️ fixes issue #5480 opened by @lakshya-sky
⚡ Performance Improvements
06dc722- l1: avoid temporary allocations when decoding and hashing trie nodes (PR #5353 by @MegaRedHand)d3c0d11- l1,l2: parallel merkleization (top-down 16-ways) (PR #5377 by @Oppen)3e4d1e8- l1: improve rlp encoding (PR #5350 by @edg-l)fcbbbb3- l1: change encode_to_vec().len() -> length(), avoiding encoding to calc rlp length (PR #5374 by @edg-l)46096d1- l1: use our keccak implementation for receipt blooms (PR #5454 by @MegaRedHand)80ea03f- levm: use unchecked swap (PR #5439 by @iovoid)1e75cb0- l1,l2: avoid unnecessary code hashing (PR #5397 by @Oppen)
♻️ Refactors
926247b- l2: decouple guest program IO (PR #5314 by @ilitteri)c9fd96e- levm: remove unused variants from enum (PR #5427 by @iovoid)c7ec3b3- l1: refactor chainconfig (PR #5233 by @SDartayet)↘️ addresses issue #4720 opened by @SDartayet
f2b2006- l1: make improvements to public functions used by ethrex_replay (PR #5416 by @JereSalo)8fb4b27- l1: avoid recovering sender two times when txs are received (PR #5419 by @MegaRedHand)e982a7d- l2: improve SQL store initialization (PR #5479 by @ManuelBilbao)5dd2805- l1,l2,levm: remove dead code (PR #5452 by @iovoid)
✅ Tests
d69bedc- l1: verify we reject invalid iat claims. (PR #5245 by @lakshya-sky)↘️ addresses issue #5074 opened by @MegaRedHand
🔧 Chores
ab151d2- l2: implement rkyv traits forNode, serialize them directly into the prover guest program instead of its RLP encoding (PR #5224 by @xqft)a3f90a9- l1, l2: bump version for release 7.0.0 (PR #5313 by @lferrigno)1be3fe7- l2: add help for tdx failure jobs (PR #5367 by @tomip01)82d4ead- l1: remove unnecesary tx log. (PR #5381 by @mpaulucci)- [
7559ed1](https://git...
ethrex: v7.0.0
Aside from bug fixes and general QoL updates, this release introduces an array of new performance improvements, netting an increase of around 60% in execution throughput. Improvements range from optimizing vm opcodes to merkelization, better database options, and taking advantage of appropriate SIMD instruction sets on processors that support them.
NOTE: upgrading to this release requires resyncing.
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
8089824- fix jumpdests for large initcodes (PR #5254 by @iovoid):fix jumpdests for large initcodes (#5254)
-
due to
120e1c7- separate Account and storage Column families (PR #5055 by @Arkenan):separate Account and storage Column families (#5055)
-
due to
27be096- enable BlobDB for account bytecodes (PR #5300 by @MegaRedHand):enable BlobDB for account bytecodes (#5300)
✨ New Features
6e40a72- l1: omit copying bytes when encoding transactions (PR #5137 by @fmoletta)81a0cf3- l1: admin_addPeer endpoint (PR #5004 by @cdiielsi)4d99b56- l1,l2: setting avx2 flags for compilation and adding features asm to crates (PR #5189 by @pablodeymo)001e9a4- l1: named block_executor thread and subthreads (PR #5211 by @ElFantasma)3ab8004- l1: useadd_blocks_in_batchwhen importing blocks (PR #5204 by @fmoletta)↘️ addresses issue #5172 opened by @fedacking
5bbfc65- l1: upgrade execution breakdown pie chart and add new panels (PR #5220 by @rodrigo-o)↘️ addresses issue #5218 opened by @rodrigo-o
ce98532- l1,l2: name rayon threads for easier debugging (PR #5269 by @Oppen)f27da23- l1: add import-bench command for benchmarking block importing (PR #5215 by @fedacking)258982f- l2: revert current native token feature (PR #5008 by @tomip01)665a5da- l1: improve block execution aggregation logs (PR #5260 by @MegaRedHand)6fbd93b- l2: commit blocks instead of state diffs (PR #5135 by @avilagaston9)ff1442f- l1,l2: make tuple encoders single-pass to avoid double-encoding (PR #5319 by @VolodymyrBg)cea9f0c- l2: allow paying fees with custom token (PR #5024 by @tomip01)f1cfdf8- l2: add serde to AuthorizationTuple fields (PR #5339 by @damiramirez)9fc41e7- l1: rpc instrumentation and panels (PR #5311 by @rodrigo-o)4657f36- l1: add CLI flag to specify P2P listening address (PR #5297 by @MegaRedHand)
🐛 Bug Fixes
a9cd9b7- l2: setpendingPrivilegedTxIndexin initializer (PR #5161 by @ManuelBilbao)271e68a- l1, l2: tuning parameters of qfilter (PR #5166 by @pablodeymo)5b1c859- l1: unifiyfake_exponentialto a single U256 function (PR #5107 by @fedacking)5ffbd3f- l1: headers snapsync logs (PR #5082 by @fedacking)80aaef8- l1: fix queue length log (PR #5197 by @iovoid)11fe1c1- l1: have block execution stop when block's gas limit is surpassed by executing a transaction (PR #5185 by @cdiielsi)d413c55- l1: always use fullsync if db had data (PR #5196 by @fedacking)1d36a0b- l1: rlp decode impls for low size transactions (PR #5139 by @fmoletta)d280e5b- l1: fix breakdown pie chart (PR #5202 by @rodrigo-o)583914c- l1: resetctrvariable to 0 once committed (PR #5214 by @MegaRedHand)16b4297- l1: validate incoming pooled tx blobs (PR #4963 by @fmoletta)↘️ fixes issue #3745 opened by @MegaRedHand
a891b78- l2: peer table duplication (PR #5227 by @cdiielsi)f0922a0- l1: make function inner for InMemoryTrieDB (PR #5199 by @JereSalo)a6c7501- l1,l2: temporary fix for risc0 ecmul precompile (PR #5240 by @JereSalo)45a9871- l1: build initial empty block in block building (PR #5205 by @SDartayet)↘️ fixes issue #4997 opened by @MegaRedHand
47e286a- l1: revert build initial empty block in block building (#5205) (PR #5257 by @SDartayet)80be189- l1,l2: fix occasional error withdebug_executionWitness(PR #5212 by @JereSalo)fe53dcb- l2: shutdown node with ctrl+c (PR #5208 by @tomip01)8089824- levm: fix jumpdests for large initcodes (PR #5254 by @iovoid)4184393- l1,l2: make ethrex L1 + L2 + GPU build compile for ubuntu 22.04 (PR #5276 by @ilitteri)5a75700- l2: monitor does not ask for peers when node is not based (PR #5279 by @tomip01)f4905c2- l1,l2: build on ARM Linux (PR #5285 by @Oppen)cbb1fe5- l2: handle better when producing an empty batch (PR #5293 by @tomip01)e7f1385- l2: revert breaking when budget is reached for privileged txs (PR #5326 by @gianbelinche)9846e60- l1: fixed error message for gas limit (PR #5320 by @fedacking)43e64eb- l1: sleep between FCU and getPayload calls in dev-mode block producer (PR #5310 by @MegaRedHand)47a30fe- l1: do not usesecp256k1SP1 patch for the workspace (PR #5338 by @ilitteri)6e0cacd- l2: increase wake up time committer (PR #5341 by @tomip01)9143626- l2: increase L1 tx receipt retrieve retries (PR #5356 by @ilitteri)8825ef3- l2: checkpoint creation (PR #5321 by @avilagaston9)
⚡ Performance Improvements
...
ethrex: v7.0.0-rc.3
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
8089824- fix jumpdests for large initcodes (PR #5254 by @iovoid):fix jumpdests for large initcodes (#5254)
-
due to
120e1c7- separate Account and storage Column families (PR #5055 by @Arkenan):separate Account and storage Column families (#5055)
✨ New Features
6e40a72- l1: omit copying bytes when encoding transactions (PR #5137 by @fmoletta)81a0cf3- l1: admin_addPeer endpoint (PR #5004 by @cdiielsi)4d99b56- l1,l2: setting avx2 flags for compilation and adding features asm to crates (PR #5189 by @pablodeymo)001e9a4- l1: named block_executor thread and subthreads (PR #5211 by @ElFantasma)3ab8004- l1: useadd_blocks_in_batchwhen importing blocks (PR #5204 by @fmoletta)↘️ addresses issue #5172 opened by @fedacking
5bbfc65- l1: upgrade execution breakdown pie chart and add new panels (PR #5220 by @rodrigo-o)↘️ addresses issue #5218 opened by @rodrigo-o
ce98532- l1,l2: name rayon threads for easier debugging (PR #5269 by @Oppen)f27da23- l1: add import-bench command for benchmarking block importing (PR #5215 by @fedacking)258982f- l2: revert current native token feature (PR #5008 by @tomip01)665a5da- l1: improve block execution aggregation logs (PR #5260 by @MegaRedHand)6fbd93b- l2: commit blocks instead of state diffs (PR #5135 by @avilagaston9)
🐛 Bug Fixes
a9cd9b7- l2: setpendingPrivilegedTxIndexin initializer (PR #5161 by @ManuelBilbao)271e68a- l1, l2: tuning parameters of qfilter (PR #5166 by @pablodeymo)5b1c859- l1: unifiyfake_exponentialto a single U256 function (PR #5107 by @fedacking)5ffbd3f- l1: headers snapsync logs (PR #5082 by @fedacking)80aaef8- l1: fix queue length log (PR #5197 by @iovoid)11fe1c1- l1: have block execution stop when block's gas limit is surpassed by executing a transaction (PR #5185 by @cdiielsi)d413c55- l1: always use fullsync if db had data (PR #5196 by @fedacking)1d36a0b- l1: rlp decode impls for low size transactions (PR #5139 by @fmoletta)d280e5b- l1: fix breakdown pie chart (PR #5202 by @rodrigo-o)583914c- l1: resetctrvariable to 0 once committed (PR #5214 by @MegaRedHand)16b4297- l1: validate incoming pooled tx blobs (PR #4963 by @fmoletta)↘️ fixes issue #3745 opened by @MegaRedHand
a891b78- l2: peer table duplication (PR #5227 by @cdiielsi)f0922a0- l1: make function inner for InMemoryTrieDB (PR #5199 by @JereSalo)a6c7501- l1,l2: temporary fix for risc0 ecmul precompile (PR #5240 by @JereSalo)45a9871- l1: build initial empty block in block building (PR #5205 by @SDartayet)↘️ fixes issue #4997 opened by @MegaRedHand
47e286a- l1: revert build initial empty block in block building (#5205) (PR #5257 by @SDartayet)80be189- l1,l2: fix occasional error withdebug_executionWitness(PR #5212 by @JereSalo)fe53dcb- l2: shutdown node with ctrl+c (PR #5208 by @tomip01)8089824- levm: fix jumpdests for large initcodes (PR #5254 by @iovoid)4184393- l1,l2: make ethrex L1 + L2 + GPU build compile for ubuntu 22.04 (PR #5276 by @ilitteri)5a75700- l2: monitor does not ask for peers when node is not based (PR #5279 by @tomip01)f4905c2- l1,l2: build on ARM Linux (PR #5285 by @Oppen)cbb1fe5- l2: handle better when producing an empty batch (PR #5293 by @tomip01)
⚡ Performance Improvements
1130d27- l1: avoid opening tries (PR #5145 by @iovoid)9e37483- l1: validate receipts in the same thread as the execution (PR #5170 by @iovoid)05211ba- l1: avoid validating node hash (PR #5167 by @iovoid)af963e8- levm: reuse stack pool (PR #5179 by @iovoid)4e239ae- l1: disable compression of database (PR #5223 by @iovoid)49d69bd- l1: batch merkelization requests if the queue is not empty (PR #5200 by @iovoid)d04bca6- levm: fixFlatKeyValuegeneration on full sync mode (PR #5274 by @azteca1998)85ef3d3- l1: use asm ffi keccak (PR #5247 by @edg-l)f5b968f- l1: rebuild_bloom - insert instead of merge (PR #5266 by @Arkenan)b31c7a4- levm: cacheBLOBBASEFEEopcode value (PR #5288 by @azteca1998)43a743f- l1: avoid copy when reading account code (PR #5289 by @iovoid)120e1c7- l1: separate Account and storage Column families (PR #5055 by @Arkenan)d9fff5e- l1: selective dirtying of trie (PR #5282 by @iovoid)
♻️ Refactors
7ff0ff2- l1: change p2p_enabled flag to p2p_disabled flag (PR #5228 by @cdiielsi)↘️ addresses issue #4979 opened by @MegaRedHand
ee07397- l1: bring all test modules in the rpc crate into a single test_util module (PR #5213 by @cdiielsi)↘️ addresses issue #5070 opened by @ElFantasma
- [
d9cd9fd](https://github.com/la...
ethrex: v7.0.0-rc.2
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
8089824- fix jumpdests for large initcodes (PR #5254 by @iovoid):fix jumpdests for large initcodes (#5254)
✨ New Features
6e40a72- l1: omit copying bytes when encoding transactions (PR #5137 by @fmoletta)81a0cf3- l1: admin_addPeer endpoint (PR #5004 by @cdiielsi)4d99b56- l1,l2: setting avx2 flags for compilation and adding features asm to crates (PR #5189 by @pablodeymo)001e9a4- l1: named block_executor thread and subthreads (PR #5211 by @ElFantasma)3ab8004- l1: useadd_blocks_in_batchwhen importing blocks (PR #5204 by @fmoletta)↘️ addresses issue #5172 opened by @fedacking
5bbfc65- l1: upgrade execution breakdown pie chart and add new panels (PR #5220 by @rodrigo-o)↘️ addresses issue #5218 opened by @rodrigo-o
ce98532- l1,l2: name rayon threads for easier debugging (PR #5269 by @Oppen)f27da23- l1: add import-bench command for benchmarking block importing (PR #5215 by @fedacking)
🐛 Bug Fixes
a9cd9b7- l2: setpendingPrivilegedTxIndexin initializer (PR #5161 by @ManuelBilbao)271e68a- l1, l2: tuning parameters of qfilter (PR #5166 by @pablodeymo)5b1c859- l1: unifiyfake_exponentialto a single U256 function (PR #5107 by @fedacking)5ffbd3f- l1: headers snapsync logs (PR #5082 by @fedacking)80aaef8- l1: fix queue length log (PR #5197 by @iovoid)11fe1c1- l1: have block execution stop when block's gas limit is surpassed by executing a transaction (PR #5185 by @cdiielsi)d413c55- l1: always use fullsync if db had data (PR #5196 by @fedacking)1d36a0b- l1: rlp decode impls for low size transactions (PR #5139 by @fmoletta)d280e5b- l1: fix breakdown pie chart (PR #5202 by @rodrigo-o)583914c- l1: resetctrvariable to 0 once committed (PR #5214 by @MegaRedHand)16b4297- l1: validate incoming pooled tx blobs (PR #4963 by @fmoletta)↘️ fixes issue #3745 opened by @MegaRedHand
a891b78- l2: peer table duplication (PR #5227 by @cdiielsi)f0922a0- l1: make function inner for InMemoryTrieDB (PR #5199 by @JereSalo)a6c7501- l1,l2: temporary fix for risc0 ecmul precompile (PR #5240 by @JereSalo)45a9871- l1: build initial empty block in block building (PR #5205 by @SDartayet)↘️ fixes issue #4997 opened by @MegaRedHand
47e286a- l1: revert build initial empty block in block building (#5205) (PR #5257 by @SDartayet)80be189- l1,l2: fix occasional error withdebug_executionWitness(PR #5212 by @JereSalo)fe53dcb- l2: shutdown node with ctrl+c (PR #5208 by @tomip01)8089824- levm: fix jumpdests for large initcodes (PR #5254 by @iovoid)4184393- l1,l2: make ethrex L1 + L2 + GPU build compile for ubuntu 22.04 (PR #5276 by @ilitteri)
⚡ Performance Improvements
1130d27- l1: avoid opening tries (PR #5145 by @iovoid)9e37483- l1: validate receipts in the same thread as the execution (PR #5170 by @iovoid)05211ba- l1: avoid validating node hash (PR #5167 by @iovoid)af963e8- levm: reuse stack pool (PR #5179 by @iovoid)4e239ae- l1: disable compression of database (PR #5223 by @iovoid)49d69bd- l1: batch merkelization requests if the queue is not empty (PR #5200 by @iovoid)d04bca6- levm: fixFlatKeyValuegeneration on full sync mode (PR #5274 by @azteca1998)
♻️ Refactors
7ff0ff2- l1: change p2p_enabled flag to p2p_disabled flag (PR #5228 by @cdiielsi)↘️ addresses issue #4979 opened by @MegaRedHand
ee07397- l1: bring all test modules in the rpc crate into a single test_util module (PR #5213 by @cdiielsi)↘️ addresses issue #5070 opened by @ElFantasma
d9cd9fd- l2: avoid peer handler logs (PR #5253 by @avilagaston9)↘️ addresses issue #5222 opened by @avilagaston9
1438c81- l1: remove unneeded clone andArc(PR #5252 by @MegaRedHand)
🔧 Chores
c5e99e0- l1: update mainnet genesis file for fusaka (PR #5162 by @mpaulucci)f86cb00- l1: mute devp2p tests until we can fix the flaky ones (PR #5171 by @fedacking)2f3a86f- l2: use SP1 patched crate for ecmul precompile (PR #5133 by @xqft)10f5a3d- l2: improve zkVM execution and proving time logs (PR #5201 by @ilitteri)4d3eb6c- l1,l2: bump version 6.0.0 (PR #5111 by @ManuelBilbao)8627e77- l1: remove unneeded clone of key in difflayers (PR #5251 by @iovoid)ec91257- l1,l2: disable printing of log tagets depending on log level (PR #5184 by @mpaulucci)6367f53- l2: optimize trie hashing andBranchNodeencoding for zkVMs (PR #4723 by @xqft)66cd9fb- l2: include zkVM ELFs and VKs in the releases (PR #5244 by @ilitteri)07692de- levm: lambdaworks update version 0.13 (PR #5206 by @pablodeymo)
ethrex: v6.0.0 - Mach 3
This release introduces major performance optimizations across the execution pipeline, delivering up to 3× faster processing under typical workloads. Improvements span database access, caching, and background execution paths, significantly reducing block execution times.
In parallel, L2 nodes now feature complete blob support under Fusaka.
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
307d0ed- allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand):allow setting a target gas limit through CLI (#4973)
-
due to
3e9705b- unify trie node encoding (PR #4995 by @iovoid):unify trie node encoding (#4995)
✨ New Features
de0802e- l1: running some GenServers in dedicated threads (PR #4925 by @ElFantasma)307d0ed- l1: allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand)↘️ addresses issue #4482 opened by @MegaRedHand
417aafc- l2: generate batch prover input at commit and store it in db (PR #5006 by @ilitteri)db38cc9- l2: implement operator fee (PR #4725 by @avilagaston9)↘️ addresses issue #4694 opened by @avilagaston9
4514172- l1,l2: add CLI option to force color output mode (PR #5034 by @ManuelBilbao)c638968- l2: implement l1 fee (PR #4781 by @avilagaston9)↘️ addresses issue #4696 opened by @avilagaston9
4df1f44- l2: aligned mode support for multiprover (PR #3429 by @xqft)556f2de- l1,l2: support fusaka blobs cell_proofs (PR #4814 by @tomip01)c04173a- l2: reject privileged transactions in p2p messages (PR #5086 by @tomip01)084c899- l1: block size limit in building (PR #4397 by @SDartayet)5bc0f9e- l1: reintroduce ecrecover implementation usingsecp256k1for L1 (PR #4924 by @ilitteri)ac17740- l1,l2: support fusaka blobs cell_proofs (PR #5121 by @ManuelBilbao)
🐛 Bug Fixes
ed4f08c- l2: regenerate head state in node initialization (PR #4968 by @ilitteri)438fe9d- l1: remove duplicate span.entered() call in apply_updates (PR #4970 by @MegaRedHand)4daa4ab- l1,l2: update binary names (PR #4980 by @ManuelBilbao)d13c5a8- l1,l2: add feature flag to decide precompute number (PR #4893 by @tomip01)516f4b2- l1: addengine_getBlobsV2to capabilities. (PR #5007 by @mpaulucci)6c39fc2- l2: update operator fee flag on makefile (PR #5029 by @tomip01)433b74f- levm: remove unneeded clone of transaction log (PR #5028 by @iovoid)3ff58e0- l1: update capabilities to include engine_getPayloadV5 (PR #5039 by @edg-l)cf9276b- l2: committer wake up delay (PR #5033 by @ManuelBilbao)c9b0005- l1: fix big account download stopping prematurely (PR #4994 by @fedacking)992bba3- l1: retry on no peers on update pivot (PR #5002 by @fedacking)07dcec0- l1: port 30303 still used after stopping the node (PR #5041 by @edg-l)↘️ fixes issue #4895 opened by @rodrigo-o
23c14ec- l1: modify Grafana dashboards so they can be filtered by instance (PR #4831 by @klaus993)3d3e2b6- l2: use checkpoints to persist previous batch state (PR #5037 by @ilitteri)a83b959- l1: stop block building preemptively (PR #4999 by @MegaRedHand)↘️ fixes issue #4992 opened by @MegaRedHand
4324c56- l1: track requested pooled transactions (PR #4962 by @fmoletta)deb26ff- l1: remove await in now sync call in levm_runner (PR #5072 by @MegaRedHand)53711cd- l2: override execution witness endpoint (PR #5063 by @avilagaston9)bcc677c- l1: fix ef_test check not compiling (PR #5078 by @edg-l)f335294- l1: fix exponential overflow in fake exponential (PR #5093 by @fedacking)37fe8e1- l1,l2: excludeethrex-l2cratemake test(PR #5100 by @ilitteri)ee97e8e- l2: remove one-time checkpoint if already exists (PR #5083 by @ilitteri)42b32e0- l2: remove one-time checkpoint if already exists (PR #5083 by @ilitteri)c228e18- l1,l2: inaccurate block execution metrics (PR #5108 by @Oppen)4ee0a46- l1: don't trigger snap sync if fcu head is already canonical (PR #4985 by @fmoletta)↘️ fixes issue #4846 opened by @mpaulucci
fb15bd9- l2: fixethrex-l2-commoncrate compilation (PR #5106 by @ilitteri)199dc90- l2: checkpoint initialization (PR #5123 by @avilagaston9)1f422e9- l1: fix illegal instructions in certain ARM processors (PR #5143 by @fedacking)b233284- l1: exit on irrecoverable error on sync (PR #5005 by @fedacking)db22fbc- l1,l2: make l2 integration tests and lint required (PR #5142 by @gianbelinche)59d2ccb- l2: save last committed batch as current checkpoint (PR #5152 by @ManuelBilbao)02c4468- l2: remove used checkpoints (PR #5120 by @gianbelinche)e8fce20- l2: setpendingPrivilegedTxIndexin initializer (PR #5161 by @ManuelBilbao)
⚡ Performance Improvements
ethrex: v6.0.0-rc.4
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
307d0ed- allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand):allow setting a target gas limit through CLI (#4973)
-
due to
3e9705b- unify trie node encoding (PR #4995 by @iovoid):unify trie node encoding (#4995)
✨ New Features
de0802e- l1: running some GenServers in dedicated threads (PR #4925 by @ElFantasma)307d0ed- l1: allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand)↘️ addresses issue #4482 opened by @MegaRedHand
417aafc- l2: generate batch prover input at commit and store it in db (PR #5006 by @ilitteri)db38cc9- l2: implement operator fee (PR #4725 by @avilagaston9)↘️ addresses issue #4694 opened by @avilagaston9
4514172- l1,l2: add CLI option to force color output mode (PR #5034 by @ManuelBilbao)c638968- l2: implement l1 fee (PR #4781 by @avilagaston9)↘️ addresses issue #4696 opened by @avilagaston9
4df1f44- l2: aligned mode support for multiprover (PR #3429 by @xqft)556f2de- l1,l2: support fusaka blobs cell_proofs (PR #4814 by @tomip01)c04173a- l2: reject privileged transactions in p2p messages (PR #5086 by @tomip01)084c899- l1: block size limit in building (PR #4397 by @SDartayet)5bc0f9e- l1: reintroduce ecrecover implementation usingsecp256k1for L1 (PR #4924 by @ilitteri)ac17740- l1,l2: support fusaka blobs cell_proofs (PR #5121 by @ManuelBilbao)
🐛 Bug Fixes
ed4f08c- l2: regenerate head state in node initialization (PR #4968 by @ilitteri)438fe9d- l1: remove duplicate span.entered() call in apply_updates (PR #4970 by @MegaRedHand)4daa4ab- l1,l2: update binary names (PR #4980 by @ManuelBilbao)d13c5a8- l1,l2: add feature flag to decide precompute number (PR #4893 by @tomip01)516f4b2- l1: addengine_getBlobsV2to capabilities. (PR #5007 by @mpaulucci)6c39fc2- l2: update operator fee flag on makefile (PR #5029 by @tomip01)433b74f- levm: remove unneeded clone of transaction log (PR #5028 by @iovoid)3ff58e0- l1: update capabilities to include engine_getPayloadV5 (PR #5039 by @edg-l)cf9276b- l2: committer wake up delay (PR #5033 by @ManuelBilbao)c9b0005- l1: fix big account download stopping prematurely (PR #4994 by @fedacking)992bba3- l1: retry on no peers on update pivot (PR #5002 by @fedacking)07dcec0- l1: port 30303 still used after stopping the node (PR #5041 by @edg-l)↘️ fixes issue #4895 opened by @rodrigo-o
23c14ec- l1: modify Grafana dashboards so they can be filtered by instance (PR #4831 by @klaus993)3d3e2b6- l2: use checkpoints to persist previous batch state (PR #5037 by @ilitteri)a83b959- l1: stop block building preemptively (PR #4999 by @MegaRedHand)↘️ fixes issue #4992 opened by @MegaRedHand
4324c56- l1: track requested pooled transactions (PR #4962 by @fmoletta)deb26ff- l1: remove await in now sync call in levm_runner (PR #5072 by @MegaRedHand)53711cd- l2: override execution witness endpoint (PR #5063 by @avilagaston9)bcc677c- l1: fix ef_test check not compiling (PR #5078 by @edg-l)f335294- l1: fix exponential overflow in fake exponential (PR #5093 by @fedacking)37fe8e1- l1,l2: excludeethrex-l2cratemake test(PR #5100 by @ilitteri)ee97e8e- l2: remove one-time checkpoint if already exists (PR #5083 by @ilitteri)42b32e0- l2: remove one-time checkpoint if already exists (PR #5083 by @ilitteri)c228e18- l1,l2: inaccurate block execution metrics (PR #5108 by @Oppen)4ee0a46- l1: don't trigger snap sync if fcu head is already canonical (PR #4985 by @fmoletta)↘️ fixes issue #4846 opened by @mpaulucci
fb15bd9- l2: fixethrex-l2-commoncrate compilation (PR #5106 by @ilitteri)199dc90- l2: checkpoint initialization (PR #5123 by @avilagaston9)1f422e9- l1: fix illegal instructions in certain ARM processors (PR #5143 by @fedacking)b233284- l1: exit on irrecoverable error on sync (PR #5005 by @fedacking)db22fbc- l1,l2: make l2 integration tests and lint required (PR #5142 by @gianbelinche)59d2ccb- l2: save last committed batch as current checkpoint (PR #5152 by @ManuelBilbao)02c4468- l2: remove used checkpoints (PR #5120 by @gianbelinche)
⚡ Performance Improvements
f4170c7- levm: use bitmap for jumpdests (PR #4608 by @ilitteri)669700c- levm: store valid jump targets with code (PR #4961 by @jrchatruc)7a4b41b- l1, l2: use fxhash for diff layers (PR #5032 by @Oppen)8b0e2b8- l1: reusing FindNode message per lookup loop (PR #5047 by @ElFantasma)96e6433- l1, l2: move post-execution trie updates to the background *(PR #4989 by ...
ethrex: v6.0.0-rc.2
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
307d0ed- allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand):allow setting a target gas limit through CLI (#4973)
-
due to
3e9705b- unify trie node encoding (PR #4995 by @iovoid):unify trie node encoding (#4995)
✨ New Features
de0802e- l1: running some GenServers in dedicated threads (PR #4925 by @ElFantasma)307d0ed- l1: allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand)↘️ addresses issue #4482 opened by @MegaRedHand
417aafc- l2: generate batch prover input at commit and store it in db (PR #5006 by @ilitteri)db38cc9- l2: implement operator fee (PR #4725 by @avilagaston9)↘️ addresses issue #4694 opened by @avilagaston9
4514172- l1,l2: add CLI option to force color output mode (PR #5034 by @ManuelBilbao)c638968- l2: implement l1 fee (PR #4781 by @avilagaston9)↘️ addresses issue #4696 opened by @avilagaston9
🐛 Bug Fixes
ed4f08c- l2: regenerate head state in node initialization (PR #4968 by @ilitteri)438fe9d- l1: remove duplicate span.entered() call in apply_updates (PR #4970 by @MegaRedHand)4daa4ab- l1,l2: update binary names (PR #4980 by @ManuelBilbao)d13c5a8- l1,l2: add feature flag to decide precompute number (PR #4893 by @tomip01)516f4b2- l1: addengine_getBlobsV2to capabilities. (PR #5007 by @mpaulucci)6c39fc2- l2: update operator fee flag on makefile (PR #5029 by @tomip01)433b74f- levm: remove unneeded clone of transaction log (PR #5028 by @iovoid)3ff58e0- l1: update capabilities to include engine_getPayloadV5 (PR #5039 by @edg-l)cf9276b- l2: committer wake up delay (PR #5033 by @ManuelBilbao)c9b0005- l1: fix big account download stopping prematurely (PR #4994 by @fedacking)992bba3- l1: retry on no peers on update pivot (PR #5002 by @fedacking)07dcec0- l1: port 30303 still used after stopping the node (PR #5041 by @edg-l)↘️ fixes issue #4895 opened by @rodrigo-o
23c14ec- l1: modify Grafana dashboards so they can be filtered by instance (PR #4831 by @klaus993)3d3e2b6- l2: use checkpoints to persist previous batch state (PR #5037 by @ilitteri)42b32e0- l2: remove one-time checkpoint if already exists (PR #5083 by @ilitteri)
⚡ Performance Improvements
f4170c7- levm: use bitmap for jumpdests (PR #4608 by @ilitteri)669700c- levm: store valid jump targets with code (PR #4961 by @jrchatruc)7a4b41b- l1, l2: use fxhash for diff layers (PR #5032 by @Oppen)8b0e2b8- l1: reusing FindNode message per lookup loop (PR #5047 by @ElFantasma)96e6433- l1, l2: move post-execution trie updates to the background (PR #4989 by @edg-l)
♻️ Refactors
87ed562- l1,l2: remove unused dependency and import (PR #4936 by @MegaRedHand)c3e30f4- l1: make TrieError::InconsistentTree more specific (PR #4836 by @cdiielsi)↘️ addresses issue #4786 opened by @MegaRedHand
0e63e98- l1,l2: release workflow (PR #4986 by @ManuelBilbao)3e9705b- l1: unify trie node encoding (PR #4995 by @iovoid)5346ed2- l1: removeMutexfrom profiling metrics (PR #5031 by @MegaRedHand)ebb341b- l2: removeasyncfromBlockchain::new_evm(PR #5062 by @MegaRedHand)
✅ Tests
3d38558- l1: polish test reports with timestamps and formatting (PR #4770 by @Signor1)↘️ addresses issue #3886 opened by @sofiazcoaga
🔧 Chores
55be0b3- l1: change the log of target peer to debug from warn (PR #4984 by @fedacking)5f2dbf6- l2: insert placeholder proxies for system contracts (PR #4930 by @ManuelBilbao)ec56d72- l1,l2: made so that the P2P logging functions say the correct file (PR #4971 by @fedacking)b27f106- l1, l2: remove rocksdb wal TTL (PR #4966 by @jrchatruc)ebbf9c5- l1: update lighthouse to a version that supports fusaka (PR #4991 by @mpaulucci)165782c- l1,l2: bump cargo toml version for 5.0.0 release (PR #4935 by @ManuelBilbao)1136d83- l1: improved logs for engine calls (PR #4987 by @fedacking)9f7443c- l1: improved snapync logs (PR #4983 by @fedacking)
ethrex: v6.0.0-rc.1
Installation and running instructions can be found in our docs
💥 BREAKING CHANGES
-
due to
307d0ed- allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand):allow setting a target gas limit through CLI (#4973)
-
due to
3e9705b- unify trie node encoding (PR #4995 by @iovoid):unify trie node encoding (#4995)
✨ New Features
de0802e- l1: running some GenServers in dedicated threads (PR #4925 by @ElFantasma)307d0ed- l1: allow setting a target gas limit through CLI (PR #4973 by @MegaRedHand)↘️ addresses issue #4482 opened by @MegaRedHand
417aafc- l2: generate batch prover input at commit and store it in db (PR #5006 by @ilitteri)db38cc9- l2: implement operator fee (PR #4725 by @avilagaston9)↘️ addresses issue #4694 opened by @avilagaston9
4514172- l1,l2: add CLI option to force color output mode (PR #5034 by @ManuelBilbao)c638968- l2: implement l1 fee (PR #4781 by @avilagaston9)↘️ addresses issue #4696 opened by @avilagaston9
🐛 Bug Fixes
ed4f08c- l2: regenerate head state in node initialization (PR #4968 by @ilitteri)438fe9d- l1: remove duplicate span.entered() call in apply_updates (PR #4970 by @MegaRedHand)4daa4ab- l1,l2: update binary names (PR #4980 by @ManuelBilbao)d13c5a8- l1,l2: add feature flag to decide precompute number (PR #4893 by @tomip01)516f4b2- l1: addengine_getBlobsV2to capabilities. (PR #5007 by @mpaulucci)6c39fc2- l2: update operator fee flag on makefile (PR #5029 by @tomip01)433b74f- levm: remove unneeded clone of transaction log (PR #5028 by @iovoid)3ff58e0- l1: update capabilities to include engine_getPayloadV5 (PR #5039 by @edg-l)cf9276b- l2: committer wake up delay (PR #5033 by @ManuelBilbao)c9b0005- l1: fix big account download stopping prematurely (PR #4994 by @fedacking)992bba3- l1: retry on no peers on update pivot (PR #5002 by @fedacking)07dcec0- l1: port 30303 still used after stopping the node (PR #5041 by @edg-l)↘️ fixes issue #4895 opened by @rodrigo-o
23c14ec- l1: modify Grafana dashboards so they can be filtered by instance (PR #4831 by @klaus993)3d3e2b6- l2: use checkpoints to persist previous batch state (PR #5037 by @ilitteri)
⚡ Performance Improvements
f4170c7- levm: use bitmap for jumpdests (PR #4608 by @ilitteri)669700c- levm: store valid jump targets with code (PR #4961 by @jrchatruc)7a4b41b- l1, l2: use fxhash for diff layers (PR #5032 by @Oppen)8b0e2b8- l1: reusing FindNode message per lookup loop (PR #5047 by @ElFantasma)96e6433- l1, l2: move post-execution trie updates to the background (PR #4989 by @edg-l)
♻️ Refactors
87ed562- l1,l2: remove unused dependency and import (PR #4936 by @MegaRedHand)c3e30f4- l1: make TrieError::InconsistentTree more specific (PR #4836 by @cdiielsi)↘️ addresses issue #4786 opened by @MegaRedHand
0e63e98- l1,l2: release workflow (PR #4986 by @ManuelBilbao)3e9705b- l1: unify trie node encoding (PR #4995 by @iovoid)5346ed2- l1: removeMutexfrom profiling metrics (PR #5031 by @MegaRedHand)ebb341b- l2: removeasyncfromBlockchain::new_evm(PR #5062 by @MegaRedHand)
✅ Tests
3d38558- l1: polish test reports with timestamps and formatting (PR #4770 by @Signor1)↘️ addresses issue #3886 opened by @sofiazcoaga
🔧 Chores
55be0b3- l1: change the log of target peer to debug from warn (PR #4984 by @fedacking)5f2dbf6- l2: insert placeholder proxies for system contracts (PR #4930 by @ManuelBilbao)ec56d72- l1,l2: made so that the P2P logging functions say the correct file (PR #4971 by @fedacking)b27f106- l1, l2: remove rocksdb wal TTL (PR #4966 by @jrchatruc)ebbf9c5- l1: update lighthouse to a version that supports fusaka (PR #4991 by @mpaulucci)165782c- l1,l2: bump cargo toml version for 5.0.0 release (PR #4935 by @ManuelBilbao)1136d83- l1: improved logs for engine calls (PR #4987 by @fedacking)9f7443c- l1: improved snapync logs (PR #4983 by @fedacking)