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 op-geth v1.101308.2 #87

Merged
merged 262 commits into from
May 7, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
262 commits
Select commit Hold shift + click to select a range
c1d5a01
core/state, tests: fix memory leak via fastcache (#28387)
holiman Oct 20, 2023
a6a0ae4
crypto/kzg4844: use the new trusted setup file and format (#28383)
kevaundray Oct 22, 2023
ffc6a0f
event: fix Resubscribe deadlock when unsubscribing after inner sub en…
Inphi Oct 22, 2023
6c69821
core/state/pruner: track number of skipped items during state pruning…
aaronbuchwald Oct 23, 2023
54f35c6
ethstats: fix bug in block reporting (#28398)
Oct 23, 2023
062598b
core/blockchain: fix typos and grammar (#28295)
hyunchel Oct 23, 2023
3853f50
trie/triedb/pathdb, core/rawdb: enhance error message in freezer (#28…
rjl493456442 Oct 23, 2023
43e6a3c
graphql: return error if block from>to (#28393)
jsvisa Oct 23, 2023
ab04aeb
core, eth, trie: filter out boundary nodes and remove dangling nodes …
rjl493456442 Oct 23, 2023
a8617c6
txpool/legacypool: remove already known error in legacypool (#28400)
nothingmin Oct 23, 2023
300df87
cmd/evm: make t8ntool handle transaction decoding errors better (#28397)
holiman Oct 25, 2023
96b7503
trie: use explicit errors in stacktrie (instead of panic) (#28361)
holiman Oct 25, 2023
f7b62e5
graphql: logs return error if from block > to (#28412)
jsvisa Oct 25, 2023
d8c6ae0
rpc: use correct stringer-method for serializing BlockNumberOrHash (#…
ajsutton Oct 25, 2023
58ae1df
cmd/geth: test for logging-output (#28373)
holiman Oct 25, 2023
abe3fca
graphql: fix an issue of nil pointer panic (#28416)
jsvisa Oct 26, 2023
4cbca51
core, cmd/geth: add --override.* flags to geth init (#28407)
gballet Oct 27, 2023
2d7dba0
graphql: always set content-type to application/json (#28417)
jsvisa Oct 27, 2023
233db64
all: make vendored copy of reexec (#28382)
holiman Oct 27, 2023
ea2e66a
trie/triedb/pathdb: improve dirty node flushing trigger (#28426)
rjl493456442 Oct 31, 2023
447945e
core/rawdb: add logging and fix comments around AncientRange function…
jakub-freebit Oct 31, 2023
bc42e88
core: add basic chain history support in GenerateChain (#28428)
fjl Oct 31, 2023
285202a
cmd/evm: add --run option to blocktest command (#28421)
marioevz Oct 31, 2023
f4ac548
ethdb/pebble: cap memory table size as maxMemTableSize-1 (#28444)
rjl493456442 Oct 31, 2023
a3be381
core/vm: performance tweak of `OpCode.String()` (#28453)
lmittmann Nov 2, 2023
b1cec85
eth/tracers: add position field for callTracer logs (#28389)
alvarosevilla95 Nov 3, 2023
e91cdb4
ethclient: fix forwarding 1559 gas fields (#28462)
karalabe Nov 3, 2023
51b5ad3
.travis: enable cross building to macos arm64 (#28474)
karalabe Nov 7, 2023
97ae324
travis: use newer builder image (#28475)
karalabe Nov 7, 2023
f20b334
eth/filters: eth_getLogs fast exit for invalid block range (#28386)
jsvisa Nov 7, 2023
4d9f3cd
eth: set networkID to chainID by default (#28250)
MariusVanDerWijden Nov 7, 2023
470dba8
core/vm: set basefee to 0 internally on eth_call (#28470)
karalabe Nov 8, 2023
7ea860d
graphql: type of yParity from Long to BigInt (#28456)
jsvisa Nov 9, 2023
b77a9b1
cmd/geth: more testcases for logging (#28501)
holiman Nov 9, 2023
f7dde2a
ethdb/pebble: add `Errorf` function to panicLogger (#28491)
mcdee Nov 9, 2023
e38b9f1
eth/filters: exit early if topics-filter has more than 4 topics (#28494)
jsvisa Nov 10, 2023
326fa00
core/rawdb: fsync the index file after each freezer write (#28483)
rjl493456442 Nov 10, 2023
2f4833b
cmd/evm: allow state dump regardless if test passes in statetest (#28…
sorpaas Nov 10, 2023
ce5a480
ethclient: add empty/nonexist account testcase for eth_getProof RPC (…
jsvisa Nov 10, 2023
49b2c5f
build: upgrade -dlgo version to Go 1.21.4 (#28505)
sandakersmann Nov 10, 2023
f265cc2
cmd/geth: remove some whitespace in code and comments (#28148)
jsvisa Nov 10, 2023
48c27a6
event: fix Resubscribe deadlock when unsubscribing after inner sub ends
ajsutton Nov 12, 2023
cf19c1e
Merge pull request #183 from ethereum-optimism/aj/backport-resub-fix
Inphi Nov 13, 2023
916d6a4
params: release Geth v1.15.5
karalabe Nov 14, 2023
fa8d398
cmd, core, trie: verkle-capable `geth init` (#28270)
gballet Nov 14, 2023
e803ef0
eth/tracers/js: fix isPush for push0 (#28520)
s1na Nov 14, 2023
24d4622
trie: spelling - fix comments in hasher (#28507)
sysvm Nov 14, 2023
2391fbc
tests/fuzzers: move fuzzers into native packages (#28467)
holiman Nov 14, 2023
c5b7cfa
tests: skip tests on windows 32bit CI (#28521)
holiman Nov 14, 2023
ea06bb7
Merge tag 'v1.13.5' into aj/upstream-1.13.5
ajsutton Nov 14, 2023
09003e1
Update fork base commit.
ajsutton Nov 14, 2023
0289fd0
Include a depositTx in generated chain data for ethclient_test when O…
ajsutton Nov 14, 2023
984f826
cmd/geth: more special cases logging tests (#28527)
jwasinger Nov 15, 2023
2814ee0
accounts,cmd,console,les,metrics: refactor some errors checked by (S…
BabyHalimao Nov 15, 2023
b9504e4
miner: run tests in parallel (#28506)
estensen Nov 15, 2023
fcc7ae1
internal/jsre/deps: fix typo in jsdoc (#28511)
aliening Nov 15, 2023
db7895d
accounts/abi: improve readability of method-to-string conversion (#2…
Halimao Nov 15, 2023
a75a2d6
all: replace some cases of strings.SplitN with strings.Cut (#28446)
estensen Nov 15, 2023
5bf8769
ethdb/memorydb, trie: reduced allocations (#28473)
holiman Nov 15, 2023
8b78d6a
Dockerfile: update Go to 1.21 (#28538)
estensen Nov 17, 2023
c8a2202
cmd/evm: validate blockchain tests poststate account storage (#28443)
danceratopz Nov 17, 2023
77cb21d
signer: run tests in parallel (#28536)
estensen Nov 20, 2023
a737482
accounts, cmd: fix typos (#28526)
levisyin Nov 20, 2023
14a1e96
core/txpool/legacypool: respect nolocals-setting (#28435)
jp-imx Nov 20, 2023
460cc16
cmd: run tests in parallel (#28546)
estensen Nov 20, 2023
661bd45
core/state/snapshot: print correct error from trie iterator (#28560)
rjl493456442 Nov 21, 2023
ad16f11
cmd/evm: capitalize evm commands (#28569)
tmelhao Nov 21, 2023
525db7b
accounts/abi: context info on unpack-errors (#28529)
levisyin Nov 21, 2023
146e8d9
core, trie, rpc: speed up tests (#28461)
MariusVanDerWijden Nov 21, 2023
6489a0d
ethdb/pebble: don't double-close iterator inside pebbleIterator (#28566)
magicxyyz Nov 21, 2023
e9f59b5
eth/filters: reuse error msg for invalid block range (#28479)
ucwong Nov 21, 2023
347fecd
core/types: make 'v' optional for DynamicFeeTx and BlobTx (#28564)
marioevz Nov 22, 2023
d6cea48
rpc: improve performance of subscription notification encoding (#28328)
jsvisa Nov 22, 2023
104dbf7
cmd/utils: validate pre-existing genesis in --dev mode (#28468)
jwasinger Nov 22, 2023
3cfcd25
cmd/geth: add support for --dev flag in dumpgenesis (#28463)
jwasinger Nov 22, 2023
5ff929c
les/vflux: run tests in parallel (#28524)
estensen Nov 22, 2023
d468c33
cmd/{geth,utils}: add cmd to export preimages in snap enumeration ord…
gballet Nov 22, 2023
63127f5
cmd/geth: fix build error (#28585)
fjl Nov 22, 2023
eec37e3
cmd/devp2p/internal/ethtest: undo debug-hack (#28588)
holiman Nov 23, 2023
d76efbb
params: update discV5 bootnodes (#28562)
cortze Nov 23, 2023
bdf5e38
cmd, les, tests: remove light client code (#28586)
MariusVanDerWijden Nov 23, 2023
6ad221a
params: interopTime configuration and override option
protolambda Nov 23, 2023
32ddd8b
Merge pull request #185 from ethereum-optimism/aj/upstream-1.13.5
protolambda Nov 23, 2023
25fd986
Merge pull request #191 from ethereum-optimism/interop-activation
protolambda Nov 23, 2023
2a20130
eth, internal/ethapi: drop some weird indirection (#28597)
karalabe Nov 24, 2023
333dd95
trie: fix random test generator early terminate (#28590)
weiihann Nov 25, 2023
1e28e0b
eth/gasestimator, internal/ethapi: move gas estimator out of rpc (#28…
karalabe Nov 27, 2023
5b57727
go.mod: update uint256 to v1.2.4 (#28612)
holiman Nov 27, 2023
71817f3
eth/catalyst, eth/downloader: expose more sync information (#28584)
rjl493456442 Nov 28, 2023
58297e3
light: remove package light(#28614)
lightclient Nov 28, 2023
63979bc
cmd/evm, core/state: fix post-exec dump of state (statetests, blockch…
holiman Nov 28, 2023
248dc50
ethereum: remove TODO comment about subscription (#28609)
sbs2001 Nov 28, 2023
bbc5db8
eth/tracers/js: fix type inconsistencies (#28488)
s1na Nov 28, 2023
34dcd74
crypto/secp256k1: fix 32-bit tests when CGO_ENABLED=0 (#28602)
gballet Nov 28, 2023
e0c7ad0
consensus: verify the nonexistence of shanghai- and cancun-specific h…
jakub-freebit Nov 28, 2023
61b844f
eth/gasestimator: allow slight estimation error in favor of less iter…
karalabe Nov 28, 2023
28e7371
all: replace log15 with slog (#28187)
jwasinger Nov 29, 2023
ab0eb46
core/state: make stateobject.create selfcontain (#28459)
rjl493456442 Nov 29, 2023
7e56d89
params: add note about Delta, update protocol version to indicate Del…
protolambda Nov 30, 2023
cd53168
Merge pull request #196 from ethereum-optimism/delta
protolambda Nov 30, 2023
fa0df76
trie/triedb/hashdb: take lock around access to dirties cache (#28542)
magicxyyz Nov 30, 2023
f2b509d
accounts/abi/bind: fix typo (#28630)
BorkBorked Dec 1, 2023
dd0d0a2
slog: faster and less memory-consumption (#28621)
holiman Dec 1, 2023
5fb8ebc
eth/tracers: tx-level state in debug_traceCall (#28460)
jsvisa Dec 1, 2023
6e488c2
cmd/evm: fix Env struct json tag (#28635)
ddl-hust Dec 4, 2023
f04e5bd
accounts/abi/bind: fixed typos (#28634)
BorkBorked Dec 4, 2023
70fd0b6
eth/fetcher: fix invalid tracking of received at time for block (#28637)
manav2401 Dec 4, 2023
2e13b01
accounts: run tests in parallel (#28544)
estensen Dec 4, 2023
3dc071e
eth/tracers/logger: make structlog/json-log stack hex again (#28628)
holiman Dec 5, 2023
b8d44ed
log: remove lazy, remove unused interfaces, unexport methods (#28622)
holiman Dec 5, 2023
69576df
.github: use github actions to run 32-bit linux tests (#28549)
gballet Dec 5, 2023
55b483d
ethdb/pebble: remove a dependency (#28627)
MariusVanDerWijden Dec 6, 2023
a113497
tests/fuzzers/bls12381: deactivate BLS fuzzer when CGO_ENABLED=0 (#28…
gballet Dec 7, 2023
77c4bbc
build: upgrade -dlgo version to Go 1.21.5 (#28648)
sandakersmann Dec 7, 2023
5a45e7a
rpc: fix ns/µs mismatch in metrics (#28649)
holiman Dec 8, 2023
1048e2d
cmd/evm: fix dump after state-test exec (#28650)
holiman Dec 8, 2023
fff843c
beacon/light: add CommitteeChain (#27766)
zsfelfoldi Dec 8, 2023
d98d70f
cmd/utils, eth: disallow invalid snap sync / snapshot flag combos (#2…
karalabe Dec 8, 2023
e206d3f
trie: remove inconsistent trie nodes during sync in path mode (#28595)
rjl493456442 Dec 8, 2023
c50337a
Activate Canyon on mainnet & set superchain upgrade flag. (#198)
trianglesphere Dec 12, 2023
a3ca1b2
cmd/utils: fix HTTPHost, WSHost flag priority (#28669)
weiihann Dec 12, 2023
17c2b3c
eth/protocols/eth: fix typos in comments (#28652)
guerrierindien Dec 12, 2023
81fd1b3
core/txpool : small cleanup refactors (#28654)
ucwong Dec 12, 2023
b2ced97
eth/fetcher, eth/gasestimator: fix typos in comments (#28675)
Ursulafe Dec 13, 2023
0f74aad
all: fix typos in comments (#28662)
nnsW3 Dec 13, 2023
f1794ba
miner: eliminate the dead loop possibility for `newWorkLoop` and `mai…
FletcherMan Dec 15, 2023
edc864f
all: fix typos in comments (#28682)
bodhi-crypo Dec 18, 2023
5b22a47
p2p/discover: add liveness check in collectTableNodes (#28686)
fjl Dec 18, 2023
02766d3
internal/flags: add missing flag types for auto-env-var generation (#…
sebastianst Dec 18, 2023
05bbc56
cmd/evm: default to mirror mainnet forks enabled (#28691)
jwasinger Dec 18, 2023
553bafc
cmd/evm, cmd/clef, cmd/bootnode: fix / unify logging (#28696)
holiman Dec 18, 2023
c18c5c3
cmd/evm: t8n support custom tracers (#28557)
jsvisa Dec 18, 2023
a18b845
params: release go-ethereum v1.13.6 stable
fjl Dec 18, 2023
5ba3d57
Merge branch 'release/1.13' into release-1.13.6
fjl Dec 18, 2023
da6cdaf
all: release go-ethereum v1.13.6
fjl Dec 18, 2023
4410c14
params: begin v1.13.7 release cycle
fjl Dec 18, 2023
54a400e
internal/ethapi: ethSendTransaction check baseFee (#27834)
jsvisa Dec 18, 2023
cd58897
core/rawdb: implement size reporting for live items in freezer_table …
wangyifan Dec 18, 2023
952b343
build: make linter emit output (#28704)
holiman Dec 19, 2023
5a9dda6
.travis: set lower GOGC value (#28705)
holiman Dec 19, 2023
435bed5
ci: disable lint on travis (#28706)
holiman Dec 19, 2023
0cc192b
build(deps): bump golang.org/x/crypto from 0.15.0 to 0.17.0 (#28702)
dependabot[bot] Dec 19, 2023
3fd5688
params: go-ethereum v1.13.7 stable
fjl Dec 19, 2023
c3d9ca6
all: release go-ethereum v1.13.7
fjl Dec 19, 2023
9258a44
params: begin go-ethereum v1.13.8 release cycle
fjl Dec 19, 2023
8e15470
miner: Add block building interruption on payload resolution (getPayl…
sebastianst Dec 19, 2023
7124057
internal/build: fix crash in MustRunCommandWithOutput (#28709)
fjl Dec 20, 2023
d3452a2
accounts: properly close managed wallets when closing manager (#28710)
holiman Dec 20, 2023
8c2d455
build: upgrade to golangci-lint v1.55.2 (#28712)
fjl Dec 20, 2023
577be37
cmd/devp2p: update eth/snap protocol test suites for PoS (#28340)
lightclient Dec 20, 2023
cca9479
core, cmd, trie: fix the condition of pathdb initialization (#28718)
rjl493456442 Dec 21, 2023
f469470
core/rawdb: improve state scheme checking (#28724)
rjl493456442 Dec 22, 2023
904a278
params: go-ethereum v1.13.8 stable
holiman Dec 22, 2023
b20b4a7
all: release go-ethereum v1.13.8
holiman Dec 22, 2023
e417703
4844 prep: Add Ecotone fork check & refactor l1 / data availability c…
roberto-bayardo Jan 3, 2024
c7871bc
Update superchain dep to include new mainnet targets (#211)
kahuang Jan 3, 2024
d16d0f7
Extend execution payload envelope to contain parent beacon block root
danyalprout Jan 9, 2024
36afcb9
Update eth/catalyst/api.go
danyalprout Jan 9, 2024
feb4dc4
Merge pull request #214 from danyalprout/extend-execution-payload-env…
protolambda Jan 9, 2024
be81fa4
Ecotone l1 cost function
roberto-bayardo Dec 21, 2023
c887e59
Update core/types/rollup_cost.go
roberto-bayardo Jan 9, 2024
a290ca1
Merge pull request #210 from roberto-bayardo/ecotone-l1-cost-func
protolambda Jan 9, 2024
3a54b56
Merge tag 'v1.13.8' into seb/geth-v1.13.8
sebastianst Jan 9, 2024
32f2bac
eth/gasestimator: Fix NewEVMBlockContext call
sebastianst Jan 9, 2024
3d3dfcd
go: mod tidy
sebastianst Jan 9, 2024
3dcc1dd
forkdiff: Update base hash to v1.13.8
sebastianst Jan 9, 2024
a79bde2
L2 Cancun support, activate on Ecotone (#205)
protolambda Jan 9, 2024
b52ff66
baseFee consistency related renaming
roberto-bayardo Jan 11, 2024
a72d34b
Merge pull request #216 from roberto-bayardo/baseFee
sebastianst Jan 11, 2024
c2d9dcd
Add log for ecotone time
mdehoog Jan 11, 2024
98cdc6b
Merge pull request #217 from mdehoog/ecotone-log
sebastianst Jan 11, 2024
29b173b
log: Add Handler getter to Logger interface
sebastianst Jan 11, 2024
94dd378
Merge remote-tracking branch 'origin/optimism' into seb/geth-v1.13.8
sebastianst Jan 15, 2024
fb9e95e
github: Remove go workflow
sebastianst Jan 15, 2024
75ee01e
ethapi: handle fee-scalar receipt attribute
protolambda Jan 16, 2024
d5f142e
Merge pull request #219 from ethereum-optimism/fix-ecotone-feescalar
ajsutton Jan 17, 2024
ec72ec6
Snap Sync: consensus: handle legacy pre-bedrock header verification (…
protolambda Jan 22, 2024
396bfc4
params: Increment supported protocol version (Ecotone rc)
sebastianst Jan 23, 2024
fe5a2b4
go: Update superchain-registry to include goerli-dev-0 Ecotone
sebastianst Jan 23, 2024
bfa8ffc
Merge pull request #221 from ethereum-optimism/seb/proto-version-ecotone
sebastianst Jan 23, 2024
6687124
fix: ledger hardware wallet support on mac
felipe-op Jan 23, 2024
7f23da6
add fork.yaml
felipe-op Jan 24, 2024
a4e85ec
Merge pull request #223 from ethereum-optimism/felipe/ledger
protolambda Jan 24, 2024
288b43d
core/types: SetBlobTxSidecar to support blob tx tooling
protolambda Jan 24, 2024
5c6f10d
Merge pull request #224 from ethereum-optimism/set-sidecar
protolambda Jan 24, 2024
c8a137c
update transaction_args to latest for blob support
roberto-bayardo Jan 25, 2024
4e134b2
Merge pull request #225 from roberto-bayardo/update-transacion-args
protolambda Jan 25, 2024
fb90ca3
Merge branch 'optimism' into seb/geth-v1.13.8
sebastianst Jan 26, 2024
298900c
core/state: Add StateDB.OpenStorageTrie
sebastianst Jan 26, 2024
d35dd23
Bump superchain dependency to contain sepolia-dev-0 Ecotone activation
sebastianst Jan 30, 2024
662fa05
Bump go versions to 1.21 in cci and Dockerfiles
sebastianst Jan 30, 2024
311ee02
all: temporary Go 1.21 lint solution
protolambda Jan 30, 2024
33cb331
Merge pull request #230 from ethereum-optimism/seb/oplabs-sepolia-dev…
protolambda Jan 30, 2024
3f05663
beacon: Fix OP Legacy block hash checks (#228)
trianglesphere Jan 30, 2024
74b44a0
Merge branch 'optimism' into seb/geth-v1.13.8
sebastianst Jan 30, 2024
f49155a
core/txpool/legacypool: respect nolocals-setting (#28435)
jp-imx Nov 20, 2023
05786fd
Update superchain registry to include Delta mainnet (#232)
trianglesphere Jan 31, 2024
5eab46c
all: Add Ecotone override flag
sebastianst Jan 31, 2024
ea3c304
Merge pull request #233 from ethereum-optimism/seb/ecotone-override
sebastianst Jan 31, 2024
b15f1ac
ci: add go mod tidy check
geoknee Feb 1, 2024
425e757
Merge branch 'optimism' into seb/geth-v1.13.8
sebastianst Feb 1, 2024
0047f39
Merge pull request #234 from ethereum-optimism/gk/go-mod-tidy-ci
sebastianst Feb 2, 2024
a814f9a
Merge branch 'optimism' into seb/geth-v1.13.8
sebastianst Feb 4, 2024
486b55f
fokdiff: Remove entry for `les`
sebastianst Feb 4, 2024
0538289
core: remove TODO comment
sebastianst Feb 4, 2024
dc4ea63
Remove .orig files
sebastianst Feb 5, 2024
7f7fb4f
Merge pull request #215 from ethereum-optimism/seb/geth-v1.13.8
sebastianst Feb 5, 2024
d48b5d7
Update superchain-reg dependency for OP Sepolia Ecotone activation
sebastianst Feb 7, 2024
70103aa
Merge pull request #240 from ethereum-optimism/seb/ecotone-sepolia-re…
sebastianst Feb 7, 2024
fdf0da8
Deposit Transaction Nonce Correction
axelKingsley Feb 7, 2024
57bfac5
Merge pull request #237 from ethereum-optimism/feat/depositNonceCorre…
axelKingsley Feb 7, 2024
6f3553b
ci: update image to default
geoknee Feb 4, 2024
11a890f
Merge pull request #239 from ethereum-optimism/gk/deprecated-ci-image
sebastianst Feb 8, 2024
6f25e34
core/vm: Allow precompiles to be overriden
Inphi Feb 12, 2024
e965f15
Update core/vm/evm.go
Inphi Feb 12, 2024
b6d0732
Merge pull request #242 from ethereum-optimism/inphi/kzg-oracle
Inphi Feb 12, 2024
ee56d67
Prepare optimistic Ecotone Mainnet release
sebastianst Feb 13, 2024
f33198a
Merge pull request #243 from ethereum-optimism/seb/ecotone-mainnet-re…
sebastianst Feb 13, 2024
abc8821
Skip genesis state check for transitioned networks (#245)
trianglesphere Feb 20, 2024
2f105f7
Default to discovery v5 (#246)
trianglesphere Feb 20, 2024
78436b6
Add OP specific bootnodes (#247)
trianglesphere Feb 21, 2024
df0ed57
Fix bootnodes port (#250)
trianglesphere Feb 22, 2024
c545a4f
Update mainnet activation to Mar 14 00:00:01 UTC
sebastianst Feb 22, 2024
0402d54
Merge pull request #253 from ethereum-optimism/seb/mainnet-ecotone-up…
sebastianst Feb 22, 2024
65108d1
Merge branch 'upstream-geth/v1.101308.2' into merge/for_4844_merge
welkin22 Apr 12, 2024
af32034
Fix go.mod and lost import items when merging
welkin22 Apr 12, 2024
42b6219
rollup.superchain-upgrades default value to false because we don't ne…
welkin22 Apr 15, 2024
37262be
Merge remote-tracking branch 'opbnb-geth/develop' into merge/for_4844…
welkin22 Apr 18, 2024
6d7b454
docker file use go 1.21
welkin22 Apr 23, 2024
eaeee8a
get hardfork times from chConfig, not superchainConfig
geoknee Feb 22, 2024
be00491
remove RegolithTime overrides
geoknee Feb 22, 2024
f320edb
go get github.com/ethereum-optimism/superchain-registry/superchain@12…
geoknee Feb 23, 2024
dce355e
update superchain dependency
geoknee Feb 27, 2024
4b4d5d6
Revert "remove RegolithTime overrides"
geoknee Feb 27, 2024
7bcce13
go mod tidy
geoknee Feb 27, 2024
21adbac
go get github.com/ethereum-optimism/superchain-registry/superchain@c2…
geoknee Feb 29, 2024
22544d4
go get github.com/ethereum-optimism/superchain-registry/superchain@69…
geoknee Mar 5, 2024
5ef5278
go get github.com/ethereum-optimism/superchain-registry/superchain@c5…
geoknee Mar 6, 2024
c3e3ab1
Merge branch 'develop' into merge/for_4844_merge
welkin22 Apr 24, 2024
eb04f48
Merge branch 'develop' into merge/for_4844_merge
welkin22 Apr 25, 2024
b5a0d4a
remove light dir which should not exist
welkin22 Apr 25, 2024
6cc5d7f
feature(op-geth): update opBNB qanet config (#99)
redhdx Apr 28, 2024
fa2ac3e
canyon fork: revert disable create2deployer in canyon fork (#100)
bnoieh Apr 28, 2024
6bd9618
Merge branch 'develop' into merge/for_4844_merge
welkin22 Apr 28, 2024
c0a225e
regenerate config toml marshal file
welkin22 Apr 29, 2024
e0289db
feature(op-geth): add opBNB qanet hard fork config (#101)
redhdx Apr 29, 2024
c013d95
add precompiled contracts for light client (#102)
keefel Apr 30, 2024
d46af07
fork config for 4844-2 qanet
welkin22 May 6, 2024
536ac5d
feature: add opBNB V5 bootnodes (#104)
redhdx May 6, 2024
83bf6cd
add bls example (#105)
keefel May 6, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
20 changes: 15 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ jobs:
type: boolean
default: false
machine:
image: ubuntu-2204:2022.07.1
image: default
resource_class: xlarge
steps:
- gcp-cli/install
Expand Down Expand Up @@ -112,7 +112,7 @@ jobs:

build-geth:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
resource_class: xlarge
steps:
- checkout
Expand All @@ -121,22 +121,30 @@ jobs:
unit-test:
resource_class: xlarge
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- checkout
- run:
command: go run build/ci.go test
lint-geth:
resource_class: medium
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- checkout
- run:
command: go run build/ci.go lint
tidy-geth:
resource_class: small
docker:
- image: cimg/go:1.21
steps:
- checkout
- run:
command: go mod tidy && git diff --exit-code
check-releases:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
steps:
- checkout
- run:
Expand All @@ -157,6 +165,8 @@ workflows:
name: Run unit tests for geth
- lint-geth:
name: Run linter over geth
- tidy-geth:
name: Check geth go.mod file has been tidied
- docker-release:
name: Push to Docker
docker_tags: <<pipeline.git.revision>>
Expand Down
5 changes: 1 addition & 4 deletions .golangci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ run:
linters:
disable-all: true
enable:
- goconst
- goimports
- gosimple
- govet
Expand All @@ -39,9 +38,6 @@ linters:
linters-settings:
gofmt:
simplify: true
goconst:
min-len: 3 # minimum length of string constant
min-occurrences: 6 # minimum number of occurrences

issues:
exclude-rules:
Expand All @@ -62,3 +58,4 @@ issues:
- 'SA1019: strings.Title is deprecated'
- 'SA1019: strings.Title has been deprecated since Go 1.18 and an alternative has been available since Go 1.0: The rule Title uses for word boundaries does not handle Unicode punctuation properly. Use golang.org/x/text/cases instead.'
- 'SA1029: should not use built-in type string as key for value'
- 'SA1019:' # temporary, until fully updated to Go 1.21
15 changes: 3 additions & 12 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,6 @@ jobs:
- azure-osx

include:
# This builder only tests code linters on latest version of Go
- stage: lint
os: linux
dist: bionic
go: 1.21.x
env:
- lint
git:
submodules: false # avoid cloning ethereum/tests
script:
- go run build/ci.go lint

# These builders create the Docker sub-images for multi-arch push and each
# will attempt to push the multi-arch image if they are the last builder
- stage: build
Expand Down Expand Up @@ -96,6 +84,7 @@ jobs:
- stage: build
if: type = push
os: osx
osx_image: xcode14.2
go: 1.21.x
env:
- azure-osx
Expand All @@ -104,6 +93,8 @@ jobs:
script:
- go run build/ci.go install -dlgo
- go run build/ci.go archive -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
- go run build/ci.go install -dlgo -arch arm64
- go run build/ci.go archive -arch arm64 -type tar -signer OSX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds

# These builders run the tests
- stage: build
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ARG VERSION=""
ARG BUILDNUM=""

# Build Geth in a stock Go builder container
FROM golang:1.20-alpine as builder
FROM golang:1.21-alpine as builder

RUN apk add --no-cache build-base libc-dev
RUN apk add --no-cache gcc musl-dev linux-headers git
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.alltools
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ARG VERSION=""
ARG BUILDNUM=""

# Build Geth in a stock Go builder container
FROM golang:1.20-alpine as builder
FROM golang:1.21-alpine as builder

RUN apk add --no-cache gcc musl-dev linux-headers git

Expand Down
2 changes: 1 addition & 1 deletion accounts/abi/abi.go
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,7 @@ var revertSelector = crypto.Keccak256([]byte("Error(string)"))[:4]
var panicSelector = crypto.Keccak256([]byte("Panic(uint256)"))[:4]

// panicReasons map is for readable panic codes
// see this linkage for the deails
// see this linkage for the details
// https://docs.soliditylang.org/en/v0.8.21/control-structures.html#panic-via-assert-and-error-via-require
// the reason string list is copied from ether.js
// https://github.com/ethers-io/ethers.js/blob/fa3a883ff7c88611ce766f58bdd4b8ac90814470/src.ts/abi/interface.ts#L207-L218
Expand Down
24 changes: 24 additions & 0 deletions accounts/abi/abi_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ var methods = map[string]Method{
}

func TestReader(t *testing.T) {
t.Parallel()
abi := ABI{
Methods: methods,
}
Expand Down Expand Up @@ -151,6 +152,7 @@ func TestReader(t *testing.T) {
}

func TestInvalidABI(t *testing.T) {
t.Parallel()
json := `[{ "type" : "function", "name" : "", "constant" : fals }]`
_, err := JSON(strings.NewReader(json))
if err == nil {
Expand All @@ -170,6 +172,7 @@ func TestInvalidABI(t *testing.T) {
// constructor(uint256 a, uint256 b) public{}
// }
func TestConstructor(t *testing.T) {
t.Parallel()
json := `[{ "inputs": [{"internalType": "uint256","name": "a","type": "uint256" },{ "internalType": "uint256","name": "b","type": "uint256"}],"stateMutability": "nonpayable","type": "constructor"}]`
method := NewMethod("", "", Constructor, "nonpayable", false, false, []Argument{{"a", Uint256, false}, {"b", Uint256, false}}, nil)
// Test from JSON
Expand Down Expand Up @@ -199,6 +202,7 @@ func TestConstructor(t *testing.T) {
}

func TestTestNumbers(t *testing.T) {
t.Parallel()
abi, err := JSON(strings.NewReader(jsondata))
if err != nil {
t.Fatal(err)
Expand Down Expand Up @@ -236,6 +240,7 @@ func TestTestNumbers(t *testing.T) {
}

func TestMethodSignature(t *testing.T) {
t.Parallel()
m := NewMethod("foo", "foo", Function, "", false, false, []Argument{{"bar", String, false}, {"baz", String, false}}, nil)
exp := "foo(string,string)"
if m.Sig != exp {
Expand Down Expand Up @@ -274,6 +279,7 @@ func TestMethodSignature(t *testing.T) {
}

func TestOverloadedMethodSignature(t *testing.T) {
t.Parallel()
json := `[{"constant":true,"inputs":[{"name":"i","type":"uint256"},{"name":"j","type":"uint256"}],"name":"foo","outputs":[],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"name":"i","type":"uint256"}],"name":"foo","outputs":[],"payable":false,"stateMutability":"pure","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"i","type":"uint256"}],"name":"bar","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"i","type":"uint256"},{"indexed":false,"name":"j","type":"uint256"}],"name":"bar","type":"event"}]`
abi, err := JSON(strings.NewReader(json))
if err != nil {
Expand All @@ -297,6 +303,7 @@ func TestOverloadedMethodSignature(t *testing.T) {
}

func TestCustomErrors(t *testing.T) {
t.Parallel()
json := `[{ "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ],"name": "MyError", "type": "error"} ]`
abi, err := JSON(strings.NewReader(json))
if err != nil {
Expand All @@ -311,6 +318,7 @@ func TestCustomErrors(t *testing.T) {
}

func TestMultiPack(t *testing.T) {
t.Parallel()
abi, err := JSON(strings.NewReader(jsondata))
if err != nil {
t.Fatal(err)
Expand Down Expand Up @@ -348,6 +356,7 @@ func ExampleJSON() {
}

func TestInputVariableInputLength(t *testing.T) {
t.Parallel()
const definition = `[
{ "type" : "function", "name" : "strOne", "constant" : true, "inputs" : [ { "name" : "str", "type" : "string" } ] },
{ "type" : "function", "name" : "bytesOne", "constant" : true, "inputs" : [ { "name" : "str", "type" : "bytes" } ] },
Expand Down Expand Up @@ -476,6 +485,7 @@ func TestInputVariableInputLength(t *testing.T) {
}

func TestInputFixedArrayAndVariableInputLength(t *testing.T) {
t.Parallel()
abi, err := JSON(strings.NewReader(jsondata))
if err != nil {
t.Error(err)
Expand Down Expand Up @@ -650,6 +660,7 @@ func TestInputFixedArrayAndVariableInputLength(t *testing.T) {
}

func TestDefaultFunctionParsing(t *testing.T) {
t.Parallel()
const definition = `[{ "name" : "balance", "type" : "function" }]`

abi, err := JSON(strings.NewReader(definition))
Expand All @@ -663,6 +674,7 @@ func TestDefaultFunctionParsing(t *testing.T) {
}

func TestBareEvents(t *testing.T) {
t.Parallel()
const definition = `[
{ "type" : "event", "name" : "balance" },
{ "type" : "event", "name" : "anon", "anonymous" : true},
Expand Down Expand Up @@ -739,6 +751,7 @@ func TestBareEvents(t *testing.T) {
//
// receipt{status=1 cgas=23949 bloom=00000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000040200000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 logs=[log: b6818c8064f645cd82d99b59a1a267d6d61117ef [75fd880d39c1daf53b6547ab6cb59451fc6452d27caa90e5b6649dd8293b9eed] 000000000000000000000000376c47978271565f56deb45495afa69e59c16ab200000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000158 9ae378b6d4409eada347a5dc0c180f186cb62dc68fcc0f043425eb917335aa28 0 95d429d309bb9d753954195fe2d69bd140b4ae731b9b5b605c34323de162cf00 0]}
func TestUnpackEvent(t *testing.T) {
t.Parallel()
const abiJSON = `[{"constant":false,"inputs":[{"name":"memo","type":"bytes"}],"name":"receive","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"memo","type":"bytes"}],"name":"received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"}],"name":"receivedAddr","type":"event"}]`
abi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -777,6 +790,7 @@ func TestUnpackEvent(t *testing.T) {
}

func TestUnpackEventIntoMap(t *testing.T) {
t.Parallel()
const abiJSON = `[{"constant":false,"inputs":[{"name":"memo","type":"bytes"}],"name":"receive","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"memo","type":"bytes"}],"name":"received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"sender","type":"address"}],"name":"receivedAddr","type":"event"}]`
abi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -827,6 +841,7 @@ func TestUnpackEventIntoMap(t *testing.T) {
}

func TestUnpackMethodIntoMap(t *testing.T) {
t.Parallel()
const abiJSON = `[{"constant":false,"inputs":[{"name":"memo","type":"bytes"}],"name":"receive","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"send","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"get","outputs":[{"name":"hash","type":"bytes"}],"payable":true,"stateMutability":"payable","type":"function"}]`
abi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -877,6 +892,7 @@ func TestUnpackMethodIntoMap(t *testing.T) {
}

func TestUnpackIntoMapNamingConflict(t *testing.T) {
t.Parallel()
// Two methods have the same name
var abiJSON = `[{"constant":false,"inputs":[{"name":"memo","type":"bytes"}],"name":"get","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"send","outputs":[{"name":"amount","type":"uint256"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"get","outputs":[{"name":"hash","type":"bytes"}],"payable":true,"stateMutability":"payable","type":"function"}]`
abi, err := JSON(strings.NewReader(abiJSON))
Expand Down Expand Up @@ -960,6 +976,7 @@ func TestUnpackIntoMapNamingConflict(t *testing.T) {
}

func TestABI_MethodById(t *testing.T) {
t.Parallel()
abi, err := JSON(strings.NewReader(jsondata))
if err != nil {
t.Fatal(err)
Expand Down Expand Up @@ -992,6 +1009,7 @@ func TestABI_MethodById(t *testing.T) {
}

func TestABI_EventById(t *testing.T) {
t.Parallel()
tests := []struct {
name string
json string
Expand Down Expand Up @@ -1058,6 +1076,7 @@ func TestABI_EventById(t *testing.T) {
}

func TestABI_ErrorByID(t *testing.T) {
t.Parallel()
abi, err := JSON(strings.NewReader(`[
{"inputs":[{"internalType":"uint256","name":"x","type":"uint256"}],"name":"MyError1","type":"error"},
{"inputs":[{"components":[{"internalType":"uint256","name":"a","type":"uint256"},{"internalType":"string","name":"b","type":"string"},{"internalType":"address","name":"c","type":"address"}],"internalType":"struct MyError.MyStruct","name":"x","type":"tuple"},{"internalType":"address","name":"y","type":"address"},{"components":[{"internalType":"uint256","name":"a","type":"uint256"},{"internalType":"string","name":"b","type":"string"},{"internalType":"address","name":"c","type":"address"}],"internalType":"struct MyError.MyStruct","name":"z","type":"tuple"}],"name":"MyError2","type":"error"},
Expand Down Expand Up @@ -1088,6 +1107,7 @@ func TestABI_ErrorByID(t *testing.T) {
// TestDoubleDuplicateMethodNames checks that if transfer0 already exists, there won't be a name
// conflict and that the second transfer method will be renamed transfer1.
func TestDoubleDuplicateMethodNames(t *testing.T) {
t.Parallel()
abiJSON := `[{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"}],"name":"transfer0","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"},{"name":"data","type":"bytes"},{"name":"customFallback","type":"string"}],"name":"transfer","outputs":[{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]`
contractAbi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -1117,6 +1137,7 @@ func TestDoubleDuplicateMethodNames(t *testing.T) {
// event send();
// }
func TestDoubleDuplicateEventNames(t *testing.T) {
t.Parallel()
abiJSON := `[{"anonymous": false,"inputs": [{"indexed": false,"internalType": "uint256","name": "a","type": "uint256"}],"name": "send","type": "event"},{"anonymous": false,"inputs": [],"name": "send0","type": "event"},{ "anonymous": false, "inputs": [],"name": "send","type": "event"}]`
contractAbi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -1144,6 +1165,7 @@ func TestDoubleDuplicateEventNames(t *testing.T) {
// event send(uint256, uint256);
// }
func TestUnnamedEventParam(t *testing.T) {
t.Parallel()
abiJSON := `[{ "anonymous": false, "inputs": [{ "indexed": false,"internalType": "uint256", "name": "","type": "uint256"},{"indexed": false,"internalType": "uint256","name": "","type": "uint256"}],"name": "send","type": "event"}]`
contractAbi, err := JSON(strings.NewReader(abiJSON))
if err != nil {
Expand Down Expand Up @@ -1177,7 +1199,9 @@ func TestUnpackRevert(t *testing.T) {
{"4e487b7100000000000000000000000000000000000000000000000000000000000000ff", "unknown panic code: 0xff", nil},
}
for index, c := range cases {
index, c := index, c
t.Run(fmt.Sprintf("case %d", index), func(t *testing.T) {
t.Parallel()
got, err := UnpackRevert(common.Hex2Bytes(c.input))
if c.expectErr != nil {
if err == nil {
Expand Down
Loading
Loading