Geth v1.16.2, titled "Sprouted Seed Vial", is a maintenance release that introduces implementations for the upcoming Fusaka EIPs, alongside performance optimizations and important bug fixes. While the upgrade is optional, feedback is encouraged.
Fusaka Network Upgrade Preparation
This release contains the client-side implementation for the next Ethereum network upgrade, Fusaka. Key changes include:
Core Improvements and Optimizations
RPC API Updates
Other Notable Changes
<!-- Sprouted Seed Vial (v1.16.2) --> This is a maintenance release that includes implementations of the Fusaka EIPs, along with several new features, optimizations, and bug fixes. Upgrading to this version is optional, but feedback from those who do is greatly appreciated. ### Fusaka: - Implement EIP-7825 - Transaction Gas Limit Cap. ([#31824](https://github.com/ethereum/go-ethereum/pull/31824),[#32230](https://github.com/ethereum/go-ethereum/pull/32230)) - Implement EIP-7934 - RLP Execution Block Size Limit. ([#31990](https://github.com/ethereum/go-ethereum/pull/31990)) - Implement EIP-7939 - CLZ opcode. ([#31989](https://github.com/ethereum/go-ethereum/pull/31989),[#32172](https://github.com/ethereum/go-ethereum/pull/32172)) - Implement EIP-7918 - Blob base fee bounded by execution cost. ([#31965](https://github.com/ethereum/go-ethereum/pull/31965)) - Implement EIP-7951 - Precompile for secp256r1 Curve Support. ([#31991](https://github.com/ethereum/go-ethereum/pull/31991)) - Implement EIP-7892 - Blob Parameter Only Hardforks. ([#32193](https://github.com/ethereum/go-ethereum/pull/32193)) - Implement EIP-7883 - ModExp Gas Cost Increase. ([#32231](https://github.com/ethereum/go-ethereum/pull/32231)) - Add Block-level accessList structure. ([#31948](https://github.com/ethereum/go-ethereum/pull/31948)) - Limit the max blobs in blob transaction. ([#32246](https://github.com/ethereum/go-ethereum/pull/32246)) ### Core: - Reduce the memory allocation in trie hash function. ([#31902](https://github.com/ethereum/go-ethereum/pull/31902)) - Improve the background sync mechanism of the freezer. ([#32135](https://github.com/ethereum/go-ethereum/pull/32135)) - Introduce file-based state journal. ([#32060](https://github.com/ethereum/go-ethereum/pull/32060)) - Fix the dropping oversized transaction announcements. ([#32210](https://github.com/ethereum/go-ethereum/pull/32210)) - Fix the condition that disables direct ancient sync mode. ([#32188](https://github.com/ethereum/go-ethereum/pull/32188)) - Add an interface for the jump destination analysis cache. ([#32143](https://github.com/ethereum/go-ethereum/pull/32143)) - Fix incorrect address length in historical state reader. ([#32248](https://github.com/ethereum/go-ethereum/pull/32248)) - Fix a dead lock in state history indexer. ([#32260](https://github.com/ethereum/go-ethereum/pull/32260)) - Expose `SigHash` of SetCodeAuthorization for customized signing. ([#32298](https://github.com/ethereum/go-ethereum/pull/32298)) ### RPC: - Reject `eth_getLogs` requests that include both block hash and block range. ([#31877](https://github.com/ethereum/go-ethereum/pull/31877)) - Fix block overrides in `debug_traceCall`. ([#32183](https://github.com/ethereum/go-ethereum/pull/32183)) - Introduce `debug_sync` to perform a trusted full chain sync. ([#32177](https://github.com/ethereum/go-ethereum/pull/32177),[#32149](https://github.com/ethereum/go-ethereum/pull/32149)) ### Others: - Add automatic package aliasing in rlp code generator. ([#31148](https://github.com/ethereum/go-ethereum/pull/31148)) - Add the metrics for tracking snap sync duration. ([#32258](https://github.com/ethereum/go-ethereum/pull/32258)) - Update checkpoints for blsync and filtermaps. ([#32336](https://github.com/ethereum/go-ethereum/pull/32336)) - Add test suite for ENRRequest. ([#32303](https://github.com/ethereum/go-ethereum/pull/32303)) For a full rundown of the changes please consult the Geth 1.16.2 [release milestone](https://github.com/ethereum/go-ethereum/milestone/191?closed=1). --- As with all our previous releases, you can find the: - Pre-built binaries for all platforms on our [downloads page](https://geth.ethereum.org/downloads/). - Docker images published under [`ethereum/client-go`](https://cloud.docker.com/u/ethereum/repository/docker/ethereum/client-go). - Ubuntu packages in our [Launchpad PPA repository](https://launchpad.net/~ethereum/+archive/ubuntu/ethereum). - OSX packages in our [Homebrew Tap repository](https://github.com/ethereum/homebrew-ethereum).