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

Bump geth to v1.11.6 #14

Merged
merged 744 commits into from
May 1, 2023
Merged
Changes from 1 commit
Commits
Show all changes
744 commits
Select commit Hold shift + click to select a range
d345a4a
cmd/bootnode, cmd/utils: add 'pmp:<IP>' to --nat flag description (#2…
dbadoy Jan 16, 2023
c858da5
cmd/evm: fix typo in README.md (#26500)
eltociear Jan 16, 2023
8d4c81d
build: upgrade -dlgo version to Go 1.19.5 (#26472)
sandakersmann Jan 16, 2023
f2758a8
cmd/evm: typo fix in docs (#26506)
ucwong Jan 16, 2023
297ec06
metrics/influxdb: fix time ticker leaks (#26507)
ucwong Jan 17, 2023
97401b6
eth/filters: fix typo in comment (#26515)
molecula451 Jan 17, 2023
4a3fb58
les/fetcher : fix requestTimer leak (#26514)
ucwong Jan 18, 2023
a35b654
core/txpool: check if initcode size is exceeded (#26504)
MariusVanDerWijden Jan 18, 2023
690338f
all: remove Kiln testnet (#26522)
Zachinquarantine Jan 19, 2023
2d2c069
console, internal/jsre: fix autocomplete issues (#26518)
s1na Jan 19, 2023
24c7023
go.mod: upgrade to go-bip39 v1.1.0 (#26527)
meehow Jan 20, 2023
8748972
go.sum: tidy (#26525)
ucwong Jan 20, 2023
3f544ce
.travis.yml: go1.19.5 for android builds (#26524)
ucwong Jan 20, 2023
50e6539
params: define cancun and prague as timestamp based forks (#26481)
rjl493456442 Jan 20, 2023
4f4a25d
signer/core: don't require capital lettered reference types (#26462)
holiman Jan 20, 2023
2b44ef5
miner, cmd, eth: require explicit etherbase address (#26413)
rjl493456442 Jan 20, 2023
d36e6fc
go.mod: upgrade to latest goja (#26523)
s1na Jan 23, 2023
e4fa2cf
go.sum: go mod tidy (#26536)
ucwong Jan 23, 2023
163e996
all: use http package to replace http method names (#26535)
islishude Jan 24, 2023
59a48e0
cmd/utils: improve parsing of --miner.etherbase address (#26541)
fjl Jan 24, 2023
2b57a27
all: make timestamp-based fork checks based on uint64 (#26474)
holiman Jan 25, 2023
2a2b041
all: implement withdrawals (EIP-4895) (#26484)
MariusVanDerWijden Jan 25, 2023
55f41d1
cmd/utils: fix error at geth startup in --dev mode (#26550)
fjl Jan 26, 2023
245cff0
eth/catalyst: error on nil withdrawals post-shanghai (#26549)
MariusVanDerWijden Jan 27, 2023
2fecac6
eth/catalyst: implement exchangeCapabilities method (#26555)
MariusVanDerWijden Jan 27, 2023
34115c8
params: fix timestamp display in fork banner (#26553)
fjl Jan 27, 2023
abe4159
params: remove deprecated bootnodes (#26530)
ncocchiaro Jan 27, 2023
a63875b
go.mod: gnark-crypto upgrade (#26545)
ucwong Jan 27, 2023
90f15a0
cmd/evm: add blocktest subcommand to evm (#26526)
marioevz Jan 27, 2023
df52967
eth/catalyst: fix panic in TestWithdrawals (#26563)
fjl Jan 27, 2023
fd4230f
log: fix typo in comment (#26569)
ucwong Jan 30, 2023
3ff3d07
cmd/devp2p: fix broken link in readme(#26576)
pcaversaccio Jan 30, 2023
17017b2
log: better sanitation (#26556)
holiman Jan 30, 2023
78d089b
ethclient/gethclient: fix typo (#26580)
shimmeris Jan 31, 2023
efbd508
eth/tracer: rename to revertReason (#26574)
rjl493456442 Jan 31, 2023
bd6a05e
internal/ethapi: always return block withdrawals if present (#26565)
lightclient Jan 31, 2023
8ded6a9
cmd/puppeth: remove puppeth
holiman Jan 31, 2023
5c8cc10
core: improve ambiguous block validation message (#26582)
holiman Feb 1, 2023
5d8bff1
Merge pull request #26581 from holiman/nuke_puppet
karalabe Feb 2, 2023
a8cf439
eth/catalyst: return invalid params instead of invalid payload params…
MariusVanDerWijden Feb 2, 2023
d0a4989
cmd, eth, node: deprecate personal namespace (#26390)
MariusVanDerWijden Feb 2, 2023
d9699c8
accounts, build, mobile: remove Andriod and iOS support
karalabe Feb 3, 2023
3a79a99
Merge pull request #26599 from karalabe/mobile-nuke
karalabe Feb 3, 2023
877d217
core/vm: improve EVM instance reusability (#26341)
lmittmann Feb 5, 2023
9826cd6
eth/catalyst: implement engine_getPayloadBodiesByHash/Range methods (…
MariusVanDerWijden Feb 6, 2023
bd726f8
readme: fix broken link (#26612)
delihiros Feb 6, 2023
8e92881
rpc: fix off-by-one in ipc endpoint length check (#26614)
holiman Feb 6, 2023
918aed4
core/vm: add bn256ScalarMul testcase for zero scalar value (#26607)
raulk Feb 6, 2023
10c1484
README: remove text about GPU mining (#26609)
sandakersmann Feb 6, 2023
8860b39
all: prepare for path-based trie storage (#26603)
holiman Feb 6, 2023
3a5acee
beacon/engine: move core/beacon to beacon/engine (#26616)
zsfelfoldi Feb 6, 2023
37e3208
build: upgrade to golangci-lint v1.51.1 (#26618)
fjl Feb 6, 2023
91cb6f8
tests: update (#26548)
holiman Feb 6, 2023
cefc0fa
accounts/abi: fix integer encoding/decoding (#26568)
zhiqiangxu Feb 7, 2023
31d401e
rpc: remove DecimalOrHex type (#26629)
fjl Feb 7, 2023
2f73f4f
eth/catalyst,miner: include withdrawals in payload id calculation (#2…
MariusVanDerWijden Feb 7, 2023
00a9b80
light: fix receiver name from Python style to Go (#26631)
halilylm Feb 8, 2023
8c18b48
log: allow tabs in log messages (#26630)
fjl Feb 8, 2023
9842301
all: remove database commit callback, rework noderesolver (#26637)
rjl493456442 Feb 8, 2023
0c9eb8c
eth/catalyst: make getPayloadBodiesByRange take hex inputs (#26624)
jwasinger Feb 8, 2023
095e365
all: remove support for Ropsten (#26644)
karalabe Feb 9, 2023
ed51b8c
ethdb: pebble backend (64bit platforms only) (#26517)
holiman Feb 9, 2023
6a148dd
eth/catalyst: disallow forkchoiceupdate v1 post-shanghai (#26645)
MariusVanDerWijden Feb 9, 2023
bf1798e
common/prque: generic priority queue (#26290)
karalabe Feb 9, 2023
da3c974
ethdb/pebble: fix nil callbacks (#26650)
karalabe Feb 9, 2023
3086c25
eth/downloader: fix timeout resurrection panic (#26652)
karalabe Feb 9, 2023
22c3ad1
core/state, trie: remove unused error-return from trie Commit operati…
holiman Feb 9, 2023
77380b9
go.mod: update pebble to latest master (#26654)
karalabe Feb 9, 2023
b0cd8c4
core/vm: set tracer-observable `value` of a delegatecall to match par…
ziogaschr Feb 10, 2023
0ea65d4
ethdb: add benchmark test suite (#26659)
rjl493456442 Feb 10, 2023
241cf62
params: schedule shanghai fork on sepolia (#26662)
MariusVanDerWijden Feb 10, 2023
2def62b
eth/filters: avoid block body retrieval when no matching logs (#25199)
s1na Feb 13, 2023
7d29fff
eth/tracers: more fork overrides in traceBlockToFile (#26655)
darioush Feb 13, 2023
03585ed
tests/fuzzers: supply gnark multiexp config, fixes #26669 (#26670)
holiman Feb 13, 2023
1c5fa40
cmd/devp2p: reduce output of node crawler (#26674)
holiman Feb 14, 2023
f44ebc4
params: update mainnet + rinkeby CHT (#26677)
holiman Feb 14, 2023
ff38c9e
eth/filters: replace atomic pointer with value (#26689)
s1na Feb 14, 2023
101587b
p2p/dnsdisc: fix tests with Go 1.20 (#26690)
fjl Feb 14, 2023
dbd6c13
eth/catalyst: return error if withdrawals are nil post-shanghai (#26691)
MariusVanDerWijden Feb 14, 2023
5967a22
ethdb/pebble: Fix `MemTableStopWritesThreshold` (#26692)
patrick-ogrady Feb 15, 2023
7fb42e6
eth/downloader: handle missing withdrawals if empty list is expected …
MariusVanDerWijden Feb 15, 2023
18b641b
params: go-ethereum v1.11.0 stable
holiman Feb 15, 2023
194b5c9
params: begin v1.11.1 release cycle
holiman Feb 15, 2023
5ccc99b
travis, build: update Go to 1.20.1 (#26653)
karalabe Feb 16, 2023
08bf8a6
core: check genesis state presence by disk read (#26703)
rjl493456442 Feb 16, 2023
645e3e8
core, eth/downloader: make body validation more strict (#26704)
holiman Feb 16, 2023
13d7de7
eth/downloader: fix empty-body case in queue fetchresult (#26707)
holiman Feb 16, 2023
e9d4249
eth/downloader: fix typo (#26716)
ucwong Feb 16, 2023
4d35256
all: remove deprecated uses of math.rand (#26710)
holiman Feb 16, 2023
7696106
params: go-ethereum v1.11.1 stable
holiman Feb 16, 2023
b40c109
params: begin v1.11.2 release cycle
holiman Feb 16, 2023
6428663
eth/catalyst: send INVALID instead of INVALID_BLOCK_HASH (#26696)
MariusVanDerWijden Feb 17, 2023
a0d63bc
ci: disable coverage reporting in appveyor and travis
holiman Feb 17, 2023
15e5e61
eth/catalyst: request too large error (#26722)
rkrasiuk Feb 17, 2023
7c749c9
core/trie: remove trie tracer (#26665)
holiman Feb 19, 2023
1db978c
rpc: fix unmarshaling of null result in CallContext (#26723)
fjl Feb 19, 2023
2166c86
build: ship bootstrapper Go along with builder for PPA (#26731)
karalabe Feb 20, 2023
e1e2781
build: fix setting env var, temp early exit
karalabe Feb 20, 2023
4ec4235
build: fix gobootstrap path for the PPA
karalabe Feb 20, 2023
a43efce
build: add some PPA debug logs, sigh
karalabe Feb 20, 2023
1652684
internal/build: revert raising the chunk size for PPA
karalabe Feb 20, 2023
c02334b
build: yet another weird PPA fix
karalabe Feb 20, 2023
4519054
build: fix (finaly?) the PPA env vars for Go bootstrapping
karalabe Feb 20, 2023
41dee26
build: fix Go 1.19.0 bootstrapper issues on 386 PPA
karalabe Feb 20, 2023
ba4267f
build: enable Lunar Lobster PPA builds
karalabe Feb 20, 2023
13ef21d
Revert "core/trie: remove trie tracer (#26665)" (#26732)
rjl493456442 Feb 20, 2023
7d4db69
cmd/geth: clarify dumpconfig options (#26729)
swkim101 Feb 21, 2023
90d2551
core, eth: merge snap-sync chain download progress logs (#26676)
karalabe Feb 21, 2023
6d2d126
core: fix accessor mismatch for genesis state (#26747)
holiman Feb 21, 2023
2f20fd3
core/rawdb: expose chain freezer constructor without internals (#26748)
karalabe Feb 21, 2023
fe01a2f
all: use unified emptyRootHash and emptyCodeHash (#26718)
rjl493456442 Feb 21, 2023
4034c67
eth/filters: fix a breaking change and return rpctransaction (#26757)
yierx Feb 22, 2023
f86f048
common/math: allow HexOrDecimal to accept unquoted decimals too (#26758)
karalabe Feb 22, 2023
73b01f4
params: release Geth v1.11.2
karalabe Feb 22, 2023
f6a7cc6
params: begin v.1.11.3 release cycle
karalabe Feb 22, 2023
a36c68f
log: improve documentation (#26753)
naterarmstrong Feb 22, 2023
09a9ccd
core/rawdb, node: use standalone flock dependency (#26633)
holiman Feb 23, 2023
b3ae073
eth: use the last announced finalized block as the sync ancient limit…
karalabe Feb 23, 2023
ee530c0
Merge pull request #26721 from holiman/nocover
karalabe Feb 23, 2023
c155c8e
cmd/devp2p: faster crawling + less verbose dns updates (#26697)
holiman Feb 27, 2023
2ad150d
eth/tracers: add native flatCallTracer (aka parity style tracer) (#26…
ziogaschr Feb 28, 2023
2ea48f8
core: improve withdrawal index assignment in GenerateChain (#26756)
Rjected Feb 28, 2023
98b0ea6
ethdb/pebble: fix range compaction (#26771)
rjl493456442 Feb 28, 2023
2bb622c
ethdb/pebble: fix max memorytable size (#26776)
rjl493456442 Feb 28, 2023
e1b98f4
ethclient: include withdrawals in ethclient block responses (#26778)
peterbitfly Feb 28, 2023
cd31f2d
all: change chain head markers from block to header (#26777)
karalabe Mar 2, 2023
19f74fa
core/rawdb, ethdb/pebble: disable pebble on openbsd (#26801)
karalabe Mar 3, 2023
0101895
core: fix a merge fault (#26802)
karalabe Mar 3, 2023
403cac7
README, go.mod, event, internal/version: bump min Go to 1.19 (#26803)
karalabe Mar 3, 2023
27e5982
travi: remove strange leftover Go version
karalabe Mar 3, 2023
d865a5d
core, params: schedule Shanghai on goerli (#26795)
MariusVanDerWijden Mar 6, 2023
4c23fe9
eth: remove admin.peers[i].eth.head and difficulty (#26804)
karalabe Mar 6, 2023
8718614
core/types: add EffectiveGasPrice in Receipt (#26713)
fjl Mar 6, 2023
5bc2ef9
core, eth/catalyst: fix race conditions in tests (#26790)
MariusVanDerWijden Mar 6, 2023
544e4a7
metrics: improve accuracy of CPU gauges (#26793)
turboboost55 Mar 6, 2023
4688d3c
ethclient: fix panic when requesting missing blocks (#26817)
fjl Mar 7, 2023
77e33e5
core, miner: revert block gas counter in case of invalid transaction …
rjl493456442 Mar 7, 2023
39be753
internal/ethapi: add tests for transaction types JSON marshal/unmarsh…
ajsutton Mar 7, 2023
cb1f6bd
cmd/evm: correct `alloc` for `t8n` testdata (#26822)
gurukamath Mar 7, 2023
41af42e
eth/tracers/native: set created address to nil in case of failure (#2…
s1na Mar 7, 2023
1e3177d
accounts/usbwallet: mitigate ledger app chunking issue (#26773)
prestwich Mar 7, 2023
78429f7
beacon/engine: don't omit empty withdrawals in ExecutionPayloadBodies…
MariusVanDerWijden Mar 7, 2023
a54d91a
build: update to go 1.20.2 (#26824)
fjl Mar 7, 2023
5ed08c4
params: go-ethereum v1.11.3 stable
fjl Mar 7, 2023
bb4ac2d
params: begin v1.11.4 release cycle
fjl Mar 7, 2023
f7661a6
core/rawdb: find smallest block stored in key-value store when chain …
rjl493456442 Mar 8, 2023
02796f6
signer/core: accept all solidity primitive types for EIP-712 signing …
daferna Mar 8, 2023
e14043d
params: remove EF azure bootnodes (#26828)
skylenet Mar 8, 2023
b80f05b
core/vm: use golang native big.Int (#26834)
holiman Mar 8, 2023
1bf1168
core/vm: fix typo in comment (#26838)
JBossBC Mar 9, 2023
5395362
core/forkid: fix issue in validation test (#26544)
fjl Mar 9, 2023
08f6a2a
cmd/evm: update readmes for the tests (#26841)
holiman Mar 9, 2023
67ac5f0
core, core/types: plain Message struct (#25977)
roberto-bayardo Mar 9, 2023
df02799
travis: only build PPAs nightly, not on every push, too heavy (#26846)
karalabe Mar 9, 2023
051493d
p2p: small comment typo (#26850)
panicalways Mar 10, 2023
564db9a
core: add Timestamp method in BlockGen (#26844)
fjl Mar 10, 2023
6cf2e92
core/txpool: implement additional DoS defenses (#26648)
MariusVanDerWijden Mar 10, 2023
7e3b149
params: go-ethereum v1.11.4 stable
fjl Mar 10, 2023
4930614
params: begin v1.11.5 release cycle
fjl Mar 10, 2023
789de23
tests: define `MuirGlacier` fork (#26856)
gurukamath Mar 10, 2023
ca61048
code/vm: fix comment typo (#26865)
JBossBC Mar 13, 2023
a20e387
core: minor code refactor (#26852)
s7v7nislands Mar 13, 2023
d1c5f91
core/txpool: use priceList.Put instead of heap.Push (#26863)
ucwong Mar 13, 2023
5f81db6
eth: return error if 'safe' or 'finalized' tag used pre-merge (#26862)
lightclient Mar 13, 2023
94ff721
.travis.yml: reenable PPA build on tag push (#26873)
fjl Mar 13, 2023
c8a6b71
core/state, trie: port changes from PBSS (#26763)
rjl493456442 Mar 14, 2023
eca3d39
p2p/discover: pass invalid discv5 packets to Unhandled channel (#26699)
holiman Mar 14, 2023
b5c9be3
all: update links in documentation (#26882)
ssflynn77 Mar 14, 2023
6bc68f8
Increase websocket frame size (from erigon rpc client) (#26883)
jotto Mar 14, 2023
f86913b
cmd/devp2p, cmd/geth: add version in --help output (#26895)
fjl Mar 15, 2023
bba2a1b
core: show db error-info in case of mismatched hash root (#26870)
rjl493456442 Mar 16, 2023
48d1bf0
consensus: improve consensus engine definition (#26871)
rjl493456442 Mar 16, 2023
d8066dc
eth/catalyst: increase update consensus timeout (#26840)
MariusVanDerWijden Mar 16, 2023
f733657
internal/ethapi: avoid int overflow in GetTransactionReceipt (#26911)
darioush Mar 16, 2023
b7bfbc1
trie, accounts/abi: add error-checks (#26914)
darioush Mar 17, 2023
58d0f64
rlp: support for uint256 (#26898)
holiman Mar 17, 2023
ee8e83f
eth: fix output file permissions in admin_exportChain (#26912)
darioush Mar 17, 2023
81b0aa0
trie: reduce unit test time (#26918)
MariusVanDerWijden Mar 20, 2023
80ff0b4
core/txpool: use atomic int added in go1.19 (#26913)
s7v7nislands Mar 20, 2023
5d23d21
params: schedule shanghai fork on mainnet (#26908)
MariusVanDerWijden Mar 20, 2023
e6b6a8b
core/txpool: allow future local transactions (#26930)
MariusVanDerWijden Mar 20, 2023
a38f410
params: go-ethereum v1.11.5 stable
holiman Mar 21, 2023
7ecb578
params: begin v1.11.6 release cycle
holiman Mar 21, 2023
2ed8013
build: allow building nightly archives via cron jobs (#26938)
karalabe Mar 21, 2023
8a9a73c
log: add special casing of uint256 into the logger (#26936)
karalabe Mar 21, 2023
905a723
core/rawdb: use atomic int added in go1.19 (#26935)
s7v7nislands Mar 21, 2023
b3f43c8
core/vm: expose jumptable constructors (#26880)
holiman Mar 21, 2023
20f8eb7
eth/catalyst: fix races (#26950)
MariusVanDerWijden Mar 22, 2023
7f3fc15
core/rawdb: update freezertable read meter (#26946)
jsvisa Mar 23, 2023
37ecff0
cmd/evm, tests: record preimages if dump is expected (#26955)
lightclient Mar 23, 2023
8990c92
core/state: add account address to Trie slot accessors (#26934)
gballet Mar 23, 2023
7dc1007
metrics: add cpu counters (#26796)
turboboost55 Mar 23, 2023
f6c3a53
metrics/influxdb: use smaller dependency and reuse code between v1 an…
holiman Mar 23, 2023
b1acaf4
eth/gasprice: change feehistory input type from int to uint64 (#26922)
aaronbuchwald Mar 23, 2023
0137bd6
go.mod: update golang.org/x/tools (#26960)
holiman Mar 24, 2023
792d893
rlp/rlpgen: print want/expect output string if mismatch (#26932)
ucwong Mar 24, 2023
df383ad
ethclient: ensure returned subscription is nil on error (#26976)
norwnd Mar 25, 2023
41f89ca
core/state, trie: remove Try prefix in Trie accessors (#26975)
gballet Mar 27, 2023
117530b
metrics/librato: ensure resp.body closed (#26969)
jsvisa Mar 27, 2023
881fed0
core/vm: use atomic.Bool (#26951)
s7v7nislands Mar 27, 2023
79532a2
core/bloombits: use atomic type (#26993)
s7v7nislands Mar 28, 2023
fb8a3aa
core/state: use atomic.Bool (#26992)
s7v7nislands Mar 28, 2023
a236e03
graphql: fix data races (#26965)
s1na Mar 28, 2023
fd94b4f
eth/tracers/native: prevent panic for LOG edge-cases (#26848)
jwasinger Mar 28, 2023
56c1f98
internal/debug: add log.logfmt flag to set logging to use logfmt (#26…
ajsutton Mar 28, 2023
7ca4f60
docs: update outdated DeriveSha docs comment (#26968)
davidmurdoch Mar 28, 2023
a03490c
remove @gballet as a GraphQL codeowner (#27012)
gballet Mar 30, 2023
949cee2
core: use atomic type (#27011)
s7v7nislands Mar 30, 2023
62fb7d3
graphql: revert storage access regression (#27007)
s1na Mar 30, 2023
2d14928
cmd/geth: Add `--log.format` cli param (#27001)
ajsutton Mar 30, 2023
50317bd
ethdb/pebble: use atomic type (#27014)
s7v7nislands Mar 30, 2023
9ce0474
common: fix json marshaller MixedcaseAddress (#26998)
rjl493456442 Mar 30, 2023
d0fbb10
eth/catalyst: improve consensus heartbeat (#26896)
openex27 Mar 30, 2023
b92d0ea
miner: use atomic type (#27013)
s7v7nislands Mar 31, 2023
00a73fb
accounts/abi/bind: handle UnpackLog with zero topics (#26920)
aaronbuchwald Mar 31, 2023
bed07cd
cmd/evm: use correct parent number for t8n base fee calculation (#27032)
gurukamath Apr 3, 2023
dc2f4b9
go.mod : update snappy (#27027)
ucwong Apr 3, 2023
2c57984
common: delete MakeName (#27023)
lightclient Apr 3, 2023
7076ae0
cmd/geth: enable log rotation (#26843)
sudeepdino008 Apr 3, 2023
94457cc
cmd, miner, signer: avoid panic if keystore is not available (#27039)
rjl493456442 Apr 3, 2023
a25dd80
test/fuzzers: fuzz rlp handling of big.Int and uint256.Int (#26917)
holiman Apr 3, 2023
beda6c4
core/txpool: move some validation to outside of mutex (#27006)
holiman Apr 3, 2023
db18293
eth/downloader: use atomic types (#27030)
s7v7nislands Apr 3, 2023
9b1a82c
core/vm: clarify comment (#27045)
joohhnnn Apr 4, 2023
91faf2c
consensus, core/typer: add 4844 excessDataGas to header, tie it to Ca…
karalabe Apr 4, 2023
d2cf493
consensus/misc, params: add EIP-4844 blobfee conversions (#27041)
karalabe Apr 4, 2023
0b76eb3
eth/tracers: report correct gasLimit in call tracers (#27029)
jsvisa Apr 4, 2023
ab1a404
all: remove debug-field from vm config (#27048)
holiman Apr 4, 2023
b4dcd1a
metrics: make gauge_float64 and counter_float64 lock free (#27025)
Exca-DK Apr 4, 2023
2adce0b
eth/tracers: use atomic type (#27031)
s7v7nislands Apr 4, 2023
9d37102
build: upgrade -dlgo version to Go 1.20.3
sandakersmann Apr 4, 2023
230df98
core/txpool: disallow future churn by remote txs (#26907)
MariusVanDerWijden Apr 5, 2023
b946b7a
core, miner: drop transactions from the same sender when error occurs…
rjl493456442 Apr 5, 2023
4a9fa31
Merge pull request #27051 from sandakersmann/master
karalabe Apr 8, 2023
5aa5295
params: new sepolia bootnodes (#27099)
parithosh Apr 17, 2023
8fe807c
cmd/devp2p: fix erroneous log output in crawler (#27089)
0x00Duke Apr 17, 2023
bedf285
signer/core: rename testdata files (#27063)
taeguk Apr 17, 2023
cb66eba
core: fix comment to reflect function name (#27070)
anusha-ctrl Apr 17, 2023
5e4d726
params: remove `EIP150Hash` from chainconfig (#27087)
jsvisa Apr 18, 2023
b197262
p2p: access embedded fields of Server directly (#27078)
joohhnnn Apr 18, 2023
3768b00
consensus/ethash: use atomic type (#27068)
s7v7nislands Apr 18, 2023
2b0a34b
cmd/devp2p: make crawler-route53-updater less verbose (#27116)
holiman Apr 19, 2023
f2df2b1
cmd/geth: rename --vmodule to --log.vmodule (#27071)
ajsutton Apr 19, 2023
3f7afc3
core/vm: order opcodes properly (#27113)
axic Apr 20, 2023
ae93e0b
metrics: use atomic type (#27121)
s7v7nislands Apr 20, 2023
99f81d2
all: refactor trie API (#26995)
rjl493456442 Apr 20, 2023
ea9e62c
params: go-ethereum v1.11.6 stable
holiman Apr 20, 2023
5a18acb
Merge tag 'tags/v1.11.6' into CHAINS-251-upgrade-geth-fork-v1.11.6
ygaberman-px Apr 28, 2023
5d2436c
fix merge conflicts
ygaberman-px May 1, 2023
7fe9564
add market gas price to simulate duplicate nonce behavior (#7)
susannapaxos Sep 9, 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
Prev Previous commit
Next Next commit
params: define cancun and prague as timestamp based forks (ethereum#2…
…6481)

* params: define cancun and osaka as timestamp based forks

* core, params: change osaka to prague

* params: fix
rjl493456442 authored Jan 20, 2023

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
commit 50e65392aacdb3f03dc6cdbd73059aff38642106
10 changes: 5 additions & 5 deletions core/forkid/forkid_test.go
Original file line number Diff line number Diff line change
@@ -387,21 +387,21 @@ func TestValidation(t *testing.T) {
// TODO(karalabe): Enable this when Cancun is specced, update local head and time, next timestamp
//{&timestampedConfig, 21123456, 1678123456, ID{Hash: checksumToBytes(0x71147644), Next: 1678000000}, nil},

// Local is mainnet Osaka, remote announces Shanghai + knowledge about Cancun. Remote
// is definitely out of sync. It may or may not need the Osaka update, we don't know yet.
// Local is mainnet Prague, remote announces Shanghai + knowledge about Cancun. Remote
// is definitely out of sync. It may or may not need the Prague update, we don't know yet.
//
// TODO(karalabe): Enable this when Cancun **and** Osaka is specced, update all the numbers
// TODO(karalabe): Enable this when Cancun **and** Prague is specced, update all the numbers
//{&timestampedConfig, 0, 0, ID{Hash: checksumToBytes(0x3edd5b10), Next: 4370000}, nil},

// Local is mainnet Shanghai, remote announces Cancun. Local is out of sync, accept.
//
// TODO(karalabe): Enable this when Cancun is specced, update remote checksum
//{&timestampedConfig, 21000000, 1678000000, ID{Hash: checksumToBytes(0x00000000), Next: 0}, nil},

// Local is mainnet Shanghai, remote announces Cancun, but is not aware of Osaka. Local
// Local is mainnet Shanghai, remote announces Cancun, but is not aware of Prague. Local
// out of sync. Local also knows about a future fork, but that is uncertain yet.
//
// TODO(karalabe): Enable this when Cancun **and** Osaka is specced, update remote checksum
// TODO(karalabe): Enable this when Cancun **and** Prague is specced, update remote checksum
//{&timestampedConfig, 21000000, 1678000000, ID{Hash: checksumToBytes(0x00000000), Next: 0}, nil},

// Local is mainnet Cancun. remote announces Shanghai but is not aware of further forks.
169 changes: 143 additions & 26 deletions params/config.go
Original file line number Diff line number Diff line change
@@ -266,21 +266,124 @@ var (

// AllEthashProtocolChanges contains every protocol change (EIPs) introduced
// and accepted by the Ethereum core developers into the Ethash consensus.
//
// This configuration is intentionally not using keyed fields to force anyone
// adding flags to the config to also have to set these fields.
AllEthashProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, nil, nil, false, new(EthashConfig), nil}
AllEthashProtocolChanges = &ChainConfig{
ChainID: big.NewInt(1337),
HomesteadBlock: big.NewInt(0),
DAOForkBlock: nil,
DAOForkSupport: false,
EIP150Block: big.NewInt(0),
EIP150Hash: common.Hash{},
EIP155Block: big.NewInt(0),
EIP158Block: big.NewInt(0),
ByzantiumBlock: big.NewInt(0),
ConstantinopleBlock: big.NewInt(0),
PetersburgBlock: big.NewInt(0),
IstanbulBlock: big.NewInt(0),
MuirGlacierBlock: big.NewInt(0),
BerlinBlock: big.NewInt(0),
LondonBlock: big.NewInt(0),
ArrowGlacierBlock: big.NewInt(0),
GrayGlacierBlock: big.NewInt(0),
MergeNetsplitBlock: nil,
ShanghaiTime: nil,
CancunTime: nil,
PragueTime: nil,
TerminalTotalDifficulty: nil,
TerminalTotalDifficultyPassed: false,
Ethash: new(EthashConfig),
Clique: nil,
}

// AllCliqueProtocolChanges contains every protocol change (EIPs) introduced
// and accepted by the Ethereum core developers into the Clique consensus.
//
// This configuration is intentionally not using keyed fields to force anyone
// adding flags to the config to also have to set these fields.
AllCliqueProtocolChanges = &ChainConfig{big.NewInt(1337), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, nil, nil, nil, nil, false, nil, &CliqueConfig{Period: 0, Epoch: 30000}}

TestChainConfig = &ChainConfig{big.NewInt(1), big.NewInt(0), nil, false, big.NewInt(0), common.Hash{}, big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), big.NewInt(0), nil, nil, nil, nil, false, new(EthashConfig), nil}
NonActivatedConfig = &ChainConfig{big.NewInt(1), nil, nil, false, nil, common.Hash{}, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, false, new(EthashConfig), nil}
TestRules = TestChainConfig.Rules(new(big.Int), false, new(big.Int))
AllCliqueProtocolChanges = &ChainConfig{
ChainID: big.NewInt(1337),
HomesteadBlock: big.NewInt(0),
DAOForkBlock: nil,
DAOForkSupport: false,
EIP150Block: big.NewInt(0),
EIP150Hash: common.Hash{},
EIP155Block: big.NewInt(0),
EIP158Block: big.NewInt(0),
ByzantiumBlock: big.NewInt(0),
ConstantinopleBlock: big.NewInt(0),
PetersburgBlock: big.NewInt(0),
IstanbulBlock: big.NewInt(0),
MuirGlacierBlock: big.NewInt(0),
BerlinBlock: big.NewInt(0),
LondonBlock: big.NewInt(0),
ArrowGlacierBlock: nil,
GrayGlacierBlock: nil,
MergeNetsplitBlock: nil,
ShanghaiTime: nil,
CancunTime: nil,
PragueTime: nil,
TerminalTotalDifficulty: nil,
TerminalTotalDifficultyPassed: false,
Ethash: nil,
Clique: &CliqueConfig{Period: 0, Epoch: 30000},
}

// TestChainConfig contains every protocol change (EIPs) introduced
// and accepted by the Ethereum core developers for testing proposes.
TestChainConfig = &ChainConfig{
ChainID: big.NewInt(1),
HomesteadBlock: big.NewInt(0),
DAOForkBlock: nil,
DAOForkSupport: false,
EIP150Block: big.NewInt(0),
EIP150Hash: common.Hash{},
EIP155Block: big.NewInt(0),
EIP158Block: big.NewInt(0),
ByzantiumBlock: big.NewInt(0),
ConstantinopleBlock: big.NewInt(0),
PetersburgBlock: big.NewInt(0),
IstanbulBlock: big.NewInt(0),
MuirGlacierBlock: big.NewInt(0),
BerlinBlock: big.NewInt(0),
LondonBlock: big.NewInt(0),
ArrowGlacierBlock: big.NewInt(0),
GrayGlacierBlock: big.NewInt(0),
MergeNetsplitBlock: nil,
ShanghaiTime: nil,
CancunTime: nil,
PragueTime: nil,
TerminalTotalDifficulty: nil,
TerminalTotalDifficultyPassed: false,
Ethash: new(EthashConfig),
Clique: nil,
}

// NonActivatedConfig defines the chain configuration without activating
// any protocol change (EIPs).
NonActivatedConfig = &ChainConfig{
ChainID: big.NewInt(1),
HomesteadBlock: nil,
DAOForkBlock: nil,
DAOForkSupport: false,
EIP150Block: nil,
EIP150Hash: common.Hash{},
EIP155Block: nil,
EIP158Block: nil,
ByzantiumBlock: nil,
ConstantinopleBlock: nil,
PetersburgBlock: nil,
IstanbulBlock: nil,
MuirGlacierBlock: nil,
BerlinBlock: nil,
LondonBlock: nil,
ArrowGlacierBlock: nil,
GrayGlacierBlock: nil,
MergeNetsplitBlock: nil,
ShanghaiTime: nil,
CancunTime: nil,
PragueTime: nil,
TerminalTotalDifficulty: nil,
TerminalTotalDifficultyPassed: false,
Ethash: new(EthashConfig),
Clique: nil,
}
TestRules = TestChainConfig.Rules(new(big.Int), false, new(big.Int))
)

// NetworkNames are user friendly names to use in the chain spec banner.
@@ -370,11 +473,12 @@ type ChainConfig struct {
ArrowGlacierBlock *big.Int `json:"arrowGlacierBlock,omitempty"` // Eip-4345 (bomb delay) switch block (nil = no fork, 0 = already activated)
GrayGlacierBlock *big.Int `json:"grayGlacierBlock,omitempty"` // Eip-5133 (bomb delay) switch block (nil = no fork, 0 = already activated)
MergeNetsplitBlock *big.Int `json:"mergeNetsplitBlock,omitempty"` // Virtual fork after The Merge to use as a network splitter
CancunBlock *big.Int `json:"cancunBlock,omitempty"` // Cancun switch block (nil = no fork, 0 = already on cancun)

// Fork scheduling was switched from blocks to timestamps here

ShanghaiTime *big.Int `json:"shanghaiTime,omitempty"` // Shanghai switch time (nil = no fork, 0 = already on shanghai)
CancunTime *big.Int `json:"cancunTime,omitempty"` // Cancun switch time (nil = no fork, 0 = already on cancun)
PragueTime *big.Int `json:"pragueTime,omitempty"` // Prague switch time (nil = no fork, 0 = already on prague)

// TerminalTotalDifficulty is the amount of total difficulty reached by
// the network that triggers the consensus upgrade.
@@ -489,8 +593,11 @@ func (c *ChainConfig) Description() string {
if c.ShanghaiTime != nil {
banner += fmt.Sprintf(" - Shanghai: @%-10v (https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md)\n", c.ShanghaiTime)
}
if c.CancunBlock != nil {
banner += fmt.Sprintf(" - Cancun: @%-10v\n", c.CancunBlock)
if c.CancunTime != nil {
banner += fmt.Sprintf(" - Cancun: @%-10v\n", c.CancunTime)
}
if c.PragueTime != nil {
banner += fmt.Sprintf(" - Prague: @%-10v\n", c.PragueTime)
}
return banner
}
@@ -575,16 +682,21 @@ func (c *ChainConfig) IsTerminalPoWBlock(parentTotalDiff *big.Int, totalDiff *bi
return parentTotalDiff.Cmp(c.TerminalTotalDifficulty) < 0 && totalDiff.Cmp(c.TerminalTotalDifficulty) >= 0
}

// IsCancun returns whether num is either equal to the Cancun fork block or greater.
func (c *ChainConfig) IsCancun(num *big.Int) bool {
return isBlockForked(c.CancunBlock, num)
}

// IsShanghai returns whether time is either equal to the Shanghai fork time or greater.
func (c *ChainConfig) IsShanghai(time *big.Int) bool {
return isTimestampForked(c.ShanghaiTime, time)
}

// IsCancun returns whether num is either equal to the Cancun fork time or greater.
func (c *ChainConfig) IsCancun(time *big.Int) bool {
return isTimestampForked(c.CancunTime, time)
}

// IsPrague returns whether num is either equal to the Prague fork time or greater.
func (c *ChainConfig) IsPrague(time *big.Int) bool {
return isTimestampForked(c.PragueTime, time)
}

// CheckCompatible checks whether scheduled fork transitions have been imported
// with a mismatching chain configuration.
func (c *ChainConfig) CheckCompatible(newcfg *ChainConfig, height uint64, time uint64) *ConfigCompatError {
@@ -636,8 +748,9 @@ func (c *ChainConfig) CheckConfigForkOrder() error {
{name: "arrowGlacierBlock", block: c.ArrowGlacierBlock, optional: true},
{name: "grayGlacierBlock", block: c.GrayGlacierBlock, optional: true},
{name: "mergeNetsplitBlock", block: c.MergeNetsplitBlock, optional: true},
{name: "cancunBlock", block: c.CancunBlock, optional: true},
{name: "shanghaiTime", timestamp: c.ShanghaiTime},
{name: "cancunTime", timestamp: c.CancunTime, optional: true},
{name: "pragueTime", timestamp: c.PragueTime, optional: true},
} {
if lastFork.name != "" {
switch {
@@ -732,12 +845,15 @@ func (c *ChainConfig) checkCompatible(newcfg *ChainConfig, headNumber *big.Int,
if isForkBlockIncompatible(c.MergeNetsplitBlock, newcfg.MergeNetsplitBlock, headNumber) {
return newBlockCompatError("Merge netsplit fork block", c.MergeNetsplitBlock, newcfg.MergeNetsplitBlock)
}
if isForkBlockIncompatible(c.CancunBlock, newcfg.CancunBlock, headNumber) {
return newBlockCompatError("Cancun fork block", c.CancunBlock, newcfg.CancunBlock)
}
if isForkTimestampIncompatible(c.ShanghaiTime, newcfg.ShanghaiTime, headTimestamp) {
return newTimestampCompatError("Shanghai fork timestamp", c.ShanghaiTime, newcfg.ShanghaiTime)
}
if isForkTimestampIncompatible(c.CancunTime, newcfg.CancunTime, headTimestamp) {
return newTimestampCompatError("Cancun fork timestamp", c.CancunTime, newcfg.CancunTime)
}
if isForkTimestampIncompatible(c.PragueTime, newcfg.PragueTime, headTimestamp) {
return newTimestampCompatError("Prague fork timestamp", c.PragueTime, newcfg.PragueTime)
}
return nil
}

@@ -882,7 +998,7 @@ type Rules struct {
IsHomestead, IsEIP150, IsEIP155, IsEIP158 bool
IsByzantium, IsConstantinople, IsPetersburg, IsIstanbul bool
IsBerlin, IsLondon bool
IsMerge, IsShanghai, isCancun bool
IsMerge, IsShanghai, isCancun, isPrague bool
}

// Rules ensures c's ChainID is not nil.
@@ -905,6 +1021,7 @@ func (c *ChainConfig) Rules(num *big.Int, isMerge bool, timestamp *big.Int) Rule
IsLondon: c.IsLondon(num),
IsMerge: isMerge,
IsShanghai: c.IsShanghai(timestamp),
isCancun: c.IsCancun(num),
isCancun: c.IsCancun(timestamp),
isPrague: c.IsPrague(timestamp),
}
}