Skip to content

Releases: Consensys/teku

24.8.0

07 Aug 21:40
777c9dc
Compare
Choose a tag to compare

This is a recommended update requiring at least Java 21.

Attention: Check that Java 21 is installed prior to upgrade to minimise downtime during your upgrade.

Downloads

  • Available as 24.8.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 10de70bfbe45a42c30a04a86b653e932936053c5e14abe541f6d236a450fd851)
    • zip (sha256: 0b5f8c8aa376eb48452e998d1d5b933bb74d1ee23ed1f244a20d9cae264c9997)

Breaking Changes

  • Updated counter metrics to incorporate the suffix _total. If you are using a custom dashboard to monitor Teku metrics, you might need to update the metrics manually when breaking changes are introduced. For more information, see Update metrics.
  • Java 21+ is required to be installed to run Teku. Refer to https://docs.teku.consensys.io/get-started/install for the updated instructions.

Additions and Improvements

  • Added support for dual-stack (IPv4/IPv6) for discovery and p2p. Refer to https://docs.teku.consensys.io/development/how-to/find-and-connect/configure-ipv6 for more details.
  • Added a state pruner that can limit the number of finalized states stored when running an archive node.
  • Updated bootnodes for Sepolia network.
  • Implemented GetBlockAttestationV2 (adding support for Electra attestations)
  • Implemented GetAttestationsV2 (adding support for Electra attestations)
  • Implemented GetAggregateAttestationV2 (adding support for Electra attestations)
  • Implemented GetAttesterSlashingV2 (adding support for Electra attestations)
  • Updated a number of parameters to reduce issues when using p2p-subscribe-all-subnets-enabled. If you have adjusted queue sizes manually when using all-subnets, please refer to details below. Manual settings will still override these defaults.
  • When p2p-subscribe-all-subnets-enabled, p2p-peer-lower-bound now defaults to 60 (previously 64), and p2p-peer-upper-bound now defaults to 80 (previously 100).
  • When p2p-subscribe-all-subnets-enabled, (Xnetwork-async-p2p-max-queue, Xnetwork-async-beaconchain-max-queue, Xp2p-batch-verify-signatures-queue-capacity) now default to 40_000 (previously 10_000)
  • When p2p-subscribe-all-subnets-enabled, Xvalidator-executor-max-queue-size now defaults to 60_000 (previously 40_000).
  • Enabled GetNewBlockV3 by default.

Bug Fixes

N/A

Upcoming Breaking Changes

N/A

24.6.1

21 Jun 12:39
a9f9826
Compare
Choose a tag to compare

This is an optional update containing a fix of a bug found on 24.6.0. It is only applicable to users who experience a failure on startup.

Downloads

  • Available as 24.6.1 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 743fb0afd7c2677e8e770daa2a710ffeb4ebb237663ddd974464b9d6c8906937)
    • zip (sha256: 379bf78f22b6f72bdf0c2ae3546dc51c6d0e59d4cec132387da4c9ddc90972b8)

Current Releases

For information on changes in released versions of Teku, see the releases page.

Breaking Changes

Additions and Improvements

Bug Fixes

  • Fixed an issue from version 24.6.0 where Teku failed to start on machines with directly assigned public IP addresses (not running under NAT), displaying the error message: Teku failed to start: java.io.UncheckedIOException: java.net.UnknownHostException: Unable to determine local IPvx Address

Upcoming Breaking Changes

  • Next release will introduce a breaking change to Teku's metrics. This is due to some metrics changing names after a library upgrade.
    We recommend all users of the Teku - Detailed dashboard to upgrade to version Revision 12
    as soon as possible. Documentation with all metrics that have been renamed will be provided.
  • Next release will require Java 21. The current release is compatible, please consider upgrading before the next release.
  • From the next release, you will need to explicitly set --data-storage-mode=(prune|archive) unless you're using minimal data-storage-mode (which is the default behaviour).

24.6.0

19 Jun 22:08
fb21b1a
Compare
Choose a tag to compare

This is a recommended update with with performance improvements and bug fixes.

Downloads

  • Available as 24.6.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 3be854b094302d0d4aba3492248f76f13d9245a2d1778989239440ef8ccf06d8)
    • zip (sha256: 91d7937c9f6d23fcba8294fcfd8dd3e0a492e2a84bc8b925143eb28dc4262a3d)

