Geth v1.10.21 is a maintenance release, adding built-in configuration for the merge fork on the Goerli testnet and the mergeNetsplitBlock
for the Sepolia testnet.
Specifically, this release
- defines a terminal total difficulty for Goerli as 10_790_000 (#25324) and
- defines the mergeNetsplitBlock as 1735371 for Sepolia. (#25372)
Command changes
- The
--netrestrict
option is now also applied for discv5. (#25304) - DNS discovery is now enabled for the Sepolia testnet. (#25288)
- puppeth can no longer deploy parity and pyethapp because these clients are unmaintained. (#25329)
- abigen now has a workaround for parameter names which are also Go keywords. (#25307)
- A few minor regressions in geth CLI argument handling are fixed. (#25234)
RPC API changes
- In block-based RPC methods like
eth_getBlockByNumber
, thesafe
block specifier can now be used to refer to the "safe" block post-merge. (#25165) - The
baseFee
can now be overridden in block tracing. (#25219) - RPC methods returning transaction objects now return the
chainId
for legacy transactions. (#25244) - In
eth_sendTransaction
, thechainId
parameter now verified even for legacy transactions. (#25157) eth_call
,eth_estimateGas
no longer add tx fees to the coinbase account. (#25214)- A new built-in tracer,
revertReasonTracer
, has been added. (#25265)
Merge changes
- The engine API can no longer perform block insertion while the client is snap-syncing. (#25210)
- When trying to set bad blocks retrieved via sync as canon, the API now returns INVALID. (#25190)
- The engine API endpoint ('authrpc') is now enabled by default. (#25152, #25394)
- Several other engine API bugs found during #TestingTheMerge are fixed. (#25230, #25136, #25236)
Go Library Changes
- The snap sync implementation has been updated in preparation for 'path-based state storage'. (#24898)
- The HTTP RPC server will no longer hang on shutdown even with very busy connections. (#25258)
- Package signer/core/apitypes now provides a function to calculate the EIP-712 typed data hash. (#25283)
Build changes
- We have reverted to an older version of goleveldb because recent versions have buggy compaction and manifest handling. (#25413)
- This release is built with Go 1.18.4 (#25247, #25293)
- Release tarballs have proper directory timestamps. (#25290)
For a full rundown of the changes please consult the Geth 1.10.21 release milestone
As with all our previous releases, you can find the:
- Pre-built binaries for all platforms on our downloads page.
- Docker images published under
ethereum/client-go
. - Ubuntu packages in our Launchpad PPA repository.
- OSX packages in our Homebrew Tap repository.