Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
300 commits
Select commit Hold shift + click to select a range
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
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
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
8d03918
params: begin v1.13.9 release cycle
holiman Dec 22, 2023
d2e3cb8
core/state: logic equivalence for GetCodeHash (#28733)
cygaar Dec 26, 2023
b5b7003
tests: add currentExcessBlobGas to state tests (#28735)
marioevz Dec 28, 2023
09e0208
accounts,signer: fix typos in comments (#28730)
taeguk Dec 28, 2023
76a5474
build: add support for ubuntu 23.10 (mantic minotaur) (#28728)
holiman Dec 30, 2023
c053eb7
log: avoid setting default slog logger in init (#28747)
fjl Dec 30, 2023
33c94ef
cmd/evm: fix link in README.md (#28755)
ddl-hust Jan 2, 2024
2365d77
core/vm: update comments to match eip number (#28743)
Jan 2, 2024
0b471c3
cmd/evm: Fix blob-gas-used on invalid transactions in t8n (#28734)
marioevz Jan 3, 2024
e417703
4844 prep: Add Ecotone fork check & refactor l1 / data availability c…
Jan 3, 2024
c7871bc
Update superchain dep to include new mainnet targets (#211)
kahuang Jan 3, 2024
99eb49e
internal/flags: update copyright year to 2024 (#28760)
sandakersmann Jan 4, 2024
e3eeb64
ethclient: simplify error handling in TransactionReceipt (#28748)
rosenk Jan 4, 2024
877d094
eth/downloader, eth/filters: use defer to call Unsubscribe (#28762)
ucwong Jan 5, 2024
07b17f9
log: emit error level string as "error", not "eror" (#28774)
jwasinger Jan 8, 2024
e7fa158
eth/filters: fix early Unsubscribe of log events (#28769)
ucwong Jan 8, 2024
f29520f
cmd/devp2p/internal/ethtest: fix typos in comments (#28772)
vuittont60 Jan 8, 2024
cfff3cb
params, core/forkid: schedule cancun fork on goerli (#28719)
MariusVanDerWijden Jan 8, 2024
d16d0f7
Extend execution payload envelope to contain parent beacon block root
danyalprout Jan 9, 2024
1010a79
cmd/geth: make it possible to autopilot removedb (#28725)
holiman Jan 9, 2024
d0edc5a
accounts/abi: fix bigInt topic encoding (#28764)
rjl493456442 Jan 9, 2024
9e018ce
cmd/geth: update log test data (#28780)
jwasinger 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
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
2d08c99
ethclient/simulated: implement new sim backend (#28202)
MariusVanDerWijden Jan 10, 2024
4f82531
params: go-ethereum v1.13.9 stable
fjl Jan 10, 2024
dd938d1
Merge branch 'master' into release/1.13
fjl Jan 10, 2024
daa2e5d
params: begin v1.13.10 release cycle
fjl Jan 10, 2024
b52ff66
baseFee consistency related renaming
Jan 11, 2024
a162091
version: release v1.13.10 to fix bad tag
karalabe Jan 11, 2024
bc0be1b
Merge branch 'master' into release/1.13
karalabe Jan 11, 2024
2e8b118
params: begin v1.13.11 release cycle
karalabe Jan 11, 2024
a72d34b
Merge pull request #216 from roberto-bayardo/baseFee
sebastianst Jan 11, 2024
c2d9dcd
Add log for ecotone time
Jan 11, 2024
98cdc6b
Merge pull request #217 from mdehoog/ecotone-log
sebastianst Jan 11, 2024
5c2de7f
docs: fix badge in README (#28796)
drstevenbrule Jan 12, 2024
6e235c0
eth: minor change of config-accessor (#28782)
0xmountaintop Jan 12, 2024
ae4ea04
cmd: fix typos (#28798)
vuittont60 Jan 12, 2024
7280a5b
build: fix typo in comment (#28800)
drstevenbrule Jan 12, 2024
065f82a
accounts, ethclient: minor tweaks on the new simulated backend (#28799)
karalabe Jan 12, 2024
43ba7d6
cmd/geth, internal/debug: get rid of by-default log config (#28801)
karalabe Jan 12, 2024
a608c0a
cmd/devp2p/internal/ethtest: skip large tx test on github build (#28794)
s1na Jan 12, 2024
1335ba5
p2p/dnsdisc: use strings.Cut over strings.IndexByte (#28787)
ddl-hust Jan 12, 2024
407f779
internal/ethapi: avoid using pending for defaults (#28784)
s1na Jan 12, 2024
29b7355
core/state: unexport GetOrNewStateObject (#28804)
Jan 14, 2024
1485814
cmd/rlpdump: add -pos flag, displaying byte positions (#28785)
fjl Jan 14, 2024
89ccc68
tests: update reference tests (#28778)
holiman Jan 15, 2024
7596db5
ethclient: add tests for TransactionInBlock (#28283)
hyunchel Jan 15, 2024
18e154e
eth: fix potential hang in waitSnapExtension (#28744)
niuxiaojie81 Jan 15, 2024
29b173b
log: Add Handler getter to Logger interface
sebastianst Jan 11, 2024
9ee6809
core/txpool/blobpool: fix typos
alfiedotwtf Jan 15, 2024
566754c
acounts/usbwallet: fix typo (#28815)
bodhi-crypo Jan 15, 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
d4f25b4
tests: more verbosity if block decoding fails (#28814)
holiman Jan 16, 2024
c66ca8b
tracer: use proper base fee in tests (#28775)
palango Jan 16, 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
2e2e89c
miner: fix typo in payload_building_test.go (#28825)
Thabokani Jan 17, 2024
e5d5e09
internal/ethapi: handle blobs in API methods (#28786)
s1na Jan 17, 2024
830f3c7
eth/filters: reset filter.begin in BenchmarkFilters (#28830)
Jan 18, 2024
0e93da3
crypto/kzg4844: add helpers for versioned blob hashes (#28827)
fjl Jan 19, 2024
1c48829
ethclient: apply accessList field in toCallArg (#28832)
colinlyguo Jan 19, 2024
f55a10b
params, core/forkid: enable cancun on sepolia and holesky (#28834)
MariusVanDerWijden Jan 20, 2024
ec72ec6
Snap Sync: consensus: handle legacy pre-bedrock header verification (…
protolambda Jan 22, 2024
78a3c32
core, core/rawdb, eth/sync: no tx indexing during snap sync (#28703)
rjl493456442 Jan 22, 2024
6a724b9
docs: remove reference to being official (#28858)
holiman Jan 23, 2024
19d9977
go.{mod,sum}: upgrade go-ole to support arm64 (#28859)
gballet Jan 23, 2024
819a497
core: fix genesis setup in benchReadChain (#28856)
Jan 23, 2024
a5a4fa7
all: use uint256 in state (#28598)
holiman Jan 23, 2024
4c8d92d
build: upgrade -dlgo version to Go 1.21.6 (#28836)
sandakersmann Jan 23, 2024
c89a3da
core/state/snapshot: use AddHash/ContainHash instead of Hasher interf…
MariusVanDerWijden Jan 23, 2024
2dc7477
core/vm: fix misleading comment (#28860)
trocher Jan 23, 2024
98eaa57
eth/catalyst: add timestamp checks to fcu and new payload and improve…
lightclient Jan 23, 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
542c861
core/txpool, eth/catalyst: fix racy simulator due to txpool backgroun…
karalabe Jan 23, 2024
6b0de79
core: move tx indexer to its own file (#28857)
rjl493456442 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
a8a8758
eth/catalyst: prefix payload id with version (#28246)
lightclient Jan 24, 2024
765f290
ethclient: fix flaky test (#28864)
rjl493456442 Jan 24, 2024
99dc3fe
params: go-ethereum v1.13.11 stable
holiman Jan 24, 2024
8f7eb9c
all: release go-ethereum v1.13.11 (#28868)
holiman 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
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
2c408ac
Pass the original precompile to the override function.
ajsutton Mar 4, 2024
b5b168f
setting up CODEOWNERS
raffaele-oplabs Mar 4, 2024
d1f5aa6
Update fork.yaml
raffaele-oplabs Mar 4, 2024
ef668c7
Merge pull request #261 from ethereum-optimism/set-up-codeowners
sebastianst Mar 4, 2024
7c19ab7
Merge pull request #260 from ethereum-optimism/aj/supply-default-prec…
Inphi Mar 5, 2024
a9ee254
get hardfork times from chConfig, not superchainConfig
geoknee Feb 22, 2024
01997fa
remove RegolithTime overrides
geoknee Feb 22, 2024
93b4964
go get github.com/ethereum-optimism/superchain-registry/superchain@12…
geoknee Feb 23, 2024
4168ab0
update superchain dependency
geoknee Feb 27, 2024
4b0c23c
Revert "remove RegolithTime overrides"
geoknee Feb 27, 2024
32cad16
go mod tidy
geoknee Feb 27, 2024
9642c65
go get github.com/ethereum-optimism/superchain-registry/superchain@c2…
geoknee Feb 29, 2024
500b087
go get github.com/ethereum-optimism/superchain-registry/superchain@69…
geoknee Mar 5, 2024
0a0c5b7
go get github.com/ethereum-optimism/superchain-registry/superchain@c5…
geoknee Mar 6, 2024
0ff6f56
Merge pull request #252 from ethereum-optimism/gk/upgrade-sc-registry
sebastianst Mar 6, 2024
340775e
adding image signer when pushing images
raffaele-oplabs Mar 7, 2024
b278d47
fixed condition
raffaele-oplabs Mar 7, 2024
9e50b7d
feat: add new failed deposit trace call frame
smartcontracts Mar 8, 2024
352fbe6
Add more bootnodes (#267)
trianglesphere Mar 8, 2024
66310a2
Update .circleci/config.yml
raffaele-oplabs Mar 11, 2024
d16ad6d
Merge branch 'optimism' into adding-image-binary-signer
raffaele-oplabs Mar 11, 2024
28a082a
Merge pull request #263 from ethereum-optimism/adding-image-binary-si…
raffaele-oplabs Mar 11, 2024
336d284
Merge pull request #265 from ethereum-optimism/sc/stop-call-trace
smartcontracts Mar 11, 2024
02a520f
go get github.com/ethereum-optimism/superchain-registry/superchain@52…
geoknee Mar 20, 2024
0a8e8d4
Merge pull request #271 from ethereum-optimism/gk/update-registry
sebastianst Mar 26, 2024
9da84a7
params: begin v1.13.9 release cycle
holiman Dec 22, 2023
052f558
core/state: logic equivalence for GetCodeHash (#28733)
cygaar Dec 26, 2023
16e4993
tests: add currentExcessBlobGas to state tests (#28735)
marioevz Dec 28, 2023
5ed7ac4
accounts,signer: fix typos in comments (#28730)
taeguk Dec 28, 2023
7063f5e
build: add support for ubuntu 23.10 (mantic minotaur) (#28728)
holiman Dec 30, 2023
84deec9
log: avoid setting default slog logger in init (#28747)
fjl Dec 30, 2023
9fdbc7b
cmd/evm: fix link in README.md (#28755)
ddl-hust Jan 2, 2024
e50d547
core/vm: update comments to match eip number (#28743)
Jan 2, 2024
25d34e6
cmd/evm: Fix blob-gas-used on invalid transactions in t8n (#28734)
marioevz Jan 3, 2024
59eae94
internal/flags: update copyright year to 2024 (#28760)
sandakersmann Jan 4, 2024
3324a90
ethclient: simplify error handling in TransactionReceipt (#28748)
rosenk Jan 4, 2024
7e210bc
eth/downloader, eth/filters: use defer to call Unsubscribe (#28762)
ucwong Jan 5, 2024
e173e67
log: emit error level string as "error", not "eror" (#28774)
jwasinger Jan 8, 2024
4c1766c
eth/filters: fix early Unsubscribe of log events (#28769)
ucwong Jan 8, 2024
f8b0d38
cmd/devp2p/internal/ethtest: fix typos in comments (#28772)
vuittont60 Jan 8, 2024
cd3bd20
params, core/forkid: schedule cancun fork on goerli (#28719)
MariusVanDerWijden Jan 8, 2024
e9e14fa
cmd/geth: make it possible to autopilot removedb (#28725)
holiman Jan 9, 2024
8c86b62
accounts/abi: fix bigInt topic encoding (#28764)
rjl493456442 Jan 9, 2024
89201f9
cmd/geth: update log test data (#28780)
jwasinger Jan 9, 2024
c665006
ethclient/simulated: implement new sim backend (#28202)
MariusVanDerWijden Jan 10, 2024
c3fad25
params: go-ethereum v1.13.9 stable
fjl Jan 10, 2024
3c49e22
add ability to create simulated backend from ethconfig
Mar 21, 2024
c6b56c4
Merge pull request #273 from roberto-bayardo/merge-upstream-geth
trianglesphere Apr 3, 2024
5f73c92
Revert "Merge upstream geth v1.13.9 into op-geth"
trianglesphere Apr 3, 2024
739fbc8
Merge pull request #283 from ethereum-optimism/revert-273-merge-upstr…
protolambda Apr 3, 2024
5c73525
Merge tag 'v1.13.9' into merge-again
Apr 3, 2024
63aa0aa
Merge pull request #284 from roberto-bayardo/merge-again
trianglesphere Apr 3, 2024
c19c873
remove duplicate file reference which breaks forkdiff (#285)
Apr 3, 2024
861b3b0
Merge tag 'v1.13.10' into optimism
Apr 4, 2024
da80ca3
Merge tag 'v1.13.11' into optimism
Apr 4, 2024
6aa2348
Merge pull request #286 from roberto-bayardo/nother-merge
trianglesphere Apr 4, 2024
d9f03bf
fix JSON logger to properly handle debug & lower log level
Apr 5, 2024
fbf1ff7
Merge pull request #290 from roberto-bayardo/fix-json-logger
sebastianst Apr 5, 2024
1c12cf9
core/vm, params: ensure order of forks, prevent overflow (#29023)
holiman Apr 8, 2024
e9a306b
Merge pull request #293 from ethereum-optimism/jg/backport
trianglesphere Apr 8, 2024
fe3a411
eip 7212
InoMurko Apr 9, 2024
5ccd3a3
Merge remote-tracking branch 'upstream2/optimism' into optimism
InoMurko Apr 9, 2024
3f17455
Merge pull request #1 from ConstellationCrypto/inomurko/story_genesis…
InoMurko Apr 9, 2024
8b489ac
eip 7212
InoMurko Apr 11, 2024
d5ea372
Merge pull request #4 from ConstellationCrypto/inomurko/activate-7212
InoMurko Apr 11, 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
  •  
  •  
  •  
42 changes: 37 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 @@ -108,11 +108,33 @@ jobs:
name: Tag
command: |
./.circleci/ci-docker-tag-op-geth-release.sh <<parameters.registry>>/<<parameters.repo>> $CIRCLE_TAG $CIRCLE_SHA1
- when:
condition:
equal: [optimism, << pipeline.git.branch >>]
steps:
- gcp-oidc-authenticate:
service_account_email: GCP_SERVICE_ATTESTOR_ACCOUNT_EMAIL
- run:
name: Sign
command: |
git clone --branch v1.0.3 --depth 1 https://github.com/ethereum-optimism/binary_signer
cd binary_signer/signer

IMAGE_PATH="<<parameters.registry>>/<<parameters.repo>>/<<parameters.docker_name>>:<<pipeline.git.revision>>"
echo $IMAGE_PATH
pip3 install -r requirements.txt

python3 ./sign_image.py --command="sign"\
--attestor-project-name="$ATTESTOR_PROJECT_NAME"\
--attestor-name="$ATTESTOR_NAME"\
--image-path="$IMAGE_PATH"\
--signer-logging-level="INFO"\
--attestor-key-id="//cloudkms.googleapis.com/v1/projects/$ATTESTOR_PROJECT_NAME/locations/global/keyRings/$ATTESTOR_NAME-key-ring/cryptoKeys/$ATTESTOR_NAME-key/cryptoKeyVersions/1"


build-geth:
docker:
- image: cimg/go:1.20
- image: cimg/go:1.21
resource_class: xlarge
steps:
- checkout
Expand All @@ -121,22 +143,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 +187,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
23 changes: 1 addition & 22 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,22 +1 @@
# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.

accounts/usbwallet @karalabe
accounts/scwallet @gballet
accounts/abi @gballet @MariusVanDerWijden
cmd/clef @holiman
consensus @karalabe
core/ @karalabe @holiman @rjl493456442
eth/ @karalabe @holiman @rjl493456442
eth/catalyst/ @gballet
eth/tracers/ @s1na
graphql/ @s1na
les/ @zsfelfoldi @rjl493456442
light/ @zsfelfoldi @rjl493456442
node/ @fjl
p2p/ @fjl @zsfelfoldi
rpc/ @fjl @holiman
p2p/simulations @fjl
p2p/protocols @fjl
p2p/testing @fjl
signer/ @holiman
* @ethereum-optimism/op-geth-maintainers
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
12 changes: 0 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
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
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
## Go Ethereum

Official Golang execution layer implementation of the Ethereum protocol.
Golang execution layer implementation of the Ethereum protocol.

[![API Reference](
https://camo.githubusercontent.com/915b7be44ada53c290eb157634330494ebe3e30a/68747470733a2f2f676f646f632e6f72672f6769746875622e636f6d2f676f6c616e672f6764646f3f7374617475732e737667
https://pkg.go.dev/badge/github.com/ethereum/go-ethereum
)](https://pkg.go.dev/github.com/ethereum/go-ethereum?tab=doc)
[![Go Report Card](https://goreportcard.com/badge/github.com/ethereum/go-ethereum)](https://goreportcard.com/report/github.com/ethereum/go-ethereum)
[![Travis](https://travis-ci.com/ethereum/go-ethereum.svg?branch=master)](https://travis-ci.com/ethereum/go-ethereum)
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