Skip to content

Commit 6bd7e08

Browse files
authored
Merge branch 'master' into selfdestruct_accounting
2 parents 374fc17 + ea3be60 commit 6bd7e08

File tree

359 files changed

+17847
-13327
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

359 files changed

+17847
-13327
lines changed

.github/CODEOWNERS

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,18 @@
44
accounts/usbwallet @karalabe
55
accounts/scwallet @gballet
66
accounts/abi @gballet @MariusVanDerWijden
7+
beacon/engine @lightclient
78
cmd/clef @holiman
9+
cmd/evm @holiman @MariusVanDerWijden @lightclient
810
consensus @karalabe
911
core/ @karalabe @holiman @rjl493456442
1012
eth/ @karalabe @holiman @rjl493456442
11-
eth/catalyst/ @gballet
13+
eth/catalyst/ @gballet @lightclient
1214
eth/tracers/ @s1na
15+
core/tracing/ @s1na
1316
graphql/ @s1na
17+
internal/ethapi @lightclient
18+
internal/era @lightclient
1419
les/ @zsfelfoldi @rjl493456442
1520
light/ @zsfelfoldi @rjl493456442
1621
node/ @fjl

.github/workflows/go.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ jobs:
1212
if: false # not supported on OffchainLabs fork, ci.yml is used instead
1313
runs-on: self-hosted
1414
steps:
15-
- uses: actions/checkout@v2
15+
- uses: actions/checkout@v4
1616
- name: Set up Go
17-
uses: actions/setup-go@v2
17+
uses: actions/setup-go@v5
1818
with:
1919
go-version: 1.21.4
20+
cache: false
2021
- name: Run tests
2122
run: go test -short ./...
2223
env:

.golangci.yml

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ run:
66
# default is true. Enables skipping of directories:
77
# vendor$, third_party$, testdata$, examples$, Godeps$, builtin$
88
skip-dirs-use-default: true
9-
skip-files:
10-
- core/genesis_alloc.go
119

1210
linters:
1311
disable-all: true
@@ -25,7 +23,10 @@ linters:
2523
- durationcheck
2624
- exportloopref
2725
- whitespace
26+
- revive # only certain checks enabled
2827

28+
### linters we tried and will not be using:
29+
###
2930
# - structcheck # lots of false positives
3031
# - errcheck #lot of false positives
3132
# - contextcheck
@@ -38,13 +39,27 @@ linters:
3839
linters-settings:
3940
gofmt:
4041
simplify: true
42+
revive:
43+
enable-all-rules: false
44+
# here we enable specific useful rules
45+
# see https://golangci-lint.run/usage/linters/#revive for supported rules
46+
rules:
47+
- name: receiver-naming
48+
severity: warning
49+
disabled: false
50+
exclude: [""]
4151

4252
issues:
53+
exclude-files:
54+
- core/genesis_alloc.go
4355
exclude-rules:
4456
- path: crypto/bn256/cloudflare/optate.go
4557
linters:
4658
- deadcode
4759
- staticcheck
60+
- path: crypto/bn256/
61+
linters:
62+
- revive
4863
- path: internal/build/pgp.go
4964
text: 'SA1019: "golang.org/x/crypto/openpgp" is deprecated: this package is unmaintained except for security fixes.'
5065
- path: core/vm/contracts.go

.travis.yml

Lines changed: 21 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
if: type = push
1616
os: linux
1717
arch: amd64
18-
dist: bionic
18+
dist: noble
1919
go: 1.22.x
2020
env:
2121
- docker
@@ -32,7 +32,7 @@ jobs:
3232
if: type = push
3333
os: linux
3434
arch: arm64
35-
dist: bionic
35+
dist: noble
3636
go: 1.22.x
3737
env:
3838
- docker
@@ -49,21 +49,20 @@ jobs:
4949
- stage: build
5050
if: type = push
5151
os: linux
52-
dist: bionic
52+
dist: noble
5353
sudo: required
5454
go: 1.22.x
5555
env:
5656
- azure-linux
5757
git:
5858
submodules: false # avoid cloning ethereum/tests
59-
addons:
60-
apt:
61-
packages:
62-
- gcc-multilib
6359
script:
64-
# Build for the primary platforms that Trusty can manage
60+
# build amd64
6561
- go run build/ci.go install -dlgo
6662
- go run build/ci.go archive -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
63+
64+
# build 386
65+
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends install gcc-multilib
6766
- go run build/ci.go install -dlgo -arch 386
6867
- go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -signify SIGNIFY_KEY -upload gethstore/builds
6968

@@ -98,48 +97,34 @@ jobs:
9897

