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

Merge upstream v1.10.7 #57

Merged
merged 51 commits into from Feb 9, 2023
Merged

Merge upstream v1.10.7 #57

merged 51 commits into from Feb 9, 2023

Conversation

junnmm
Copy link
Collaborator

@junnmm junnmm commented Feb 9, 2023

Merge upstream v1.10.7 into develop.

Possible issues:

Others:

  • state transition refactored

Diff stat between go-Ethereum v1.10.7 and the head of this pull request:

 .github/dependabot.yml                   |   11 +
 .github/workflows/codeql.yml             |   76 +
 .github/workflows/hive.yml               |   41 +
 .github/workflows_old/docker-image.yml   |   55 +
 .gitignore                               |    2 +
 Dockerfile                               |    2 +
 KCC_Green.png                            |  Bin 0 -> 88361 bytes
 README.md                                |  255 +--
 accounts/accounts.go                     |    1 +
 accounts/external/backend.go             |    6 +-
 cmd/clef/main.go                         |    2 +-
 cmd/devp2p/discv4cmd.go                  |    2 +-
 cmd/devp2p/nodesetcmd.go                 |    8 +-
 cmd/geth/chaincmd.go                     |    5 +-
 cmd/geth/config.go                       |    1 +
 cmd/geth/consolecmd.go                   |   20 +-
 cmd/geth/dbcmd.go                        |   40 +-
 cmd/geth/main.go                         |   22 +-
 cmd/geth/snapshot.go                     |   23 +-
 cmd/geth/usage.go                        |    6 +-
 cmd/utils/flags.go                       |  111 +-
 consensus/clique/clique.go               |    4 +-
 consensus/consensus.go                   |    7 +-
 consensus/ethash/consensus.go            |    4 +-
 consensus/posa/abi.go                    | 2827 ++++++++++++++++++++++++++++++
 consensus/posa/api.go                    |  147 ++
 consensus/posa/interactive.go            |   86 +
 consensus/posa/kccIshikari.go            |  103 ++
 consensus/posa/kccIshikari_patch.go      |  105 ++
 consensus/posa/kccIshikari_patch_test.go |   24 +
 consensus/posa/posa.go                   | 1170 +++++++++++++
 consensus/posa/snapshot.go               |  203 +++
 core/forkid/forkid.go                    |    7 +
 core/forkid/forkid_test.go               |   68 -
 core/genesis.go                          |   77 +-
 core/genesis_alloc.go                    |    8 +-
 core/mkalloc.go                          |   10 +-
 core/rawdb/database.go                   |    4 +
 core/state_transition.go                 |   38 +-
 core/types/transaction.go                |    9 +-
 core/vm/analysis.go                      |   94 +-
 core/vm/analysis_test.go                 |   24 +-
 core/vm/instructions.go                  |    4 +
 core/vm/instructions_kcc_issue_9.go      |   62 +
 core/vm/interpreter.go                   |   17 +-
 core/vm/jump_table.go                    |   27 +-
 eth/backend.go                           |   59 +-
 eth/ethconfig/config.go                  |   14 +-
 eth/gasprice/gasprice.go                 |   16 +
 eth/protocols/eth/handler.go             |    2 +-
 genesis-mainnet.json                     |   47 +
 genesis-testnet.json                     |   50 +
 internal/ethapi/api.go                   |   19 +-
 internal/web3ext/web3ext.go              |   31 +
 les/commons.go                           |    2 +-
 les/protocol.go                          |    2 +-
 miner/miner.go                           |    8 +-
 miner/worker.go                          |    9 +
 mobile/geth.go                           |   24 +-
 mobile/params.go                         |   24 +-
 p2p/peer.go                              |    6 +-
 p2p/peer_error.go                        |    2 +-
 params/bootnodes.go                      |  103 +-
 params/config.go                         |  455 ++---
 params/version.go                        |    6 +-
 65 files changed, 5749 insertions(+), 948 deletions(-)