Current Releases

For information on changes in released versions of Teku, see
the releases page.

Breaking Changes

  • Renamed --Xp2p-dumps-to-file-enabled hidden CLI option to --Xdebug-data-dumping-enabled

Additions and Improvements

  • Added metadata fields to /eth/v1/beacon/blob_sidecars/{block_id} Beacon API response as per ethereum/beacon-APIs#441
  • Added rest api endpoint /teku/v1/beacon/state/finalized/slot/before/{slot} to return the slot of the most recently stored state at or before the specified slot.
  • The validator client will start using the v2 variant of the beacon node block publishing
    endpoints. In the cases where the block has been produced in the same beacon node, only equivocation validation will be done instead of the entire gossip validation.
  • Docker images are now based on ubuntu 24.04 LTS (noble)
  • The teku vc subcommand fails when no validator key source is provided. In order to run a validator client, one of the following options must be set:
    --validator-keys, --validators-external-signer-url or --validator-api-enabled
  • Updated dependencies.

Bug Fixes

  • Fixed performance degradation introduced in 24.4.0 regarding archive state retrieval time.
  • Fixed file writer when storing database mode settings to file (related to #8357).

Upcoming Breaking Changes

  • Next release will introduce a breaking change to Teku's metrics. This is due to some metrics changing names after a library upgrade.
    We recommend all users of the Teku - Detailed dashboard to upgrade to version Revision 12
    as soon as possible. Documentation with all metrics that have been renamed will be provided.
  • Next release will require Java 21. The current release is compatible, please consider upgrading before the next release.
  • From the next release, you will need to explicitly set --data-storage-mode=(prune|archive) unless you're using minimal data-storage-mode (which is the default behaviour).

24.4.0

25 Apr 06:20
cdcb177
Compare
Choose a tag to compare

This is a recommended update containing performance improvements.

Downloads

  • Available as 24.4.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: ca28aa03f7e6b095a89adb34c30b5ec78075031e4396488389b89d6bb2864416 )
    • zip (sha256: 4819327e94cde3158293c3abc258721790b9ebdaffb5fff903fc8ce84b71f2ef )

Breaking Changes

  • Removed support for the Goerli network --network=goerli.

Additions and Improvements

  • Increased the executor queue default maximum size to 40_000 (previously 20_000), and other queues to 10_000 (previously 5_000). If you have custom settings for these queues, check to ensure they're still required.
  • Added peers_direction_current libp2p metric to track the number of peers by direction (inbound and outbound).
  • Deposit tree snapshots will be loaded from database as a default unless custom snapshot has been provided.
  • Added hidden option --Xdeposit-contract-logs-syncing-enabled to allow disabling the syncing of the deposit contract logs from the EL. This is useful when running a non-validating node. It is advisable to be used alongside with --Xeth1-missing-deposits-event-logging-enabled=false to avoid unnecessary logging of missing deposits.
  • Updated the bootnodes for Chiado and Gnosis networks.
  • Added hidden option --Xp2p-dumps-to-file-enabled to enable saving p2p dumps to file.
  • Consensus layer (CL) and execution layer (EL) clients' information will be appended to the validator graffiti. Check documentation for the available configuration options.
  • Added support for Graffiti management in the Key Manager API.

Bug Fixes

  • N/A

Upcoming Breaking Changes

  • N/A

24.3.1

27 Mar 01:18
508459f
Compare
Choose a tag to compare

This is a recommended update for mainnet nodes with improvements to CPU and bandwidth issues observed since Deneb upgrade.

Key changes:

  • Updated libp2p seen cache configuration reducing CPU and bandwidth consumption
  • Increased attestation cache capacity to improve block building
  • Introduced Validator Slashing Prevention feature
  • Fixed issue between Teku Validator Client and Lighthouse Beacon Nodes

Downloads

  • Available as 24.3.1 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: c0d1754569223e01c4ccab4a3adac8cd120586b8c9806aa32161189e6b4109b5)
    • zip (sha256: 904fb19bb02e0982d18ef40729c859055894cbdd9243bc1e4be62204e8e32e6b)

