Releases: Consensys/teku
24.10.3
This is a recommended update with bug fixes and networking improvements.
Mekong Testnet
Note: this is the only version of Teku that supports the Mekong testnet (https://mekong.ethpandaops.io/).
Due to a bug this version does NOT support Mekong anymore, please use the mekong
branch (https://github.com/Consensys/teku/tree/mekong) building it from source (more info can be found here)
Downloads
- Available as
24.10.3
on Dockerhub - Download the binary distribution:
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
- message publishing over gossipsub improvements (addresses
- 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
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:
Breaking Changes
- Renamed metrics
validator_attestation_publication_delay
,validator_block_publication_delay
andbeacon_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
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:
Breaking Changes
- Renamed metrics
validator_attestation_publication_delay
,validator_block_publication_delay
andbeacon_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
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:
Breaking Changes
- Renamed metrics
validator_attestation_publication_delay
,validator_block_publication_delay
andbeacon_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 populatesenr
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
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:
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), andp2p-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
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:
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 theTeku - 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
This is a recommended update with with performance improvements and bug fixes.
Downloads
- Available as
24.6.0
on Dockerhub - Download the binary distribution:
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 theTeku - 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
This is a recommended update containing performance improvements.
Downloads
- Available as
24.4.0
on Dockerhub - Download the binary distribution:
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
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:
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
This is an optional update containing improvements and bug fixes.
Downloads
- Available as
24.3.0
on Dockerhub - Download the binary distribution:
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.