Releases: paradigmxyz/reth
Reth v1.8.2
Summary
Important
Upgrading to this release is mandatory for node operators running Holesky.
This release includes several fixes for Fusaka hardfork on Holesky.
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Holesky | High |
Payload Builders | Low |
Non-Payload Builders | Low |
See Update Priorities for more information about this table.
All Changes
- chore: bump alloy 1.0.37 (#18795)
- chore: bump version to 1.8.2 (#18792)
- fix(rpc/engine): check osaka in getBlobsV1 (#18669)
- fix: remove cancun check (#18787)
- fix(rpc): fix eth_config impl (#18744)
- feat: make more EVM and RPC conversions fallible (#18685)
- chore: bump rust to edition 2024 (#18692)
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.8.2-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.8.2-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.8.2-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.8.2-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | reth-v1.8.2-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/reth | - |
OP-Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | op-reth-v1.8.2-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.8.2-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.8.2-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.8.2-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.8.2-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/op-reth | - |
Reth v1.8.1
Summary
Fixes an rpc regression on opstack introduced in v1.8.0: - fix: Revert "chore: disable fee charge in env" (#18645)
See Update Priorities for more information about this table.
All Changes
- chore: release 1.8.1 (#18646)
- fix: Revert "chore: disable fee charge in env" (#18645)
- chore(deps): bump CodSpeedHQ/action from 3 to 4 (#18333)
- chore: update voc.config.to text to v1.8.0 (#18644)
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.8.1-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.8.1-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.8.1-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.8.1-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | reth-v1.8.1-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/reth | - |
OP-Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | op-reth-v1.8.1-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.8.1-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.8.1-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.8.1-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.8.1-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/op-reth | - |
What's Changed
- chore: update voc.config.to text to v1.8.0 by @laibe in #18644
- chore(deps): bump CodSpeedHQ/action from 3 to 4 by @dependabot[bot] in #18333
- fix: Revert "chore: disable fee charge in env" by @mattsse in #18645
- chore: release 1.8.1 by @mattsse in #18646
Full Changelog: v1.8.0...v1.8.1
Reth v1.8.0
Reth v1.8.0
Summary
This release includes activation timestamps for the upcoming Fusaka hardfork.
Also includes rpc fixes, performance improvements and new SDK features.
Bug Fixes
- Fixed block gas limit validation in RPC calls (#18583)
- Fixed incorrect RPC method names in trace calls documentation (#18619)
- Disabled transaction gas limit checks in RPC calls for Osaka compatibility (#18473)
- Fixed peer total difficulty validation during Ethereum handshake (#18611)
- Fixed timestamp-derived maximum blob count on launch (#18590)
- Prevented double-processing of transaction pool tiers (#18446)
- Added tree config setting for optimizing canonical header unwinding (#18420)
Performance
- Optimized in-memory trie cursor with
Vec<Option<...>>
instead of HashMap (#18479) - Significant performance improvement by reusing MDBX DBIs for the same transaction (#18292)
- Open MDBX DBIs only once at startup instead of per-operation (#18424)
- Optimized segment operations by caching lookups (#18588)
- Reduced memory usage by downsizing transaction priority from
U256
tou128
(#18413) - Use NoopProvider for pending block state root calculations (#18523)
Features
- Made
send_raw_transaction_sync
timeout configurable via--rpc.send-raw-transaction-sync-timeout
flag (default: 30s) (#18558) - Added
admin_clearTxpool
RPC method (#18539)
OP Stack
v1.7.0 introduced support for local flashblocks, this release now also supports flashblocks in eth_getTransactionReceipt
and eth_sendRawTransactionSync
Features
- Implemented minimum base fee feature for OP chains with Jovian upgrade (#18407)
- Initial implementation of FlashBlockConsensusClient engine sidecar (#18443)
- Improved pending state handling using flashblocks (#18518)
- Updated superchain commit for latest chain configurations (#18481)
- Specialized
send_raw_transaction_sync
for op-reth with flashblocks support (#18586)
Bug Fixes
- Fixed canonical chain updates for OP Stack chains (#18410)
- Fixed flashblock usage in transaction receipt responses (#18530)
- Fixed interop maintenance task activation (#18563)
SDK
Features
- Replaced
tx_hash
method withTxHashRef
trait bound (#18362)
Migration for custom Transaction types: moveSignedTransaction::tx_hash
toTxHashRef
implementation - Enhanced type safety in CLI interfaces (#18375)
- Added
Future
associated type toLaunchNode
with customizable local attributes builder (#18556) - Added CliApp wrapper for easier Ethereum CLI configuration (#18458)
- Added
convert_receipt_with_block
method for more flexible receipt handling (#18542) - More flexible RPC receipt handling for custom implementations (#18501)
Dependencies
Compatible versions:
revm: 29.0.1
alloy: 1.0.35
op-alloy: 0.20.0
alloy-evm: 0.21.0
revm-inspectors: 0.30.0
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | high |
Non-Payload Builders | high |
Non-Payload Builders | high |
See Update Priorities for more information about this table.
All Changes
- chore: update version to 1.8.0 in Cargo.toml (#18638)
- fix: check request gas limit before (#18639)
- chore(observability): add tokio runtime with custom thread naming (#18635)
- docs: update dashboard table and rpc urls (#18637)
- feat: add osaka+bpo timestamps (#18627)
- chore: disable fee charge in env (#18634)
- chore: bump inspectors 0.30 (#18633)
- chore(revert): revert tokio runtime with custom thread naming (#18631)
- chore: bump deps (#18630)
- chore(observability): add tokio runtime with custom thread naming (#18623)
- chore(primitive-traits): remove redundant auto-trait bounds from FullNodePrimitives (#18626)
- docs: fix incorrect RPC method names in trace calls (#18619)
- fix(cli): bootnode default address (#18617)
- fix(primitives-traits): simplify Rayon bounds and fix docs (#18620)
- chore: specialize
send_raw_transaction_sync
for op-reth with flashblocks support (#18586) - fix(handshake): validate peer TD from their_status_message during eth handshake (#18611)
- chore: enforce max tx gas limit on estimate and accesslit (#18612)
- fix: disable block gas limit (#18583)
- chore: Remove
reth recover storage-tries
sub-command (#18580) - fix: replace tx_hash method with TxHashRef trait bound (#18357) (#18362)
- test: add test case for op tx env conversion (#18581)
- fix(cache): Ensure execution cache remains locked until updated (#18564)
- test(engine): add new payload handling tests for canonical insertion and invalid ancestors (#18608)
- docs: multiple small textual defects (#18598)
- chore(deps): weekly
cargo update
(#18600) - chore(ci): unpin teku image for kurtosis-op (#18595)
- chore(ci): update expected and ignored hive tests (#18594)
- perf(persistence): lookup segment operation once (#18588)
- feat(rpc): make send_raw_transaction_sync timeout configurable (#18558)
- fix: use timestamp derived max blob count on launch (#18590)
- chore(payload-builder): relax Sync bounds on resolve futures (#18585)
- chore(db): Simplifications to trie-related storage-api methods (#18579)
- chore: clippy manual_string_new warning in version.rs (#18576)
- chore(trie): Use Vec<Option<...>> in InMemoryTrieCursor (#18479)
- fix(rpc): return empty log set for invalid filter block ranges (#18112)
- fix(txpool): prevent double-processing of tx pool tier (#18446)
- fix(reth-bench): do not panic on empty results (#18570)
- fix(optimism): always enable interop maintenance task if activated (#18563)
- chore(evm): add public constructor to
BlockAssemblerInput
(#18559) - feat: add
Future
AT toLaunchNode
and allow customizing local attributes builder (#18556) - chore: map NaN to 0.0 (#18560)
- chore(chainspec): reuse local hardforks in DEV instead of cloning again (#18557)
- chore(docker): add FEATURES for op dockerfile (#18489)
- chore(consensus): update EIP-7825 error message format (#18549)
- docs(op): decompress the state file before init-state (#18416)
- feat: tree config setting for unwinding canonical header (#18420)
- feat(rpc): add admin_clearTxpool api (#18539)
- chore(ci): bump hive timeout (#18544)
- feat(rpc): Add
convert_receipt_with_block
method toReceiptConverter
(#18542) - chore: add cache traces (#18538)
- docs: document critical cache safety assumptions in ExecutionCache (#18536)
- feat(op-reth): initial setup FlashBlockConsensusClient engine sidecar (#18443)
- refactor: EmptyBodyStorage block reader logic (#18508)
- feat(node): rename debug.rpc-consensus-ws to debug-rpc-consensus-url to suport HTTP (#18027)
- fix(rpc): use flashblock when preparing tx response on gettxreceipt (#18530)
- chore(ci): bump hive eest tests to v5.1.0 (#18528)
- fix: use noopprovider for pending block state root (#18523)
- refactor(evm): Replace
revm_spec*
functions withalloy-evm
andalloy-op-evm
versions (#18526) - deps: Upgrade
alloy
andalloy-evm
versions1.0.30
=>1.0.32
and0.21.0
=>0.21.1
respectively (#18525) - docs(engine): improve cache naming and documentation (#18457)
- feat: relax
OpEngineValidatorBuilder
for more custom payload types (#18520) - fix(trie): Don't run repair-trie if MerkleExecute is incomplete (#18497)
- chore(engine): remove calldata exception workaround (#18521)
- feat(engine): fallback for when both state root task and parallel state root failed (#18519)
- feat(optimism): Implement
local_pending_state
for RPC that usespending_flashblock
(#18518) - feat(op/jovian): implement min base fee in op-reth. bump alloy, alloy-evm deps. (#18407)
- fix(docs): correct BlockBody root docs and RecoveredBlock “safer variant” references (#18510)
- chore(ci): run eest osaka tests on hive workflow (#18516)
- chore: add myself to CODEOWNERS (#18514)
- feat(metrics): add transaction error counter for prewarming (#18509)
- fix: don't override existing tables in
create_tables_for
(#18511) - chore: add myself to CODEOWNERS for engine and stages (#18512)
- fix: don't require closure to be
Debug
(#18507) - chore(engine): avoid panic on mpsc send in sparse trie worker (#18502)
- feat: relax
EthBlockAssembler
(#1...
Reth v1.7.0
Reth v1.7.0
Caution
This release includes a critical fix for Ethereum mainnet, all node operators should upgrade their nodes to v1.7.0, run upgrade instructions below, and do not downgrade to versions lower than v1.7.0
Upgrade Instructions for Mainnet nodes
On September 1st, some Reth nodes running on Ethereum mainnet experienced downtime. We identified and fixed the issue in state root calculation logic; a post-mortem will follow in the coming days.
Following steps are recommended for all ethereum mainnet operators, even if you recovered your node with the previous instructions or if your node was unaffected.
- Stop your Reth node
- Update
reth
binary to v1.7.0 - Run
reth db --chain <mainnet> --datadir <datadir> repair-trie
- This can take up to 2 hours or longer (depending on the disk/IOPS), so it may be a good idea to start it in a
tmux
session to not interrupt. - Let the command run to completion.
- It is expected that some inconsistences are found and repaired by this command.
- This can take up to 2 hours or longer (depending on the disk/IOPS), so it may be a good idea to start it in a
- Start your Reth node on version v1.7.0 with the arguments you've used before
Summary
This release includes significant performance improvements, Flashblocks support for OP Stack, improved state management, and various bug fixes.
This release also includes relevant code changes with support for the upcoming Fusaka hardfork.
Parallel Sparse Trie
The Parallel Sparse Trie, introduced in 1.6.0 as an opt-in CLI argument, is now enabled by default for computation of the accounts trie root. In our benchmarks we have seen a 10-15% improvement to overall latency on Ethereum mainnet nodes, and 15-20% on Base nodes.

Fixes
- Fixed transaction pool fee change updates (#18137)
- Fixed instant miner creating empty blocks (#18108)
- Fixed ParallelSparseTrie edge cases and field clearing issues (#17955)
- Fixed pending transaction updates with higher priority values (#17699)
- Fixed estimateGas with stateoverrides (#17668)
- Fixed gas limit saturation if it exceeds configured gas cap (#17847)
- Fixed prune checkpoint check on unwind for full nodes (#18263)
- Fixed RLP encoding for
SealedBlock
(#18003) - Fixed error codes for
eth_sendRawTransactionSync
(#18252) - Fixed inconsistent message counts for eth protocol (#17999)
Performance
- Transaction pool:
- Eliminated allocations in basefee enforcement (#18162)
- Eliminate redundant notifications (#17647) - Stages optimization: Optimized unwind operations by fetching headers instead of full blocks (#18139)
- Collection creation: Optimized single-element collection creation (#18168)
- Canonical hashes: Optimized
canonical_hashes_range
to O(n) complexity (#17975) - State changes: Used
FuturesOrdered
instead ofjoin_all
for better yielding (#17638) - State Root: ParallelSparseTrie enabled by default for the accounts trie (#17956)
OP Stack
This release includes flashblocks/pending state support via --flashblocks-url
(e.g. "wss://mainnet.flashblocks.base.org/ws").
If enabled, op-reth will attempt to build the pending state via received flashblocks, the "pending" block tag will be mapped to this.
- Forward debug_traceTransaction with historical RPC(#17971)
- Forward unknown hashes with historical RPC (#17709)
- Make OpAddonsBuilder generic over middleware (#17347)
- Fixed suggested price for empty blocks (#17679)
Enhancements
- Transaction forwarding: Added support for forwarding transactions to specified endpoints (
--txpool.tx-propagation-mode <sqrt|all|max>
) (#17444) - Trace storage access: Added
trace_transaction_storage_access
method (#16022) - Transaction propagation: Added CLI support for TransactionPropagationMode (#18012)
- IPC socket permissions: Added configuration for IPC socket permissions (#17497)
- Multi-file import: Support for importing multiple files (#17928)
- Max readers configuration: Added max-readers flag for database configuration (#17663)
- Tracing: Support additional
index
field in call tracer (#17629) - Networking: Support additional subprotocols with custom eth handshake (#18080)
SDK
- Configurable version globals: Introduced configurable version globals (#17711)
- TreePayloadValidator: Added new payload validator for tree operations (#17451)
- Engine separation: Separated EngineValidator from PayloadValidator (#17641)
- Txpool:
- Merge EthTransactionValidator and EthTransactionValidatorInner (#18129)
- Persist Origin in pooled transaction backup (#17756) - Ethapi:
- Support overriding caller gas allowance on call functions(#18101)
- Support custom pending state and make state lookup async (#17954)
- Enhanced RpcConverter support for custom rpc type conversions (#17010)
Dependencies
Compatible versions:
- revm: 29.0.0
- alloy: 1.0.30
- op-alloy: 0.19.0
- alloy-evm: 0.20.1
- revm-inspectors: 0.29.1
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | High |
Non-Payload Builders | High |
Op-reth | medium |
See Update Priorities for more information about this table.
All Changes
- chore: bump version 1.7.0 (#18323)
- fix: DB benches (#18314)
- fix(stateless): verify_execution_witness doc for pre-state mismatch (#18319)
- fix(bench): fix deadlock in test data generation (#18321)
- docs(reth-bench): fix markdown (#18322)
- ci: pin Rust to 1.88 when building for Windows in Cross (#18320)
- feat(trie): Add helper sub-command (#18301)
- feat(optimism): flashblock completed sequences (#18272)
- refactor(engine): persistence logic (#18318)
- refactor: change PendingPool and PendingTransaction visibility to pub (#18267)
- refactor(optimism): Extract pending block building responsibility out of
FlashBlockService
(#18247) - chore(trie): dont warn on blinded node reveals (#18317)
- fix(rpc): error code
eth_sendRawTransactionSync
timeout (#18252) - chore(deps): weekly
cargo update
(#18312) - chore: introduce validationtask with capacity (#18291)
- feat(download): support zst archives in reth download (#18237)
- chore: clippy happy (#18310)
- feat: introduce maybe_pending method to StateProviderFactory (#18260)
- perf(e2e-test-utils): optimize block checking by fetching header instead of full block (#18254)
- chore: fix various typos in comments and documentation (#18296)
- perf: specialize len 1 (#18307)
- feat: expose
EvmEnv
tocaller_gas_allowance
(#18302) - feat: introduce setting for delegated txs slots (#18298)
- feat(gpo): add default fee price argument (#18297)
- feat(metrics): add
TxPoolValidatorMetrics
to track inflight validation jobs (#18295) - perf: specialize validate_transactions_with_origin for task validator (#18288)
- test(optimism): Test that close message is responded to in
WsFlashBlockStream
(#18268) - chore: delist unused deps with
cargo-machete
(#18259) - perf: specialize single batch request (#18289)
- perf: optimize send raw batching (#18280)
- fix: check prune checkpoints for unwind target limit (#18263)
- chore(txpool): add sanity tests for blob fee bit handling (#18258)
- perf(db): do not heap-allocate the stage key per query (#18284)
- perf: build local pending block without updates (#18271)
- perf: rm redundant collect (#18281)
- chore: extract
validate_against_parent_gas_limit
into separate fn (#18277) - chore: log prune settings on unwind (#18270)
- test(optimism): Test that UTF-8 encoded messages are received in
WsFlashBlockStream
(#18269) - fix(optimism): Reconnect if ws stream ends in `WsFlashBlo...
Reth v1.6.0
This release includes several RPC fixes and various stability fixes.
It introduces opt-in support for experimental Parallel Sparse Trie via --engine.parallel-sparse-trie
. Feel free to try it out for improved performance, and report any issues in our Telegram chat.
It should also unblock Flashblocks support for more OP Stack chains.
Fixes
- Fixed basefee calculation edge cases (#17496, #17493)
- Fixed transaction pool propagation on account updates (#17396)
- Fixed sparse trie implementation hash masks issue (#17316)
- Fixed pre-merge history export functionality (#17320)
- Fixed pruner header usage (#17458)
- Fixed missing top level trace recording causing missing trace information (#17412)
- Fixed an issue with the javascript tracer that caused discrepencies (#16289, paradigmxyz/revm-inspectors#329)
New Features
Performance
- Tracing:
- Improved performance for
debug_
default structlog tracer (paradigmxyz/revm-inspectors#320, paradigmxyz/revm-inspectors#319, paradigmxyz/revm-inspectors#323) - Improved javscript tracer performance by using natice bigint type (paradigmxyz/revm-inspectors#314)
- Improved performance for
- Re-use storage tries across payloads for improved performance (#17488)
- Optimized
txpool_status
RPC to avoid full transaction collection (#17392) - Clear accounts trie in background to avoid blocking state root computation (#17369)
- Optimized blob store get operations (#17388)
- Optimizations based on the query type (#16441)
Pruning
- Added
--prune.receipts.premerge
configuration option (#17295) - Added
export-era
subcommand for exporting blockchain data in Era1 format (#17132)
Reth SDK
- Added new submit methods to
TransactionPool
trait (#17431) - RPC now accepts generic transaction requests (#17092)
- Made Receipt type generic over
TxType
for better extensibility (#17237, #17409) - Made core components generic over block header types, enabling easier custom chain implementations (#17520, #17441 #17436)
Compatible Dependencies
- revm: 0.27.3
- alloy: 1.0.23
- op-alloy: 0.18.12
- alloy-evm: 0.15
- revm-inspectors: 0.27
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | medium |
Non-Payload Builders | medium |
See Update Priorities for more information about this table.
All Changes
- chore: bump version v1.6.0 (#17556)
- ci: fix era sync test (#17561)
- fix: convert latency to milliseconds in reth-bench script (#17555)
- feat: add
AddOns
for custom node example (#17544) - ci: mark system eest tests as passing (#17542)
- chore: bump deps (#17554)
- feat: implement DatabaseProviderFactory for NoopProvider (#17134)
- chore: relax EthereumEthApiBuilder bound (#17546)
- feat(reth-bench): auto-create output directory (#17541)
- chore(deps): bump inspectors 027 (#17543)
- docs: fix typo in OpReceiptBuilder comment (#17540)
- perf(trie): Re-use storage tries across payloads (#17488)
- docs: Fix broken fuzzing module link in database.md (#17523)
- feat:
EthApiCtx::eth_api_builder
(#17532) - feat:
ComponentsFor
type alias (#17533) - refactor: rename
AlloyRethProvider
toRpcBlockchainProvider
and move to storage (#17524) - feat:
HeaderConverter
(#17490) - chore: bump alloy-evm 015 (#17528)
- fix: ensure required revm features are activated (#17526)
- chore: extend exex ethapi example (#17481)
- chore: sanity secp256k1+rayon activations (#17527)
- feat: make payload validation functions generic over block header type (#17520)
- fix:
logIndex
ingetBlockReceipts
(#17519) - docs(trace): document trace format and response structure (#17517)
- docs: normalize dynamic CLI defaults in help generation (#17509)
- docs: fix error in RawCapabilityMessage comment (#17411)
- fix: temporary file leak in atomic_write_file (#17505)
- fix: Refine Transaction Abstraction Link (#17502)
- feat(alloy-provider): compatibility for non-reth nodes (#17511)
- docs: fix Sepolia URL description (#17495)
- chore: migrate from codespell to typos (#17501)
- ci: dont expect callenv to fail (#17516)
- feat(alloy-provider): implement
receipts_by_block
and other methods (#17507) - chore(deps): weekly
cargo update
(#17506) - fix: refactor trace log key and comment formatting (#17459)
- fix: correct documentation for block_mut method in SealedBlock (#17489)
- docs: fix outdated file paths in database.md links (#17486)
- perf(tree): add metric for payload conversion + validation latency (#17499)
- fix: force set basefee to 0 if gasprice is 0 (#17496)
- chore: downgrade threadpool init error (#17483)
- feat(alloy-provider): implement methods for BlockReaderIdExt (#17491)
- fix: set correct timestamp when calculating basefee (#17493)
- feat: continue opchainspec support (#17422)
- chore: fix reth-engine-tree dev-dependencies import (#17487)
- feat(alloy-provider): implement
receipt_by_hash
method (#17456) - feat: add Middleware generic to AuthServerConfig (#17373)
- feat: enable CLI support for custom block headers (#17441)
- docs: add code example to extend_rpc_modules method (#17446)
- fix: change hyperlink to reth_codec (#17437)
- fix: edit link and config (#17453)
- feat(alloy-provider): implement
transaction_by_hash
method (#17479) - chore: expose chainspec getter (#17461)
- fix(
docs
): rustdocs module and nested links (#17478) - feat: add envelope conversion for op (#17469)
- fix(
docs
): change sdk overview path to /sdk (#17467) - fix: correct documentation for block_mut method in RecoveredBlock (#17472)
- feat(alloy-provider): implement
bytecode_by_hash
method (#17471) - fix: use primitives headers for pruner (#17458)
- feat: add helper for building pending block env (#17464)
- feat(alloy-provider): implement
sealed_header
method (#17455) - feat(tx-pool): add submit methods to
TransactionPool
(#17431) - docs: fix typo from
optstack
toopstack
(#17454) - refactor: move receipt conversions to
RpcConverter
(#17450) - chore: correct spelling errors (#17462)
- feat: make engine API metered methods and utilities public (#17460)
- docs: fix typo in NetworkManager diagram (#17448)
- perf(trie): parallelize ParallelSparseTrie::reveal_nodes (#17372)
- fix: Update JWT Secret Flag in Benchmark Documentation (#17447)
- docs: enhance direct database access documentation (#17445)
- fix: rename
highest_static_fileted_block
tohighest_static_file_block
(#17427) - fix: Update Docker Compose Docs Link in etc/README.md (#17414)
- fix: Rename WitnessBlindedProvider to WitnessTrieNodeProvider (#17426)
- chore(bin): missing
--jwt-secret
message in reth-bench (#17443) - chore: simplify blob count extraction using new blob_count() method (#17439)
- feat: make revm_spec generic over header type (#17436)
- chore: bump revm 273 (#17412)
- refactor: remove unused sparse trie methods (#17433)
- chore(consensus): refactor fork and ommers check into standalone fn (#17406)
- chore: add txpool submit examples (#17420)
- test(engine): enable parallel sparse trie in e2e tests (#17423)
- refactor: use DefaultTrieNodeProviderFactory in state root calculation (#17425)
- chore: box import future (#17424)
- refactor:
BlindedPovider
rename (#17208) - feat: Add support for ethstats (#16396)
- chore(txpool): use alloy-primitives HashMap for SenderIdentifiers (#17408)
- feat(sdk): make engine API (auth server) optional for custom consensus integrations (#17376)
- feat(alloy-provider): implement header methods (#17402)
- fix(
docs
): rustdoc search functionality (#17410) - feat: add generic database support for Receipt (#17409)
- feat(rpc): Use generic transaction request as input (#17092)
- refactor(rpc): change receipt to
Cow<R>
forbuild_receipt
(#17382) - docs(guides): add export era in history section (#17391)
- perf: release listner lock early (#17400)
- perf: optimize txpool_status RPC by avoiding full transaction collection (#17392)
- fix(txpool): Propagate promoted transactions on account updates (#17396)
- chore: make clippy happy (#17399)
- chore(deps): weekly
cargo update
(#17386) - perf(blob): optimize blob store gets (#17388)
- fix: broken link to system requirements in troubleshooting guide (#17384)
- chore: consolidate typo fixes from multiple PRs (#17387)
- docs: typos (#17283)
- feat: add
into_logs()
toTxReceipt
forReceipt
/OpReceipt
(#17383) - docs: typos (#17335)
- docs: fix link to installation (#17375)
- feat: make
Receipt
generic overTxType
(#17237) - perf(engine): clear accounts trie in background to not block state root (#17369)
- fix(
docs
): ...
Reth v1.5.1
Reth v1.5.1 Release Notes
This is a maintenance release focusing on stability improvements and bug fixes.
This release includes a fix for historical sync issue on base mainnet, op-reth operators are advised to update their nodes.
Fixes
- Optimized KZG settings loading to run in background (#17224)
- Updated size metrics to calculate once instead of repeatedly (#17242)
- Fixes an exception in the javascript custom tracer implementation (#17198)
- Properly serialize responses from op-reth historical rpc endpoint (#17133
- Added chain-id query parameter support for Etherscan v2 API (#17167)
New Features
- Added minimal priority fee configuration for better transaction handling (#17183)
- Added support for Flashbots v5 relay block validation API for Fusaka (#17179)
Compatible Dependencies
- alloy-primitives: 1.2.0
- alloy: 1.0.18
- op-alloy: 0.18.7
- revm: 27.0.2
- op-revm: 8.0.2
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | medium |
Non-Payload Builders | medium |
Op-reth | high |
See Update Priorities for more information about this table.
All Changes
- chore: bump 1.5.1 (#17277)
- docs: fix correction in storage reverts iterator test comment (#17276)
- docs(guides): Add history expiry (#17274)
- chore(trie): add Send and Sync to SparseTrieInterface (#17270)
- feat(trie): add parallel sparse trie to TreeConfig (#17265)
- docs: update snapshot URL from downloads.merkle.io to snapshots.merkle.io (#17248)
- feat: include chain-id query param for etherscan v2 API (#17167)
- fix(trie): correctly handle path field on cleared ParallelSparseTrie lower subtries (#17259)
- feat(test): add apply_with_import method to e2e Setup (#17263)
- chore: bump alloy (#17275)
- docs: fix typo basfee → basefee in txpool.mmd (#17252)
- chore: fix typos (#17251)
- chore: Fix typo in block number reader comment (#17250)
- fix: dead link (#17200)
- chore: check blob fee (#17272)
- chore: update size metrics once (#17242)
- fix(trie): add lower subtrie root paths to upper subtrie prefix set (#17262)
- feat(test): spin up e2e test nodes with imported data (#17261)
- feat(test): allow to create testing nodes with specific datadir (#17260)
- fix(trie): track branch node updates only in ParallelSparseTrie, not subtries (#17223)
- docs: typos (#17246)
- docs: fix typo
fileted
tofiltered
(#17257) - refactor: extract import functionality to separate module (#17253)
- fix(trie):
ParallelSparseTrie::default
should have an empty root node (#17256) - fix: correct comment in static file writer (#17254)
- chore(deps): weekly
cargo update
(#17247) - docs: deleted extra duplicate environment.rs (#17249)
- docs: correction comments (#17244)
- refactor(rpc): Arc PendingBlock internals (#17240)
- docs: Consistent Spelling for "Reuse" in Documentation (#17232)
- fix: correct typo in ValidationApi comment (#17241)
- feat: add v5 flashbots relay block validation api for Fusaka (#17179)
- refactor(txpool): Remove txhash from PoolUpdate (#17239)
- docs: fix typo mod.rs (#17233)
- fix: logical error in pruning test for storage_history PruneMode::Full (#17235)
- chore: add capabilities to NetworkStatus (#17236)
- chore(doc): update exclude list for doc/cli (#17234)
- feat(p2p): separate args for (header, body) (#17184)
- docs: fix typo in documentation comments (#17207)
- chore: use alloy traits for build receipt (#17211)
- docs: fix typos across documentation (#17212)
- Fix typo in EVM component documentation (#17227)
- Update metrics documentation link to new official Reth docs (#17220)
- fix: Returns Arc in BlockAndReceiptsResult (#17213)
- chore: load kzg settings in background (#17224)
- chore: make receipt root mismatch log more useful (#17225)
- docs: improve NodeAddOns trait documentation (#17178)
- chore: fix typo in documentation comment in environment.rs (#17218)
- deps: Upgrade
alloy
version1.0.16
=>1.0.17
and all other deps minor versions (#17217) - feat(txpool): add minimal priority fee configuration for transaction pool (#17183)
- chore(trie): make SparseStateTrie generic with respect to trie implementation (#17205)
- chore: make clippy happy (#17219)
- chore: bump evm 0.14 (#17206)
- fix: dont double serialize resp (#17204)
- chore(test): don't use
EvmInternals::new
(#17188) - perf(trie): implement
SparseTrieInterface
forParallelSparseTrie
(#17192) - perf(trie): implement
SparseTrieInterface
forRevealedSparseTrie
(#17191) - docs: fix typo in trie test comment (#17199)
- perf(trie): sparse trie trait (#17181)
- chore: bump inspectors (#17198)
- feat(trie): ParallelSparseTrie: Compute lower subtrie hashes in parallel (#17173)
- docs: typos (#17168)
- docs: update snapshot URL from downloads.merkle.io to snapshots.merkle.io (#17190)
- feat(trie): add ParallelSparseTrie::update_leaf (#16956)
- Add bootnode cmd to cli runner (#17180)
- chore: relax rpc middleware generic (#17174)
- docs: update Grafana repository URL in monitoring documentation (#17175)
- feat: expose chain_spec field in LocalPayloadAttributesBuilder (#17151)
- feat: trait impl for dbmock (#17124)
- docs: update metrics link in ethereum.mdx (#17170)
- chore(trie): factor out SparseTrieState (#17166)
- chore: removed link for book
repo/layout.md
(#17164) - feat: eth addons' middleware setter (#17159)
- chore: add debug for forkid mismatch (#17157)
- fix(trie): correct ParallelSparseTrie lower subtrie path management (#17143)
- chore: bump revm (#17153)
- docs: fix broken links and typos (#17149)
- fix: use safe math for withdrawals check (#17150)
- feat: introduce max_tx_gas_limit feature to enforce per-transaction gas limits (#17028)
- chore: fixed dead link in docs/.../sync-op-mainnet.mdx (#17146)
- chore: pass provider into SparseTrie and SparseStateTrie via impl argument in update/remove_leaf (#17099)
- chore: promote trace to debug (#17144)
- feat: remove redundant generic from
EthereumEngineValidatorBuilder
(#17108) - refactor: Replace reth
recover_singer_with_buf
withalloy
(#17107) - chore: rm unused either type (#17126)
- feat(optimism): add debug namespace endpoints to historical RPC forwarding (#17133)
- chore: fixed broken links in opstack.mdx (#17135)
- docs: fix spelling errors (#17139)
- docs: update Engine API link in ethereum.mdx (#17137)
- docs: add comprehensive documentation for LaunchContext type system (#17120)
- docs: fix installation source URL in ARM devices guide (#17128)
- docs: remove reference to ContextStatefulPrecompile in precompile cache example (#17130)
- chore(deps): weekly
cargo update
(#17131) - docs: fix broken tutorial link (#17127)
- Replace Book with Docs references (#17125)
- feat(alloy-provider): implement fetch block (#16934)
- docs: fix typo in section of node-components.mdx (#17105)
- refactor: move consensus layer events to launch context (#17117)
- refactor: move ERA import source creation to LaunchContext (#17115)
- refactor: make get_healthy_node_client async (#17119)
- chore: tell claude to run fmt before opening a pr (#17118)
- refactor: move ExEx launching to LaunchContext method (#17114)
- docs: fix error in
config.rs
(#17113) - refactor: simplify handling of
NetworkPrimitives
in CLI (#17112) - fix: track earliest available block correctly (#17095)
- docs: fix typos across documentation (#17102)
- feat: relax EthereumNode ChainSpec bounds (#17106)
- feat: use Header AT in
EthChainSpec::next_block_base_fee
(#17101) - deps: Upgrade
alloy
andop-alloy
versions1.0.13
=>0.18.7
and0.18.9
(#17103) - docs: debug clarify healtyh node rpc url setting (#17100)
- chore: rm redundant bounds (#17104)
- feat: Add StatelessTrie trait for
reth-stateless
(#17098) - feat: add per-address metrics for precompile cache (#17058)
- chore(
docs
): move to docs from book (#17096) - fix: use safe conversions for number and timestamps (#17093)
- perf(trie): implement remove_leaf for ParallelSparseTrie (#17035)
- chore: replace revm_utils with alloy_evm helpers (#17046)
- docs: error fixes for clarity (#17091)
- feat: centralize EIP-1559 base fee calculation in EthChainSpec (#16927)
- feat: punish malicious peers (#16818)
- chore: bump version in docs (#17085)
- feat(
docs
): serve rustdocs (#17084)
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.5.1-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.5.1-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | [reth-v1.5.1-x86_64-pc-windows-gnu.tar.gz](https://github.com/paradigmxyz/reth/releases/download/v1.5.1/reth-v1.5.1-x86_64-pc-windows-gnu... |
Reth v1.5.0
Summary
This release brings significant performance improvements to state root computation, resolves a problem with Base mainnet Merkle stage, and introduces opt-in ERA sync support and initial rollout of pre-merge history expiry.
The release also includes important OP Stack improvements with historical RPC forwarding for pre-Bedrock requrests and various RPC and EVM enhancements.
Additionally, we've revamped the documentation at reth.rs for better developer experience.
Highlights
Performance
This release boosts performance, achieving 15-20% faster block processing times on average.
- State root computation performance improved through optimized
U256
nybbles implementation (#16727) - Introduced incremental threshold mechanism in Merkle stage to prevent OOM issues during sync (#16178)
Pre-Merge History Expiry
This release integrates features for pre-merge history expiry.
With --prune.bodies.pre-merge
pre merge transactions are now deleted on launch (it is also possible to manually delete the static files for transactions pre merge).
This behaviour is currently still opt-in but will become the default behaviour for full nodes eventually.
With pre-merge history expiry, clients are allowed to no longer serve blocks pre merge over p2p. ERA sync allows new nodes to download pre-merge history (genesis to merge block (15,537,393)) using pre-validated ERA1 archive files instead of syncing from peers. Enable it with --era.enable
when starting a new node. ERA1 files are automatically downloaded from default hosts or can be provided locally with --era.path
. If you're starting a new sync, please give it a try.
- Introduced opt-in ERA sync support for pre-merge history via
--era.enable
flag for Sepolia and Mainnet (#16008) - Added
reth era export
command for ERA file generation (#15909) - Implemented pre-merge transaction file pruning to prepare for EIP-4444 history expiry (#16702)
OP Stack
- Added
--rollup.historicalrpc
CLI argument for op-mainnet historical RPC pre-Bedrock forwarding (#16941) - Fixed missing historical RPC endpoints for Optimism pre-Bedrock (#16976)
- Implemented median-based priority fee suggestion for Optimism (#16794)
Bug Fixes
- Fixed Base mainnet Merkle trie OOM issues during sync (#16178)
- Corrected beacon block root handling logic (#16767)
- Fixed max-tx-input-bytes propagation in CLI (#17066)
- Resolved empty withdrawals issue when parent has withdrawals root (#16980)
- Enforced EIP-2681 in transaction pool (#16967)
RPC and EVM Improvements
- Added
eth_sendRawTransactionSync
support (#16683) - Enhanced RPC type system with configurable middleware (#17024)
- Improved transaction request propagation across network types (#17025)
- Optimized EVM reuse in
eth_estimateGas
RPC calls (#16958)
Other Notable Changes
- Enhanced testing infrastructure with improved
eth/69
protocol coverage (#16759) - Added
eth/69
protocol support with proper version constants (#16880)
Compatible Dependencies
- alloy-primitives: 1.2.0
- alloy: 1.0.13
- op-alloy: 0.18.7
- revm: 26.0.1
- op-revm: 7.0.1
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | medium |
Non-Payload Builders | medium |
See Update Priorities for more information about this table.
All Changes
- chore: bump version 1.5.0 (#17083)
- feat: add blanket impl for Receipt trait (#17082)
- fix(
docs/sdk
): heading hierarchy (#17079) - feat: convert reth-bench scripts to use uv script format (#17078)
- docs: error fixes for clarity (#17062)
- fix(
docs
): redo system reqs, fix links, rebrand to docs (#17071) - chore: bump alloy 1.0.13 (#17072)
- feat: include eth_sendRawTransactionSync in eth namesapce (#17070)
- docs: typo in comment for
get_pending_transactions_by_origin
(#17065) - fix(cli): propagate max-tx-input-bytes setting (#17066)
- docs: add libmdbx restriction to CLAUDE.md (#17060)
- refactor(examples): Use
TransactionEnvelope
macro fromalloy
forCustomTransaction
in thecustom-node
example (#17057) - chore: bump alloy patches (#17067)
- feat(trie): add assert_eq_parallel_sparse_trie_proof_nodes (#17052)
- docs: fix typo "takes effect" (#17053)
- chore: delete reth-performance dashboard (#16635)
- chore: Add precompile cache hit rate graph to grafana overview (#17055)
- feat: make jwt-secret argument consistent across reth-bench commands (#17050)
- chore: use earliest block number (#17044)
- chore: use payload_builder target (#17049)
- perf(trie): implement
ParallelSparseTrie::root
method (#17030) - chore: fix typo execution.rs (#17004)
- feat: introduce reth era export (#15909)
- fix(
docs
): banner on landing (#17048) - docs: fix errors and correction (#17047)
- fix(
docs
): broken links for images on landing (#17043) - chore(
ci
): rm concurrency from book workflow (#17038) - docs: fix typo in transaction expiration comment (#17037)
- chore: fix spelling errors (#17029)
- refactor(rpc): replace
ExtendedTxEnvelopeRepr
withExtendedRepr
inserde_bincode_compat
(#17033) - feat: add --rollup.historicalrpc CLI argument for op-reth (#16941)
- chore(
book
): migrate to vocs (#16605) - fix: correct typo “reseipt” → “receipt” in serde_bincode_compat tests (#17034)
- feat: prune pre merge transaction files (#16702)
- chore(trie): rephrase the log about storage proof task result sending (#17032)
- refactor(trie): introduce
SparseSubtrieInner::rlp_node
method (#17031) - feat(rpc): Propagate the RPC transaction request from
Network
andRpcTypes
(#17025) - feat: add configurable RPC middleware to RpcAddOns (#17024)
- chore: enable state root task in engine tree unit tests (#17023)
- feat(tx-pool): add getter methods for
EthTransactionValidator
internal fields (#17022) - docs: update outdated validtor docs (#17027)
- chore: remove unused for<'a> (#17026)
- feat: add codec re-exports to reth-op and reth-ethereum (#17020)
- chore: re-export op hardforks from op chainspec (#17018)
- perf(trie):
SparseSubtrie::update_hashes
(#16943) - feat: allow access to db via NodeBuilder (#17021)
- perf(trie): Place the root nodes of the lower SparseSubtries in those tries (#17011)
- refactor(rpc): rename crate reth_rpc_types_compat → reth_rpc_convert (#17019)
- revert: test: special case for nibbles implementations of
Compact
(#17006) (#17012) - feat(rpc): Add
TransactionRequest
intoRpcTypes
(#17017) - refactor(rpc): Rename crate
reth_rpc_types_compat
=>reth_rpc_convert
(#17013) - perf:
U256
nybbles (#16727) - docs(rpc): Add documentation for
RpcConverter
(#17010) - chore: rm standalone fn (#17007)
- refactor(rpc): Rename
TransactionCompat
=>RpcConvert
(#17009) - docs: rephrase RpcNodeCore docs (#17005)
- chore: add size field in the new_header_stream method (#17008)
- test: special case for nibbles implementations of
Compact
(#17006) - chore: simplify
RpcConverter
(#17002) - chore: rm unused eof variant (#17001)
- docs: improve ConfigureEvm trait documentation (#16937)
- refactor: introduce OpFullNodeTypes helper trait to reduce bound duplication (#16431)
- feat: bump revm v26 (#16969)
- docs: improve payload primitives documentation (#16986)
- feat(test): rewrite test_engine_tree_live_sync_transition_eventually_canonical using e2e framework (#16972)
- chore: fix typo bootnode.rs (#16995)
- chore: changed example command (#16993)
- docs: add
reth_fs_util
suggestion instead ofstd::fs
to claude doc helper (#16992) - chore(deps): weekly
cargo update
(#16987) - docs: fix error in HARDFORK-CHECKLIST.md (#16989)
- chore: use from conversion for txkind (#16990)
- feat: add rpc header compat (#16988)
- feat(rpc): Replace associated type
Transaction
withNetwork
inTransactionCompat
(#16973) - chore: simplify test HttpClient implementations (#16985)
- fix: use empty withdrawals if parent has withdrawals root (#16980)
- chore: relax localpending block bounds (#16979)
- chore(era): complete doc for
ClientWithFakeIndex
(#16984) - feat: add From impl for RecoveredBlock from blocks with recovered transactions (#16983)
- refactor: remove CallFees re-export and relocate tests (#16981)
- chore: remove unused features (#16963)
- chore(sdk): Add default for noop component (#16570)
- fix: Improve comment in historical RPC tests (#16971)
- feat(transaction-pool): enforce EIP-2681 (#16967)
- perf(rpc): optimize EVM reuse in
eth_estimateGas
(#16958) - feat(era): Attach file name and path to checksum error (#16974)...
Reth v1.4.8
Summary
Caution
This release contains a critical bug fix in the chain reorg logic. All node operators are recommended to upgrade, especially those running with --engine.persistence-threshold 0 --engine.memory-block-buffer-target 0
CLI arguments.
Besides, this release contains following changes:
- The default gas limit for Ethereum Mainnet has been increased to 60M gas.
- Improved performance for
engine_newPayload
response times on chain reorgs.
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | High |
Non-Payload Builders | High |
See Update Priorities for more information about this table.
All Changes
- ci: check Cargo version against Git tag in release.yml (#16657)
- chore: bump version 1.4.8 (#16655)
- chore: bump default gas limit 60M mainnet (#16650)
- perf: use already recovered signer (#16640)
- perf(engine): do not use state root task for non-empty revert state (#16631)
- feat(txpool): EIP-7825 max gas limit check (#16648)
- feat: json ChainNotification subscription endpoint (#16644)
- fix(engine): recompute trie updates for forked blocks (#16568)
- fix: check additional settings when enabling discv5 (#16643)
- chore: make
BuildOutcome::map_payload
pub (#16636) - chore: add minSuggestedPriorityFee check to OpEthapi (#16637)
- feat(
OpEngineValidator
):pub
chain_spec
(#16638) - feat: make
NewBlock
message generic (#16627) - chore: removed alloy_consensus::Header constraint in setup_without_db (#16623)
- chore: include target and latest in error message (#16630)
- refactor: extract common pool setup logic for Eth and Op nodes (#16607)
- chore: update Grafana dashboard (#16575)
- feat(rpc): Add
Primitives
associated type toTransactionCompat
trait (#16626) - feat: enable external
EngineApi
access (#16248) - feat(
OpAddOns
): relax trait bounds for generic engine validators (#16615) - feat: impl compress decompress for customheader (#16617)
- refactor(e2e): split actions.rs into submodule (#16609)
- fix: wrap forkid entry for eth key (#16616)
- feat: 🐛 fix using latest header (#16614)
- chore: Remove OmmersProvider (#16539)
- chore: make clippy happy (#16611)
- feat: fixed missing blocktimestamp in logs subscription (#16598)
- feat: fix tx da scaling (#16558)
- refactor: relax
OpAddOns
trait bounds (#16582) - docs(net): replace 404 link message.rs (#16597)
- fix(era): Use the
url
as the index page for HTTP hosts (#16555) - ci: special treatment for release candidate tags (#16603)
- test(e2e): set test_state_root_fallback for deep reorg test (#16573)
- refactor: replace generics with Node types for
OpExecutorBuilder
(#16601)
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.4.8-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.8-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.8-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.8-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.8-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/reth | - |
OP-Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | op-reth-v1.4.8-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.8-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.8-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.8-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.8-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/op-reth | - |
Reth v1.4.7
Summary
Caution
This release contains a critical bug fix for the chain split event on OP Mainnet: OP Labs Incident Post Mortem.
Besides, this release contains following changes since v1.4.3
:
RPC
- Add
debug_stateRootWithUpdates
method (#16353) - Fix nonce in
pending
tag foreth_getTransactionCount
method (#16407)
Reth SDK
Major custom_node
example overhaul:
-
CustomExecutorBuilder
(#16444) -
Implement block execution logic (#16435)
-
Add
CustomEvm
& extended transaction support (#16394, #16381, #16417, #16415, #16366, #16436) -
Refactor module layout (#16380)
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | - |
Non-Payload Builders | - |
OP Reth Users | High |
See Update Priorities for more information about this table.
All Changes
- chore: bump version to 1.4.7 (#16606)
- deps: revm
24.0.1
(#16604) - feat(optimism): Remove bounds on
EthChainSpec
andHardforks
forChainSpec
in theevm
crate (#16576) - chore: simplify
NetworkPrimitives
(#16556) - chore: rm some clones (#16588)
- chore(deps): weekly
cargo update
(#16587) - chore: put dev name last (#16585)
- chore: make clippy happy (#16581)
- chore: Remove Withdrawals Provider (#16538)
- feat(engine): allow configuring tree to always use state root fallback (#16569)
- test: set TreeConfig for nodes in e2e tests (#16572)
- revert: ci: deduplicate changelog in release notes (#16294) (#16563)
- feat(optimism): Remove bounds on
EthChainSpec
andHardforks
forOpEngineValidator
(#16574) - feat(e2e): add helper functions for FCU status checks (#16548)
- chore: added map helper fns for OpAddOns (#16541)
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.4.7-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.7-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.7-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.7-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.7-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/reth | - |
OP-Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | op-reth-v1.4.7-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.7-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.7-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.7-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.7-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/op-reth | - |
Reth v1.4.3
This is a patch release that fixes a regression on eth_getLogs
introduced in 1.4.1: #16355
It also includes some additional RPC fixes:
- 7702 Authorizations no longer fail to deserialize if both
v
andyParity
fields are provided: alloy-rs/eips#38 - Misc Javascript tracer fixes: paradigmxyz/revm-inspectors#296 paradigmxyz/revm-inspectors#295 paradigmxyz/revm-inspectors#293
Update Priority
This table provides priorities for which classes of users should update particular components.
User Class | Priority |
---|---|
Payload Builders | Medium |
Non-Payload Builders | Medium |
See Update Priorities for more information about this table.
Binaries
See pre-built binaries documentation.
The binaries are signed with the PGP key: 50FB 7CC5 5B2E 8AFA 59FE 03B7 AA5E D56A 7FBF 253E
Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | reth-v1.4.3-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.3-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.3-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | reth-v1.4.3-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | reth-v1.4.3-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/reth | - |
OP-Reth
System | Architecture | Binary | PGP Signature |
---|---|---|---|
x86_64 | op-reth-v1.4.3-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.3-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.3-x86_64-pc-windows-gnu.tar.gz | PGP Signature | |
x86_64 | op-reth-v1.4.3-x86_64-apple-darwin.tar.gz | PGP Signature | |
aarch64 | op-reth-v1.4.3-aarch64-apple-darwin.tar.gz | PGP Signature | |
Docker | paradigmxyz/op-reth | - |
What's Changed
- ci: do not dry run by default in
release.yml
by @shekhirin in #16358 - chore: Add configuration option to enable/disable HTTP response compression by @ByteYue in #16348
- ci: check
dry_run
againsttrue
in release workflow by @shekhirin in #16360 - chore: bump version 1.4.3 by @mattsse in #16359
New Contributors
Full Changelog: v1.4.2...v1.4.3