Skip to content

Releases: paradigmxyz/reth

Reth v1.8.2

30 Sep 15:34
9c30bf7

Choose a tag to compare

image

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

23 Sep 16:32
e6608be

Choose a tag to compare

image

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

Full Changelog: v1.8.0...v1.8.1

Reth v1.8.0

23 Sep 15:03
132f5b5

Choose a tag to compare

image

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 to u128 (#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 with TxHashRef trait bound (#18362)
    Migration for custom Transaction types: move SignedTransaction::tx_hash to TxHashRef implementation
  • Enhanced type safety in CLI interfaces (#18375)
  • Added Future associated type to LaunchNode 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 to LaunchNode 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 to ReceiptConverter (#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 with alloy-evm and alloy-op-evm versions (#18526)
  • deps: Upgrade alloy and alloy-evm versions 1.0.30 => 1.0.32 and 0.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 uses pending_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...
Read more

Reth v1.7.0

08 Sep 15:54
9d56da5

Choose a tag to compare

image

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.

  1. Stop your Reth node
  2. Update reth binary to v1.7.0
  3. 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.
  4. 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.

image

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 of join_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 to caller_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...
Read more

Reth v1.6.0

22 Jul 15:10
d8451e5

Choose a tag to compare

image

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

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 to RpcBlockchainProvider 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 in getBlockReceipts (#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 to opstack (#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 to highest_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> for build_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() to TxReceipt for Receipt/OpReceipt (#17383)
  • docs: typos (#17335)
  • docs: fix link to installation (#17375)
  • feat: make Receipt generic over TxType (#17237)
  • perf(engine): clear accounts trie in background to not block state root (#17369)
  • fix(docs): ...
Read more

Reth v1.5.1

08 Jul 13:15
dbe7ee9

Choose a tag to compare

image

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 to filtered (#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 version 1.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 for ParallelSparseTrie (#17192)
  • perf(trie): implement SparseTrieInterface for RevealedSparseTrie (#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 with alloy (#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 and op-alloy versions 1.0.13 => 0.18.7 and 0.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...
Read more

Reth v1.5.0

26 Jun 14:04
61e38f9

Choose a tag to compare

image

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.

image

  • 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 from alloy for CustomTransaction in the custom-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 with ExtendedRepr in serde_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 and RpcTypes (#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 into RpcTypes (#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 of std::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 with Network in TransactionCompat (#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)...
Read more

Reth v1.4.8

04 Jun 18:03
127595e

Choose a tag to compare

image

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:

  1. The default gas limit for Ethereum Mainnet has been increased to 60M gas.
  2. 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 to TransactionCompat 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

02 Jun 18:24
dc7cb6e

Choose a tag to compare

image

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 for eth_getTransactionCount method (#16407)

Reth SDK

Major custom_node example overhaul:

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 and Hardforks for ChainSpec in the evm 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 and Hardforks for OpEngineValidator (#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

20 May 10:45
fe3653f

Choose a tag to compare

image

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:

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

New Contributors

Full Changelog: v1.4.2...v1.4.3