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.9.22 #1214

Merged
Merged
Show file tree
Hide file tree
Changes from 47 commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
8d35b1e
params: begin v1.9.22 release cycle
karalabe Sep 9, 2020
367f12f
eth/downloader: only roll back light sync if not fully validating
karalabe Sep 9, 2020
d81c9d9
accounts/abi/bind/backends: reverted some stylistic changes (#21535)
MariusVanDerWijden Sep 9, 2020
3a98c6f
Merge pull request #21537 from karalabe/les-reorg-fix
karalabe Sep 9, 2020
328901c
cmd, eth: offer maxprice flag for overwritting price cap (#21531)
rjl493456442 Sep 9, 2020
a3cd8a0
core/vm: fix benchmark overflow + prep for precompile repricings (#21…
holiman Sep 10, 2020
4ea9737
go.mod: remove golang.org/x/sync (#21541)
islishude Sep 10, 2020
1167639
ethclient: add BlockNumber method (#21500)
sosedoff Sep 10, 2020
d7f02b4
cmd/geth: print warning when whisper config is present in toml (#21544)
gballet Sep 10, 2020
7cf56d6
miner: use channels instead of atomics in update loop (#21536)
MariusVanDerWijden Sep 10, 2020
df219e2
miner: fix regression, add test for starting while download (#21547)
MariusVanDerWijden Sep 11, 2020
4e26413
p2p/discover: fix typo in comments (#21554)
gballet Sep 11, 2020
a99ac53
Dockerfile: unexpose port 8547 as GraphQL was merged into HTTP endpoi…
islishude Sep 13, 2020
4eb9296
p2p/nodestate: ensure correct callback order (#21436)
zsfelfoldi Sep 14, 2020
71c37d8
js/tracers: make calltracer report value in selfdestructs (#21549)
Sep 14, 2020
f7112cc
rlp: add SplitUint64 (#21563)
fjl Sep 14, 2020
4996fce
les, les/lespay/server: refactor client pool (#21236)
zsfelfoldi Sep 14, 2020
b65c384
eth/tracers: regenerate assets from #21549 (#21564)
holiman Sep 15, 2020
4764b2f
COYPING: restore the full text text of GPL (#21568)
kirelagin Sep 15, 2020
0185ee0
core/rawdb: single point of maintenance for writing and deleting tx l…
Neurone Sep 15, 2020
cf2a77a
ethclient: fix BlockNumber (#21565)
masonforest Sep 15, 2020
8696dd3
params: allow setting Petersburg block before chain head (#21473)
vdamle Sep 16, 2020
93f0470
les/lespay/server: bump database version (#21571)
rjl493456442 Sep 16, 2020
89884dc
tests/fuzzers/abi: add fuzzer for fuzzing package accounts/abi (#21217)
MariusVanDerWijden Sep 16, 2020
faba018
cmd/utils: use preconfigured testnet flags instead of networkid (#21561)
MariusVanDerWijden Sep 16, 2020
07751c3
cmd/geth: added counters to the geth inspect report (#21495)
Neurone Sep 17, 2020
fb835c0
eth/downloader: dynamically move pivot even during chain sync
karalabe Sep 8, 2020
2482ba0
Merge pull request #21529 from karalabe/dynamic-pivot
karalabe Sep 18, 2020
f354c62
core: fix a typo in comment (#21439)
gballet Sep 18, 2020
9a39c6b
accounts/abi: improve documentation and names (#21540)
muse254 Sep 20, 2020
2c097bb
mobile: better api for java users (#21580)
MariusVanDerWijden Sep 21, 2020
129cf07
p2p: move rlpx into separate package (#21464)
renaynay Sep 22, 2020
fdb7424
cmd/clef, cmd/geth: use SplitAndTrim from cmd/utils (#21579)
binacs Sep 22, 2020
e1365b2
trie: fix gaped range proof test case (#21484)
rjl493456442 Sep 23, 2020
25b1608
trie: support empty range proof (#21199)
rjl493456442 Sep 23, 2020
0921f8a
internal/ethapi: add optional parameter blockNrOrHash to estimateGas …
MariusVanDerWijden Sep 23, 2020
e5defcc
trie: extend range proof (#21250)
rjl493456442 Sep 23, 2020
c154442
internal/ethapi: fix nil deref + fix estimateGas console bindings (#2…
MariusVanDerWijden Sep 23, 2020
a25899f
cmd/devp2p: add eth protocol test suite (#21598)
renaynay Sep 23, 2020
39f8268
cmd/devp2p/internal/ethtest: update version in handshake (#21603)
renaynay Sep 23, 2020
fdd42d4
cmd/devp2p/internal/ethtest: lower protocol version to 64 (#21604)
renaynay Sep 24, 2020
b5d362b
params: update CHTs for Geth v1.9.22
karalabe Sep 28, 2020
7ddb44b
Merge pull request #21635 from karalabe/cht-1.9.22
karalabe Sep 28, 2020
c71a7e2
params: release Geth v1.9.22
karalabe Sep 28, 2020
6007b12
Merge branch 'master' into upgrade/go-ethereum/v1.9.22-2021615155119
baptiste-b-pegasys Jun 16, 2021
0561744
resolve remaining conflicts
baptiste-b-pegasys Jun 16, 2021
7fb3ac3
apply correctly merge conflict
baptiste-b-pegasys Jun 16, 2021
17d1c5f
revert modification made, disable function
baptiste-b-pegasys Jun 16, 2021
bb5f59a
revert commented function
baptiste-b-pegasys Jun 16, 2021
370d5c6
fix: method missing in the merge #21601
baptiste-b-pegasys Jun 18, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 57 additions & 2 deletions COPYING
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007

Copyright (C) 2014 The go-ethereum Authors.
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Expand Down Expand Up @@ -616,4 +616,59 @@ above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
copy of the Program in return for a fee.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

<one line to give the program's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.

Also add information on how to contact you by electronic and paper mail.

If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:

<program> Copyright (C) <year> <name of author>
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".

You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
<https://www.gnu.org/licenses/>.

The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
<https://www.gnu.org/licenses/why-not-lgpl.html>.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ RUN apk add --no-cache ca-certificates
COPY --from=builder /go-ethereum/build/bin/geth /usr/local/bin/
COPY --from=builder /go-ethereum/build/bin/bootnode /usr/local/bin/

EXPOSE 8545 8546 8547 30303 30303/udp
EXPOSE 8545 8546 30303 30303/udp
ENTRYPOINT ["geth"]
2 changes: 1 addition & 1 deletion Dockerfile.alltools
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ FROM alpine:latest
RUN apk add --no-cache ca-certificates
COPY --from=builder /go-ethereum/build/bin/* /usr/local/bin/

EXPOSE 8545 8546 8547 30303 30303/udp
EXPOSE 8545 8546 30303 30303/udp
10 changes: 5 additions & 5 deletions accounts/abi/abi.go
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ func (abi ABI) Pack(name string, args ...interface{}) ([]byte, error) {
return append(method.ID, arguments...), nil
}

// Unpack output in v according to the abi specification
// Unpack output in v according to the abi specification.
func (abi ABI) Unpack(v interface{}, name string, data []byte) (err error) {
// since there can't be naming collisions with contracts and events,
// we need to decide whether we're calling a method or an event
Expand All @@ -96,7 +96,7 @@ func (abi ABI) Unpack(v interface{}, name string, data []byte) (err error) {
return fmt.Errorf("abi: could not locate named method or event")
}

// UnpackIntoMap unpacks a log into the provided map[string]interface{}
// UnpackIntoMap unpacks a log into the provided map[string]interface{}.
func (abi ABI) UnpackIntoMap(v map[string]interface{}, name string, data []byte) (err error) {
// since there can't be naming collisions with contracts and events,
// we need to decide whether we're calling a method or an event
Expand All @@ -112,7 +112,7 @@ func (abi ABI) UnpackIntoMap(v map[string]interface{}, name string, data []byte)
return fmt.Errorf("abi: could not locate named method or event")
}

// UnmarshalJSON implements json.Unmarshaler interface
// UnmarshalJSON implements json.Unmarshaler interface.
func (abi *ABI) UnmarshalJSON(data []byte) error {
var fields []struct {
Type string
Expand Down Expand Up @@ -201,8 +201,8 @@ func (abi *ABI) overloadedEventName(rawName string) string {
return name
}

// MethodById looks up a method by the 4-byte id
// returns nil if none found
// MethodById looks up a method by the 4-byte id,
// returns nil if none found.
func (abi *ABI) MethodById(sigdata []byte) (*Method, error) {
if len(sigdata) < 4 {
return nil, fmt.Errorf("data too short (%d bytes) for abi method lookup", len(sigdata))
Expand Down
6 changes: 3 additions & 3 deletions accounts/abi/abi_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ import (

const jsondata = `
[
{ "type" : "function", "name" : "", "stateMutability" : "view" },
{ "type" : "function", "name" : ""},
{ "type" : "function", "name" : "balance", "stateMutability" : "view" },
{ "type" : "function", "name" : "send", "inputs" : [ { "name" : "amount", "type" : "uint256" } ] },
{ "type" : "function", "name" : "test", "inputs" : [ { "name" : "number", "type" : "uint32" } ] },
Expand Down Expand Up @@ -88,7 +88,7 @@ var (
)

var methods = map[string]Method{
"": NewMethod("", "", Function, "view", false, false, nil, nil),
"": NewMethod("", "", Function, "", false, false, nil, nil),
"balance": NewMethod("balance", "balance", Function, "view", false, false, nil, nil),
"send": NewMethod("send", "send", Function, "", false, false, []Argument{{"amount", Uint256, false}}, nil),
"test": NewMethod("test", "test", Function, "", false, false, []Argument{{"number", Uint32, false}}, nil),
Expand Down Expand Up @@ -1092,7 +1092,7 @@ func TestDoubleDuplicateEventNames(t *testing.T) {
}

// TestUnnamedEventParam checks that an event with unnamed parameters is
// correctly handled
// correctly handled.
// The test runs the abi of the following contract.
// contract TestEvent {
// event send(uint256, uint256);
Expand Down
18 changes: 9 additions & 9 deletions accounts/abi/argument.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ type ArgumentMarshaling struct {
Indexed bool
}

// UnmarshalJSON implements json.Unmarshaler interface
// UnmarshalJSON implements json.Unmarshaler interface.
func (argument *Argument) UnmarshalJSON(data []byte) error {
var arg ArgumentMarshaling
err := json.Unmarshal(data, &arg)
Expand All @@ -59,7 +59,7 @@ func (argument *Argument) UnmarshalJSON(data []byte) error {
return nil
}

// NonIndexed returns the arguments with indexed arguments filtered out
// NonIndexed returns the arguments with indexed arguments filtered out.
func (arguments Arguments) NonIndexed() Arguments {
var ret []Argument
for _, arg := range arguments {
Expand All @@ -70,12 +70,12 @@ func (arguments Arguments) NonIndexed() Arguments {
return ret
}

// isTuple returns true for non-atomic constructs, like (uint,uint) or uint[]
// isTuple returns true for non-atomic constructs, like (uint,uint) or uint[].
func (arguments Arguments) isTuple() bool {
return len(arguments) > 1
}

// Unpack performs the operation hexdata -> Go format
// Unpack performs the operation hexdata -> Go format.
func (arguments Arguments) Unpack(v interface{}, data []byte) error {
if len(data) == 0 {
if len(arguments) != 0 {
Expand All @@ -100,7 +100,7 @@ func (arguments Arguments) Unpack(v interface{}, data []byte) error {
return arguments.unpackAtomic(v, marshalledValues[0])
}

// UnpackIntoMap performs the operation hexdata -> mapping of argument name to argument value
// UnpackIntoMap performs the operation hexdata -> mapping of argument name to argument value.
func (arguments Arguments) UnpackIntoMap(v map[string]interface{}, data []byte) error {
// Make sure map is not nil
if v == nil {
Expand All @@ -122,7 +122,7 @@ func (arguments Arguments) UnpackIntoMap(v map[string]interface{}, data []byte)
return nil
}

// unpackAtomic unpacks ( hexdata -> go ) a single value
// unpackAtomic unpacks ( hexdata -> go ) a single value.
func (arguments Arguments) unpackAtomic(v interface{}, marshalledValues interface{}) error {
dst := reflect.ValueOf(v).Elem()
src := reflect.ValueOf(marshalledValues)
Expand Down Expand Up @@ -207,13 +207,13 @@ func (arguments Arguments) UnpackValues(data []byte) ([]interface{}, error) {
return retval, nil
}

// PackValues performs the operation Go format -> Hexdata
// It is the semantic opposite of UnpackValues
// PackValues performs the operation Go format -> Hexdata.
// It is the semantic opposite of UnpackValues.
func (arguments Arguments) PackValues(args []interface{}) ([]byte, error) {
return arguments.Pack(args...)
}

// Pack performs the operation Go format -> Hexdata
// Pack performs the operation Go format -> Hexdata.
func (arguments Arguments) Pack(args ...interface{}) ([]byte, error) {
// Make sure arguments match up and pack them
abiArgs := arguments
Expand Down
2 changes: 1 addition & 1 deletion accounts/abi/bind/auth.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ func NewTransactor(keyin io.Reader, passphrase string) (*TransactOpts, error) {
}

// NewKeyStoreTransactor is a utility method to easily create a transaction signer from
// an decrypted key from a keystore
// a decrypted key from a keystore.
func NewKeyStoreTransactor(keystore *keystore.KeyStore, account accounts.Account) (*TransactOpts, error) {
return &TransactOpts{
From: account.Address,
Expand Down
6 changes: 3 additions & 3 deletions accounts/abi/bind/backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ var (
ErrNoCodeAfterDeploy = errors.New("no contract code after deployment")
)

// ContractCaller defines the methods needed to allow operating with contract on a read
// ContractCaller defines the methods needed to allow operating with a contract on a read
// only basis.
type ContractCaller interface {
// CodeAt returns the code of the given account. This is needed to differentiate
Expand All @@ -62,8 +62,8 @@ type PendingContractCaller interface {
PendingCallContract(ctx context.Context, call ethereum.CallMsg) ([]byte, error)
}

// ContractTransactor defines the methods needed to allow operating with contract
// on a write only basis. Beside the transacting method, the remainder are helpers
// ContractTransactor defines the methods needed to allow operating with a contract
// on a write only basis. Besides the transacting method, the remainder are helpers
// used when the user does not provide some needed values, but rather leaves it up
// to the transactor to decide.
type ContractTransactor interface {
Expand Down
Loading