Skip to content

Releases: Consensys/teku

24.10.3

28 Oct 22:50
56440a8
Compare
Choose a tag to compare

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

Note: this is the only version of Teku that supports the Mekong testnet (https://mekong.ethpandaops.io/).

Downloads

  • Available as 24.10.3 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: ca9111ba2a47261b71892e1e5f50789211c7e5dfd1b612c6d7f0f5802f99d767)
    • zip (sha256: 90f870d7b35acd2393b20d30346f2593cc1688849334bb0ec626ef260497eb43)

Breaking Changes

N/A

Additions and Improvements

  • Clean up old beacon states when switching from ARCHIVE to PRUNE or MINIMAL data storage mode
  • Upgrade to jvm-libp2p 1.2.1 which brings:
    • message publishing over gossipsub improvements (addresses Failed to publish * because no peers were available on the required gossip topic)
    • IDONTWANT control message usage improvements
  • Improved block production API compatibility with DVT software (i.e. SSV)

Bug Fixes

  • Fixed a block production issue for Validator Client (24.10.0 to 24.10.2 Teku VC), where required headers were not provided for JSON payloads. Default SSZ block production was unaffected.
  • Block production now uses json data (more like 24.8.0 did than 24.10) if the Eth-Consensus-version header is absent.

Upcoming Breaking Changes

N/A

24.10.2

16 Oct 10:15
e38dcce
Compare
Choose a tag to compare

This release is a hotfix to address an issue affecting Windows users using versions 24.10.0 and 24.10.1 that was preventing Teku from starting up.

Downloads

  • Available as 24.10.2 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: 1cc76913f3b85987e2a60c9b94c6918d31773ebd3237c5fdf33de366fa259202)
    • zip (sha256: 18aafa3e0b862b05dc4e1f14aa1f2527a2dc6352d9e985470da9d7b15438a597)

Breaking Changes

  • Renamed metrics validator_attestation_publication_delay,validator_block_publication_delay and beacon_block_import_delay_counter to include the suffix _total added by the current version of prometheus.

Additions and Improvements

N/A

Bug Fixes

  • Windows startup issue.

Upcoming Breaking Changes

N/A

24.10.1

09 Oct 07:29
29c81b8
Compare
Choose a tag to compare

KNOWN ISSUE

This release is not compatible with Windows. Teku will fail to start on Windows.
Workaround: manually delete the file jc-kzg-4844-1.0.0.jar located under the teku/lib directory and restart Teku.

This release is a hotfix to address an issue introduced in version 24.10.0 that was preventing Teku from starting up when using the --validators-proposer-config configuration option.

Downloads

  • Available as 24.10.1 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: dca08124d8f6d5127505760f4e332d16536e1d16fed63e1df7bfe4d08273e6be)
    • zip (sha256: 88629729c0795374cf058d91c02b886be53b9f82710e6fc1d1346c5395b4227b)

Breaking Changes

  • Renamed metrics validator_attestation_publication_delay,validator_block_publication_delay and beacon_block_import_delay_counter to include the suffix _total added by the current version of prometheus.

Additions and Improvements

N/A

Bug Fixes

  • Fix startup issue when using --validators-proposer-config configuration option.

Upcoming Breaking Changes

N/A

24.10.0

08 Oct 09:23
234f711
Compare
Choose a tag to compare

KNOWN ISSUE

This release has an issue for users that have --validators-proposer-config loading their proposer configuration file. Users with a configured proposer config file should not install this release.

This release is also not compatible with Windows. Teku will fail to start on Windows.

This issue is resolved in 24.10.1

Summary

This is a recommended update containing blobs handling and networking improvements.

Downloads

  • Available as 24.10.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: f48a1255553be04830396149c48ef660034e50baa454c9cacb310ace2c8ca66f)
    • zip (sha256: 67ef7e1aa4dc138c526d8ac7230c965157032a579a98767b22aba8e8db1662ff)

Breaking Changes

  • Renamed metrics validator_attestation_publication_delay,validator_block_publication_delay and beacon_block_import_delay_counter to include the suffix _total added by the current version of prometheus.

Additions and Improvements

  • Removed the deprecated GetBlindedBlock
  • Removed the deprecated GetBlockV2
  • Implemented PostAggregateAndProofsV2 (adding support for Electra)
  • Added support for Ephemery Testnet --network=ephemery
  • Updated bootnodes for Holesky network
  • Disabled flood publish behaviour on all p2p subnets. --Xp2p-flood-publish-enabled experimental parameter can be used to re-enable it, restoring previous behaviour.
  • Add a fix for CVE-2024-7254
  • Updated LUKSO configuration with Deneb fork scheduled for epoch 123075 (November 20, 2024, 16:20:00 UTC)
  • Support for IDONTWANT libp2p protocol messages
  • /eth/v1/node/peers endpoint now populates enr field of the peer whenever is possible
  • Support for engine_getBlobsV1 to retrieve blobs using local execution layer. This will improve block import time when blobs are published late.

Bug Fixes

  • Removed a warning from logs about non blinded blocks being requested (#8562)
  • Fixed blockImportCompleted log message timing #8653

Upcoming Breaking Changes

N/A

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.