Breaking Changes

  • The development command line argument --Xvalidator-is-local-slashing-protection-synchronized-enabled has become a supported and documented argument --validator-is-local-slashing-protection-synchronized-enabled.

Additions and Improvements

  • Introduced Validator Slashing Prevention feature.
  • If the EL supports the engine_getClientVersionV1 Engine API method, the default graffiti (when no graffiti has been configured by the validator) will include EL as well as CL version information. For more details, please see ethereum/execution-apis#517.
  • --p2p-private-key-file command line option supports reading a binary private key file.
  • Updated libp2p seen cache configuration to reflect EIP-7045 spec changes. This reduces CPU and network bandwidth consumption.
  • Increased the attestation cache capacity to allow Teku a bigger pool of attestations when block building.
  • Defaulted --builder-bid-compare-factor to 90. This makes it necessary for external block builders to give at least 10% additional profit compared to a local build before being taken into consideration. If you would like to go back to the previous default, set --builder-bid-compare-factor to 100.
  • Added --p2p-direct-peers command line option to configure explicit peers as per Explicit Peering Agreements libp2p spec.

Bug Fixes

  • Fix incompatibility between Teku validator client and Lighthouse beacon nodes #8117

24.3.0

08 Mar 04:51
51807fb
Compare
Choose a tag to compare

This is an optional update containing improvements and bug fixes.

Downloads

  • Available as 24.3.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 8400bcae29ceb98f206471fdd44de42bf22a6eb8ba41a2d04e4e99d07c32c629)
    • zip (sha256: ca2ca0b8e78977f6758ecb37004e99857e70d96b133628d452df3e93e65cbb11)

Breaking Changes

  • When a lock file is unable to be cleaned up, the (BN or VC) will now exit code 2 in preference to being 'up' but not able to perform duties. This will not self recover and will need intervention from the node operator.

Additions and Improvements

  • Improve block rewards calculation performance for /eth/v3/validator/blocks/{slot} block production beacon node API.
  • Updated Javalin to v.6 (used by rest-api and keymanager-api).
  • Docker image tags now default to jdk21 images unless a jdk-specific tag is used.

Bug Fixes

  • Fixed an issue where stale lock files weren't able to be cleaned up and would effectively park the service (BN or VC) with no user errors or any indication that the service was in a bad state.

24.2.0

16 Feb 00:36
b544b9e
Compare
Choose a tag to compare

Changelog

This is a required update for Mainnet users containing the configuration for the Deneb upgrade on March 13th. This update is required for Gnosis Deneb network upgrade on March 11th. For all other networks, this update is optional.

Attention: Teku will require around 50 GB of extra storage for blobs for Mainnet (35 GB for Gnosis), but theoretically blob storage requirements can go up to ~100 GB (200 GB for Gnosis). This extra storage space WILL NOT grow above this limit over time.

For more information about blobs, please have a look at the following page: https://docs.teku.consensys.io/concepts/proto-danksharding

Downloads

  • Available as 24.2.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: f7da4109b180e1f1118d6fa13e4d48a964d0f58724d1e6d3fd4a92ddccabab58)
    • zip (sha256: 32810f44a169dae094d8da36ac4cb7b3b8f5f409de55536263b3a634571f6834)

Breaking Changes

  • The CLI options --beacon-events-block-notify-when-validated-enabled and
    --beacon-events-block-notify-when-imported-enabled have been removed. This change was made due
    to redundancy, as the functionality of these options is now covered by the new block_gossip and
    the existing block SSE events.

Additions and Improvements

  • Updated Mainnet configuration with Deneb fork scheduled for epoch 269568 (March 13, 2024, 13:55:35 UTC)
  • Updated Gnosis configuration with Deneb fork scheduled for epoch 889856 (March 11, 2024, 18:30:20 UTC)
  • Improved compatibility with /eth/v3/validator/blocks/{slot} experimental beacon API for block production. It can now respond with blinded and unblinded content based on the block production flow. It also supports the builder_boost_factor parameter.
  • Add block_gossip SSE event as per ethereum/beacon-APIs#405
  • Deposit tree snapshots will be downloaded from checkpoint-sync-url when available #7715
  • Applied fork-choice confirmation rule prerequisite change outlined in ethereum/consensus-specs#3431.