fjl and others added 30 commits July 22, 2021 16:45
…thereum#23239)

* internal/ethapi/api: use hexutil.uint for blockCount parameter instead of int for feeHistory

* return hex value for oldestBlock instead of number

* return uint64 from oracle.resolveBlockRange

* eth/gasprice: fixed test

Co-authored-by: Zsolt Felfoldi <zsfelfoldi@gmail.com>
* internal/ethapi: revert + fix properly in al tracer

* internal/ethapi: use toMessage instead of creating new message

* internal/ethapi: remove ineffassign

* core: fix invalid unmarshalling, fix test

Co-authored-by: Martin Holst Swende <martin@swende.se>
…reum#23274)

Ticket ethereum#23273 found a flaw where we were unable to sign legacy-transactions
using the external signer, even if we're still on non-london network. That's
fixed in this PR.

Additionally, I found that even when supplying all parameters, it was impossible
to sign a london-transaction on an unsynched node. It's a pretty common usecase
that someone wants to sign a transaction using an unsynced 'vanilla' node,
providing all necessary data. Our setDefaults, however, insisted on checking the
current block against the config. This PR therefore adds a case, so that if both
MaxPriorityFeePerGas and MaxFeePerGas are provided, we accept them as given.

OBS This PR fixes a regression -- on current master, we are unable to sign a
london-transaction unless the node is synched, which may break scenarios where
geth (or clef) is used as a cold wallet.

Fixes ethereum#23273
…m#23200)

When the nodeCount is less than 10, it will panic with the out of bound error.
How about we just skip this round, when rand1 and rand2 are equal?
This PR moves (some) account types into a standalone package, to avoid
depending on signer/core from accounts/external.
Co-authored-by: Felix Lange <fjl@twurst.com>
* node: remove term "whitelist"

* include cmd/clef
This PR modifies the post-PING-send expectations to both be laxer and stricter: it doesn't care what order the packets arrive, but also verifies that exactly one PING and one PONG is returned.
* core/state: add trie prefetcher tests

* core/state: add missing license
This adds a check to verify that a sender-account does not have code, which means that the codehash is either `emptyCodeHash` _OR_ not present. The latter occurs IFF the sender did not previously exist, a situation which can only occur with zero cost gasprices.
In many cases, it's desireable to use already-signed transactions as input to the state transition, instead of having the evm sign them internally (for example to use malformed or not-yet-valid transactions). This PR adds support + docs for that feature.
…23287)

* add db close to avoid goroutine leak

* core/rawdb: move close to defer

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: lxex <liuxmzc1@163.com>
karalabe and others added 21 commits August 10, 2021 10:40
core/state/pruner: fix state bloom sync permission in Windows
…23305)


Co-authored-by: Tyler Chambers <me@tylerchambers.net>
Co-authored-by: Felix Lange <fjl@twurst.com>
…balance for 1559 fee parameters (ethereum#23309)

* internal/ethapi/api: cap highest gas limit by account balance for 1559 fee parameters

* accounts/abi/bind: port gas limit cap for 1559 parameters to simulated backend

* accounts/abi/bind: add test for 1559 gas estimates for the simulated backend

* internal/ethapi/api: fix comment

* accounts/abi/bind/backends, internal/ethapi: unify naming style

Co-authored-by: Péter Szilágyi <peterke@gmail.com>
travis: transition from docker auto builds to manual pushes
build: fix docker tag to include `v` prefix in version string
internal/ethapi: add back missing check for maxfee < maxPriorityFee
params: update CHTs for the 1.10.7 release
@junnmm junnmm marked this pull request as ready for review February 9, 2023 09:10
This was referenced Feb 9, 2023
@0xcary
Copy link
Collaborator

0xcary commented Feb 9, 2023

LGTM

@viaweb3 viaweb3 merged commit d8c8176 into kcc-community:develop Feb 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet