Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
255 commits
Select commit Hold shift + click to select a range
f354981
eth/catalyst: return syncing not accepted (#25414)
MariusVanDerWijden Jul 28, 2022
377c7d7
eth/catalyst: return 0x0 if latestvalid is pow block (#25423)
MariusVanDerWijden Jul 28, 2022
9ad5080
ethereum, ethclient: add FeeHistory support (#25403)
lightclient Jul 29, 2022
0290599
all: use AbsTime.Add instead of conversion (#25417)
dbadoy Jul 29, 2022
1af9e4f
cm/puppeth: fix crash when of ethstats specifier doesn't contain `:` …
jsvisa Jul 29, 2022
fea569f
eth: fix typo in comment (#25327)
rithwikbabu Jul 29, 2022
49aa8a6
common/compiler: json unmarshalling error checks (#25449)
henry-0 Aug 1, 2022
6fd06ab
cmd, core, eth, les, params: add merge-passed chain config (#24538)
karalabe Aug 1, 2022
1b34ed2
eth: fix typo in catalyst api (#25460)
s1na Aug 1, 2022
93eabca
build: upgrade -dlgo version to Go 1.18.5
sandakersmann Aug 1, 2022
a0b88ce
eth/gasprice/feehistory: support finalized block (#25442)
lightclient Aug 1, 2022
c7ce74a
Merge pull request #25461 from sandakersmann/master
karalabe Aug 2, 2022
6fdc619
consensus/ethash: remove temp files created during DAG generation (#2…
manoj398 Aug 2, 2022
d804a59
cmd/devp2p/internal/ethtest: update tests for eth/67 (#25306)
fjl Aug 2, 2022
9244f87
node, rpc: add ReadHeaderTimeout config option (#25338)
Tristan-Wilson Aug 3, 2022
6b6261b
core/types: fix typo in comment (#25359)
yzhaoyu Aug 3, 2022
5fb463d
core: preallocate batch size in bloomIndexer (#25289)
dbadoy Aug 3, 2022
948e08d
internal/ethapi: don't estimate gas if no limit provided in eth_creat…
lightclient Aug 3, 2022
f809cf6
graphql: embed *Resolver instead of backend interface (#25468)
fjl Aug 3, 2022
733d76a
node: remove noop path.Join (#25475)
jsvisa Aug 4, 2022
8b53b92
core, trie: rework trie committer (#25320)
rjl493456442 Aug 4, 2022
f67e54c
core: use TryGetAccount to read what TryUpdateAccount has written (#2…
gballet Aug 4, 2022
e44d655
cmd, core, ethdb, node: move chain freezer one folder deeper (#25487)
rjl493456442 Aug 8, 2022
e93442c
eth/downloader: fix log errors of queue_test.go (#25494)
int88 Aug 8, 2022
e4b3bd6
core: fix uncle creation in TestFastVsFullChains (#25476)
int88 Aug 8, 2022
759d795
eth: formatted error nit (#25499)
aaronbuchwald Aug 9, 2022
86de2e5
eth/tracers: add onlyTopCall option to callTracer (#25430)
s1na Aug 9, 2022
a41ea8a
all: cleanup the APIs for initializing genesis (#25473)
rjl493456442 Aug 9, 2022
877ef7f
core: remove unused bc ChainContext in applyTransaction
Aug 10, 2022
1a18c14
signer/rules: register clef api properly when rules are used (#25455)
holiman Aug 10, 2022
c4cd632
Merge pull request #25506 from ycyraum/apply-transaction-no-bc
karalabe Aug 10, 2022
c0cc6f6
build: add static linking support (#25492)
0xe3b0c4 Aug 10, 2022
366d216
accounts/abi: display name in "method/event not found" error (#25512)
Aug 11, 2022
0be9d76
internal/ethapi: rework setDefaults for tx args so fee logic is separ…
lightclient Aug 11, 2022
141cd42
core/genesis: remove calaverasAllocData (#25516)
Aug 12, 2022
0016eb7
params: set ttdpassed on goerli (#25519)
holiman Aug 15, 2022
c4ab7d2
params: set mainnet terminal total difficulty for the merge (#25528)
MariusVanDerWijden Aug 16, 2022
12185e4
core, trie: flush preimages to db on blockchain close (#25533)
gballet Aug 17, 2022
6da5c16
core/state, trie, light: add a TryDeleteAccount method (#25531)
gballet Aug 17, 2022
a50c006
core: make tx journal check and open atomic (#25530)
dbadoy Aug 17, 2022
23ac8df
cmd. core: save preimages on genesis creation (#25538)
gballet Aug 18, 2022
cce7f08
rlp/rlpgen: fix error handling when target type not found (#25547)
jtraglia Aug 18, 2022
a1b8892
trie: improve node rlp decoding performance (#25357)
rjl493456442 Aug 18, 2022
2c5648d
all: fix some typos (#25551)
jtraglia Aug 19, 2022
fa1305f
internal/ethapi: fix comment typo (#25548)
ucwong Aug 19, 2022
32e8490
accounts/abi/bind/backends: typo fix (#25549)
ucwong Aug 19, 2022
656dc8c
eth, les: unlock downloader peerSet if there's an error (#25546)
jtraglia Aug 19, 2022
9762ddf
cmd/geth: parse uint64 value with ParseUint instead of Atoi (#25545)
jtraglia Aug 19, 2022
77308cd
consensus/beacon: check ttd reached on pos blocks (#25552)
MariusVanDerWijden Aug 19, 2022
36874b6
eth/filters: add global block logs cache (#25459)
s1na Aug 19, 2022
0865880
accounts/abi: fix set function (#25477)
zhiqiangxu Aug 19, 2022
ac7ad81
internal/ethapi: fix build regression (#25555)
fjl Aug 19, 2022
0ce494b
eth/fetcher: don't spend too much time on transaction inclusion (#25524)
holiman Aug 19, 2022
02418c2
Revert "eth/fetcher: don't spend too much time on transaction inclusi…
karalabe Aug 22, 2022
395f3d4
eth/catalyst: warn less frequently if no beacon client is available (…
karalabe Aug 22, 2022
2de49b0
params: release go-ethereum v1.10.22
fjl Aug 22, 2022
6d711f0
params: begin v1.10.23 release cycle
fjl Aug 22, 2022
81bd998
core, eth/downloader: handle spurious junk bodies from racey rollback…
karalabe Aug 23, 2022
5758d1f
core/state, trie: fix trie flush order for proper pruning
karalabe Aug 23, 2022
45a660a
consensus/beacon: don't ignore errors
holiman Aug 23, 2022
9ed10b9
Merge pull request #25581 from karalabe/triedb-fix-flush-order
karalabe Aug 23, 2022
4c114af
Merge pull request #25582 from holiman/err_handling
karalabe Aug 23, 2022
d901d85
params: release Geth v1.10.23
karalabe Aug 24, 2022
108f6cb
Merge remote-tracking branch 'foundation/release/1.10' into merge/fou…
meowsbits Aug 31, 2022
99a0d8b
params/types/goethereum: add missing TerminalTotalDifficultyPassed to…
meowsbits Aug 31, 2022
b4f8fcf
eth/fetcher: fixup missing import, genesis typing
meowsbits Aug 31, 2022
1d0fa92
core/rawdb: use unexported configKey variable
meowsbits Aug 31, 2022
822b33e
core,params/types/coregeth,params/types/ctypes,params/types/goethereu…
meowsbits Aug 31, 2022
1f577fd
params/types/parity: squashme
meowsbits Aug 31, 2022
9f71b42
core: function rawdb.ReadGenesisState does not exist
meowsbits Aug 31, 2022
c1402ed
eth/filters: m.backend.SubscribeChainSideEvent undefined
meowsbits Aug 31, 2022
6584d11
params/types/genesisT: fix missing TerminalTotalDifficultyPassed impl…
meowsbits Aug 31, 2022
5796612
eth/filters: cannot use m.chainSideCh (variable of type chan core.Cha…
meowsbits Aug 31, 2022
a4ee164
internal/ethapi: b.ChainConfig().IsLondon undefined
meowsbits Aug 31, 2022
2e38d35
eth: h.chain.Config().TerminalTotalDifficulty undefined
meowsbits Aug 31, 2022
64f8e60
eth: cs.handler.chain.Config().TerminalTotalDifficultyPassed undefined
meowsbits Aug 31, 2022
bea8f88
core,core/rawdb,params/types/genesisT: genesis alloc methods DeriveHa…
meowsbits Aug 31, 2022
39557ad
core,params/types/genesisT: maybe fixup genesis alloc deriveHash,flus…
meowsbits Aug 31, 2022
a6e2b0f
eth/catalyst: api.eth.BlockChain().Config().TerminalTotalDifficulty u…
meowsbits Aug 31, 2022
4395833
params/vars: add eth/67 as primary supported protocol version
meowsbits Aug 31, 2022
89ac72c
core: alloc.DeriveHash undefined
meowsbits Aug 31, 2022
049e793
eth/downloader: undefined: core.Genesis
meowsbits Aug 31, 2022
9c04dd0
eth/filters: undefined: core.Genesis
meowsbits Aug 31, 2022
55dbfdb
eth/downloader: undefined: core.Genesis
meowsbits Aug 31, 2022
9b551be
eth/filters: undefined: deadline
meowsbits Aug 31, 2022
adcde55
internal/ethapi: params.ChainConfig -> ctypes.ChainConfigurator
meowsbits Aug 31, 2022
257ad26
les: undefined: rawdb
meowsbits Aug 31, 2022
5eb2bfe
les/downloader: undefined: core.Genesis
meowsbits Aug 31, 2022
5f78fc3
les/fetcher: undefined: params.InitialBaseFee
meowsbits Aug 31, 2022
4e266b2
eth/tracers/native: cannot use NewCallParityTracer; wrong type
meowsbits Aug 31, 2022
0cf364f
eth/tracers/internal/tracetest: not enough arguments in call to trace…
meowsbits Aug 31, 2022
7e8ce02
ethclient: fix TestRPCDiscover, had missing filter system items
meowsbits Sep 1, 2022
05c927d
ethclient: refactor test to allow multiple response doc checks
meowsbits Sep 1, 2022
cd1f516
ethclient: fix 'no newSideHead subscription' error
meowsbits Sep 1, 2022
a9be251
tests: configure a fallback zero-value gasprice for test tx
meowsbits Sep 1, 2022
b5a9639
tests: squashme
meowsbits Sep 1, 2022
5268d78
tests: ETC configs use chainid=1 to avoid conflicts with inherited tests
meowsbits Sep 1, 2022
9549370
tests: drop testdata back to ethereum/go-ethereum v1.10.23 release ta…
meowsbits Sep 1, 2022
eecedbc
params/coregeth.json.d,tests: run 'make tests-generate-difficulty'
meowsbits Sep 1, 2022
20fd628
tests: guard against OoB errors when hacking RunNoVerify
meowsbits Sep 1, 2022
e62a985
tests: generate tests
meowsbits Sep 1, 2022
a177af0
tests: omit empty expectException vals
meowsbits Sep 2, 2022
cf4ddff
tests: reset testdata to v10.4 (latest release tag)
meowsbits Sep 2, 2022
82ad000
tests: translate unsupported tx type error to TR_TypeNotSupported
meowsbits Sep 2, 2022
3af5228
tests: generate tests
meowsbits Sep 2, 2022
2dce43c
tests: revert tests to v10.4
meowsbits Sep 2, 2022
3895c57
tests: use default basefee for default gasprice (0x0a)
meowsbits Sep 2, 2022
dcd2bb5
generate tests
meowsbits Sep 2, 2022
74f9702
tests: write only generated tests, and write to new filepath
meowsbits Sep 2, 2022
f4059dd
tests: reset testdata to v10.4
meowsbits Sep 2, 2022
fc62cd2
tests: add logic for writing tests in original format, new dir
meowsbits Sep 4, 2022
c385415
tests: realizing that generating difficulty tests does nothing
meowsbits Sep 4, 2022
872b3b7
tests: difficulty-tests generator revised to generate tests from scratch
meowsbits Sep 5, 2022
633f4e7
params/coregeth.json.d,tests: difficulty test generator work
meowsbits Sep 6, 2022
f1eaa8f
tests: temporarily comment NDJSON test
meowsbits Sep 6, 2022
12f2cdd
tests: omitempty max gas values
meowsbits Sep 6, 2022
fdc1723
tests: add error check for false negatives
meowsbits Sep 6, 2022
e587101
tests: raise error returned by core.ApplyMessage
meowsbits Sep 6, 2022
9770c67
tests: method checks error expectations for state tests
meowsbits Sep 6, 2022
248d864
tests: run 'go generate', fixing up filler logic
meowsbits Sep 13, 2022
1501a9b
tests: add missing fields to state test types
meowsbits Sep 13, 2022
e7dfc33
tests: write configs for state tests
meowsbits Sep 13, 2022
3995a32
tests: write state configs to sub-parent directory (test type dir)
meowsbits Sep 13, 2022
00cd948
tests: only WRITE config file if it does not already exist
meowsbits Sep 13, 2022
d0dc349
graphql: return correct logs for tx (#25612)
s1na Aug 31, 2022
3b41be6
graphql: fixes missing tx logs (#25745)
s1na Sep 13, 2022
972007a
Release Geth v1.10.24
karalabe Sep 14, 2022
ab16c56
.gitmodules,tests: add tests-etc git submodule at tests/testdata-etc
meowsbits Sep 14, 2022
195f317
tests: generate all tests, bump etclabscore/tests-etc submodule
meowsbits Sep 14, 2022
e84e7fe
tests: add filled/generated ETC test dirs to test runner targets
meowsbits Sep 14, 2022
473f245
Makefile: manage generated vs. canonical tests (copy from generated p…
meowsbits Sep 14, 2022
8f61fc8
params: set TerminalTotalDifficultyPassed to true (#25769)
MariusVanDerWijden Sep 15, 2022
69568c5
params: release Geth v1.10.25
karalabe Sep 15, 2022
4d59a86
Makefile,tests: hacky patch for filling DifficultyTests (re Erigon su…
meowsbits Sep 21, 2022
cf6e59a
tests: add filler/generator logic to omit baseFee from env
meowsbits Sep 21, 2022
d64998c
tests: add filler/generator logic to omit baseFee from env
meowsbits Sep 21, 2022
809cd77
tests: filled testdata-etc
meowsbits Sep 21, 2022
6992a19
cmd/evm: revertme?:unrelated add -fork flag to cmd/evm statetest subc…
meowsbits Sep 23, 2022
8738633
tests: remove commented test for NDJSON
meowsbits Sep 26, 2022
869de6c
core/types,tests: implement new difficulty test schema
meowsbits Sep 26, 2022
72e703d
Makefile,tests: remove old difficulty test generator
meowsbits Sep 27, 2022
00f5de2
tests: tidy up difficulty test generator, include filling info
meowsbits Sep 27, 2022
e7f7eff
tests: generate difficulty tests, bumping submodule
meowsbits Sep 27, 2022
39015d0
tests: tiny refactoring/code quality improvements
meowsbits Sep 27, 2022
b90faa1
:hammer:
meowsbits Oct 5, 2022
9ab5f4d
tests: bump filled difficulty tests
meowsbits Oct 5, 2022
4cf5b2b
tests: type stPre to remove omitempty tags from required state alloc …
meowsbits Oct 5, 2022
4b4e520
tests: bump filled state tests
meowsbits Oct 5, 2022
83fb902
core: maybe fix panic
meowsbits Oct 17, 2022
7497d46
:hammer:
meowsbits Oct 24, 2022
d390462
tests: change ETC test fork configs to chainid=61 (not =1)
meowsbits Oct 25, 2022
701eeb8
tests: generated state tests
meowsbits Oct 28, 2022
85e469f
eth/protocols/snap: fix problems due to idle-but-busy peers (#25651)
holiman Aug 31, 2022
937ea49
eth/protocols/snap: throttle trie heal requests when peers DoS us (#2…
karalabe Sep 9, 2022
a32e69a
trie: check childrens' existence concurrently for snap heal (#25694)
karalabe Sep 6, 2022
99bbb33
eth: fix a rare datarace on CHT challenge reply / shutdown (#25831)
karalabe Sep 20, 2022
27600a5
eth/filters: change filter block to be by-ref (#26054)
holiman Oct 27, 2022
211dbb7
rpc: handle wrong HTTP batch response length (#26064)
jmank88 Nov 2, 2022
e5eb32a
params: release geth v1.10.26 stable
fjl Nov 3, 2022
bf0a7d7
add custom interpreter to t8n evm config
theshoe1029 Nov 6, 2022
7aa2b85
cmd/evm: use utils.EVMInterpreterFlag for all evm tool apps
meowsbits Nov 7, 2022
2d01869
cmd/evm/internal/t8ntool,cmd/evm: make sure the vm inits the external…
meowsbits Nov 7, 2022
ad28143
cmd/utils: initialize external evms if configured for geth
meowsbits Nov 7, 2022
429275b
core/vm,go.mod,go.sum: bump ethereum/evmc version: v7.5.0 -> v10.0.0
meowsbits Nov 7, 2022
191325a
core/vm: implement hostContext.AccessAccount,.AccessStorage
meowsbits Nov 7, 2022
1f6cc75
core/vm: update evmc.Storage* vars to new counterparts
meowsbits Nov 7, 2022
57109a9
core/vm: evmc.TxContext no longer has Difficulty field
meowsbits Nov 7, 2022
097e0ef
core/vm: return evmc.Berlin in case EIP2565 (as feature indicator) is…
meowsbits Nov 7, 2022
eddf072
core/vm: another syntax improvement for a comment
meowsbits Nov 7, 2022
ea4f934
core/vm: update hostContext.Selfdestruct to return bool
meowsbits Nov 7, 2022
3835269
core/vm: add gasRefund return value to hostContext.Call signature
meowsbits Nov 7, 2022
b2c886b
core/vm: bump getRevision switch to support London
meowsbits Nov 7, 2022
d42b9b2
core/vm: implement codeAddress argument for hostContext.Call sig
meowsbits Nov 7, 2022
c051c24
build: bump evmone version: v0.5.0 -> v0.9.1
meowsbits Nov 7, 2022
2a9508c
Makefile,build: remove SSVM interpreter; project no longer exists
meowsbits Nov 7, 2022
273a566
build: bump hera version: v0.3.2 -> v0.6.0
meowsbits Nov 7, 2022
7d9c444
Makefile,build: remove aleth interpreter
meowsbits Nov 7, 2022
194f06f
.github/workflows: fixing c++/cmake issues w/r/t evmone, evmc tests
meowsbits Nov 8, 2022
9363a2a
core/vm: use evmc.Revision values for logical conditions
meowsbits Nov 9, 2022
95daecd
Merge branch 'evmc-v10-fix-cmake' into evmc-v10-isaac
meowsbits Nov 9, 2022
6e1a0dd
.github/workflows: rename actions job to reflect not-just-EWASM
meowsbits Nov 9, 2022
c67278b
core/vm: fixup comment
meowsbits Nov 9, 2022
98e2d49
core/vm: remove extra condition EIP2200 for Istanbul revision
meowsbits Nov 9, 2022
c984765
core/vm: implement tx BaseFee and PrevRandao in case London enabled
meowsbits Nov 9, 2022
475e1e4
core/vm: assign the refund value based on London rules... ?
meowsbits Nov 9, 2022
a66e4ce
.github/workflows: fix directory path for git safe config for submodules
meowsbits Nov 9, 2022
1eec2d8
cmake.sh: remove anachronstic development cmake.sh installation scrip…
meowsbits Nov 9, 2022
d7c936d
Merge branch 'evmc-v10-fix-cmake' into evmc-v10-isaac
meowsbits Nov 10, 2022
8272cb8
Merge branch 'evmc-v10-isaac' into merge/foundation-release/1.10.23-t…
meowsbits Nov 10, 2022
3588f61
eth/ethconfig: run 'go generate ./...'
meowsbits Nov 11, 2022
098e8f0
core,params/types/genesisT: move 'go generate' decl to appropriate pa…
meowsbits Nov 11, 2022
2373279
params/types/genesisT: go generate, change is inoperative except deps…
meowsbits Nov 11, 2022
03efbe9
cmd/evm/internal/t8ntool: add missing BaseFee field to ExecutionResul…
meowsbits Nov 11, 2022
1306be8
cmd/evm/internal/t8ntool,cmd/evm: add missing EWASM interpreter flag …
meowsbits Nov 11, 2022
51fc880
cmd/evm/internal/t8ntool: add missing BaseFee field to ExecutionResul…
meowsbits Nov 11, 2022
f686f2f
cmd/evm/internal/t8ntool,cmd/evm: add missing EWASM interpreter flag …
meowsbits Nov 11, 2022
4a4a307
tests: DO NOT SKIP tests for Berlin,London when using -evmc.vm/wasm
meowsbits Nov 11, 2022
75da3ca
core/vm: reimplement evmc.Storage* assignment matrix
meowsbits Nov 11, 2022
88307b1
Merge branch 'evmc-v10-isaac' into merge/foundation-release/1.10.23-t…
meowsbits Nov 11, 2022
fbef1fb
core/vm: still-failing attempt to install EVMC with revisions
meowsbits Nov 11, 2022
e11ae45
core/vm: refactor/rewrite sstore handler for evmc host
meowsbits Nov 11, 2022
c1a614e
Merge branch 'master' into merge/foundation-release/1.10.23-tests-gen…
meowsbits Dec 6, 2022
dcc3ef2
tests: [fixup/post-merge] s/ioutil.WriteFile/os.WriteFile/g
meowsbits Dec 6, 2022
77496f0
params: ExampleAllocPrint_Mainnet refers to unknown identifier: Alloc…
meowsbits Dec 6, 2022
6604b71
tests: (was empty-branch) enable skip evmc tests at Berlin,London
meowsbits Dec 6, 2022
f443631
tests: [lint/deadcode] test dirs defined but unused
meowsbits Dec 6, 2022
7ce7c47
tests: [lint] achieve perfection
meowsbits Dec 6, 2022
12f3472
cmd/evm/testdata/13,cmd/evm/testdata/14,cmd/evm/testdata/19,cmd/evm/t…
meowsbits Dec 6, 2022
86fc9cc
cmd/geth: bump geth console test timeout to 20s
meowsbits Dec 6, 2022
5e3c673
tests: re-enable legacyStateTestDir
meowsbits Dec 6, 2022
14b5a21
.gitmodules,tests: move ETC testdata submodule to winsvega's ETC tests
meowsbits Dec 9, 2022
79d4135
tests: ensure context.Difficulty is assigned
meowsbits Dec 12, 2022
0c9830a
eth/filters,eth,eth/protocols/snap,graphql,params,rpc,trie: Merge bra…
ziogaschr Dec 12, 2022
4f4ab7f
graphql: graphql: s/params.vars for InitialBaseFee
ziogaschr Dec 12, 2022
44581a0
cmd/geth: cmd/geth: geth-test ipc was using a too-long (>108 char) pa…
ziogaschr Dec 12, 2022
012aafa
tests: update tests (incl. s/Merge/Merged/g fix), skip EOF1 tests
meowsbits Dec 12, 2022
2e13b82
tests: re-enable ETC legacy tests
meowsbits Dec 12, 2022
cfed3ef
tests: .github/workflows,.gitmodules,Makefile,build,cmd/echainspec,cm…
ziogaschr Dec 14, 2022
cc2883f
params/types/coregeth,tests: fix GrayGlacier difficulty test
meowsbits Dec 19, 2022
ca284eb
Makefile: problem: tests are timing out on Github CI
meowsbits Dec 19, 2022
2ba4218
build: problem: lint step timed out on Github CI
meowsbits Dec 19, 2022
5150515
.gitmodules: move ETH xclient tests submodule back to ethereum/tests
meowsbits Dec 19, 2022
460091f
.gitmodules: .gitmodules: set shallow mode for tests-etc submodule
ziogaschr Dec 20, 2022
ca5dd04
core/state: core/state: remove comment
ziogaschr Dec 20, 2022
7c9fc18
core/vm: core/vm: remove comment
ziogaschr Dec 20, 2022
fda1e51
tests: remove dead code (state,diff mgen artifacts)
meowsbits Dec 20, 2022
cc9b4ee
.github/workflows: add check for “go generate” diff
ziogaschr Dec 20, 2022
fb25c30
.github/workflows: .github/workflows: no need for submodules for go:g…
ziogaschr Dec 20, 2022
abc814b
.github/workflows: .github/workflows: install devtools for “go:genera…
ziogaschr Dec 20, 2022
20bbcab
.github/workflows: use solc version “0.6.12”
ziogaschr Dec 20, 2022
6e567fa
.github/workflows: use solc version 0.6.12
ziogaschr Dec 20, 2022
df01b67
.github/workflows: remove go-generate-check unneeded rm
ziogaschr Dec 20, 2022
5161c8d
contracts/checkpointoracle,contracts/checkpointoracle/contract,params…
meowsbits Dec 21, 2022
4b2cf83
params/types/genesisT: edit the document which shall not be edited (a…
meowsbits Jan 10, 2023
8675b2a
cmd/devp2p/internal/ethtest: these tests fails spuriously; solve with…
meowsbits Jan 10, 2023
3539eb3
core/vm: checkout master@b909e85
meowsbits Jan 10, 2023
e8d7f23
tests: skip fork Merged for EVMC test suites
meowsbits Jan 10, 2023
be95e71
core/vm,go.mod,go.sum: revert ethereum/evmc v10 -> v7
meowsbits Jan 10, 2023
7273876
cmd/devp2p/internal/ethtest: register runGeth fn as a t.Helper
meowsbits Jan 10, 2023
4d572a8
.github/workflows: .github/workflows: add whitelisted generated files…
ziogaschr Jan 10, 2023
0e79bc9
.github/workflows: .github/workflows: fix go-generate-check issues
ziogaschr Jan 11, 2023
c4b7520
.github/workflows: .github/workflows: .github/workflows: fix emitting…
ziogaschr Jan 11, 2023
94ee05f
.github/workflows: .github/workflows: use [email protected] in go-generate-c…
ziogaschr Jan 11, 2023
2697490
.github/workflows: refactor exceptions and ignores to env vars
meowsbits Jan 11, 2023
6b9997e
Merge branch 'merge/foundation-release/1.10.26' of meowsbits.github.c…
whilei Jan 11, 2023
f195f35
.github/workflows: .github/workflows: fix env vars list parsing in go…
ziogaschr Jan 12, 2023
633eae8
Merge pull request #512 from etclabscore/merge/foundation-release/1.1…
meowsbits Jan 12, 2023
9a48b9c
.github/workflows: .github/workflows: .github/workflows: .github/work…
ziogaschr Jan 13, 2023
92d5b25
Merge pull request #510 from etclabscore/merge/foundation-release/1.1…
meowsbits Jan 19, 2023
731dec2
build: revert EVMC-oriented dependency script to master versions
meowsbits Jan 19, 2023
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
26 changes: 24 additions & 2 deletions .github/workflows/evmc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ on:

jobs:

build-ewasm:
name: EWASM State Tests
build-evmc:
name: EVMC/EVM+EWASM State Tests
runs-on: ubuntu-latest
steps:

Expand All @@ -22,9 +22,31 @@ jobs:
- name: Check out code into the Go module directory
uses: actions/checkout@v2

- name: Install cmake
run: |
sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt-get install -y cmake
cmake --version

- name: Install necessary GLIBCXX version
run: |
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
sudo apt-get update -y
sudo apt-get install -y gcc-9 g++-9
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90
g++ --version
gcc --version
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX

- name: Get dependencies
run: |
go get -v -t -d ./...
git config --global --add safe.directory $(pwd)/tests/evm-benchmarks
git config --global --add safe.directory $(pwd)/tests/testdata
git config --global --add safe.directory $(pwd)/tests/testdata/LegacyTests
git submodule update --init --recursive
export GOBIN=${HOME}/go/bin
mkdir -p "${GOBIN}"
Expand Down
67 changes: 67 additions & 0 deletions .github/workflows/go-generate-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Developer helper
on: pull_request
env:
# GENERATE_EXCEPTIONS are exceptions made to the 'go generate' command.
# These patterns are matched (negatively) against 'go list' output.
#
# - trezor: Ignore generating trezor package based on this comment:
# https://github.com/ethereum/go-ethereum/blob/master/accounts/usbwallet/trezor/trezor.go#L21-L43
GENERATE_EXCEPTIONS: |
trezor
jobs:
go-generate-check:
name: Check if "go generate" has been run
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.x
id: go
uses: actions/setup-go@v2
with:
go-version: ^1.16
- name: Check out code into the Go module directory
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install deps
id: install-deps
run: |
SOLC_BIN=solc-linux-amd64-v0.6.0+commit.26b70077
curl -OL https://binaries.soliditylang.org/linux-amd64/$SOLC_BIN
sudo mv $SOLC_BIN /usr/bin/solc
sudo chmod +x /usr/bin/solc

shell: bash
- name: Install devtools
id: install-devtools
run: make devtools
- name: Run go:generate
id: go-generate
run: |
list="$(go list ./...)"
for pattern in ${GENERATE_EXCEPTIONS[@]}; do
list="$(grep -v "$pattern" <<< "$list")"
done
go generate "$list"
- name: Revert custom generated files modifications before comparing them
id: revert-custom-generated-modifications
run: |
# NOTE to developers checking what triggered this alert.
# This script is meant to alert you if some files have to be regenerated using `go generate`.
# If this happens, you have to run `go generate ./...` and then check the below commits that are being reverted and reapply them, after considering if they are needed.

git config user.name github-actions
git config user.email [email protected]

# Intentionally revert this commit which has a custom modification to the genesis unmarshaling,
# with regards reading different genesis formats origniating from different clients
# This way, this script can alert us on any code changes that have to be applied on if file gets changed.
git revert --no-edit 4b2cf83737ffe7c46c334a11414d151de049e0b3

- name: Check for modified files
id: git-check
run: |
if ! git diff-index --quiet HEAD --; then
echo "🔴 ERROR: There are modified files after running 'go generate'"
git status
exit 1
fi
6 changes: 5 additions & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
[submodule "tests"]
path = tests/testdata
url = https://github.com/etclabscore/tests
url = https://github.com/ethereum/tests
shallow = true
[submodule "evm-benchmarks"]
path = tests/evm-benchmarks
url = https://github.com/ipsilon/evm-benchmarks
shallow = true
[submodule "tests-etc"]
path = tests/testdata-etc
url = https://github.com/etclabscore/tests
shallow = true
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ COPY go.sum /go-ethereum/
RUN cd /go-ethereum && go mod download

ADD . /go-ethereum
RUN cd /go-ethereum && go run build/ci.go install ./cmd/geth
RUN cd /go-ethereum && go run build/ci.go install -static ./cmd/geth

# Pull Geth into a second stage deploy alpine container
FROM alpine:latest
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile.alltools
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ COPY go.sum /go-ethereum/
RUN cd /go-ethereum && go mod download

ADD . /go-ethereum
RUN cd /go-ethereum && go run build/ci.go install
RUN cd /go-ethereum && go run build/ci.go install -static

# Pull all binaries into a second stage deploy alpine container
FROM alpine:latest
Expand Down
26 changes: 11 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ ios:
@echo "Import \"$(GOBIN)/Geth.framework\" to use the library."

test:
$(GORUN) build/ci.go test
$(GORUN) build/ci.go test -timeout 20m

# DEPRECATED.
# No attempt will be made after the Istanbul fork to maintain
Expand All @@ -48,24 +48,16 @@ test-coregeth: \
hera:
./build/hera.sh

ssvm:
./build/ssvm.sh

evmone:
./build/evmone.sh

aleth-interpreter:
./build/aleth-interpreter.sh

# Test EVMC support against various external interpreters.
test-evmc: hera ssvm evmone aleth-interpreter
test-evmc: hera evmone
go test -count 1 ./tests -run TestState -evmc.ewasm=$(ROOT_DIR)/build/_workspace/hera/build/src/libhera.so
go test -count 1 ./tests -run TestState -evmc.ewasm=$(ROOT_DIR)/build/_workspace/SSVM/build/tools/ssvm-evmc/libssvmEVMC.so
go test -count 1 ./tests -run TestState -evmc.evm=$(ROOT_DIR)/build/_workspace/evmone/lib/libevmone.so
go test -count 1 ./tests -run TestState -evmc.evm=$(ROOT_DIR)/build/_workspace/aleth/lib/libaleth-interpreter.so

clean-evmc:
rm -rf ./build/_workspace/hera ./build/_workspace/SSVM ./build/_workspace/evmone ./build/_workspace/aleth
rm -rf ./build/_workspace/hera ./build/_workspace/evmone

test-coregeth-features: \
test-coregeth-features-coregeth \
Expand Down Expand Up @@ -102,15 +94,19 @@ tests-generate-state: ## Generate state tests.
env COREGETH_TESTS_GENERATE_STATE_TESTS=on \
env COREGETH_TESTS_CHAINCONFIG_FEATURE_EQUIVALENCE_COREGETH=on \
go test -p 1 -v -timeout 60m ./tests -run TestGenStateAll
rm -rf ./tests/testdata-etc/GeneralStateTests
mv ./tests/testdata_generated/GeneralStateTests ./tests/testdata-etc/GeneralStateTests
rm -rf ./tests/testdata-etc/LegacyTests
mv ./tests/testdata_generated/LegacyTests ./tests/testdata-etc/LegacyTests
rm -rf ./tests/testdata_generated

tests-generate-difficulty: ## Generate difficulty tests.
@echo "Generating difficulty tests configs."
env COREGETH_TESTS_GENERATE_DIFFICULTY_TESTS_CONFIGS=on \
go run build/ci.go test -v -timeout 10m ./tests -run TestDifficultyTestConfigGen

@echo "Generating difficulty tests."
env COREGETH_TESTS_GENERATE_DIFFICULTY_TESTS=on \
go run build/ci.go test -v -timeout 10m ./tests -run TestDifficultyGen
rm -rf ./tests/testdata-etc/DifficultyTests
mv ./tests/testdata_generated/DifficultyTests ./tests/testdata-etc/DifficultyTests
rm -rf ./tests/testdata_generated

lint: ## Run linters.
$(GORUN) build/ci.go lint
Expand Down
2 changes: 1 addition & 1 deletion accounts/abi/abi.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ func (abi ABI) getArguments(name string, data []byte) (Arguments, error) {
args = event.Inputs
}
if args == nil {
return nil, errors.New("abi: could not locate named method or event")
return nil, fmt.Errorf("abi: could not locate named method or event: %s", name)
}
return args, nil
}
Expand Down
33 changes: 14 additions & 19 deletions accounts/abi/bind/backends/simulated.go
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,8 @@ type SimulatedBackend struct {
pendingState *state.StateDB // Currently pending state that will be the active on request
pendingReceipts types.Receipts // Currently receipts for the pending block

events *filters.EventSystem // Event system for filtering log events live
events *filters.EventSystem // for filtering log events live
filterSystem *filters.FilterSystem // for filtering database logs

config ctypes.ChainConfigurator
}
Expand All @@ -89,7 +90,11 @@ func NewSimulatedBackendWithDatabase(database ethdb.Database, alloc genesisT.Gen
blockchain: blockchain,
config: genesis.Config,
}
backend.events = filters.NewEventSystem(&filterBackend{database, blockchain, backend}, false)

filterBackend := &filterBackend{database, blockchain, backend}
backend.filterSystem = filters.NewFilterSystem(filterBackend, filters.Config{})
backend.events = filters.NewEventSystem(backend.filterSystem, false)

backend.rollback(blockchain.CurrentBlock())
return backend
}
Expand Down Expand Up @@ -611,7 +616,7 @@ func (b *SimulatedBackend) callContract(ctx context.Context, call ethereum.CallM
// User specified the legacy gas field, convert to 1559 gas typing
call.GasFeeCap, call.GasTipCap = call.GasPrice, call.GasPrice
} else {
// User specified 1559 gas feilds (or none), use those
// User specified 1559 gas fields (or none), use those
if call.GasFeeCap == nil {
call.GasFeeCap = new(big.Int)
}
Expand Down Expand Up @@ -691,7 +696,7 @@ func (b *SimulatedBackend) FilterLogs(ctx context.Context, query ethereum.Filter
var filter *filters.Filter
if query.BlockHash != nil {
// Block filter requested, construct a single-shot filter
filter = filters.NewBlockFilter(&filterBackend{b.database, b.blockchain, b}, *query.BlockHash, query.Addresses, query.Topics)
filter = b.filterSystem.NewBlockFilter(*query.BlockHash, query.Addresses, query.Topics)
} else {
// Initialize unset filter boundaries to run from genesis to chain head
from := int64(0)
Expand All @@ -703,7 +708,7 @@ func (b *SimulatedBackend) FilterLogs(ctx context.Context, query ethereum.Filter
to = query.ToBlock.Int64()
}
// Construct the range filter
filter = filters.NewRangeFilter(&filterBackend{b.database, b.blockchain, b}, from, to, query.Addresses, query.Topics)
filter = b.filterSystem.NewRangeFilter(from, to, query.Addresses, query.Topics)
}
// Run the filter and return all the logs
logs, err := filter.Logs(ctx)
Expand Down Expand Up @@ -856,7 +861,8 @@ type filterBackend struct {
backend *SimulatedBackend
}

func (fb *filterBackend) ChainDb() ethdb.Database { return fb.db }
func (fb *filterBackend) ChainDb() ethdb.Database { return fb.db }

func (fb *filterBackend) EventMux() *event.TypeMux { panic("not supported") }

func (fb *filterBackend) HeaderByNumber(ctx context.Context, block rpc.BlockNumber) (*types.Header, error) {
Expand All @@ -882,19 +888,8 @@ func (fb *filterBackend) GetReceipts(ctx context.Context, hash common.Hash) (typ
return rawdb.ReadReceipts(fb.db, hash, *number, fb.bc.Config()), nil
}

func (fb *filterBackend) GetLogs(ctx context.Context, hash common.Hash) ([][]*types.Log, error) {
number := rawdb.ReadHeaderNumber(fb.db, hash)
if number == nil {
return nil, nil
}
receipts := rawdb.ReadReceipts(fb.db, hash, *number, fb.bc.Config())
if receipts == nil {
return nil, nil
}
logs := make([][]*types.Log, len(receipts))
for i, receipt := range receipts {
logs[i] = receipt.Logs
}
func (fb *filterBackend) GetLogs(ctx context.Context, hash common.Hash, number uint64) ([][]*types.Log, error) {
logs := rawdb.ReadLogs(fb.db, hash, number, fb.bc.Config())
return logs, nil
}

Expand Down
2 changes: 1 addition & 1 deletion accounts/abi/reflect.go
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ func mustArrayToByteSlice(value reflect.Value) reflect.Value {
func set(dst, src reflect.Value) error {
dstType, srcType := dst.Type(), src.Type()
switch {
case dstType.Kind() == reflect.Interface && dst.Elem().IsValid():
case dstType.Kind() == reflect.Interface && dst.Elem().IsValid() && (dst.Elem().Type().Kind() == reflect.Ptr || dst.Elem().CanSet()):
return set(dst.Elem(), src)
case dstType.Kind() == reflect.Ptr && dstType.Elem() != reflect.TypeOf(big.Int{}):
return set(dst.Elem(), src)
Expand Down
2 changes: 1 addition & 1 deletion accounts/abi/reflect_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ type reflectTest struct {

var reflectTests = []reflectTest{
{
name: "OneToOneCorrespondance",
name: "OneToOneCorrespondence",
args: []string{"fieldA"},
struc: struct {
FieldA int `abi:"fieldA"`
Expand Down
5 changes: 5 additions & 0 deletions accounts/abi/unpack_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -352,6 +352,11 @@ func TestMethodMultiReturn(t *testing.T) {
&[]interface{}{&expected.Int, &expected.String},
"",
"Can unpack into a slice",
}, {
&[]interface{}{&bigint, ""},
&[]interface{}{&expected.Int, expected.String},
"",
"Can unpack into a slice without indirection",
}, {
&[2]interface{}{&bigint, new(string)},
&[2]interface{}{&expected.Int, &expected.String},
Expand Down
2 changes: 1 addition & 1 deletion accounts/keystore/account_cache_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ func waitForAccounts(wantAccounts []accounts.Account, ks *KeyStore) error {
func TestUpdatedKeyfileContents(t *testing.T) {
t.Parallel()

// Create a temporary kesytore to test with
// Create a temporary keystore to test with
rand.Seed(time.Now().UnixNano())
dir := filepath.Join(os.TempDir(), fmt.Sprintf("eth-keystore-updatedkeyfilecontents-test-%d-%d", os.Getpid(), rand.Int()))
ks := NewKeyStore(dir, LightScryptN, LightScryptP)
Expand Down
4 changes: 2 additions & 2 deletions accounts/keystore/file_cache.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ type fileCache struct {
func (fc *fileCache) scan(keyDir string) (mapset.Set, mapset.Set, mapset.Set, error) {
t0 := time.Now()

// List all the failes from the keystore folder
// List all the files from the keystore folder
files, err := os.ReadDir(keyDir)
if err != nil {
return nil, nil, nil, err
Expand All @@ -61,7 +61,7 @@ func (fc *fileCache) scan(keyDir string) (mapset.Set, mapset.Set, mapset.Set, er
log.Trace("Ignoring file on account scan", "path", path)
continue
}
// Gather the set of all and fresly modified files
// Gather the set of all and freshly modified files
all.Add(path)

info, err := fi.Info()
Expand Down
2 changes: 1 addition & 1 deletion accounts/keystore/keystore_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ func TestSignRace(t *testing.T) {
// Tests that the wallet notifier loop starts and stops correctly based on the
// addition and removal of wallet event subscriptions.
func TestWalletNotifierLifecycle(t *testing.T) {
// Create a temporary kesytore to test with
// Create a temporary keystore to test with
_, ks := tmpKeyStore(t, false)

// Ensure that the notification updater is not running yet
Expand Down
4 changes: 2 additions & 2 deletions accounts/usbwallet/trezor.go
Original file line number Diff line number Diff line change
Expand Up @@ -196,10 +196,10 @@ func (w *trezorDriver) trezorDerive(derivationPath []uint32) (common.Address, er
if _, err := w.trezorExchange(&trezor.EthereumGetAddress{AddressN: derivationPath}, address); err != nil {
return common.Address{}, err
}
if addr := address.GetAddressBin(); len(addr) > 0 { // Older firmwares use binary fomats
if addr := address.GetAddressBin(); len(addr) > 0 { // Older firmwares use binary formats
return common.BytesToAddress(addr), nil
}
if addr := address.GetAddressHex(); len(addr) > 0 { // Newer firmwares use hexadecimal fomats
if addr := address.GetAddressHex(); len(addr) > 0 { // Newer firmwares use hexadecimal formats
return common.HexToAddress(addr), nil
}
return common.Address{}, errors.New("missing derived address")
Expand Down
2 changes: 1 addition & 1 deletion accounts/usbwallet/wallet.go
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ func (w *wallet) selfDerive() {
// of legacy-ledger, the first account on the legacy-path will
// be shown to the user, even if we don't actively track it
if i < len(nextAddrs)-1 {
w.log.Info("Skipping trakcking first account on legacy path, use personal.deriveAccount(<url>,<path>, false) to track",
w.log.Info("Skipping tracking first account on legacy path, use personal.deriveAccount(<url>,<path>, false) to track",
"path", path, "address", nextAddrs[i])
break
}
Expand Down
14 changes: 0 additions & 14 deletions build/aleth-interpreter.sh

This file was deleted.

Loading