Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save evertonfraga/db108116ca207ae5fc09e43ff50f7b78 to your computer and use it in GitHub Desktop.
Save evertonfraga/db108116ca207ae5fc09e43ff50f7b78 to your computer and use it in GitHub Desktop.
geth.txt
Geth v1.10.2 is a maintenance release, containing bug fixes and a few minor new features.
#### Geth command changes
- Mining work package notifications can now be changed to contain the complete pending block header instead of a work package array. To enable this functionality, use the `--miner.notify.full` flag ([#22558](https://github.com/ethereum/go-ethereum/pull/22558))
- Geth will now open chain databases in read-only mode when performing commands that should not modify the database. This fixes several cases where indexing operations and snapshot generation would run as part of commands like `geth inspect` ([#22498](https://github.com/ethereum/go-ethereum/pull/22498))
- Geth now supports JSON log output using the `--log.json` flag ([#22341](https://github.com/ethereum/go-ethereum/pull/22341))
- The `geth copydb` command has been removed because it had been broken for quite a while ([#22501](https://github.com/ethereum/go-ethereum/pull/22501))
- The new `geth db dumptrie` command shows the state tree entries of an account ([#22563](https://github.com/ethereum/go-ethereum/pull/22563))
- When exporting a chain segment using `geth export`, the end block is now validated against the chain head to prevent fatal error at the end of export ([#22387](https://github.com/ethereum/go-ethereum/pull/22387))
- `geth snapshot` commands now support setting the freezer directory using the `--datadir.ancient` flag ([#22486](https://github.com/ethereum/go-ethereum/pull/22486))
- `geth snapsnot prune-state` now considers pruning successful before performing a long-running leveldb compaction. This avoids issues when the compaction process is interrupted by an abnormal exit ([#22579](https://github.com/ethereum/go-ethereum/pull/22579))
- `geth dumpgenesis` and the `geth db` commands now support the `--datadir` flag and the network selection flags (`--rinkeby`, etc.) ([#22406](https://github.com/ethereum/go-ethereum/pull/22406), [#22407](https://github.com/ethereum/go-ethereum/pull/22407))
#### RPC/GraphQL API changes
- The new `eth_createAccessList` RPC method allows auto-creating access lists for EIP-2718 transactions ([#22604](https://github.com/ethereum/go-ethereum/pull/22604))
- RPC methods `ethash_submitHashrate` and `miner_hashrate` have been renamed from their previous incorrect spelling `*hashRate` ([#22604](https://github.com/ethereum/go-ethereum/pull/22604))
- The GraphQL API now supports EIP-2718 access list transactions ([#22491](https://github.com/ethereum/go-ethereum/pull/22491))
- `eth_chainId` now supports chain IDs larger than 64 bits ([#22243](https://github.com/ethereum/go-ethereum/pull/22243))
- The `admin_startRPC` and `admin_stopRPC` methods have been renamed to `(start|stop)HTTP` ([#22461](https://github.com/ethereum/go-ethereum/pull/22461))
- In LES server RPC APIs, the node ID can now be supplied as an `enode://` URL or 32-byte hex ID ([#22423](https://github.com/ethereum/go-ethereum/pull/22423))
- Several bugs related to interactions between chain tracing and the snapshot system are resolved ([#22473](https://github.com/ethereum/go-ethereum/pull/22473), [#22333](https://github.com/ethereum/go-ethereum/pull/22333), [#22629](https://github.com/ethereum/go-ethereum/pull/22629))
- Tracing now reports correct gas amounts for EIP-2718 transactions ([#22480](https://github.com/ethereum/go-ethereum/pull/22480))
#### Go library changes
- TransactOpts of accounts/abi/bind now support the NoSend option, which prevents sending the transaction. This can be used with Go contract bindings to 'dry-run' the binding ([#22446](https://github.com/ethereum/go-ethereum/pull/22446))
- The Ledger USB wallet backend now supports EIP-712 'typed data signing' ([#22378](https://github.com/ethereum/go-ethereum/pull/22378))
- Several critical issues related to state snapshot handling are fixed in this release ([#22540](https://github.com/ethereum/go-ethereum/pull/22540), [#22582](https://github.com/ethereum/go-ethereum/pull/22582), [#22551](https://github.com/ethereum/go-ethereum/pull/22551))
- Background transaction indexing no longer fails for EIP-2718 transactions ([#22457](https://github.com/ethereum/go-ethereum/pull/22457))
- The InfluxDB metrics reporter no longer reports spurious zero values when a histogram has not been updated since the last report ([#22590](https://github.com/ethereum/go-ethereum/pull/22590))
- LES metrics have been renamed to avoid issues in the Prometheus reporter ([#22459](https://github.com/ethereum/go-ethereum/pull/22459))
- The ethstats client no longer crashes when Geth exits immediately after starting ([#22587](https://github.com/ethereum/go-ethereum/pull/22587))
- A rare crash in RPC client subscription handling has been fixed ([#22597](https://github.com/ethereum/go-ethereum/pull/22597))
#### Networking
- Several bugs in the implementation of snap sync are fixed in this release, but it is still considered experimental and not yet enabled by default ([#22596](https://github.com/ethereum/go-ethereum/pull/22596), [#22513](https://github.com/ethereum/go-ethereum/pull/22513), [#22553](https://github.com/ethereum/go-ethereum/pull/22553), [#22591](https://github.com/ethereum/go-ethereum/pull/22591))
- When metrics are enabled, the 'eth' protocol handler now measures the latency of message handling ([#22581](https://github.com/ethereum/go-ethereum/pull/22581), [#22586](https://github.com/ethereum/go-ethereum/pull/22586))
- The DNS discovery client was fixed to avoid hot-spinning when a DNS node trees contains many invalid/incompatible ENRs ([#22566](https://github.com/ethereum/go-ethereum/pull/22566))
- The DNS discovery deployer tool has been updated to resolve some long-standing bugs. Publishing of large trees is now much more efficient because needless updates are avoided, and better batching means the deployer waits less for the server. The tool now uses the latest AWS and CloudFlare SDK versions. ([#22572](https://github.com/ethereum/go-ethereum/pull/22572), [#22538](https://github.com/ethereum/go-ethereum/pull/22538), [#22537](https://github.com/ethereum/go-ethereum/pull/22537), [#22588](https://github.com/ethereum/go-ethereum/pull/22588), [#22360](https://github.com/ethereum/go-ethereum/pull/22360))
- The branch factor of DNS discovery trees has been reduced to ensure that all TXT records fit into the 512-byte limit of DNS/UDP packets ([#22533](https://github.com/ethereum/go-ethereum/pull/22533))
- `devp2p nodeset filter -les-server` was fixed to deal with the new format of the \"les\" ENR entry ([#22565](https://github.com/ethereum/go-ethereum/pull/22565))
- The cross-client test suite of the 'eth' protocol has been improved a bit, and now skips eth/66 tests when the node under test does not support protocol version 66 ([#22460](https://github.com/ethereum/go-ethereum/pull/22460), [#22508](https://github.com/ethereum/go-ethereum/pull/22508), [#22482](https://github.com/ethereum/go-ethereum/pull/22482), [#22474](https://github.com/ethereum/go-ethereum/pull/22474))
- LES connection pre-negotiation via UDP now works correctly ([#22451](https://github.com/ethereum/go-ethereum/pull/22451))
For a full rundown of the changes please consult the Geth 1.10.2 [release milestone](https://github.com/ethereum/go-ethereum/milestone/114?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).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment