github sigp/lighthouse v8.0.0-rc.2
Gene

pre-release13 hours ago

Summary

Lighthouse v8.0.0-rc.2 is a release candidate for the upcoming Fulu-Osaka (Fusaka) hard fork, targeting the Holesky, Hoodi, and Sepolia testnets. Upgrading to v8.0.0-rc.2 or any earlier v8.0.0-rc.x version is mandatory prior to the Fulu forks on Hoodi:

  • Fulu on Hoodi: 2025-10-28 18:53:12 UTC. Slot 1622016.

This release brings full Fusaka support (including PeerDAS), enhanced networking capabilities, and other optimisations.

We strongly recommend users already running earlier v8.0.0-rc.x versions on testnets to upgrade, as this release fixes a peer disconnection regression introduced in v8.0.0-rc.1 and it will help us test prior to the mainnet fork (scheduled in December 2025).

This release is not recommended for mainnet, although mainnet users experiencing memory leaks are encouraged to upgrade to v8.0.0-rc.0 (not this rc.2).

Changes Since v8.0.0-rc.1

The main changes since v8.0.0-rc.1 are listed below. The rest of the release notes describe the changes since v7.1.0.

  • Add --semi-supernode flag to enable blob retrieval via the Beacon API without running a supernode. Semi-supernodes only download and store 50% of all erasure coded blob data which is just sufficient for recovering the blobs, therefore it uses significantly less resources and bandwidth compared to supernodes. (#8254 & #8265)
  • Add support for custody data column backfill, this will improve historical data availability across the network. (#7907)
  • Improve blob and data column pruning performance (#8266).
  • Fix a gossip validation regression introduced in in v8.0.0-rc.1 that could cause Lighthouse to incorrectly disconnect peers (#8215)
  • Fix builder get_header JSON deserialisation. This impacts users running a builder middleware that uses JSON, e.g. vouch. (#8228)
  • Other various performance and bug fixes.

⚠️ Breaking Changes ⚠️

💾 Database Schema Upgrade

Lighthouse v8.0.0-rc.1 includes a database schema upgrade to schema v28. This upgrade greatly reduces the size of fork choice on disk, leading to reduced I/O.

No action is required upon upgrading, Lighthouse will automatically upgrade your database to the new version.

If you would like to downgrade to a prior release (e.g. v7.1.0), then you must follow the instructions in the Lighthouse book for downgrading the database schema before switching your binary to the old version.

Changes to Blob Retrieval and the existing /eth/v1/beacon/blob_sidecars API

Once PeerDAS is activated from the Fulu fork:

  • Users will no longer be able to retrive blobs via the Beacon APIs. This is because each full node will only sample and store a small portion of blob data. (See PeerDAS)
  • The existing /eth/v1/beacon/blob_sidecars/{block_id} endpoint will return empty blob proofs in post-Fulu blob sidecars. This is because consensus clients will use cell proofs instead of blob proofs for blob verification. This endpoint will be removed in a future release.

🦀 Rust Version Requirements (MSRV)

If you build Lighthouse from source you need to upgrade your Rust compiler to v1.88.0 or later. Usually this can be accomplished with the command rustup update.

Jemalloc

When compiling Lighthouse from source, the jemalloc feature no longer exists. It is enabled by default and can be disabled by a new feature called sysmalloc.

🔑 Network Key Format Migration

Lighthouse BN's private key that it uses for networking cryptography has been changed from binary to hex string format. This is only relevant for users who are manually manipulating these keys, or downgrading to an older version of Lighthouse after running v8.0.0-rc.1.

Lighthouse will automatically change the format of the key from binary to hex upon upgrading. Because the new key format is not supported by previous versions of Lighthouse, the key must be manually deleted if you would like to downgrade. The key can be found at $datadir/network/key.

🍎 Platform Support Changes

Pre-built macOS x86_64 binaries are no longer provided (#7862). Apple, GitHub runners, and Rust are dropping x86_64 macOS support, so we have made the decision to phase out support.

macOS x86 users should use the Linux Docker image, the homebrew package, or build Lighthouse from source.

🖥️ CLI Flag Changes

  • Changed: The default --block-cache-size is now 0 (#8066). To re-enable, use --block-cache-size N with a non-zero argument. We recommend leaving the cache disabled, as its absence improves performance for block persistence and RPC responses.

🦓 Fulu

This release candidate introduces full support for the Fulu hard fork, paired with the Osaka hard fork on the execution layer - together known as Fusaka - brings PeerDAS (Data Availability Sampling) and several new features to Ethereum. See this post for details.

New CLI Flags

  • --supernode: Subscribe to all data column subnets and run as a PeerDAS supernode (#8083). The old name --subscribe-all-data-column-subnets is aliased for now but will eventually be removed.

🔧 Memory & Performance Fixes

  • Fixed reprocess queue memory leak (#8065): Resolves gradual memory consumption increase during normal operation
  • Block cache optimization (#8066): Cache now disabled by default, eliminating contention issues
  • Reduced KZG verification overhead: Removed unnecessary verification from local block production (#7713, #7771)

📊 Add OpenTelemetry support

Lighthouse now includes built-in OpenTelemetry support for advanced monitoring and performance analysis. OpenTelemetry provides detailed traces showing exactly how your node processes blocks, handles network requests, and performs validator duties - breaking down operations into individual steps with precise timing data. This helps developers and operators identify bottlenecks, troubleshoot performance issues, and potentially optimize their setup.

New /eth/v1/beacon/blobs API for Blob Retrieval

Lighthouse now implements the /eth/v1/beacon/blobs/{block_id} API (#8103). L2s are encouraged to switch to using this API ahead of the deprecation of the blob sidecars API.

New CLI Flags

  • --telemetry-collector-url: Connect to an OpenTelemetry GRPC backend (e.g. opentelemetry-collector, Tempo) to export traces (#7816)
  • --telemetry-service-name: Override the service name differentiating traces when running multiple nodes

Getting Started: Set up an OpenTelemetry collector (such as Grafana Tempo) and run Lighthouse beacon node with the following flags:

--telemetry-collector-url http://localhost:4317 --telemetry-service-name lighthouse-bn

Other Notable Changes

  • SSZ default: Validator client now uses SSZ by default for /eth/v3/validator/blocks endpoint (#7727)
  • Selection Beacon API endpoints: Implement selections Beacon API endpoints to support DVT middleware (#7016)
  • New experimental beacon node flag:--complete-blob-backfill flag enables backfilling all blobs beyond the 18-day window (#7751)

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Beacon Node Validator Client
Staking Users (testnet) High High
Non-Staking Users (testnet) High ---
Staking Users (mainnet) N/A N/A
Non-Staking Users (mainnet) N/A ---

See Update Priorities for more information about this table.

Testnet users should update both the Lighthouse VC and BN to v8.0.0-rc.2 if using separate binaries. The execution layer client (e.g. Geth, Reth, Besu, Nethermind, Erigon) must also be updated prior to the Fulu fork.

All Changes

  • Release v8.0.0 rc.2 (#8255)
  • New design for blob/column pruning (#8266)
  • Only publish reconstructed columns that we need to sample (#8269)
  • Trigger backfill on startup if user switches to a supernode or semi-supernode (#8265)
  • Add --semi-supernode support (#8254)
  • Custody backfill sync (#7907)
  • Fix data column rpc request (#8247)
  • Improve block header signature handling (#8253)
  • Add version to the response of beacon API getPendingConsolidations (#8251)
  • Use millis_from_slot_start when comparing against reconstruction deadline (#8246)
  • Sync cleanups (#8230)
  • Fix get_header JSON deserialization. (#8228)
  • Avoid attempting to serve blobs after Fulu fork (#7756)
  • Feature gate test CLI flags (#8231)
  • More proposer shuffling cleanup (#8130)
  • Max reconstruction delay as a function of slot time (#8067)
  • Revert incorrect fix made in #8179 (#8215)
  • Add eip_3076 crate (#8206)
  • #6853 Adding store tests for data column pruning (#7228)
  • Ignore extra columns in da cache (#8201)
  • Remove safe_arith and import from crates.io (#8191)
  • Add max_blobs_per_block check to data column gossip validation (#8198)
  • Downgrade light client error logs (#8196)

Binaries

See pre-built binaries documentation.

The binaries are signed with Sigma Prime's PGP key: 15E66D941F697E28F49381F426416DC3F30674B0

System Architecture Binary PGP Signature
Apple logo aarch64 lighthouse-v8.0.0-rc.2-aarch64-apple-darwin.tar.gz PGP Signature
Linux logo x86_64 lighthouse-v8.0.0-rc.2-x86_64-unknown-linux-gnu.tar.gz PGP Signature
Raspberrypi logo aarch64 lighthouse-v8.0.0-rc.2-aarch64-unknown-linux-gnu.tar.gz PGP Signature
Windows logo x86_64 lighthouse-v8.0.0-rc.2-x86_64-windows.tar.gz PGP Signature
System Option - Resource
Docker logo Docker v8.0.0-rc.2 sigp/lighthouse

Don't miss a new lighthouse release

NewReleases is sending notifications on new releases.