Skip to content

Hourglass Nebula (v1.10.14)

Compare
Choose a tag to compare
@fjl fjl released this 23 Dec 10:22
· 530 commits to release/1.10 since this release

The focus of this release is bug fixes and performance improvements.

We are especially pleased to announce that this release contains a prototype implementation of the PoW to PoS transition (a.k.a. 'The Merge'). As of this version, Geth is compatible with the Kintsugi testnet spec v3.

We would also like to thank Team Ipsilon for their development of the EVM optimizations included in this release. EVM bytecode evaluation is now ~20% faster.

Geth changes

  • A regression in txpool limit handling is resolved. This affects the --pricelimit option, which has been reverted to work exactly as it did in geth v1.10.12. (#24080)
  • Geth can now handle the transition from PoW to PoS. (#23761)
  • In the JavaScript console, long-running JS computation (i.e. for/while loops) can now be interrupted with Ctrl-C. (#23387)
  • A corner-case issue in the transaction hash indexer is resolved. (#24024)
  • Unclean shutdown markers are now updated regularly and report more accurate geth startup/shutdown times. (#24077)
  • In log messages related to RPC method invocations, the key "t" is now called "duration" to prevent a name clash when using the JSON output format. (#24112)

RPC API changes

  • The engine APIs (enabled in geth --catalyst mode) are now up-to-date for Kintsugi testnet v3. (#23984, #24067, #24075)
  • A panic in the clique_getSigner RPC method is resolved. (#23961)

Go library changes

  • The EVM implementation has been cleaned up and interpreter loop performance is improved. (#24120, #24048, #24085, #24026, #24031, #24040, #23970, #23952, #23974, #23977, #23967, #24066)
  • In preparation for EIP-3670, the EVM now recognizes the INVALID opcode 0xFE. (#24017)
  • Internal opcode names have been modernized to match Solidity: SHA3 is now KECCAK256, SUICIDE is now SELFDESTRUCT. (#23976, #24022, #24016)
  • Generating Go/Java bindings for contracts with struct-typed constructor parameters now works correctly. (#23940)
  • Built-in EVM trace loggers have moved from core/vm to a dedicated package. (#23892)
  • EIP-712 (typed data signing) structs have moved from signer/core to package signer/core/apitypes. (#24029)

Networking

  • The eth protocol implementation now uses request IDs (added by eth/66) internally. (#23576)
  • Hashing of eth response data now uses multiple threads, improving sync performance. (#24032)
  • The now-unused 2GB fast sync bloom filter has been removed. (#24047)
  • Serving ancient headers to other peers has been optimized. (#23105)
  • The discv4 test suite is more robust and logs received packets better. (#23966)
  • There are now fuzz tests for the snap protocol message handler. (#23957)

For a full rundown of the changes please consult the Geth 1.10.14 release milestone.


As with all our previous releases, you can find the: