github Consensys/teku 21.6.0
v21.6.0

latest releases: 24.3.1, 24.3.0, 24.2.0...
2 years ago

Upcoming Breaking Changes

  • Teku currently publishes a head event on the REST API 4 seconds into a slot even if a block has not been received. In a future release this will be changed so head event is only published when a new
    chain head block is imported. The --Xvalidators-dependent-root-enabled option can be used to switch to the new behaviour now for testing.
    Note: this should be applied to both the beacon node and validator client if running separately.
  • The /teku/v1/beacon/states/:state_id endpoint has been deprecated in favor of the standard API /eth/v1/debug/beacon/states/:state_id which now returns the state as SSZ when the Accept: application/octet-stream header is specified on the request.

Additions and Improvements

  • Add additional bootnodes for Pyrmont testnet.
  • Implement GET /eth/v1/node/peer_count standard api endpoint.
  • Add beacon_eth1_requests_total metric to report the number of requests sent to eth1 endpoints.
  • Optimise how block production metrics are calculated.
  • Include expected path for keystore password file in error message when password file is not found.
  • When handling blocksByRange requests that target blocks we haven't yet downloaded, return the standard "resource unavailable" response code (3) rather than a custom response code.
  • Remove legacy pure Java BLS cryptography implementation (Mikuli).
  • Rework network configuration parsing to accept the new config format. For details on the new format, see the eth2.0-specs repo. With this change, we no longer support pointing to directories for the network configuration. Now, the network config (supplied via --network) should always point to a single yaml file.
  • For Altair networks, --p2p-subscribe-all-subnets-enabled will subscribe to all subcommittee subnets.
  • Support for building with JDK 16.

Bug Fixes

  • Fixed failures in the checkMavenCoordinateCollisions task if it was run prior to running spotless.
  • Use system default character set for console output rather than forcing UTF-8. Avoids corrupting characters on systems using charsets that are not ascii based.
  • Fixed a NullPointerException from validator clients for new networks, prior to genesis being known.
  • Fixed regression where eth_getLogs responses from Infura that rejected the request because they returned too many logs did not retry the request with a smaller request range.
  • Experimental: Fix for eth1 follow distance tracking revealed in Rayonism testnets. Teku incorrectly strictly follows 2048 blocks before the eth1 head but the follow distance should be based on timestamp, not block number.
    An experimental fix for this can be enabled with --Xeth1-time-based-head-tracking-enabled. Further testing will be conducted before enabling this by default.

Downloads

  • Available as 21.6.0 on Dockerhub
  • Download the binary distribution:
    • tar.gz (sha256: f2f49a8c8e1dc988b8758e9da096de1de250f8b904efc2c16565d3ec26afa825)
    • zip (sha256: 9f64d07007f462a4e74875d9104458b86958bd5c9cf09b965936d05f140b9c06)

Don't miss a new teku release

NewReleases is sending notifications on new releases.