Skip to content

Commit b115388

Browse files
authored
Merge pull request #2 from zeriontech/sync/v1.16.3-merge
Sync/v1.16.3 merge
2 parents 9b4ae32 + b0a3f70 commit b115388

File tree

1,619 files changed

+277869
-62742
lines changed

Some content is hidden

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

1,619 files changed

+277869
-62742
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
on:
2+
workflow_dispatch:
3+
4+
### Note we cannot use cron-triggered builds right now, Gitea seems to have
5+
### a few bugs in that area. So this workflow is scheduled using an external
6+
### triggering mechanism and workflow_dispatch.
7+
#
8+
# schedule:
9+
# - cron: '0 15 * * *'
10+
11+
jobs:
12+
azure-cleanup:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
- name: Set up Go
18+
uses: actions/setup-go@v5
19+
with:
20+
go-version: 1.24
21+
cache: false
22+
23+
- name: Run cleanup script
24+
run: |
25+
go run build/ci.go purge -store gethstore/builds -days 14
26+
env:
27+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}

.gitea/workflows/release-ppa.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
on:
2+
push:
3+
tags:
4+
- "v*"
5+
workflow_dispatch:
6+
7+
### Note we cannot use cron-triggered builds right now, Gitea seems to have
8+
### a few bugs in that area. So this workflow is scheduled using an external
9+
### triggering mechanism and workflow_dispatch.
10+
#
11+
# schedule:
12+
# - cron: '0 16 * * *'
13+
14+
15+
jobs:
16+
ppa:
17+
name: PPA Upload
18+
runs-on: ubuntu-latest
19+
steps:
20+
- uses: actions/checkout@v4
21+
22+
- name: Show environment
23+
run: |
24+
env
25+
26+
- name: Set up Go
27+
uses: actions/setup-go@v5
28+
with:
29+
go-version: 1.24
30+
cache: false
31+
32+
- name: Install deb toolchain
33+
run: |
34+
apt-get update
35+
apt-get -yq --no-install-suggests --no-install-recommends install devscripts debhelper dput fakeroot
36+
37+
- name: Add launchpad to known_hosts
38+
run: |
39+
echo '|1|7SiYPr9xl3uctzovOTj4gMwAC1M=|t6ReES75Bo/PxlOPJ6/GsGbTrM0= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==' >> ~/.ssh/known_hosts
40+
41+
- name: Run ci.go
42+
run: |
43+
go run build/ci.go debsrc -upload ethereum/ethereum -sftp-user geth-ci -signer "Go Ethereum Linux Builder <[email protected]>"
44+
env:
45+
PPA_SIGNING_KEY: ${{ secrets.PPA_SIGNING_KEY }}
46+
PPA_SSH_KEY: ${{ secrets.PPA_SSH_KEY }}