9998
# These builders run the tests
10099
- stage: build
100+
if: type = push
101101
os: linux
102102
arch: amd64
103-
dist: bionic
103+
dist: noble
104104
go: 1.22.x
105105
script:
106-
- travis_wait 30 go run build/ci.go test $TEST_PACKAGES
107-
108-
- stage: build
109-
if: type = pull_request
110-
os: linux
111-
arch: arm64
112-
dist: bionic
113-
go: 1.21.x
114-
script:
115-
- travis_wait 30 go run build/ci.go test $TEST_PACKAGES
106+
- travis_wait 45 go run build/ci.go test $TEST_PACKAGES
116107

117108
- stage: build
109+
if: type = push
118110
os: linux
119-
dist: bionic
111+
dist: noble
120112
go: 1.21.x
121113
script:
122-
- travis_wait 30 go run build/ci.go test $TEST_PACKAGES
114+
- travis_wait 45 go run build/ci.go test $TEST_PACKAGES
123115

124116
# This builder does the Ubuntu PPA nightly uploads
125117
- stage: build
126118
if: type = cron || (type = push && tag ~= /^v[0-9]/)
127119
os: linux
128-
dist: bionic
120+
dist: noble
129121
go: 1.22.x
130122
env:
131123
- ubuntu-ppa
132124
git:
133125
submodules: false # avoid cloning ethereum/tests
134-
addons:
135-
apt:
136-
packages:
137-
- devscripts
138-
- debhelper
139-
- dput
140-
- fakeroot
141-
- python-bzrlib
142-
- python-paramiko
126+
before_install:
127+
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends install devscripts debhelper dput fakeroot
143128
script:
144129
- echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts
145130
- go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <[email protected]>"
@@ -148,7 +133,7 @@ jobs:
148133
- stage: build
149134
if: type = cron
150135
os: linux
151-
dist: bionic
136+
dist: noble
152137
go: 1.22.x
153138
env:
154139
- azure-purge
@@ -161,8 +146,9 @@ jobs:
161146
- stage: build
162147
if: type = cron
163148
os: linux
164-
dist: bionic
149+
dist: noble
165150
go: 1.22.x
151+
env:
152+
- racetests
166153
script:
167-
- travis_wait 30 go run build/ci.go test -race $TEST_PACKAGES
168-
154+
- travis_wait 60 go run build/ci.go test -race $TEST_PACKAGES

Makefile

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,43 @@
22
# with Go source code. If you know what GOPATH is then you probably
33
# don't need to bother with make.
44

5-
.PHONY: geth all test lint clean devtools help
5+
.PHONY: geth all test lint fmt clean devtools help
66

77
GOBIN = ./build/bin
88
GO ?= latest
99
GORUN = go run
1010

11-
#? geth: Build geth
11+
#? geth: Build geth.
1212
geth:
1313
$(GORUN) build/ci.go install ./cmd/geth
1414
@echo "Done building."
1515
@echo "Run \"$(GOBIN)/geth\" to launch geth."
1616

17-
#? all: Build all packages and executables
17+
#? all: Build all packages and executables.
1818
all:
1919
$(GORUN) build/ci.go install
2020

21-
#? test: Run the tests
21+
#? test: Run the tests.
2222
test: all
2323
$(GORUN) build/ci.go test
2424

25-
#? lint: Run certain pre-selected linters
25+
#? lint: Run certain pre-selected linters.
2626
lint: ## Run linters.
2727
$(GORUN) build/ci.go lint
2828

29-
#? clean: Clean go cache, built executables, and the auto generated folder
29+
#? fmt: Ensure consistent code formatting.
30+
fmt:
31+
gofmt -s -w $(shell find . -name "*.go")
32+
33+
#? clean: Clean go cache, built executables, and the auto generated folder.
3034
clean:
3135
go clean -cache
3236
rm -fr build/_workspace/pkg/ $(GOBIN)/*
3337

3438
# The devtools target installs tools required for 'go generate'.
3539
# You need to put $GOBIN (or $GOPATH/bin) in your PATH to use 'go generate'.
3640

37-
#? devtools: Install recommended developer tools
41+
#? devtools: Install recommended developer tools.
3842
devtools:
3943
env GOBIN= go install golang.org/x/tools/cmd/stringer@latest
4044
env GOBIN= go install github.com/fjl/gencodec@latest
@@ -45,5 +49,9 @@ devtools:
4549

4650
#? help: Get more info on make commands.
4751
help: Makefile
48-
@echo " Choose a command run in go-ethereum:"
52+
@echo ''
53+
@echo 'Usage:'
54+
@echo ' make [target]'
55+
@echo ''
56+
@echo 'Targets:'
4957
@sed -n 's/^#?//p' $< | column -t -s ':' | sort | sed -e 's/^/ /'

0 commit comments

Comments
 (0)