24.1.1

24 Jan 02:50
da3e51b
Compare
Choose a tag to compare

Changelog

This is a required update for Sepolia, Holesky and Chiado. Optional for other networks.

Attention: Teku will require around 50 GB (35 GB for Chiado) of extra storage for blobs, but theoretically blob storage requirements can go up to 103 GB (200 GB for Chiado). This extra storage space WILL NOT grow above this limit over time.

Downloads

  • Available as 24.1.1 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 18ca14ff4e1f62423e9ce9546722f677d075344f395cc01eb2ac94d7175c80d4)
    • zip (sha256: e70a4a635c60794026a6e9c88c6f7c9535b659cbeb300844119763633c4e58be)

Breaking Changes

  • Removed the following hidden feature flags which are no longer needed: --Xfork-choice-update-head-on-block-import-enabled and --Xbls-to-execution-changes-subnet-enabled

Additions and Improvements

  • Added a hidden flag --Xfork-choice-updated-always-send-payload-attributes which would cause payload attributes to be calculated and sent with every fcU. This could be useful for builders consuming the payload_attributes SSE events.
  • Added Deneb (aka Dencun) configuration for Sepolia network for epoch 132608 (2024-01-30 22:51:12 UTC).
  • Added Deneb (aka Dencun) configuration for Chiado network for epoch 516608 (2024-01-31 18:15:40 UTC).
  • Added Deneb (aka Dencun) configuration for Holesky network for epoch 29696 (2024-02-07 11:34:24 UTC).
  • Generate key at —p2p-private-key-file path if specified file doesn't exist.

24.1.0

09 Jan 22:41
82435a7
Compare
Choose a tag to compare

Changelog

This is a required update for anyone running Goerli nodes as it contains the configuration required for the Deneb upgrade in Goerli. It is an optional update for anyone else. This version also has some bug fixes.

The Goerli upgrade is scheduled on 2024-01-17 06:32:00 UTC (timestamp 1705473120).

Attention: Teku will require around 50 GB of extra storage for blobs, but theoretically blob storage requirements can go up to 103 GB. This extra storage space WILL NOT grow above this limit over time.

Downloads

  • Available as 24.1.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 66e7160f8b616b80f2c2279450848f828e9da5df28c40275e8ada2d69238201d )
    • zip (sha256: 9c805908e96deb363e61321d46dd029ea70d1637001815b41082278599470f49 )

Breaking Changes

N/A

Additions and Improvements

  • Add proposer_slashing, attester_slasing and payload_attibutes (only when a loaded validator will be producing a block) events to the /eth/v1/events SSE stream #7837
  • Add Deneb configuration for Goerli 7857

Bug Fixes

  • Fix incompatibility between Teku validator client and Lighthouse beacon nodes #7842
  • Fix a block publishing endpoints issue where 202 status code could be returned but block hasn't been broadcast #7850

Upcoming Breaking Changes

N/A

23.12.1

18 Dec 03:02
f3d80b3
Compare
Choose a tag to compare

This is an optional update containing a few fixes of bugs found on 23.12.0. It is only a recommended upgrade for users running 23.12.0.

Note: The validator client in this release is not compatible with Lighthouse beacon nodes. If using this combination, please use release 23.11.0 of the validator client.

Downloads

  • Available as 23.12.1 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 0dcb49ac758b79779324b28c600d299bd9b30ed6b505e4a66fbb7a8797b9832f)
    • zip (sha256: 3089a2fcaee766476de81f41b6539c46a948ddb04f8d00828586140cc9bde1a7)

Known Issues

  • Using Teku Validator Client with Lighthouse beacon node won't work. Users using Teku Validator Client with Lighthouse Beacon Node should not upgrade to 23.12.0 or 23.12.1 #7842.

Breaking Changes

N/A

Additions and Improvements

  • Added --ee-jwt-claim-id command line option to provide id to the execution engine JWT claims

Bug Fixes

  • Fixed the command line help not displaying --checkpoint-sync-url as an option. #7823
  • Fixed bug preventing node to startup when using --exit-when-no-validator-keys-enabled even with keys present. #7829
  • Fixed bug when node would not start if it failed downloading the deposit snapshot tree from Beacon API. #7827