.gitea/workflows/release.yml

Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
on:
2+
push:
3+
branches:
4+
- "master"
5+
tags:
6+
- "v*"
7+
workflow_dispatch:
8+
9+
jobs:
10+
linux-intel:
11+
name: Linux Build
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Set up Go
17+
uses: actions/setup-go@v5
18+
with:
19+
go-version: 1.24
20+
cache: false
21+
22+
- name: Install cross toolchain
23+
run: |
24+
apt-get update
25+
apt-get -yq --no-install-suggests --no-install-recommends install gcc-multilib
26+
27+
- name: Build (amd64)
28+
run: |
29+
go run build/ci.go install -static -arch amd64 -dlgo
30+
31+
- name: Create/upload archive (amd64)
32+
run: |
33+
go run build/ci.go archive -arch amd64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
34+
rm -f build/bin/*
35+
env:
36+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
37+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
38+
39+
- name: Build (386)
40+
run: |
41+
go run build/ci.go install -static -arch 386 -dlgo
42+
43+
- name: Create/upload archive (386)
44+
run: |
45+
go run build/ci.go archive -arch 386 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
46+
rm -f build/bin/*
47+
env:
48+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
49+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
50+
51+
linux-arm:
52+
name: Linux Build (arm)
53+
runs-on: ubuntu-latest
54+
steps:
55+
- uses: actions/checkout@v4
56+
57+
- name: Set up Go
58+
uses: actions/setup-go@v5
59+
with:
60+
go-version: 1.24
61+
cache: false
62+
63+
- name: Install cross toolchain
64+
run: |
65+
apt-get update
66+
apt-get -yq --no-install-suggests --no-install-recommends install gcc-arm-linux-gnueabi libc6-dev-armel-cross gcc-arm-linux-gnueabihf libc6-dev-armhf-cross gcc-aarch64-linux-gnu libc6-dev-arm64-cross
67+
ln -s /usr/include/asm-generic /usr/include/asm
68+
69+
- name: Build (arm64)
70+
run: |
71+
go run build/ci.go install -static -dlgo -arch arm64 -cc aarch64-linux-gnu-gcc
72+
73+
- name: Create/upload archive (arm64)
74+
run: |
75+
go run build/ci.go archive -arch arm64 -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
76+
rm -fr build/bin/*
77+
env:
78+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
79+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
80+
81+
- name: Run build (arm5)
82+
run: |
83+
go run build/ci.go install -static -dlgo -arch arm -cc arm-linux-gnueabi-gcc
84+
env:
85+
GOARM: "5"
86+
87+
- name: Create/upload archive (arm5)
88+
run: |
89+
go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
90+
env:
91+
GOARM: "5"
92+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
93+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
94+
95+
- name: Run build (arm6)
96+
run: |
97+
go run build/ci.go install -static -dlgo -arch arm -cc arm-linux-gnueabi-gcc
98+
env:
99+
GOARM: "6"
100+
101+
- name: Create/upload archive (arm6)
102+
run: |
103+
go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
104+
rm -fr build/bin/*
105+
env:
106+
GOARM: "6"
107+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
108+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
109+
110+
- name: Run build (arm7)
111+
run: |
112+
go run build/ci.go install -static -dlgo -arch arm -cc arm-linux-gnueabi-gcc
113+
env:
114+
GOARM: "7"
115+
116+
- name: Create/upload archive (arm7)
117+
run: |
118+
go run build/ci.go archive -arch arm -type tar -signer LINUX_SIGNING_KEY -upload gethstore/builds
119+
rm -fr build/bin/*
120+
env:
121+
GOARM: "7"
122+
LINUX_SIGNING_KEY: ${{ secrets.LINUX_SIGNING_KEY }}
123+
AZURE_BLOBSTORE_TOKEN: ${{ secrets.AZURE_BLOBSTORE_TOKEN }}
124+
125+
windows:
126+
name: Windows Build
127+
runs-on: "win-11"
128+
steps:
129+
- uses: actions/checkout@v4
130+
131+
- name: Set up Go
132+
uses: actions/setup-go@v5
133+
with:
134+
go-version: 1.24
135+
cache: false
136+
137+
# Note: gcc.exe only works properly if the corresponding bin/ directory is
138+
# contained in PATH.
139+
140+
- name: "Build (amd64)"
141+
shell: cmd
142+
run: |
143+
set PATH=%GETH_MINGW%\bin;%PATH%
144+
go run build/ci.go install -dlgo -arch amd64 -cc %GETH_MINGW%\bin\gcc.exe
145+
env:
146+
GETH_MINGW: 'C:\msys64\mingw64'
147+
148+
- name: "Build (386)"
149+
shell: cmd
150+
run: |
151+
set PATH=%GETH_MINGW%\bin;%PATH%
152+
go run build/ci.go install -dlgo -arch 386 -cc %GETH_MINGW%\bin\gcc.exe
153+
env:
154+
GETH_MINGW: 'C:\msys64\mingw32'
155+
156+
docker:
157+
name: Docker Image
158+
runs-on: ubuntu-latest
159+
steps:
160+
- uses: actions/checkout@v4
161+
162+
- name: Set up QEMU
163+
uses: docker/setup-qemu-action@v3
164+
165+
- name: Set up Docker Buildx
166+
uses: docker/setup-buildx-action@v3
167+
168+
- name: Set up Go
169+
uses: actions/setup-go@v5
170+
with:
171+
go-version: 1.24
172+
cache: false
173+
174+
- name: Run docker build
175+
env:
176+
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
177+
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
178+
run: |
179+
go run build/ci.go dockerx -platform linux/amd64,linux/arm64,linux/riscv64 -upload

.github/CODEOWNERS

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,33 @@
11
# Lines starting with '#' are comments.
22
# Each line is a file pattern followed by one or more owners.
33

4-
accounts/usbwallet @karalabe
5-
accounts/scwallet @gballet
6-
accounts/abi @gballet @MariusVanDerWijden
7-
cmd/clef @holiman
8-
consensus @karalabe
9-
core/ @karalabe @holiman @rjl493456442
10-
eth/ @karalabe @holiman @rjl493456442
11-
eth/catalyst/ @gballet
4+
accounts/usbwallet/ @gballet
5+
accounts/scwallet/ @gballet
6+
accounts/abi/ @gballet @MariusVanDerWijden
7+
beacon/engine/ @MariusVanDerWijden @lightclient @fjl
8+
beacon/light/ @zsfelfoldi
9+
beacon/merkle/ @zsfelfoldi
10+
beacon/types/ @zsfelfoldi @fjl
11+
beacon/params/ @zsfelfoldi @fjl
12+
cmd/evm/ @MariusVanDerWijden @lightclient
13+
core/state/ @rjl493456442
14+
crypto/ @gballet @jwasinger @fjl
15+
core/ @rjl493456442
16+
eth/ @rjl493456442
17+
eth/catalyst/ @MariusVanDerWijden @lightclient @fjl @jwasinger
1218
eth/tracers/ @s1na
19+
ethclient/ @fjl
20+
ethdb/ @rjl493456442
21+
event/ @fjl
22+
trie/ @rjl493456442 @gballet
23+
triedb/ @rjl493456442
24+
core/tracing/ @s1na
1325
graphql/ @s1na
14-
les/ @zsfelfoldi @rjl493456442
15-
light/ @zsfelfoldi @rjl493456442
26+
internal/ethapi/ @fjl @s1na @lightclient
27+
internal/era/ @lightclient
28+
miner/ @MariusVanDerWijden @fjl @rjl493456442
1629
node/ @fjl
1730
p2p/ @fjl @zsfelfoldi
18-
rpc/ @fjl @holiman
19-
p2p/simulations @fjl
20-
p2p/protocols @fjl
21-
p2p/testing @fjl
22-
signer/ @holiman
31+
rlp/ @fjl
32+
params/ @fjl @gballet @rjl493456442 @zsfelfoldi
33+
rpc/ @fjl

.github/workflows/go.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
on:
2+
push:
3+
branches:
4+
- master
5+
pull_request:
6+
branches:
7+
- master
8+
workflow_dispatch:
9+
10+
jobs:
11+
lint:
12+
name: Lint
13+
runs-on: self-hosted-ghr
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
submodules: false
18+
19+
# Cache build tools to avoid downloading them each time
20+
- uses: actions/cache@v4
21+
with:
22+
path: build/cache
23+
key: ${{ runner.os }}-build-tools-cache-${{ hashFiles('build/checksums.txt') }}
24+
25+
- name: Set up Go
26+
uses: actions/setup-go@v5
27+
with:
28+
go-version: 1.25
29+
cache: false
30+
31+
- name: Run linters
32+
run: |
33+
go run build/ci.go lint
34+
go run build/ci.go check_generate
35+
go run build/ci.go check_baddeps
36+
37+
test:
38+
name: Test
39+
needs: lint
40+
runs-on: self-hosted-ghr
41+
strategy:
42+
matrix:
43+
go:
44+
- '1.25'
45+
- '1.24'
46+
steps:
47+
- uses: actions/checkout@v4
48+
with:
49+
submodules: true
50+
51+
- name: Set up Go
52+
uses: actions/setup-go@v5
53+
with:
54+
go-version: ${{ matrix.go }}
55+
cache: false
56+
57+
- name: Run tests
58+
run: go test ./...

.github/workflows/validate_pr.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: PR Format Validation
2+
3+
on:
4+
pull_request:
5+
types: [opened, edited, synchronize]
6+
7+
jobs:
8+
validate-pr:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- name: Check PR Title Format
12+
uses: actions/github-script@v7
13+
with:
14+
script: |
15+
const prTitle = context.payload.pull_request.title;
16+
const titleRegex = /^(\.?[\w\s,{}/]+): .+/;
17+
18+
if (!titleRegex.test(prTitle)) {
19+
core.setFailed(`PR title "${prTitle}" does not match required format: directory, ...: description`);
20+
return;
21+
}
22+
23+
console.log('✅ PR title format is valid');

0 commit comments

Comments
 (0)