Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Upgrade] Go-Ethereum release v1.10.0 #1249

Merged

Conversation

quorumbot
Copy link
Collaborator

@quorumbot quorumbot commented Sep 3, 2021

TODO

Plan & Analyse

  • Review the Release Notes
  • Review PRs in the section below

As you review, list extra changes and/or tests to be implemented to ensure compatibility with GoQuorum specific features.

Build & Test

  • Pull and checkout PR branch locally, then merge GoQuorum master into this branch
  • Resolve conflicts, taking into account the prior analysis
  • Implement required changes until lint passes
  • Implement required changes until all unit tests pass
  • Implement required changes until acceptance tests pass
  • Implement extra changes and/or tests
  • Verify any left TODOs in the code

Extra changes

Add any extra changes/tests as comments on this PR.

Go-Ethereum Release: Pangaea Expanse (v1.10.0)

  • Version: v1.10.0
  • Published: 2021-03-03T16:59:53Z

Release notes

After three months of development, we are proud to announce the Geth 1.10.0 release, which is the first release in the 1.10 series.

There are a lot of new features in this release. While we review the highlights and list individual changes in this overview, we also invite you to read the Geth 1.10 release blog post, which explains the changes in more detail.

State snapshot system

In this release, the new snapshot mechanism is enabled by default. Snapshots provide O(1) access to state during EVM execution and also serve as the backbone of the snap sync and state pruning features. Note: should you run into any issues with snapshots, they can still be disabled using the --snapshot=false command-line flag. (#22280, #22177, #22288)

Snap sync

This is a new sync mode, which is a replacement for 'fast sync'. In snap sync, the node downloads Ethereum state data much more efficiently than fast sync ever could. With snap sync, we can also finally provide a progress indicator for the state download. Since this is a new feature, and few peers will support snap sync initially, snap sync is not yet enabled by default. We will make it the default in a couple of weeks. (#21482, #22171, #22235, #22272, #22334)

Berlin fork support

As of Geth 1.10.0, all EIPs scheduled for the Berlin hard fork are supported in Geth. However, due to ongoing debates about the content and timing of the fork, this release does not activate Berlin at any block number.

The following Berlin EIPs were already implemented in Geth 1.9.x:

  • EIP-2929: gas cost increases for state access opcodes
  • EIP-2315: simple subroutines for the EVM

In Geth 1.10.0, support for the following EIPs has been added:

  • EIP-2565: modexp precompile gas cost changes (#22213)
  • EIP-2718: typed transaction envelope (#21502)
  • EIP-2930: access list transactions (#21502)

We have also updated to the latest consensus tests. (#22009, #22290)

Offline state pruning

We have finally added a way to remove old state from the database. Using the geth snapshot prune-state command, you can instruct geth to rebuild the database from the stored snapshot while discarding any data that isn't part of the snapshot window of 128 blocks. Note that this feature is experimental. The pruning process takes a lot of time and geth cannot be used while it is running. We hope to improve this in future releases. (#21724, #22386, #22291, #22294)

Database changes

Geth 1.10.0 contains some changes which remove unnecessary data in the blockchain database. In particular, Geth no longer keeps transaction inclusion info for all transactions, and instead limits the storage of inclusion records to one year. For application developers, this change means that very old transactions can no longer be accessed by hash. Note: if you would like to
disable this behavior and keep inclusion information for all historical transactions, you can re-enable indexing using the --txlookuplimit=0 command-line flag. (#22293, #22419)

Storing trie key preimages is now disabled by default. This data is mostly used for contract debugging, e.g. in remix. You can re-enable storing preimages using the --cache.preimages flag. (#22350)

eth/66 protocol

Geth now supports eth protocol version 66, which adds request IDs. While the new protocol version is supported on the server side, Geth does not use request IDs yet. (#22241)

We have also added a cross-client test suite for the new protocol version in the devp2p tool. (#22363)

les/4 protocol

Geth 1.10.0 updates the light client protocol to version 4. The new protocol version uses the eth2 Discovery v5 DHT, has better support for servers which can't serve old transactions, and adds support for EIP-2364 ForkID in the handshake. (#21909, #22321, #22357, #22343, #22125, #22347, #21940, #22349, #21930)

Geth command changes

  • We have fully removed many deprecated command-line flags. (#22263)
  • Geth will now terminate gracefully when the disk is almost full, to avoid database corruption. (#22103)
  • Geth now tracks unclean shutdowns and warns you about them when starting back up. (#21893)
  • Whisper-related flags have been removed. (#22421)
  • USB hardware wallet support is now off by default in geth. It can be enabled using the --usb flag. (#21984, #22130)
  • Using the new --log.json flag, you can instruct geth to output machine-readable logs. (#22207)
  • Geth now provides some low-level leveldb commands for debugging. (#22014)
  • Geth now has a --mainnet flag, which is useful for scripting. (#21932)
  • Geth has a new flag --light.nosyncserve to enable serving light clients before sync completes. This is meant to be used for testing. (#22250)

RPC changes

  • Non-EIP155 transactions (i.e. transactions which are not replay-protected) are now rejected by the RPC API. Note: you can disable this restriction using the --rpc.allow-unprotected-txs command-line flag. (#22339)
  • More transaction details are logged when submitting through RPC. (#22170)
  • It is now possible to configure the JSON-RPC server on a custom path prefix. (#22184)
  • eth_chainID now returns an error when the chain has not activated EIP-155 yet. (#21686)
  • The WebSocket transport now limits RPC messages to 15MB. They were previously limited to 5MB. (#22385)
  • The 'bad blocks' tracker now persists some recently seen bad blocks, so they can still
    be accessed after a restart. (#21827)

GraphQL changes

We have made several backwards-incompatible changes to GraphQL APIs to better match the specification. In cases where the specification was vague, we have coordinated with the Besu development team to match their implementation.

  • Receipt status is now returned as an integer instead of a hex string. (#22187)
  • estimateGas and cumulativeGas queries now return an integer instead of a hex string. (#22126)
  • The gasLimit and gasUsed fields in responses are now integers instead of hex strings. (#21883)
  • Retrieving blocks by number now works correctly. (#22153)

Go API changes

  • We have added new constructor functions for transactions in package core/types: types.NewTx and types.SignNewTx. These functions allow creating EIP-2930 access list transactions from Go code. (#21502)
  • The eth.Config type has moved to a new package eth/ethconfig. (#22205)
  • ethconfig.Config has a new field SyncFromCheckpoint, which instructs geth to start syncing at an arbitrary checkpoint (#22123)
  • The event package provides a new helper, event.ResubscribeErr for improved logging of subscription errors. (#22191)
  • The consensus.Engine interface no longer provides the VerifySeal method. (#22274)
  • The rpc.Client.ShhSubscribe method is now deprecated. (#22239)
  • Package accounts/keystore now uses github.com/google/uuid to generate key UUIDs. This affects the type definition of keystore.Key because the type of the Id field is now different. We believe this change won't cause any issues because key UUIDs are not used often. (#22217)

Build changes

  • We have updated many external dependencies to newer versions. (#22216, #22227, #22134)
  • go-ethereum no longer depends on github.com/wsddn/go-ecdh (#22212)
  • go-ethereum no longer depends on github.com/aristanetworks/goarista (#22211)
  • Automated builds now use Go 1.16 (#22351)
  • Linux builders now use Ubuntu 18.04 Bionic (#22369)
  • The mobile framework is now built against NDK version r21e. (#22368, #22373)

Optimizations

This section lists miscellaneous optimizations which were applied during the 1.10.0 development cycle.

  • core: speed up header import (#21967)
  • core/state: convert prefetcher to concurrent per-trie loader (#21047)
  • core: switch to github.com/holiman/bloomfilter/v2 (#22044)
  • core/state/snapshot: write snapshot generator in batch (#22163)
  • core/state/snapshot: merge loops for better performance (#22160)
  • eth/downloader: optimize to avoid a copy in state sync hashing (#22035)
  • eth/protocols/snap: speed up hash checks (#22023)
  • eth: optimize tx broadcast mechanism (#22176)
  • consensus/ethash: implement faster difficulty calculators (#21976)
  • core/txpool: remove "local" notion from the txpool price heap (#21478)
  • eth, core: speed up some tests (#22000)

Bug fixes

This section lists miscellaneous bug fixes and changes which were applied during the 1.10.0 development cycle.

  • accounts/abi/bind: fixed unpacking error (#22230)
  • accounts/abi/bind: fix error-handling in wrappers for functions returning structs (#22005)
  • cmd/abigen: clarify abigen alias flag usage (#21875)
  • cmd/clef: don't check file permissions on windows (#22251)
  • cmd/devp2p: fix documentation for eth-test (#22298)
  • cmd/faucet: fix nonce-gap problem (#22145)
  • cmd/faucet: fix websocket race regression after switching to gorilla (#22136)
  • cmd/faucet: sort requests by newest first (#22018)
  • cmd/faucet: support v1.1 Twitter API in faucet, fix puppeth (#22107)
  • cmd/faucet: switch Facebook auth over to mobile site (#22137)
  • cmd/faucet: update the embedded website asset (#22169)
  • cmd/faucet: use Twitter API instead of scraping webpage (#21850)
  • cmd/geth: CLI help fixes (#22220)
  • cmd/geth: dump config for metrics (#22083)
  • cmd/geth: fix js unclean shutdown (#22302)
  • cmd/utils: add workaround for FreeBSD statfs quirk (#22310)
  • cmd/utils: avoid making console preloads absolute (#22109)
  • common/compiler: fix parsing of solc output with solidity v.0.8.0 (#22092)
  • consensus: refactor FinalizeAndAssemble to use Finalize (#21993)
  • core/state/snapshot: ensure Cap retains a min number of layers (#22331)
  • core/state: copy the snap when copying the state (#22340)
  • core/state: fix panic in state dumping (#22225)
  • core: fix temp memory blowup caused by defers holding on to state (#22319)
  • core: reset to genesis when middle block is missing (#22135)
  • core: reset txpool state on sethead (#22247)
  • ethclient: better test suite for ethclient package (#22127)
  • eth/downloader: enhanced test cases for downloader queue (#22114)
  • eth/filters: fix potential deadlock in filter timeout loop (#22178)
  • eth/protocols/eth: fix slice resize flaw (#22181)
  • eth/protocols/snap: track reverts when peer rejects request (#22016)
  • eth/tracers: fix unigram tracer (#22248)
  • eth/tracers: include intrinsic gas in calltracer, expose for all tracers (#22038)
  • eth: improve transaction broadcaset log messages (#22146)
  • internal/ethapi: restore net_version RPC method (#22061)
  • les: don't drop sentTo for normal cases (#22048)
  • metrics: fix cast omission in cpu_syscall.go (#22262)
  • miner, test: fix potential goroutine leak (#21989)
  • miner: avoid sleeping in miner (#22108)
  • node: always show websocket url in logs (#22307)
  • p2p/dnsdisc: fix hot-spin when all trees are empty (#22313)
  • rlp: handle case of normal EOF in Stream.readFull (#22336)
  • tests/fuzzers/abi: better test generation (#22158)
  • tests/fuzzers/abi: fixed one-off panic with int.Min64 value (#22233)
  • tests/fuzzers/les: add fuzzer for les server handler (#22282)
  • tests/fuzzers: added consensys/gurvy library to bn256 differential fuzzer (#21812)
  • tests/fuzzers: fix abi fuzzer (#22199)
  • tests/fuzzers: fix false positive in bitutil fuzzer (#22076)
  • trie: fix bloom crash on fast sync restart (#22332)
  • trie: fix range prover (#22210)

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


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

Codebase changes assessment

Legend

File Stats: (A) Added, (M) Modified and (R) Removed

Line Stats: (A) Added and (R) Removed

Assessment:

  • ✅ No conflict expected
  • ⚠ Review required to assess changes
  • ‼️ Conflicts expected and review required

171 Pull Requests

🔍 Link Title File Stats
M/A/R
Packages changed
(files changed)
Line Stats
A/R
Top 5 Changed Files
(lines changed)
‼️ #21994 les: rework arm64's undefined workaround 1/0/0
les/utils (1)
8/4
les/utils/expiredvalue.go (24)
‼️ #21989 miner, test: fix potential goroutine leak 2/0/0
miner (1)
eth/downloader (1)
6/2
miner/worker.go (12)
eth/downloader/downloader_test.go (4)
#21850 cmd/faucet: use Twitter API instead of website 3/0/0
cmd/puppeth (2)
cmd/faucet (1)
110/13
cmd/faucet/faucet.go (186)
cmd/puppeth/wizard_faucet.go (46)
cmd/puppeth/module_faucet.go (14)
‼️ #21478 core/txpool: remove "local" notion from the txpool price heap 3/0/0
core (3)
271/145
core/tx_pool.go (390)
core/tx_list.go (304)
core/tx_pool_test.go (138)
#21976 consensus/ethash: implement faster difficulty calculators 3/3/0
consensus/ethash (3)
oss-fuzz.sh (1)
tests/fuzzers/difficulty/debug (1)
tests/fuzzers/difficulty (1)
469/0
consensus/ethash/difficulty.go (386)
tests/fuzzers/difficulty/difficulty-fuzz.go (290)
consensus/ethash/consensus_test.go (204)
tests/fuzzers/difficulty/debug/main.go (46)
consensus/ethash/consensus.go (10)
‼️ #21993 consensus: refactor FinalizeAndAssemble to use Finalize 2/0/0
consensus/clique (1)
consensus/ethash (1)
4/6
consensus/clique/clique.go (10)
consensus/ethash/consensus.go (10)
‼️ #21893 implement unclean-shutdown marker 5/0/0
core/rawdb (3)
eth (1)
les (1)
95/5
core/rawdb/accessors_metadata.go (126)
eth/backend.go (30)
les/client.go (28)
core/rawdb/schema.go (12)
core/rawdb/database.go (4)
⚠️ #22005 abi/bind: fix error-handling in generated wrappers for functions returning structs 2/0/0
accounts/abi/bind (2)
42/0
accounts/abi/bind/bind_test.go (78)
accounts/abi/bind/template.go (6)
#21875 doc: clarify abigen alias flag usage 1/0/0
cmd/abigen (1)
1/1
cmd/abigen/main.go (4)
‼️ #21482 core, eth: split eth package, implement snap protocol 24/4/2
eth (15)
eth/downloader (6)
core/rawdb (2)
core (2)
core/state/snapshot (1)
core/state (1)
cmd/utils (1)
core/forkid (1)
cmd/geth (1)
1950/2735
eth/handler.go (1734)
eth/peer.go (1608)
eth/handler_eth_test.go (1480)
eth/handler_test.go (1472)
eth/peerset.go (602)
‼️ #22002 cmd/geth: fixed parallelized tests 1/0/0
cmd/geth (1)
1/0
cmd/geth/accountcmd_test.go (2)
#21999 eth/protocols/eth: remove magic numbers in tests 1/0/0
eth/protocols/eth (1)
11/11
eth/protocols/eth/handler_test.go (44)
#22000 eth, core: speed up some tests 2/0/0
core/bloombits (2)
9/2
core/bloombits/matcher_test.go (12)
core/bloombits/scheduler_test.go (10)
#21909 les: les/4 minimalistic version 4/0/0
les (3)
cmd/utils (1)
40/6
les/peer.go (64)
cmd/utils/flags.go (14)
les/protocol.go (10)
les/odr_requests.go (4)
⚠️ #22018 cmd/faucet: sort requests by newest first 1/0/0
cmd/faucet (1)
2/2
cmd/faucet/faucet.go (8)
#22035 eth/download/statesync : state hash sum optimized 1/0/0
eth/downloader (1)
6/6
eth/downloader/statesync.go (24)
⚠️ #22019 snapshot mode typo 1/0/0
eth/downloader (1)
1/1
eth/downloader/modes.go (4)
‼️ #22061 internal/ethapi: restore net_version RPC method 3/0/0
eth (1)
internal/ethapi (1)
les (1)
11/5
internal/ethapi/api.go (24)
eth/backend.go (4)
les/client.go (4)
#22029 common,crypto: move fuzzers out of core 1/0/3
oss-fuzz.sh (1)
tests/fuzzers/bitutil (1)
tests/fuzzers/bn256 (1)
tests/fuzzers/runtime (1)
84/38
oss-fuzz.sh (176)
tests/fuzzers/bitutil/compress_fuzz.go (28)
tests/fuzzers/runtime/runtime_fuzz.go (28)
tests/fuzzers/bn256/bn256_fuzz.go (12)
‼️ #22079 README.md: update Travis badge 1/0/0
README.md (1)
1/1
README.md (4)
‼️ #22038 eth, eth/tracers: expose gas used in tx to js tracer 6/0/0
eth/tracers (3)
eth/tracers/internal/tracers (2)
eth (1)
92/94
eth/tracers/tracer_test.go (302)
eth/tracers/tracer.go (42)
eth/tracers/internal/tracers/assets.go (12)
eth/tracers/tracers_test.go (8)
eth/api_tracer.go (4)
#22076 tests/fuzzers: fix false positive in bitutil fuzzer 1/0/0
tests/fuzzers/bitutil (1)
13/1
tests/fuzzers/bitutil/compress_fuzz.go (28)
⚠️ #22071 cmd/geth: Replace wiki links with new doc pages 1/0/0
cmd/geth (1)
3/3
cmd/geth/consolecmd.go (12)
‼️ #22070 eth/filters: Replace wiki links with new doc pages 1/0/0
eth/filters (1)
7/7
eth/filters/api.go (28)
#22069 signer: Replace wiki links with new doc pages 1/0/0
signer/fourbyte (1)
3/3
signer/fourbyte/abi_test.go (12)
#22052 eth/downloader: removed unnecessary invalid chain error check 1/0/0
eth/downloader (1)
0/3
eth/downloader/queue.go (6)
‼️ #22066 README.md: Replace wiki links with new doc pages 1/0/0
README.md (1)
13/13
README.md (52)
#22026 core/rawdb, eth/protocols : Method name typo fix 2/0/0
core/rawdb (1)
eth/protocols/snap (1)
3/3
core/rawdb/accessors_snapshot.go (8)
eth/protocols/snap/sync.go (4)
‼️ #22053 accounts/abi/bind: fix NewFallback test 1/0/0
accounts/abi/bind (1)
3/6
accounts/abi/bind/bind_test.go (18)
#22104 snapshot: fixed typo; gethring -> gathering 1/0/0
core/state/snapshot (1)
1/1
core/state/snapshot/generate.go (4)
‼️ #22099 cmd/geth: update copyright year 1/0/0
cmd/geth (1)
1/1
cmd/geth/main.go (4)
‼️ #22068 .github: Replace wiki links with new doc pages 1/0/0
.github (1)
2/2
.github/CONTRIBUTING.md (8)
‼️ #22105 ``node: rename startNetworking to `openEndpoints``` 1/0/0
node (1)
7/4
node/node.go (22)
#22067 SECURITY.md: link to release page 1/0/0
SECURITY.md (1)
4/6
SECURITY.md (20)
#22107 cmd: support v1.1 Twitter API in faucet, fix puppeth 3/1/0
cmd/faucet (2)
cmd/puppeth (2)
118/52
cmd/faucet/faucet.go (200)
cmd/faucet/README.md (100)
cmd/puppeth/wizard_faucet.go (36)
cmd/puppeth/module_faucet.go (4)
‼️ #22108 miner: avoid sleeping in miner 1/0/0
miner (1)
0/7
miner/worker.go (14)
‼️ #21984 cmd/geth: usb is off by default 3/0/0
cmd/geth (2)
cmd/utils (1)
12/3
cmd/utils/flags.go (22)
cmd/geth/usage.go (6)
cmd/geth/main.go (2)
‼️ #21883 graphql: use a decimal representation for gas limit and gas used 2/0/0
graphql (2)
150/81
graphql/graphql_test.go (350)
graphql/graphql.go (112)
‼️ #21932 cmd/geth: added --mainnet flag 4/0/0
cmd/geth (3)
cmd/utils (1)
15/1
cmd/utils/flags.go (24)
cmd/geth/chaincmd.go (4)
cmd/geth/main.go (2)
cmd/geth/usage.go (2)
#22092 common/compiler: fix parsing of solc output with solidity v.0.8.0 1/0/0
common/compiler (1)
48/2
common/compiler/solidity.go (100)
#22114 eth/downloader: enhanced test cases for downloader queue 1/0/0
eth/downloader (1)
35/9
eth/downloader/queue_test.go (88)
‼️ #22124 crypto: fix ineffectual assignments 2/0/0
crypto/bls12381 (1)
crypto/signify (1)
4/2
crypto/signify/signify_fuzz.go (8)
crypto/bls12381/arithmetic_fallback.go (4)
‼️ #22126 graphql: return decimal for `estimateGas` and `cumulativeGas` queries 2/0/0
graphql (2)
20/13
graphql/graphql.go (54)
graphql/graphql_test.go (12)
‼️ #22133 snapshot, trie: fixed typos, mostly in snapshot pkg 10/0/0
core/state/snapshot (9)
trie (1)
21/21
core/state/snapshot/difflayer.go (20)
core/state/snapshot/iterator_binary.go (16)
core/state/snapshot/iterator_fast.go (12)
core/state/snapshot/iterator.go (8)
core/state/snapshot/snapshot.go (8)
⚠️ #22122 cmd/utils, eth/downloader: minor snap nitpicks 2/0/0
cmd/utils (1)
eth/downloader (1)
2/3
eth/downloader/downloader.go (8)
cmd/utils/flags.go (2)
#22016 snap: track revertals when peer rejects request 1/0/0
eth/protocols/snap (1)
116/56
eth/protocols/snap/sync.go (344)
⚠️ #22136 cmd/faucet: fix websocket race regression after switching to gorilla 1/0/0
cmd/faucet (1)
35/24
cmd/faucet/faucet.go (118)
#22023 eth/protocols/snap: speed up hash checks 1/1/0
eth/protocols/snap (2)
107/6
eth/protocols/snap/sync_test.go (196)
eth/protocols/snap/sync.go (30)
#22137 cmd/faucet: switch Facebook auth over to mobile site 1/1/0
cmd/faucet (2)
51/2
cmd/faucet/faucet_test.go (86)
cmd/faucet/faucet.go (20)
#22125 les: remove transaction propagation limits 1/0/0
les (1)
8/22
les/txrelay.go (60)
#22145 cmd/faucet: fix nonce-gap problem 2/0/0
cmd/faucet (2)
3/4
cmd/faucet/faucet.go (10)
cmd/faucet/faucet.html (4)
‼️ #22127 ethclient: better test suite for ethclient package 1/0/0
ethclient (1)
231/28
ethclient/ethclient_test.go (518)
⚠️ #22140 eth/downloader: fix race condition in tests 1/0/0
eth/downloader (1)
4/3
eth/downloader/downloader_test.go (14)
⚠️ #21827 core: persist bad blocks 7/0/0
core/rawdb (4)
eth (2)
core (1)
196/41
core/rawdb/accessors_chain.go (194)
core/rawdb/accessors_chain_test.go (140)
eth/api.go (62)
core/blockchain.go (46)
core/rawdb/schema.go (16)
#22157 common/prque: pull in tests and benchmarks from upstream 0/2/0
common/prque (2)
230/0
common/prque/prque_test.go (260)
common/prque/sstack_test.go (200)
#22146 eth: improve log message 2/0/0
eth (2)
5/5
eth/handler.go (12)
eth/peerset.go (8)
⚠️ #22153 graphql: fix issue with unmarshalling int32 into `Long` type 1/0/0
graphql (1)
1/1
graphql/schema.go (4)
‼️ #21686 eth: change chainID method to return chainID from config or error if before EIP-155 1/0/0
eth (1)
4/4
eth/api.go (16)
‼️ #22109 cmd/utils: avoid making console preloads absolute 1/0/0
cmd/utils (1)
1/2
cmd/utils/flags.go (6)
#22044 go.mod: use github.com/holiman/bloomfilter/v2 5/0/0
trie (2)
core/state/snapshot (1)
go.mod (1)
go.sum (1)
18/78
trie/sync_bloom.go (102)
go.sum (68)
go.mod (14)
core/state/snapshot/difflayer.go (4)
trie/sync.go (4)
#22130 cmd/utils: don't enumerate usb when --usb isn't set 12/0/0
cmd/geth (5)
miner (2)
node (2)
p2p/simulations/adapters (2)
cmd/utils (1)
21/23
cmd/geth/accountcmd_test.go (20)
cmd/utils/flags.go (16)
cmd/geth/les_test.go (12)
node/config.go (10)
cmd/geth/dao_test.go (8)
#22009 tests: update the reference tests 1/0/0
tests (1)
1/1
tests/testdata (4)
‼️ #22164 graphql: fix spurious error in test 1/0/0
graphql (1)
9/1
graphql/graphql_test.go (20)
#22162 consensus/ethash: increase seal timeout for tests 1/0/0
consensus/ethash (1)
1/1
consensus/ethash/ethash_test.go (4)
‼️ #22166 graphql: fix spurious travis failure 1/0/0
graphql (1)
6/6
graphql/graphql_test.go (24)
#22169 cmd/faucet: update the embedded website asset 1/0/0
cmd/faucet (1)
3/3
cmd/faucet/website.go (12)
#22177 core/state/snapshot: add generation logs to storage too 1/0/0
core/state/snapshot (1)
4/0
core/state/snapshot/generate.go (8)
#22048 les: don't drop sentTo for normal cases 1/0/0
les (1)
0/5
les/retrieve.go (10)
#22181 Fix queue slicing 1/0/0
eth/protocols/eth (1)
1/1
eth/protocols/eth/broadcast.go (4)
‼️ #22115 les: remove useless protocol defines 4/0/0
les (4)
23/22
les/server_handler.go (64)
les/odr_requests.go (18)
les/benchmark.go (4)
les/handler_test.go (4)
#22158 tests/fuzzers/abi: better test generation 3/0/0
tests/fuzzers/abi (2)
oss-fuzz.sh (1)
51/79
tests/fuzzers/abi/abifuzzer.go (230)
tests/fuzzers/abi/abifuzzer_test.go (18)
oss-fuzz.sh (12)
#22083 cmd/geth: dump config for metrics 2/1/0
cmd/geth (1)
cmd/utils (1)
metrics (1)
92/10
metrics/config.go (90)
cmd/geth/config.go (86)
cmd/utils/flags.go (28)
#22163 core/state/snapshot: write snapshot generator in batch 3/0/0
core/state/snapshot (2)
core (1)
653/417
core/blockchain_snapshot_test.go (2066)
core/state/snapshot/generate.go (70)
core/state/snapshot/journal.go (4)
‼️ #22103 cmd/geth: Graceful shutdown if disk is full 4/2/0
cmd/utils (4)
cmd/geth (2)
113/2
cmd/utils/diskusage_windows.go (76)
cmd/utils/diskusage.go (70)
cmd/utils/cmd.go (68)
cmd/utils/flags.go (8)
cmd/geth/main.go (6)
‼️ #22123 eth, les: add new config "syncFromCheckpoint" 7/0/0
les (5)
eth (2)
209/35
les/sync_test.go (304)
les/sync.go (104)
eth/gen_config.go (24)
eth/config.go (22)
les/client_handler.go (18)
‼️ #22199 oss-fuzz: fix abi fuzzer 1/0/0
oss-fuzz.sh (1)
1/1
oss-fuzz.sh (4)
‼️ #22134 go.mod: upgrade to golang-lru v0.5.5 2/0/0
go.sum (1)
go.mod (1)
3/3
go.sum (8)
go.mod (4)
⚠️ #21744 downloader: extract findAncestor search functions 1/0/0
eth/downloader (1)
27/0
eth/downloader/downloader.go (54)
‼️ #21047 core: improve trie updates (part 2) 11/1/0
core/state (6)
crypto (2)
accounts/abi/bind/backends (1)
core (1)
eth (1)
miner (1)
545/81
core/state/trie_prefetcher.go (668)
core/state/statedb.go (248)
core/state/state_object.go (168)
crypto/crypto.go (34)
miner/worker.go (32)
‼️ #22178 eth/filters: fix potential deadlock in filter timeout loop 4/0/0
eth/filters (2)
les (1)
eth (1)
101/22
eth/filters/filter_system_test.go (172)
eth/filters/api.go (66)
eth/backend.go (4)
les/client.go (4)
#22191 event: resubscribe with error handler 2/0/0
event (2)
64/4
event/subscription_test.go (72)
event/subscription.go (64)
#22210 trie: fix range prover 2/0/0
trie (2)
48/15
trie/proof.go (88)
trie/proof_test.go (38)
‼️ #22211 common/mclock: remove dependency on github.com/aristanetworks/goarista 3/1/0
common/mclock (2)
go.mod (1)
go.sum (1)
9/7
common/mclock/mclock.go (24)
go.sum (4)
common/mclock/mclock.s (2)
go.mod (2)
#22220 cmd, geth: CLI help fixes 1/0/0
internal/flags (1)
3/3
internal/flags/helpers.go (12)
#22179 eth/protocols/snap: snap sync testing 6/0/0
eth/protocols/snap (4)
eth/downloader (1)
eth (1)
1248/147
eth/protocols/snap/sync_test.go (2040)
eth/protocols/snap/sync.go (698)
eth/handler.go (32)
eth/protocols/snap/peer.go (10)
eth/downloader/downloader.go (8)
‼️ #22216 go.mod: update dependencies 2/0/0
go.mod (1)
go.sum (1)
338/30
go.sum (692)
go.mod (44)
‼️ #22187 graphql: change receipt status to decimal instead of hex 2/0/0
graphql (2)
14/8
graphql/graphql.go (32)
graphql/graphql_test.go (12)
‼️ #22227 go.mod: upgrade github.com/huin/goupnp 2/0/0
go.mod (1)
go.sum (1)
5/8
go.sum (22)
go.mod (4)
#22160 snapshot: merge loops for better performance 1/0/0
core/state/snapshot (1)
4/8
core/state/snapshot/difflayer.go (24)
‼️ #22135 core: aiming genesis when middle block is missing 1/0/0
core (1)
7/2
core/blockchain.go (18)
#22161 eth/tracers: move tracing APIs into eth/tracers 4/3/1
eth (3)
eth/tracers (2)
les (2)
cmd/utils (1)
1071/322
eth/tracers/api.go (1116)
eth/tracers/api_test.go (974)
eth/state_accessor.go (460)
les/state_accessor.go (176)
eth/api_backend.go (24)
⚠️ #22171 eth, eth/downloader,p2p: reserve half peer slots for snap peers during snap sync 4/0/0
eth (3)
p2p (1)
37/3
eth/handler.go (30)
eth/peerset.go (22)
p2p/peer.go (20)
eth/sync.go (8)
#22233 tests/fuzzers/abi: fixed one-off panic with int.Min64 value 2/0/0
tests/fuzzers/abi (2)
5/4
tests/fuzzers/abi/abifuzzer.go (10)
tests/fuzzers/abi/abifuzzer_test.go (8)
‼️ #22170 internal/ethapi: print tx details when submitting 1/0/0
internal/ethapi (1)
9/7
internal/ethapi/api.go (32)
⚠️ #22225 core/state: fix panic in state dumping 1/0/0
core/state (1)
1/1
core/state/dump.go (4)
#21967 core: speed up header import 3/0/0
core (1)
core/rawdb (1)
consensus/ethash (1)
28/24
consensus/ethash/consensus.go (72)
core/headerchain.go (22)
core/rawdb/freezer_table.go (10)
‼️ #22212 accounts/scwallet: use go-ethereum crypto instead of go-ecdh 3/0/0
accounts/scwallet (1)
go.mod (1)
go.sum (1)
7/17
accounts/scwallet/securechannel.go (42)
go.sum (4)
go.mod (2)
#22242 accounts/scwallet: update documentation 1/0/0
accounts/scwallet (1)
8/4
accounts/scwallet/README.md (24)
⚠️ #21940 les: switch to new discv5 12/0/18
p2p/discv5 (18)
les (6)
mobile (2)
cmd/utils (1)
p2p (1)
cmd/bootnode (1)
cmd/faucet (1)
95/6184
p2p/discv5/net.go (2538)
p2p/discv5/ticket.go (1768)
p2p/discv5/sim_test.go (864)
p2p/discv5/udp.go (858)
p2p/discv5/node.go (826)
⚠️ #22239 rpc: deprecate Client.ShhSubscribe 1/0/0
rpc (1)
1/0
rpc/client.go (2)
‼️ #22213 cmd,core,eth,params,tests: enable 2565 for yolov3 23/0/0
core/vm (4)
cmd/geth (4)
tests (4)
core (3)
params (2)
core/vm/runtime (1)
cmd/puppeth (1)
cmd/utils (1)
tests/fuzzers/bls12381 (1)
cmd/evm/internal/t8ntool (1)
eth/tracers (1)
112/88
core/vm/contracts.go (70)
params/config.go (62)
cmd/utils/flags.go (56)
core/genesis.go (28)
core/vm/evm.go (20)
‼️ #21930 les/utils: UDP rate limiter 1/2/0
les/utils (3)
625/14
les/utils/limiter.go (810)
les/utils/limiter_test.go (412)
les/utils/weighted_select.go (56)
‼️ #22251 cmd/clef: don't check file permissions on windows, closes #20123 1/0/0
cmd/clef (1)
4/2
cmd/clef/main.go (12)
#22248 eth/tracers: fix unigram tracer's return value 2/0/0
eth/tracers/internal/tracers (2)
17/24
eth/tracers/internal/tracers/assets.go (74)
eth/tracers/internal/tracers/unigram_tracer.js (8)
⚠️ #22235 eth: check snap satelliteness, delegate drop to eth 13/0/0
eth (8)
eth/protocols/eth (2)
eth/protocols/snap (2)
p2p (1)
201/236
eth/peerset.go (522)
eth/handler.go (212)
p2p/peer.go (22)
eth/peer.go (18)
eth/handler_snap.go (16)
‼️ #22184 node: serve JSON-RPC on custom path prefix 11/0/0
node (6)
cmd/geth (2)
cmd/utils (1)
go.sum (1)
graphql (1)
320/65
node/rpcstack_test.go (274)
node/node_test.go (214)
node/rpcstack.go (142)
node/node.go (40)
cmd/utils/flags.go (36)
#21921 Remove uneeded syntax 15/0/0
cmd/puppeth (2)
metrics (2)
accounts/keystore (1)
core/vm/runtime (1)
crypto/bls12381 (1)
eth/protocols/snap (1)
metrics/exp (1)
signer/core (1)
trie (1)
core/state/snapshot (1)
crypto/signify (1)
eth/tracers (1)
node (1)
23/23
metrics/gauge_float64_test.go (24)
core/state/snapshot/conversion.go (8)
core/vm/runtime/runtime_test.go (8)
node/utils_test.go (8)
accounts/keystore/account_cache.go (4)
‼️ #22246 trie : use trie.NewStackTrie instead of new(trie.Trie) 12/0/0
core (4)
eth/fetcher (2)
miner (2)
consensus/ethash (1)
les (1)
cmd/evm/internal/t8ntool (1)
consensus/clique (1)
15/15
cmd/evm/internal/t8ntool/execution.go (8)
core/blockchain_test.go (8)
les/odr_requests.go (8)
consensus/clique/clique.go (4)
consensus/ethash/consensus.go (4)
‼️ #22247 core: properly reset the statedb on sethead 1/0/0
core (1)
30/29
core/tx_pool.go (118)
#21812 bn256: added consensys/gurvy bn256 implementation 3/0/0
go.mod (1)
go.sum (1)
tests/fuzzers/bn256 (1)
180/18
go.sum (248)
tests/fuzzers/bn256/bn256_fuzz.go (146)
go.mod (2)
‼️ #22270 internal/ethapi: comment nitpick 1/0/0
internal/ethapi (1)
1/1
internal/ethapi/api.go (4)
#22205 eth: move eth.Config to a common package 19/1/2
les (6)
cmd/utils (3)
eth (2)
eth/ethconfig (2)
miner (2)
core (1)
ethclient (1)
graphql (1)
cmd/faucet (1)
cmd/geth (1)
mobile (1)
console (1)
265/215
cmd/utils/flags.go (218)
core/bloom_indexer.go (184)
eth/bloombits.go (138)
eth/ethconfig/config.go (128)
eth/backend.go (102)
‼️ #22271 internal/ethapi: comment nitpick 1/0/0
internal/ethapi (1)
2/2
internal/ethapi/api.go (8)
⚠️ #22272 eth: don't wait for snap registration if we're not running snap 2/0/0
eth (1)
p2p (1)
10/11
p2p/peer.go (34)
eth/peerset.go (8)
#22274 consensus: Remove seal verification from the consensus engine interface 5/0/0
consensus/ethash (3)
consensus/clique (1)
consensus (1)
4/20
consensus/ethash/consensus.go (16)
consensus/clique/clique.go (12)
consensus/consensus.go (8)
consensus/ethash/ethash_test.go (8)
consensus/ethash/algorithm_test.go (4)
#22262 Update cpu_syscall.go 1/0/0
metrics (1)
1/1
metrics/cpu_syscall.go (4)
‼️ #22280 cmd/utils: enable snapshots by default 1/0/0
cmd/utils (1)
4/4
cmd/utils/flags.go (16)
#21724 all: bloom-filter based pruning mechanism 17/3/0
core/state/snapshot (3)
cmd/geth (3)
core (3)
core/state/pruner (2)
tests (2)
core/rawdb (2)
eth (1)
go.sum (1)
trie (1)
cmd/utils (1)
go.mod (1)
1491/148
core/state/pruner/pruner.go (1074)
cmd/geth/snapshot.go (874)
core/state/snapshot/conversion.go (568)
core/state/pruner/bloom.go (264)
core/state/snapshot/snapshot.go (156)
‼️ #22288 params: just to make snapshots a bit more official 1/0/0
params (1)
2/2
params/version.go (8)
#22291 core/state/pruner: fix compaction after pruning 1/0/0
core/state/pruner (1)
10/3
core/state/pruner/pruner.go (26)
#22294 core/state/pruner: fix compaction range error 1/0/0
core/state/pruner (1)
5/6
core/state/pruner/pruner.go (22)
#22207 internal/debug: add switch to format logs with json 1/0/0
internal/debug (1)
21/12
internal/debug/flags.go (66)
⚠️ #22230 accounts/abi/bind: fixed unpacking error 3/0/0
accounts/abi/bind (2)
accounts/abi (1)
68/1
accounts/abi/bind/bind_test.go (128)
accounts/abi/abi_test.go (6)
accounts/abi/bind/template.go (4)
‼️ #22293 cmd/utils, eth/ethconfig: unindex txs older than ~1 year 2/0/0
cmd/utils (1)
eth/ethconfig (1)
4/3
cmd/utils/flags.go (12)
eth/ethconfig/config.go (2)
#22298 cmd/devp2p: fix documentation for eth-test 1/0/0
cmd/devp2p (1)
4/2
cmd/devp2p/README.md (12)
‼️ #22319 core: fix temp memory blowup caused by defers holding on to state 1/0/0
core (1)
12/1
core/blockchain.go (26)
‼️ #22321 les: enable les/4 and add tests 5/0/0
les (5)
31/4
les/test_helper.go (24)
les/handler_test.go (20)
les/odr_test.go (10)
les/protocol.go (8)
les/request_test.go (8)
#22310 cmd/utils: add workaround for FreeBSD statfs quirk 1/0/0
cmd/utils (1)
8/1
cmd/utils/diskusage.go (18)
⚠️ #22302 cmd/geth: fix js unclean shutdown 1/0/0
cmd/geth (1)
2/7
cmd/geth/consolecmd.go (18)
⚠️ #22316 rpc: increase the number of subscriptions in storm test 1/0/0
rpc (1)
1/1
rpc/client_test.go (4)
#22332 trie: fix bloom crash on fast sync restart 1/0/0
trie (1)
6/2
trie/sync.go (16)
#22331 core/state/snapshot: ensure Cap retains a min number of layers 2/0/0
core/state/snapshot (2)
65/93
core/state/snapshot/snapshot_test.go (222)
core/state/snapshot/snapshot.go (94)
‼️ #22315 cmd/devp2p/internal/ethtest: use shared message types 4/0/0
cmd/devp2p/internal/ethtest (4)
36/84
cmd/devp2p/internal/ethtest/types.go (180)
cmd/devp2p/internal/ethtest/suite.go (38)
cmd/devp2p/internal/ethtest/chain_test.go (14)
cmd/devp2p/internal/ethtest/transaction.go (8)
#22334 eth: fix snap sync cancellation 3/0/0
eth/protocols/snap (2)
eth/downloader (1)
6/4
eth/protocols/snap/sync.go (12)
eth/downloader/downloader.go (6)
eth/protocols/snap/protocol.go (2)
#22176 eth/handler, broadcast: optimize tx broadcast mechanism 2/0/0
eth (1)
eth/protocols/eth (1)
36/32
eth/handler.go (112)
eth/protocols/eth/broadcast.go (24)
‼️ #22340 core/state: copy the snap when copying the state 1/0/0
core/state (1)
25/0
core/state/statedb.go (50)
#22336 rlp: handle case of normal EOF in Stream.readFull() 2/0/0
rlp (2)
27/1
rlp/decode_test.go (40)
rlp/decode.go (16)
‼️ #22307 node: show websocket url in logs 1/0/0
node (1)
4/2
node/rpcstack.go (12)
⚠️ #22241 eth: implement eth66 7/1/0
eth/protocols/eth (5)
eth/downloader (2)
p2p (1)
1120/395
eth/protocols/eth/handlers.go (1020)
eth/protocols/eth/handler.go (798)
eth/protocols/eth/protocol_test.go (400)
eth/downloader/downloader_test.go (370)
eth/protocols/eth/peer.go (226)
#22313 p2p/dnsdisc: fix hot-spin when all trees are empty 3/0/0
p2p/dnsdisc (3)
138/19
p2p/dnsdisc/client.go (164)
p2p/dnsdisc/client_test.go (94)
p2p/dnsdisc/sync.go (56)
#22347 les: rename lespay to vflux 10/0/20
les/vflux/client (13)
les (10)
les/vflux/server (7)
80/80
les/clientpool_test.go (56)
les/serverpool.go (56)
les/clientpool.go (52)
les/peer.go (40)
les/client.go (32)
#22343 les: fix balance expiration 6/0/0
les (4)
les/vflux/server (2)
92/9
les/vflux/server/balance_test.go (146)
les/client.go (16)
les/server.go (16)
les/vflux/server/balance_tracker.go (12)
les/clientpool.go (8)
#22282 tests/fuzzers/les: add fuzzer for les server handler 6/3/0
les (6)
oss-fuzz.sh (1)
tests/fuzzers/les/debug (1)
tests/fuzzers/les (1)
1218/687
les/server_handler.go (1560)
les/server_requests.go (1138)
tests/fuzzers/les/les-fuzzer.go (814)
les/protocol.go (130)
tests/fuzzers/les/debug/main.go (82)
#22357 les: clean up server handler 2/0/0
les (2)
114/87
les/server_handler.go (370)
les/server_requests.go (32)
#22014 cmd/geth: add db commands: stats, compact, put, get, delete 6/1/0
cmd/geth (3)
internal/flags (1)
cmd/utils (1)
core/rawdb (1)
ethdb/leveldb (1)
401/152
cmd/geth/dbcmd.go (682)
cmd/geth/chaincmd.go (258)
ethdb/leveldb/leveldb.go (112)
core/rawdb/database.go (24)
cmd/utils/flags.go (16)
‼️ #22339 internal/ethapi: disable sending of non eip155 replay protected tx 9/0/0
eth (2)
internal/ethapi (2)
les (2)
cmd/geth (1)
cmd/utils (1)
node (1)
39/10
eth/api_backend.go (22)
les/api_backend.go (22)
cmd/utils/flags.go (14)
eth/backend.go (10)
internal/ethapi/backend.go (10)
‼️ #22351 travis, appveyor, build: bump Go to 1.16 7/0/0
build (2)
appveyor.yml (1)
.travis.yml (1)
Dockerfile (1)
Dockerfile.alltools (1)
accounts/abi/bind (1)
34/29
build/checksums.txt (48)
.travis.yml (44)
accounts/abi/bind/bind_test.go (14)
appveyor.yml (8)
Dockerfile (4)
‼️ #22350 cmd/utils: disable caching preimages by default 1/0/0
cmd/utils (1)
2/2
cmd/utils/flags.go (8)
#22368 travis: bump Android NDK version 1/0/0
.travis.yml (1)
3/3
.travis.yml (12)
#22369 travis: bump builders to Bionic 1/0/0
.travis.yml (1)
9/9
.travis.yml (36)
#22373 travis: bump Java version to latest available on Bionic 1/0/0
.travis.yml (1)
13/14
.travis.yml (54)
#22263 cmd/utils: remove deprecated command line flags 13/0/0
cmd/geth (7)
cmd/utils (2)
README.md (1)
cmd/clef (1)
cmd/puppeth (1)
internal/debug (1)
53/333
cmd/utils/flags_legacy.go (252)
cmd/utils/flags.go (232)
internal/debug/flags.go (110)
cmd/geth/main.go (68)
cmd/clef/main.go (36)
#22381 eth/protocols/snap: lower abortion and resumption logs to debug 1/0/0
eth/protocols/snap (1)
2/2
eth/protocols/snap/sync.go (8)
#22250 cmd, eth, les: enable serving light clients when non-synced 6/0/0
eth/ethconfig (2)
cmd/geth (2)
cmd/utils (1)
les (1)
21/1
cmd/utils/flags.go (14)
eth/ethconfig/gen_config.go (12)
les/server.go (12)
cmd/geth/main.go (2)
cmd/geth/usage.go (2)
#22349 les, light: improve txstatus retrieval 15/0/0
les (13)
light (2)
784/250
les/test_helper.go (668)
les/handler_test.go (436)
les/odr_test.go (384)
les/odr.go (202)
les/sync_test.go (112)
‼️ #21502 EIP-2718: Typed Transaction Envelope + EIP-2930 25/5/0
core (9)
cmd/evm/testdata/8 (4)
cmd/evm/internal/t8ntool (3)
cmd/evm (2)
core/types (2)
cmd/geth (2)
accounts/abi/bind (1)
accounts/abi/bind/backends (1)
core/state (1)
accounts/scwallet (1)
accounts/usbwallet (1)
cmd/clef (1)
accounts/keystore (1)
cmd/utils (1)
618/169
cmd/evm/internal/t8ntool/transition.go (270)
core/types/access_list_tx.go (230)
core/blockchain_test.go (204)
cmd/evm/testdata/8/readme.md (126)
cmd/evm/testdata/8/txs.json (116)
‼️ #22363 cmd/devp2p: add eth66 test suite 6/2/0
cmd/devp2p/internal/ethtest (5)
cmd/devp2p (2)
go.mod (1)
721/27
cmd/devp2p/internal/ethtest/eth66_suite.go (764)
cmd/devp2p/internal/ethtest/eth66_suiteHelpers.go (540)
cmd/devp2p/internal/ethtest/suite.go (78)
cmd/devp2p/internal/ethtest/transaction.go (58)
cmd/devp2p/README.md (24)
#22377 les: move server pool to les/vflux/client 7/0/2
les/vflux/client (5)
les (3)
internal/web3ext (1)
206/198
les/vflux/client/serverpool.go (346)
les/vflux/client/valuetracker.go (154)
les/vflux/client/serverpool_test.go (128)
les/client.go (76)
internal/web3ext/web3ext.go (28)
⚠️ #22385 rpc: add separate size limit for websocket 4/0/0
rpc (4)
64/1
rpc/websocket_test.go (54)
rpc/http_test.go (50)
rpc/testservice_test.go (20)
rpc/websocket.go (6)
‼️ #22380 all: define and enable the Berlin hard fork on all networks 22/0/0
core/vm (4)
core (3)
tests (2)
cmd/geth (2)
core/types (1)
eth/ethconfig (1)
params (1)
cmd/utils (1)
eth (1)
light (1)
cmd/puppeth (1)
core/forkid (1)
core/vm/runtime (1)
les (1)
eth/tracers (1)
132/93
params/config.go (140)
core/forkid/forkid_test.go (120)
core/vm/jump_table.go (30)
core/vm/contracts.go (24)
core/vm/evm.go (20)
‼️ #22217 accounts/keystore: replace uuid library 6/0/0
accounts/keystore (3)
cmd/ethkey (1)
go.mod (1)
go.sum (1)
40/34
accounts/keystore/passphrase.go (42)
go.sum (40)
accounts/keystore/key.go (24)
accounts/keystore/presale.go (18)
cmd/ethkey/generate.go (18)
#22386 core/state: fix eta calculation on pruning 1/0/0
core/state/pruner (1)
1/1
core/state/pruner/pruner.go (4)
#22183 les: UDP pre-negotiation of available server capacity 16/2/0
les (5)
les/vflux/server (5)
les/vflux/client (2)
p2p/discover (2)
common/prque (2)
les/vflux (1)
p2p/nodestate (1)
915/89
les/vflux/server/prioritypool.go (404)
les/vflux/requests.go (360)
les/vflux/server/prioritypool_test.go (252)
les/vflux/server/service.go (244)
les/vflux/client/serverpool.go (210)
#22395 core/rawdb: fix the transaction indexer 1/0/0
core/rawdb (1)
14/14
core/rawdb/chain_iterator.go (56)
⚠️ #22412 cmd/geth: put allowUnprotectedTx flag in RPC section 1/0/0
cmd/geth (1)
1/0
cmd/geth/usage.go (2)
‼️ #22418 params: update chts 1/0/0
params (1)
12/12
params/config.go (48)
‼️ #22419 cmd/utils: fix txlookuplimit exclusive check for archive node 1/0/0
cmd/utils (1)
5/2
cmd/utils/flags.go (14)
‼️ #22413 core/forkid, params: unset Berlin fork number 2/0/0
params (1)
core/forkid (1)
25/37
core/forkid/forkid_test.go (116)
params/config.go (8)
#22422 les: fix nodiscover option on the client side 3/0/0
les/vflux/client (2)
les (1)
15/5
les/client.go (24)
les/vflux/client/serverpool.go (12)
les/vflux/client/serverpool_test.go (4)
‼️ #22421 cmd: retire whisper flags 5/0/0
cmd/geth (4)
cmd/utils (1)
3/70
cmd/geth/config.go (62)
cmd/utils/flags.go (56)
cmd/geth/main.go (16)
cmd/geth/usage.go (8)
cmd/geth/consolecmd.go (4)
#22290 Access list state test format 7/0/0
tests (7)
46/41
tests/gen_sttransaction.go (74)
tests/state_test_util.go (44)
tests/block_test.go (28)
tests/state_test.go (16)
tests/gen_stenv.go (4)

397 Changed files

🔍 File Lines Changed Linked PR
‼️ core/blockchain_snapshot_test.go 2064 #21482
#22163
#21724
core/state/pruner/pruner.go 1086 #22291
#22294
#21724
#22386
‼️ core/types/transaction.go 932
‼️ cmd/utils/flags.go 896 #21482
#21909
#22122
#21984
#21932
#22130
#22109
#22103
#22083
#22161
#22213
#21940
#22293
#22280
#21724
#22205
#22184
#22014
#22350
#22339
#22380
#21502
#22250
#22419
#22263
#22421
cmd/geth/snapshot.go 866 #21724
#22263
cmd/devp2p/internal/ethtest/eth66_suite.go 764 #22363
cmd/geth/dbcmd.go 682 #22014
core/state/trie_prefetcher.go 668 #21047
⚠️ eth/downloader/downloader_test.go 604 #21482
#21989
#22140
#22241
core/state/snapshot/conversion.go 572 #22133
#21724
#21921
‼️ core/types/transaction_test.go 552
cmd/devp2p/internal/ethtest/eth66_suiteHelpers.go 540 #22363
‼️ core/tx_pool.go 532 #21478
#22247
#22380
#21502
‼️ core/types/transaction_signing.go 518 #22380
⚠️ cmd/faucet/faucet.go 456 #21850
#22018
#22107
#22137
#22136
#22145
#21940
#22205
core/types/hashing_test.go 424
‼️ core/state/statedb.go 398 #21482
#21047
#22340
#21502
consensus/ethash/difficulty.go 386 #21976
core/types/transaction_marshalling.go 374
core/state/snapshot/snapshot_test.go 308 #21724
#22331
core/tx_list.go 304 #21478
⚠️ eth/downloader/downloader.go 280 #21482
#22122
#22179
#21744
#22334
‼️ eth/backend.go 278 #21482
#21893
#22061
#22178
#21724
#22205
#22339
#22380
cmd/evm/internal/t8ntool/transition.go 270 #21502
‼️ cmd/geth/chaincmd.go 264 #21932
#22213
#22014
#22263
core/state/pruner/bloom.go 264 #21724
common/prque/prque_test.go 260 #22157
core/state/snapshot/snapshot.go 258 #22133
#21724
#22331
cmd/utils/flags_legacy.go 252 #22205
#22263
‼️ accounts/abi/bind/bind_test.go 238 #22005
#22053
#22230
#22351
core/types/access_list_tx.go 230 #21502
core/types/hashing.go 224
core/types/legacy_tx.go 222
‼️ core/blockchain_test.go 212 #22246
#21502
consensus/ethash/consensus_test.go 204 #21976
⚠️ core/types/receipt.go 202
core/types/gen_tx_json.go 202
common/prque/sstack_test.go 200 #22157
‼️ cmd/devp2p/internal/ethtest/types.go 196 #22315
#22363
⚠️ core/rawdb/accessors_chain.go 194 #21827
core/bloom_indexer.go 184 #22205
⚠️ eth/filters/filter_system_test.go 172 #22178
⚠️ core/state/state_object.go 168 #21047
‼️ eth/ethconfig/config.go 166 #22293
#22205
#22380
#22250
‼️ cmd/geth/config.go 158 #22083
#22205
#22380
#22421
‼️ core/types/receipt_test.go 152
‼️ core/tx_pool_test.go 142 #21478
#22246
⚠️ core/rawdb/accessors_chain_test.go 140 #21827
‼️ eth/bloombits.go 138 #22205
‼️ core/blockchain.go 136 #21482
#21827
#21047
#22135
#21724
#22319
.travis.yml 134 #22351
#22369
#22368
#22373
‼️ cmd/geth/main.go 130 #21984
#21932
#22099
#22103
#22213
#21724
#22184
#22014
#22339
#22380
#21502
#22250
#22263
#22421
core/rawdb/accessors_metadata.go 126 #21893
cmd/evm/testdata/8/readme.md 126 #21502
core/types/block_test.go 124
core/types/derive_sha.go 116
‼️ cmd/devp2p/internal/ethtest/suite.go 116 #22315
#22363
cmd/evm/testdata/8/txs.json 116 #21502
‼️ consensus/ethash/consensus.go 108 #21976
#21993
#21967
#22246
#22274
eth/downloader/queue.go 104 #21482
#22052
common/compiler/solidity.go 100 #22092
cmd/faucet/README.md 100 #22107
‼️ eth/filters/api.go 94 #22070
#22178
eth/downloader/queue_test.go 88 #22114
cmd/faucet/faucet_test.go 86 #22137
core/types/gen_access_tuple.go 86
core/state/snapshot/generate.go 86 #21482
#22104
#22177
#22163
‼️ eth/api.go 84 #21686
#21827
#22161
cmd/utils/diskusage.go 84 #22103
#22310
‼️ cmd/evm/internal/t8ntool/execution.go 82 #22213
#22246
#21502
‼️ core/state_processor.go 78 #22213
#21502
cmd/utils/diskusage_windows.go 76 #22103
eth/downloader/statesync.go 74 #21482
#22035
‼️ README.md 72 #22079
#22066
#22263
‼️ core/vm/contracts.go 70 #22213
#22380
cmd/utils/cmd.go 68 #22103
#22205
‼️ core/state_prefetcher.go 66 #21502
‼️ cmd/devp2p/internal/ethtest/transaction.go 66 #22315
#22363
core/rawdb/database.go 62 #21893
#21827
#21724
#22014
⚠️ cmd/geth/usage.go 60 #21984
#21932
#22103
#22213
#21724
#22184
#21502
#22250
#22412
#22263
#22421
eth/ethconfig/gen_config.go 60 #22205
#22250
⚠️ core/genesis.go 58 #22213
#21724
#22246
#22380
#21502
‼️ eth/api_backend.go 58 #21482
#22161
#22339
core/rawdb/chain_iterator.go 56 #22395
‼️ accounts/abi/bind/backends/simulated.go 56 #21047
#21502
‼️ core/vm/runtime/runtime.go 54 #22213
#22380
‼️ cmd/clef/main.go 52 #22251
#21502
#22263
‼️ build/checksums.txt 48 #22351
core/state/snapshot/difflayer.go 48 #22133
#22044
#22160
core/rawdb/schema.go 46 #21482
#21893
#21827
#21724
⚠️ cmd/geth/consolecmd.go 46 #22071
#22213
#22302
#22263
#22421
accounts/scwallet/securechannel.go 42 #22212
core/rawdb/accessors_snapshot.go 42 #21482
#22026
‼️ core/types/block.go 42 #21502
‼️ accounts/keystore/passphrase.go 42 #22217
cmd/devp2p/README.md 36 #22298
#22363
‼️ core/state_transition.go 36 #22380
#21502
cmd/evm/README.md 34 #21502
⚠️ crypto/crypto.go 34 #21047
‼️ accounts/keystore/keystore.go 34 #21502
cmd/puppeth/wizard_faucet.go 30 #21850
#22107
‼️ eth/downloader/peer.go 30 #21482
#22241
cmd/bootnode/main.go 30 #21940
core/vm/jump_table.go 30 #22213
#22380
⚠️ consensus/clique/clique.go 26 #21993
#22246
#22274
core/forkid/forkid_test.go 24 #22380
#22413
common/mclock/mclock.go 24 #22211
accounts/keystore/key.go 24 #22217
accounts/scwallet/README.md 24 #22242
⚠️ core/state/database.go 24 #21047
‼️ cmd/geth/accountcmd_test.go 22 #22002
#22130
cmd/evm/testdata/8/alloc.json 22 #21502
‼️ core/headerchain.go 22 #21967
SECURITY.md 20 #22067
‼️ core/vm/evm.go 20 #22213
#22380
‼️ core/error.go 20 #21502
cmd/puppeth/wizard_genesis.go 20 #22213
#21921
#22380
‼️ eth/discovery.go 18 #21482
⚠️ eth/downloader/modes.go 18 #21482
#22019
accounts/keystore/presale.go 18 #22217
⚠️ core/forkid/forkid.go 18 #21482
cmd/ethkey/generate.go 18 #22217
core/state/snapshot/iterator_binary.go 16 #22133
cmd/evm/testdata/8/env.json 14 #21502
crypto/crypto_test.go 14 #21047
cmd/devp2p/rlpxcmd.go 14 #22363
cmd/puppeth/module_faucet.go 14 #21850
#22107
cmd/devp2p/internal/ethtest/chain_test.go 14 #22315
‼️ cmd/geth/consolecmd_test.go 12 #22130
#22263
cmd/faucet/website.go 12 #22169
consensus/ethash/ethash_test.go 12 #22162
#22274
‼️ cmd/geth/les_test.go 12 #22130
⚠️ core/state/statedb_test.go 12 #21047
core/bloombits/matcher_test.go 12 #22000
core/types/gen_receipt_json.go 12
eth/api_test.go 12 #21482
core/state/snapshot/iterator_fast.go 12 #22133
console/console_test.go 10 #22205
core/bloombits/scheduler_test.go 10 #22000
cmd/evm/internal/t8ntool/flags.go 10 #21502
⚠️ accounts/abi/bind/template.go 10 #22005
#22230
common/prque/lazyqueue.go 10 #22183
core/rawdb/freezer_table.go 10 #21967
core/state/snapshot/iterator.go 8 #22133
⚠️ core/vm/runtime/runtime_test.go 8 #21921
‼️ .github/CONTRIBUTING.md 8 #22068
appveyor.yml 8 #22351
‼️ crypto/signify/signify_fuzz.go 8 #22124
⚠️ core/vm/interpreter.go 8 #22213
#22380
‼️ accounts/abi/bind/auth.go 8 #21502
⚠️ consensus/consensus.go 8 #22274
‼️ cmd/geth/dao_test.go 8 #22130
‼️ cmd/geth/genesis_test.go 8 #22130
accounts/abi/abi_test.go 6 #22230
‼️ cmd/geth/misccmd.go 4 #21482
⚠️ core/state/dump.go 4 #22225
crypto/bls12381/bls12_381_test.go 4 #21921
⚠️ core/bench_test.go 4 #21502
cmd/puppeth/module_node.go 4 #22263
eth/fetcher/block_fetcher_test.go 4 #22246
core/genesis_alloc.go 4 #22213
#21502
core/state/snapshot/disklayer.go 4 #22133
accounts/usbwallet/trezor.go 4 #21502
cmd/puppeth/genesis.go 4 #21921
cmd/faucet/faucet.html 4 #22145
common/prque/lazyqueue_test.go 4 #22183
⚠️ eth/gasprice/gasprice_test.go 4
accounts/keystore/account_cache.go 4 #21921
accounts/scwallet/wallet.go 4 #21502
core/state/snapshot/difflayer_test.go 4 #22133
⚠️ core/state/state_test.go 4 #21047
cmd/abigen/main.go 4 #21875
‼️ Dockerfile 4 #22351
‼️ build/ci.go 4 #22351
core/state/snapshot/disklayer_test.go 4 #22133
‼️ crypto/signify/signify.go 4 #21921
crypto/bls12381/arithmetic_fallback.go 4 #22124
core/state/snapshot/journal.go 4 #22163
eth/fetcher/block_fetcher.go 4 #22246
consensus/ethash/algorithm_test.go 4 #22274
Dockerfile.alltools 4 #22351
‼️ cmd/geth/run_test.go 4 #22263
‼️ core/state_processor_test.go 4 #22246
cmd/evm/main.go 2 #21502
common/mclock/mclock.s 2 #22211
⚠️ core/vm/interface.go 2
‼️ ```` 0 #22213
```` 0 #21940
```` 0 #21940
```` 0 #22313
les/utils/limiter.go 0 #21930
‼️ ```` 0 #22213
#22380
#22413
#22418
```` 0 #21940
#22347
ethdb/leveldb/leveldb.go 0 #22014
‼️ ```` 0 #21976
#22029
#22199
#22158
#22282
‼️ eth/tracers/tracer.go 0 #22038
#21921
‼️ les/api_backend.go 0 #22161
#22339
⚠️ ```` 0 #22239
```` 0 #22205
‼️ internal/ethapi/api.go 0 #22061
#22170
#22270
#22271
#22339
```` 0 #22130
#22205
```` 0 #21940
```` 0 #21724
```` 0 #21940
eth/protocols/snap/protocol.go 0 #22179
#22235
#22334
eth/tracers/api_test.go 0 #22161
eth/tracers/internal/tracers/unigram_tracer.js 0 #22248
‼️ ethclient/ethclient_test.go 0 #22127
#22205
```` 0 #21940
les/fetcher_test.go 0 #22349
‼️ eth/handler_test.go 0 #21482
les/vflux/client/requestbasket.go 0 #22347
‼️ ```` 0 #22105
#22184
eth/protocols/snap/discovery.go 0
les/ulc_test.go 0 #22349
‼️ les/utils/expiredvalue.go 0 #21994
```` 0 #21921
```` 0 #22029
#21812
eth/protocols/snap/peer.go 0 #22179
eth/state_accessor.go 0 #22161
‼️ les/client.go 0 #21893
#22061
#22178
#21940
#22205
#22347
#22343
#22339
#22380
#22183
#22377
#22349
#22422
les/vflux/client/api.go 0 #22347
```` 0 #22083
⚠️ ```` 0 #21724
```` 0 #21940
‼️ eth/peer.go 0 #21482
#22235
event/subscription.go 0 #22191
```` 0 #21940
internal/flags/helpers.go 0 #22220
#22014
‼️ les/odr_test.go 0 #22321
#22349
```` 0 #22183
les/vflux/server/balance_tracker.go 0 #22347
#22343
‼️ ```` 0 #22213
#21724
#22380
#22290
eth/protocols/snap/sync_test.go 0 #22023
#22179
les/retrieve.go 0 #22048
les/vflux/client/valuetracker_test.go 0 #22347
#22377
⚠️ ```` 0 #22316
les/commons.go 0 #22123
#21940
#22205
#22343
les/vflux/client/fillset_test.go 0 #22347
les/vflux/client/queueiterator_test.go 0 #22347
#22377
‼️ ```` 0 #22130
#22184
#22339
```` 0 #21940
‼️ ```` 0 #22385
‼️ eth/sync_test.go 0 #22235
```` 0 #21940
eth/handler_snap.go 0 #21482
#22235
ethclient/signer.go 0
⚠️ graphql/schema.go 0 #22153
‼️ les/peer.go 0 #21909
#22282
#22347
#22377
#22349
```` 0 #22130
```` 0 #22385
```` 0 #21940
```` 0 #22183
⚠️ ```` 0 #21482
#22123
‼️ ethstats/ethstats.go 0
les/api_test.go 0 #22205
```` 0 #21940
‼️ eth/tracers/api.go 0 #22161
#22213
#22380
les/clientpool_test.go 0 #22347
#22183
les/vflux/server/clientdb_test.go 0 #22347
```` 0 #22044
#22332
eth/protocols/snap/handler.go 0 #22235
les/odr_requests.go 0 #21909
#22115
#22246
#22349
‼️ ```` 0 #22213
#22290
eth/protocols/eth/protocol.go 0 #22235
#22241
‼️ les/server_handler.go 0 #22115
#22282
#22347
#22357
```` 0 #22076
#22029
```` 0 #22213
#22290
```` 0 #22290
⚠️ interfaces.go 0
les/costtracker.go 0 #22205
les/vflux/client/timestats_test.go 0 #22347
```` 0 #22336
les/vflux/server/balance.go 0 #22347
#22183
‼️ internal/ethapi/backend.go 0 #22339
```` 0 #21940
```` 0 #22282
eth/peerset.go 0 #21482
#22146
#22171
#22235
#22272
eth/protocols/eth/handshake_test.go 0
```` 0 #22130
#22205
```` 0 #22213
#22380
```` 0 #21940
#22347
⚠️ ```` 0 #22241
les/vflux/server/clientdb.go 0 #22347
```` 0 #22290
les/vflux/client/serverpool_test.go 0 #22183
#22377
#22422
```` 0 #22336
```` 0 #22349
les/server_requests.go 0 #22282
#22357
#22349
‼️ eth/protocol.go 0 #21482
```` 0 #22158
#22233
⚠️ ```` 0 #22171
#22235
#22272
⚠️ ```` 0 #22385
les/vflux/client/wrsiterator_test.go 0 #22347
‼️ ```` 0 #22288
⚠️ ```` 0 #22184
eth/tracers/internal/tracers/assets.go 0 #22038
#22248
⚠️ ```` 0 #21482
#22123
```` 0 #22130
#22184
eth/protocols/eth/broadcast.go 0 #22181
#22176
‼️ ```` 0 #21989
#22108
#21047
#22246
```` 0 #21921
‼️ les/enr_entry.go 0 #21940
#22183
```` 0 #22044
```` 0 #21921
eth/protocols/eth/handlers.go 0 #22241
les/clientpool.go 0 #22347
#22343
#22183
‼️ eth/helper_test.go 0 #21482
eth/protocols/eth/handler_test.go 0 #21999
‼️ go.mod 0 #22044
#22227
#22134
#22212
#22216
#22211
#21724
#21812
#22217
#22363
les/state_accessor.go 0 #22161
⚠️ ```` 0 #21940
eth/protocols/eth/handshake.go 0
les/odr.go 0 #22349
```` 0 #21921
```` 0 #22313
les/pruner_test.go 0 #22349
‼️ les/utils/weighted_select.go 0 #21930
```` 0 #22213
```` 0 #21940
```` 0 #22282
‼️ ```` 0 #22184
eth/protocols/snap/sync.go 0 #22023
#22026
#22016
#22179
#21921
#22334
#22381
‼️ eth/tracers/tracer_test.go 0 #22038
‼️ graphql/graphql_test.go 0 #21883
#22126
#22166
#22164
#22187
#22205
#22184
les/api.go 0 #22347
eth/handler_eth.go 0 #21482
#22235
les/utils/limiter_test.go 0 #21930
les/vflux/client/timestats.go 0 #22347
```` 0 #21940
eth/protocols/eth/peer.go 0 #22241
‼️ go.sum 0 #22044
#22227
#22134
#22212
#22216
#22211
#21724
#21812
#22184
#22217
internal/debug/flags.go 0 #22207
#22263
‼️ les/test_helper.go 0 #22123
#22205
#22282
#22321
#22349
‼️ graphql/graphql.go 0 #21883
#22126
#22187
les/request_test.go 0 #22321
#22349
```` 0 #22130
```` 0 #22210
```` 0 #21940
‼️ eth/tracers/tracers_test.go 0 #22038
les/handler_test.go 0 #22115
#22282
#22321
#22349
les/vflux/client/valuetracker.go 0 #22347
#22377
‼️ eth/handler.go 0 #21482
#22146
#22179
#22171
#22235
#22176
eth/protocols/eth/handler.go 0 #22235
#22241
‼️ les/sync_test.go 0 #22123
#22349
```` 0 #22158
#22233
```` 0 #21921
#22262
les/client_handler.go 0 #22123
#22377
les/server.go 0 #21940
#22205
#22347
#22343
#22183
#22250
```` 0 #21940
eth/tracers/internal/tracers/prestate_tracer.js 0 #22038
les/sync.go 0 #22123
les/vflux/server/balance_test.go 0 #22347
#22343
#22183
```` 0 #22069
⚠️ ```` 0 #22246
⚠️ eth/sync.go 0 #22171
#22235
les/lespay/server/prioritypool_test.go 0
les/vflux/client/fillset.go 0 #22347
les/vflux/client/queueiterator.go 0 #22347
```` 0 #21976
event/subscription_test.go 0 #22191
les/txrelay.go 0 #22125
```` 0 #22349
eth/handler_eth_test.go 0 #21482
#22235
les/vflux/client/wrsiterator.go 0 #22347
```` 0 #22009
#22290
```` 0 #22210
‼️ ```` 0 #22184
#22307
‼️ ethclient/ethclient.go 0
les/vflux/client/serverpool.go 0 #22183
#22377
#22422
‼️ les/vflux/server/prioritypool.go 0 #22347
#22183
les/vflux/requests.go 0 #22183
```` 0 #22380
eth/protocols/eth/discovery.go 0
les/protocol.go 0 #21909
#22282
#22347
#22321
‼️ ```` 0 #22133
```` 0 #21940
```` 0 #21940
eth/protocols/eth/peer_test.go 0
‼️ eth/protocol_test.go 0
eth/protocols/eth/protocol_test.go 0 #22241
les/benchmark.go 0 #22115
```` 0 #22029
‼️ ```` 0 #22385
‼️ internal/web3ext/web3ext.go 0 #22377
```` 0 #21940
‼️ ```` 0 #21921
```` 0 #22183
```` 0 #21976
```` 0 #22313
```` 0 #22290
internal/guide/guide_test.go 0
⚠️ ```` 0 #22038
#21827
#21047
```` 0 #21940
```` 0 #22347
#22183
les/vflux/client/requestbasket_test.go 0 #22347
```` 0 #22183

holiman and others added 30 commits December 11, 2020 11:06
This PR adds re-written difficulty calculators, which are based on uint256. It also adds a fuzzer + oss-fuzz integration for the new fuzzer. It does differential fuzzing between the new and old calculators.

Note: this PR does not actually enable the new calculators.
This PR implements unclean shutdown marker. Every time geth boots, it adds a timestamp to a list of timestamps in the database. This list is capped at 10. At a clean shutdown, the timestamp is removed again. 
Thus, when geth exits unclean, the marker remains, and at boot up we show the most recent unclean shutdowns to the user, which makes it easier to diagnose root-causes to certain problems. 

Co-authored-by: Nagy Salem <me@muhnagy.com>
…rning structs (#22005)

Fixes the template used when generating code, which in some scenarios would lead to panic instead of returning an error.
* doc: clarify abigen alias flag usage

update the `abigen --alias` flag help info, give an example to make it more clear

related issue: ethereum/go-ethereum#21846

* Update cmd/abigen/main.go

Co-authored-by: ligi <ligi@ligi.de>

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: ligi <ligi@ligi.de>
This commit splits the eth package, separating the handling of eth and snap protocols. It also includes the capability to run snap sync (https://github.com/ethereum/devp2p/blob/master/caps/snap.md) , but does not enable it by default. 

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
Co-authored-by: Martin Holst Swende <martin@swende.se>
* les: allow tx unindexing in les/4 light server mode

* les: minor fixes

* les: more small fixes

* les: add meaningful constants for recentTxIndex handshake field
…ng (#22035)

* eth/download/statesync : state hash sum optimized

* go fmt with blank in imports

* keccak read arg fix
During the snap and eth refactor, the net_version rpc call was falsely deprecated.
This restores the net_version RPC handler as most eth2 nodes and other software
depend on it.
* common,crypto: move fuzzers out of core

* fuzzers: move vm fuzzer out from core

* fuzzing: rework cover package logic

* fuzzers: lint
The legacy dot-org URL was displaying a message about the repository
having migrated to the dot-com service, which now covers open-source
projects as well.
… tracers (#22038)

* eth/tracers: share tx gas price with js tracer

* eth/tracers: use `go generate`

* eth/tracers: try with another version of go-bindata

* eth/tracers: export txGas

* eth, eth/tracers: pass intrinsic gas to js tracers

eth/tracers: include tx gas in tracers usedGas

eth/tracers: fix prestate tracer's sender balance

eth/tracers: rm unnecessary import

eth/tracers: pass intrinsicGas separately to tracer

eth/tracers: fix tests broken by lack of txdata

eth, eth/tracers: minor fix

* eth/tracers: regenerate assets + unexport test-struct + add testcase

* eth/tracers: simplify tests + make table-driven

Co-authored-by: Guillaume Ballet <gballet@gmail.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Add links to go-ethereum's GitHub release page.

Co-authored-by: Felix Lange <fjl@twurst.com>
@achraf17 achraf17 marked this pull request as ready for review January 4, 2022 14:02
eth/sync.go Outdated Show resolved Hide resolved
@SatpalSandhu61
Copy link
Contributor

With regards to the Offline State Pruning (#21724) that is in this release (as an experimental feature). We believe this would delete any private state. Therefore it may be worth adding a check to prevent this from being run if any private state exists (or if running a quorum enabled network).
At some point we would probably want to enhance this feature so that pruning does also work for private state.

@namtruong
Copy link
Contributor

namtruong commented Jan 24, 2022

Regarding PR miner: avoid sleeping in miner (#22108), the removed block of code was added back into GoQuorum - was this intentional or possibly a mixup when resolving conflicts ?

@achraf17
Copy link
Contributor

Regarding PR miner: avoid sleeping in miner (#22108), the removed block of code was added back into GoQuorum - was this intentional or possibly a mixup when resolving conflicts ?

@namtruong This has been mix up when resolving conflicts.
The issue is not relevant when running (IBFT, QBFT or raft) so i removed that piece of code.

These are relevant ressource:

@achraf17 achraf17 merged commit d258a13 into Consensys:master Jan 27, 2022
@quorumbot quorumbot deleted the upgrade/go-ethereum/v1.10.0-2021903090443 branch July 15, 2022 12:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet