Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
180 commits
Select commit Hold shift + click to select a range
cee4295
[main] `TRACE_DELETION ` (#16326) (#16334)
JkLondon Aug 7, 2025
26d43d5
polygon: use execution server start (#16485)
taratorio Aug 7, 2025
24f46cb
1.1zation (cp from 3.1) (#16389)
JkLondon Aug 7, 2025
ffce7e6
rpc: fix evm timeout in GetReceipts (#16496)
yperbasis Aug 7, 2025
dffc9eb
ChainSpec: all and everything at once (#15974)
awskii Aug 7, 2025
b6f331c
Remove bor events from BlockReader (#16464)
antonis19 Aug 7, 2025
0f39b26
Revert "ChainSpec: all and everything at once" (#16502)
awskii Aug 7, 2025
964dceb
tests: fix TestMiningBenchmark race failures due to miner.recommit (#…
taratorio Aug 7, 2025
7626857
Caplin: fixed running lighthouse vc alongside it (#16495)
Giulio2002 Aug 7, 2025
a19d652
Revert "enable `--persist.receipts` by default" (#16499)
Giulio2002 Aug 7, 2025
60a4ad2
rpcdaemon: add refund field on debug_ as geth (#16478)
lupin012 Aug 8, 2025
e8998d2
dir improvements: move `snaptype` from `erigon-lib` to `db` (#16501)
yperbasis Aug 8, 2025
d0112e7
Torrent performance and misc downloader tweaks (#16328)
anacrolix Aug 8, 2025
051005d
txpool: Add max hashes limit to new_txn_hashes_66 (#16506)
somnathb1 Aug 8, 2025
e65a9b5
Log Erigon Startup command (#16513)
antonis19 Aug 8, 2025
15f02ea
workflows: remove sonarcloud and coverprofile from test-all-race - it…
taratorio Aug 8, 2025
8c2b4a1
dir improvements: move `recsplit` & `etl` from `erigon-lib` to `db` (…
yperbasis Aug 8, 2025
23896fb
dir improvements: move `trie` from `erigon-lib` to `execution` (#16519)
yperbasis Aug 8, 2025
b566353
rpcdaemon: add rpc-test on latest (#16521)
lupin012 Aug 10, 2025
77559f5
AddNewSeedableFile was skipping lock and bypassing checks (#16528)
anacrolix Aug 11, 2025
9ff78dd
Don't skip Downloader complete check (#16527)
anacrolix Aug 11, 2025
ec53cce
add publishable to integrity checks (#16534)
sudeepdino008 Aug 11, 2025
1adf85e
Update readme.md (#16510)
Giulio2002 Aug 11, 2025
d1d6058
core/vm: Use 8-byte strides for `allZero` (#16441)
somnathb1 Aug 11, 2025
c87704b
txnprovider/shutter: additional tests and fixes for pool cleanup and …
taratorio Aug 11, 2025
03d9fd0
edit publishable to find gaps at start (#16550)
sudeepdino008 Aug 11, 2025
7a28009
snapshots reset, torrent logging and upgrade docs (#16507)
anacrolix Aug 11, 2025
226c64a
Remove Bor-related interfaces from FullBlockReader (#16520)
antonis19 Aug 11, 2025
d8e6222
tracer: fix prestates for EIP7702 transactions (#16497)
nebojsa94 Aug 11, 2025
378e4da
[r32] remove os.truncate (#16553)
AskAlexSharov Aug 11, 2025
c7695dc
txnprovider/shutter: follow up - avoid using a 2nd copy and re-use si…
taratorio Aug 11, 2025
82b961a
Move `polygon/bor/valset` to `polygon/heimdall` and flatten (#16556)
antonis19 Aug 11, 2025
46fd177
dir improvements: move `chain` from `erigon-lib` to `execution` (#16557)
yperbasis Aug 11, 2025
f948142
txnprovider/shutter: add back accidentally dropped log line (#16561)
taratorio Aug 11, 2025
0774823
Fix `getProof` for historical calls (#16564)
awskii Aug 11, 2025
a4f47a2
ensure bor dbs are opened in seg retire (#16515) (#16551)
sudeepdino008 Aug 12, 2025
3fea9e7
rpcdaemon: Add creation method on trace_ (#16518)
lupin012 Aug 12, 2025
df8fcfc
[r31] start on broken files (#16569)
AskAlexSharov Aug 12, 2025
aaf47b3
core/vm: fix a corner case in EIP-7823 (#16494)
yperbasis Aug 12, 2025
338b766
`kv` package improve docs (#16539) (#16578)
AskAlexSharov Aug 12, 2025
6518377
dir improvements: move `diagnostics` outside of `erigon-lib` (#16577)
yperbasis Aug 12, 2025
8bb7c6c
core/vm: avoid big.Int to get lengths in modexp (#16579)
chfast Aug 12, 2025
71f96d4
core/vm: improve special cases handling in modexp (#16583)
chfast Aug 12, 2025
d7512a0
dir improvements: move `kv` from `erigon-lib` to `db` (#16585)
yperbasis Aug 12, 2025
6d6d642
Enable dependabot for github actions (#16589)
wmitsuda Aug 13, 2025
6cde974
fix 500k file deletion on snapshotters (#16572)
sudeepdino008 Aug 13, 2025
ac9d3e8
build(deps): bump actions/checkout from 4 to 5 (#16596)
dependabot[bot] Aug 13, 2025
28499c4
build(deps): bump actions/download-artifact from 4 to 5 (#16597)
dependabot[bot] Aug 13, 2025
9fff398
[r32] introduce `kv.Step` type (#16581)
AskAlexSharov Aug 13, 2025
b2ee768
Support overriding remote preverified hashes and clobbering webseeds …
anacrolix Aug 13, 2025
81e7109
Fix TestSentinelStatusRequest: remove skip and fix unreachable code (…
Lil-Duckling-22 Aug 13, 2025
3fc3f22
refactor: replace context.WithCancel with t.Context (#16601)
youzichuan Aug 13, 2025
0a38cf6
Revert "Fix TestSentinelStatusRequest: remove skip and fix unreachabl…
AskAlexSharov Aug 13, 2025
275bf04
cp: get publishable to report exact gaps rather than sum and max (#16…
sudeepdino008 Aug 13, 2025
4dd54f8
txnprovider/shutter: add README with general info and run instruction…
taratorio Aug 13, 2025
602bc21
txnprovider/shutter: add cmd for checking validator registrations (#1…
taratorio Aug 13, 2025
65dc369
Trie: unified access to domains, fixing `getProof` (#16606)
awskii Aug 13, 2025
a697bb5
erigon-lib/common/math: remove unused FastExp (#16612)
taratorio Aug 13, 2025
410c3e3
dir improvements: move remaining db bits from `erigon-lib` to `db` (#…
yperbasis Aug 13, 2025
6a78603
add helper log to get torrent client status (#16537)
sudeepdino008 Aug 13, 2025
41b70d4
workflows: update to go 1.24 (#16614)
taratorio Aug 13, 2025
2e3b1dd
execution/stages: remove unused stages (#16615)
taratorio Aug 13, 2025
5fd31eb
[r32] up x deps (#16576)
AskAlexSharov Aug 13, 2025
962c8f9
workflows: test-hive and readme update to go 1.24 (#16616)
taratorio Aug 13, 2025
4bcfada
rpcd to reload files on its own (#16625)
sudeepdino008 Aug 14, 2025
d7c4ce5
skip SnapshotSync in --no-downloader mode (#16627)
sudeepdino008 Aug 14, 2025
d60110e
build(deps): bump geekyeggo/delete-artifact from 2 to 5 (#16595)
dependabot[bot] Aug 14, 2025
71e4db6
dir improvements: kill `params` (#16633)
yperbasis Aug 14, 2025
784a2f8
rpcdaemon: eth_getProof force 0 padding in short hash keys (#16632)
lupin012 Aug 14, 2025
78a82f1
rpctest: update Bench get proof to run on latest block (#16631)
lupin012 Aug 14, 2025
c908e90
proposer_lookahead api and column data events (#16457)
domiwei Aug 14, 2025
d0c9f13
update mirror-datadir script to allow destination to be within source…
sudeepdino008 Aug 14, 2025
7f4e559
[EIP-7918] patch fusaka-devnet-4 issue (#16644)
yperbasis Aug 14, 2025
9adb281
Erigon 3: Download `logaddr` and `logtopic` indicies (#16648)
Giulio2002 Aug 15, 2025
c767c4b
Cherry pick Downloader improvements from 3.1 (#16659)
anacrolix Aug 15, 2025
a149cbf
tests: add more debug info to TestMiningBenchmark (#16652)
taratorio Aug 15, 2025
3b90b61
execution: make `Rules` a function of `BlockContext` (#16645)
yperbasis Aug 15, 2025
7d7155c
Move key dereferencing logic into `AggregatorRoTx` (#16638)
awskii Aug 15, 2025
8017a54
[main] Domain Schema should remain unchanged (#16667)
JkLondon Aug 15, 2025
2437ffa
txnprovider: align txns id filter behaviour between devp2p pool and s…
taratorio Aug 15, 2025
aa12297
p2p: Support witness protocol (#16570)
shohamc1 Aug 15, 2025
89ed6f4
Merge branch 'main' into yperbasis/main_arb2
yperbasis Aug 15, 2025
62bd39e
some post-merge fixes
yperbasis Aug 15, 2025
26de4c6
unify config_arbitrum
yperbasis Aug 15, 2025
eecaccf
some post-merge fixes
yperbasis Aug 15, 2025
542aacd
Revert "polygon: use execution server start (#16485)" (#16676)
taratorio Aug 15, 2025
019f5f4
txnprovider/txpool: fix deadlock (#16680)
taratorio Aug 15, 2025
13a2544
txnprovider/shutter: add a err retry to sendtxns test cmd (#16668)
taratorio Aug 15, 2025
7772141
workflows: Run `run_migrations` before running RPC tests (#16678)
shohamc1 Aug 16, 2025
46d3a4d
qa-tests: less strict error handling in RPC Performance Tests (#16671)
canepat Aug 16, 2025
10de105
Cherry pick snapshot overriding and downloader.verify fixes from 3.1 …
anacrolix Aug 16, 2025
4a118f5
Fix execution after `getProof` (#16687)
awskii Aug 16, 2025
ae822d3
missed `downloader.Delete()` calls (#16689)
AskAlexSharov Aug 17, 2025
caed109
added rule to prevent os.Remove (#16694)
JkLondon Aug 18, 2025
6e9f3b6
cp: adjust receipt data files version (#16677) (#16700)
sudeepdino008 Aug 18, 2025
ff01f08
cp: reuse already prepared heimdall store in integrity check (#16634)…
sudeepdino008 Aug 18, 2025
94bee59
add alias for `http.dbg.single` (#16702)
sudeepdino008 Aug 18, 2025
019580d
e3: make salt reload part of `OpenFolder` (#16704)
sudeepdino008 Aug 18, 2025
891cbf9
ruleguard against `filepath.Walk` (#16706)
sudeepdino008 Aug 18, 2025
c4058fd
more unittests and spectests for fulu (#16623)
domiwei Aug 18, 2025
f98e798
polygon: Use BorSpansIndex to calculate span id at block number (#16683)
antonis19 Aug 18, 2025
801d818
[r32] rebuild_commitment: add `--squeeze=false`, improve logs (#16696)
AskAlexSharov Aug 19, 2025
a3a845f
core: avoid big.Int in modexp required gas computation (#16396)
chfast Aug 19, 2025
151e373
get salt-blocks load/create logic parity with salt-state (#16714)
sudeepdino008 Aug 19, 2025
7632b06
nil fix in `FilePaths` (#16727)
sudeepdino008 Aug 19, 2025
ef65dcd
integration: execute run_migrations also on consensus db (#16711)
canepat Aug 20, 2025
7e67581
`integration commitment_rebuild` clarifications and fixes (#16726)
awskii Aug 20, 2025
d2ae284
refactor: use slices.Sort where appropriate (#16630)
hongmengning Aug 20, 2025
acd8a0f
Update release.yml (#16737)
lystopad Aug 20, 2025
924bc4d
VeBlop: Update span index lookup and add more unit tests (#16729)
antonis19 Aug 20, 2025
0ffe20a
rpcd: do txpool version compat check only when txpool is needed (#16734)
sudeepdino008 Aug 20, 2025
e878663
tool to compare recplit files (#16736)
sudeepdino008 Aug 20, 2025
4fab027
Adjust Beacon API (#16651)
domiwei Aug 20, 2025
f0f0821
Revert "rpcd: do txpool version compat check only when txpool is need…
sudeepdino008 Aug 20, 2025
8c4414f
Remove witness compression (#16733)
shohamc1 Aug 20, 2025
25b6ffc
move salt not found error to `GetIndexSalt` (#16746)
sudeepdino008 Aug 20, 2025
93b6161
txnprovider/txpool: unblock p.lastSeenCond.Wait on shutdown (#16750)
taratorio Aug 20, 2025
c3ca884
`erigon snapshots meta`: to print keys_size/vals_size (#16756)
AskAlexSharov Aug 21, 2025
55bd8eb
Merge branch 'arb0' into yperbasis/main_arb2
yperbasis Aug 21, 2025
19861b1
merge main d7512a0
yperbasis Aug 21, 2025
274c2ab
rpcdaemon: modify Error in case of result = nil to avoid panic (#16766)
lupin012 Aug 22, 2025
36b8704
build(deps): bump github.com/go-viper/mapstructure/v2 from 2.3.0 to 2…
dependabot[bot] Aug 22, 2025
d72d0f1
[r31] avoid extraneous commitment logs in rm-state (#16771)
sudeepdino008 Aug 22, 2025
778799b
[r31] allow list of checks to be passed in publishable command (#16770)
sudeepdino008 Aug 22, 2025
d3d32be
[r31] add rcache/receipt/ii to publishable checks (#16768)
sudeepdino008 Aug 22, 2025
ae9a11f
cp: `rm-state`: support versions, `--dry-run` (#16486) (#16773)
sudeepdino008 Aug 22, 2025
f3906fc
fix: align error messages with function name in InsertBlocks (#16774)
radik878 Aug 22, 2025
b1ffc44
dir improvements: move `rlp` from `erigon-lib` to `execution` (#16772)
yperbasis Aug 22, 2025
7f77a15
CI: update rpc-tests version with eth_getProof tests on latest (#16682)
lupin012 Aug 22, 2025
980e40f
dir improvements: move `diskutils` & `sysutils` from `erigon-lib` to …
yperbasis Aug 22, 2025
8f7571c
integration: fix database not initialized in run_migrations (#16762)
canepat Aug 22, 2025
ce4d6e8
[r31] fix for bor events prune (#16778)
sudeepdino008 Aug 22, 2025
a505b82
dir improvements: mv `compiler` to `execution/abi` (#16783)
yperbasis Aug 23, 2025
5f20e11
bumper (not dumper!) (#16466)
JkLondon Aug 24, 2025
b7b5356
deps: bump gnark-crypto to v0.19.0 (#16798)
yperbasis Aug 25, 2025
6cc7320
faster HistoryNoSystemTxs integrity check (#16802)
sudeepdino008 Aug 25, 2025
5e69adc
cherry-pick 9907be8 polygon: Implement VeBlop consensus changes (#16803)
antonis19 Aug 25, 2025
43ab6b8
[r32] ViewSingleFile: don't allocate closer (#16804)
AskAlexSharov Aug 25, 2025
f711e72
Update EEST devnet tests to [email protected] (#16725)
yperbasis Aug 25, 2025
8fdb172
CI: RPC integration test on Latest (#16785)
lupin012 Aug 25, 2025
5451cb5
[r32] CreateBloom: stack-allocated buf (#16795)
AskAlexSharov Aug 26, 2025
15de685
fix: add missing return and fix AA bundle length log in execAATxn (#1…
Fibonacci747 Aug 26, 2025
94ce75a
fix rebuilding commitment by smaller shards (#16779)
awskii Aug 26, 2025
18d852e
Cherry pick downloader and torrent fixes from 3.1 (#16794)
anacrolix Aug 26, 2025
8c1f621
dir improvements: move `jsonstream` from `erigon-lib` to `rpc` (#16807)
yperbasis Aug 26, 2025
1b643f3
dir improvements: move `direct` and `p2p` out of `erigon-lib` (#16818)
yperbasis Aug 26, 2025
a151b5b
cherry-pick: VeBlop: Skip span sorting by StartBlock in EntityFetcher…
antonis19 Aug 26, 2025
f7c8158
dir improvements: move `eth2shuffle`from `erigon-lib` to `cl/utils` (…
yperbasis Aug 26, 2025
d9de4ff
qa-tests: improve test reporting (#16822)
mriccobene Aug 26, 2025
e3ab083
qa-test: improve test report (handle canceled with steps status) (#16…
mriccobene Aug 26, 2025
5480a07
mining: use explicit comments about built block (#16811)
somnathb1 Aug 26, 2025
da1bee8
chore: gofmt (#16835)
somnathb1 Aug 26, 2025
0da742f
workflows: use fixed teku version in kurtosis test (#16836)
somnathb1 Aug 26, 2025
6378098
tests: fix deadlock in TestBatchLimit_WebSocket_Exceeded on macOS (#1…
canepat Aug 27, 2025
71baf8d
agg: configs immutability (#16844)
AskAlexSharov Aug 27, 2025
2b7c7b1
Move `WriteGenesis` to own package (#16825)
AskAlexSharov Aug 27, 2025
26cc682
go-kzg-4844: pass blobs by pointer to VerifyBlobKZGProofBatch(Par) (#…
yperbasis Aug 27, 2025
a77d3f3
remove `uploader` (#16828)
AskAlexSharov Aug 27, 2025
59c8da4
fix wrong header used in getLogsV3 (#16845)
sudeepdino008 Aug 27, 2025
6b6b651
agg: move `iiCfg`/`Schema`/`RegisterDomain calls` to `statecfg` (#16848)
AskAlexSharov Aug 27, 2025
c3d94e2
move `TotalMemory` method from `mmap` to `estimate` package. merge `d…
AskAlexSharov Aug 27, 2025
572471d
Rely on schema for key referencing in commitment branches (#16858)
awskii Aug 27, 2025
7e94129
snapshotsync: fix minimal nodes downloading all snapshots (#16862)
taratorio Aug 28, 2025
e861095
Sup multiple versions & refactor publishable (cp from 3.1) (#16869)
JkLondon Aug 28, 2025
9fa8dbd
warn for using old snapshots (cp from 3.1) (#16867)
JkLondon Aug 28, 2025
40de6e6
Partial torrentfiles ignoring + more ctx to logs [cp from 3.1] (#16866)
JkLondon Aug 28, 2025
023a60e
recsplit inner version 1 incompatible fix (cp from 3.1) (#16864)
JkLondon Aug 28, 2025
7f29f7b
[main] Fix DOWNLOADER_DISABLE_HTTP2 not working (#16871)
anacrolix Aug 28, 2025
9421ec6
[cp from 3.1] upgrade & downgrade: remove dirs not throw os.NotExist …
JkLondon Aug 28, 2025
723eac1
up `mock`, `grpc`, `goja` version (#16851)
AskAlexSharov Aug 28, 2025
07b935f
rlpdump: update from upstream (#16859)
AskAlexSharov Aug 28, 2025
677fbb7
tests: use 1 method to create db (#16874)
AskAlexSharov Aug 28, 2025
5e82286
drop `observer` component (#16857)
AskAlexSharov Aug 28, 2025
bb1ca1b
[r32] GenerateChain: to use `rotx` (#16872)
AskAlexSharov Aug 28, 2025
98ece15
Fix gocoroutine leak (#16782)
bzawisto Aug 28, 2025
fd6e4bf
integrity: fix descending block boundary reset in HistoryNoSystemTxs …
MozirDmitriy Aug 28, 2025
35c7c26
disable flaky `TestWebsocketLargeCall` on mac (#16876)
AskAlexSharov Aug 28, 2025
ed9a35a
merge arb0
yperbasis Aug 28, 2025
d4ad424
merge main@35c7c26
yperbasis Aug 28, 2025
02b6dad
post-merge fixes
yperbasis Aug 28, 2025
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
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
6 changes: 3 additions & 3 deletions .github/workflows/backups-dashboards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
DASHBOARDS_GIT_CONFIG: ${{ secrets.DASHBOARDS_GIT_CONFIG }}
steps:
- name: Clone erigon from ${{ env.ERIGON_BRANCH }} branch
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
ref: ${{ env.ERIGON_BRANCH }}
fetch-depth: 1
Expand All @@ -70,7 +70,7 @@ jobs:
echo ${{ secrets.DASHBOARDS_GIT_CONFIG }} | base64 -d > $HOME/.gitconfig

- name: Download dashboard-backup
uses: actions/download-artifact@v4
uses: actions/download-artifact@v5
with:
name: dashboard-backup
path: /tmp
Expand All @@ -91,7 +91,7 @@ jobs:
if: always()
steps:
- name: cleaning up
uses: geekyeggo/delete-artifact@v2
uses: geekyeggo/delete-artifact@v5
with:
name: |
dashboard-backup
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci-cd-main-branch-docker-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ jobs:
rm -drf $(pwd)/*

- name: Fast checkout git repository, git ref ${{ inputs.checkout_ref == '' && github.ref_name || inputs.checkout_ref }}
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 ## 4.1.7 release
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 ## 4.1.7 release
with:
repository: ${{ env.APP_REPO }}
fetch-depth: 1
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,13 @@ jobs:
runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
fetch-depth: 0

- uses: actions/setup-go@v5
with:
go-version: '1.23'
go-version: '1.24'
cache: ${{ contains(fromJSON('[
"refs/heads/release/2.60",
"refs/heads/release/2.61",
Expand Down Expand Up @@ -89,10 +89,10 @@ jobs:
uses: al-cheb/[email protected]
with:
minimum-size: 8GB
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: actions/setup-go@v5
with:
go-version: '1.23'
go-version: '1.24'
cache: ${{ contains(fromJSON('[
"refs/heads/release/2.60",
"refs/heads/release/2.61",
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker-tags.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 0

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/kurtosis/pectra.io
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ participants_matrix:
el_log_level: "debug"
cl:
- cl_type: teku
cl_image: consensys/teku:develop
cl_image: consensys/teku:25.7
- cl_type: lighthouse
cl_image: sigp/lighthouse:v7.0.1

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/kurtosis/regular-assertoor.io
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ participants_matrix:
- cl_type: lighthouse
cl_image: sigp/lighthouse:v7.0.1
- cl_type: teku
cl_image: consensys/teku:develop
cl_image: consensys/teku:25.7
network_params:
#electra_fork_epoch: 1
min_validator_withdrawability_delay: 1
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,16 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
fetch-depth: 0
- uses: actions/setup-go@v5
with:
go-version: '1.24'
go-version: '1.25'

- name: Install golangci-lint
if: runner.os == 'Linux'
uses: golangci/golangci-lint-action@v8
with:
version: 'v2.1.6'
version: 'v2.4.0'

- name: Lint
if: runner.os == 'Linux'
run: make lint
- run: make lint
4 changes: 2 additions & 2 deletions .github/workflows/manifest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ jobs:
runs-on: ubuntu-24.04

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
- uses: actions/setup-go@v5
with:
go-version: '1.23'
go-version: '1.24'
- run: make downloader
- run: echo $ModModified
- run: ./build/bin/downloader manifest-verify --chain mainnet --webseed 'https://erigon3-v1-snapshots-mainnet.erigon.network'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/qa-clean-exit-block-downloading.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:

steps:
- name: Check out repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Clean Erigon Build Directory
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/qa-clean-exit-snapshot-downloading.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:

steps:
- name: Check out repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Clean Erigon Build & Data Directories
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/qa-constrained-tip-tracking.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

steps:
- name: Check out repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Clean Erigon Build Directory
run: |
Expand Down
12 changes: 9 additions & 3 deletions .github/workflows/qa-rpc-integration-tests-gnosis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,15 +38,15 @@ jobs:

steps:
- name: Check out repository
uses: actions/checkout@v4
uses: actions/checkout@v5

- name: Clean Erigon Build Directory
run: |
make clean

- name: Build Erigon RPCDaemon
- name: Build Erigon RPCDaemon and integration
run: |
make rpcdaemon
make rpcdaemon integration
working-directory: ${{ github.workspace }}

- name: Pause the Erigon instance dedicated to db maintenance
Expand All @@ -60,6 +60,12 @@ jobs:
echo "Backup chaindata"
cp -r $ERIGON_REFERENCE_DATA_DIR/chaindata $ERIGON_TESTBED_AREA/chaindata-prev

- name: Run Migrations
working-directory: ${{ github.workspace }}/build/bin
run: |
echo "Running migrations on datadir..."
./integration run_migrations --datadir $ERIGON_REFERENCE_DATA_DIR --chain $CHAIN

- name: Run RpcDaemon
working-directory: ${{ github.workspace }}/build/bin
run: |
Expand Down
188 changes: 188 additions & 0 deletions .github/workflows/qa-rpc-integration-tests-latest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
name: QA - RPC Integration Tests Latest

on:
workflow_dispatch: # Run manually
# push:
# branches:
# - main
# - 'release/3.*'
# pull_request:
# branches:
# - main
# - 'release/3.*'
# types:
# - opened
# - reopened
# - synchronize
# - ready_for_review


jobs:
mainnet-rpc-integ-tests:
concurrency:
group: >-
${{
(github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) &&
format('{0}-{1}', github.workflow, github.run_id) ||
format('{0}-{1}', github.workflow, github.ref)
}}
cancel-in-progress: true
runs-on: [ self-hosted, qa, Ethereum, rpc-latest-erigon ]
env:
ERIGON_REFERENCE_DATA_DIR: /opt/erigon-versions/reference-version/datadir
ERIGON_TESTBED_AREA: /opt/erigon-testbed
ERIGON_QA_PATH: /home/qarunner/erigon-qa
TRACKING_TIME_SECONDS: 60 # 1 minute
TOTAL_TIME_SECONDS: 900 # 15 minutes
HOST_RUNNER_GETH_LATEST: 57.180.55.78:8545
ERIGON_ASSERT: true
RPC_PAST_TEST_DIR: /opt/rpc-past-tests
CHAIN: mainnet

steps:
- name: Check out repository
uses: actions/checkout@v5

- name: Clean Erigon Build Directory
run: |
make clean

- name: Build Erigon and integration
run: |
make erigon integration
working-directory: ${{ github.workspace }}

- name: Pause the Erigon instance dedicated to db maintenance
run: |
python3 $ERIGON_QA_PATH/test_system/db-producer/pause_production.py || true

- name: Save Erigon Chaindata Directory
id: save_chaindata_step
run: |
rm -rf $ERIGON_TESTBED_AREA/chaindata-prev || true
echo "Backup chaindata"
cp -r $ERIGON_REFERENCE_DATA_DIR/chaindata $ERIGON_TESTBED_AREA/chaindata-prev

- name: Run Migrations
working-directory: ${{ github.workspace }}/build/bin
run: |
echo "Running migrations on datadir..."
./integration run_migrations --datadir $ERIGON_REFERENCE_DATA_DIR --chain $CHAIN

- name: Run Erigon version and wait for sync
id: pre_test_step
run: |
set +e # Disable exit on error

# Launch the testbed Erigon instance & test its ability to maintain sync for a timeout
python3 $ERIGON_QA_PATH/test_system/qa-tests/tip-tracking/run_and_check_tip_tracking.py \
${{ github.workspace }}/build/bin $ERIGON_TESTBED_DATA_DIR $TRACKING_TIME_SECONDS $TOTAL_TIME_SECONDS Erigon3 $CHAIN

# Capture monitoring script exit status
test_exit_status=$?

# Save the subsection reached status
echo "test_executed=true" >> $GITHUB_OUTPUT

# Check test runner script exit status
if [ $test_exit_status -eq 0 ]; then
echo "Tip-tracking completed successfully"
echo "TEST_RESULT=success" >> "$GITHUB_OUTPUT"
else
echo "Tip-tracking encountered an error test aborted"
echo "TEST_RESULT=failure" >> "$GITHUB_OUTPUT"
exit 1
fi

- name: Run RPC Integration Tests
id: test_step
run: |
commit=$(git -C ${{runner.workspace}}/erigon rev-parse --short HEAD)
TEST_RESULT_DIR="$RPC_PAST_TEST_DIR/mainnet_$(date +%Y%m%d_%H%M%S)_integration_${commit}_http/"
echo "TEST_RESULT_DIR=$TEST_RESULT_DIR" >> $GITHUB_ENV

chmod +x ${{ runner.workspace }}/erigon/.github/workflows/scripts/run_rpc_tests_ethereum_latest.sh

set +e # Disable exit on error for test run
${{ runner.workspace }}/erigon/.github/workflows/scripts/run_rpc_tests_ethereum_latest.sh ${{ runner.workspace }} $TEST_RESULT_DIR $REFERENCE_SYSTEM_HOST_ADDRESS
test_exit_status=$? # Capture test runner script exit status
set -e # Re-enable exit on error after test run

echo "test_executed=true" >> $GITHUB_OUTPUT

if [ $test_exit_status -eq 0 ]; then
echo "RPC tests completed successfully"
echo "TEST_RESULT=success" >> "$GITHUB_OUTPUT"
else
echo "Error detected during RPC tests"
echo "TEST_RESULT=failure" >> "$GITHUB_OUTPUT"
fi

- name: Stop Erigon
if: always()
working-directory: ${{ github.workspace }}/build/bin
run: |
# the erigon pid is stored in /tmp/erigon.pid file
ERIGON_PID=$(cat /tmp/erigon.pid)
# Clean up rpcdaemon process if it's still running
if [ -n "$ERIGON_PID" ] && kill -0 $ERIGON_PID 2> /dev/null; then
echo "Erigon stopping..."
kill $ERIGON_PID
wait $ERIGON_PID
echo "Erigon stopped"
else
echo "Erigon has already terminated"
fi

- name: Restore Erigon Chaindata Directory
if: ${{ always() }}
run: |
if [ -d "$ERIGON_TESTBED_AREA/chaindata-prev" ] && [ "${{ steps.save_chaindata_step.outcome }}" == "success" ]; then
rm -rf $ERIGON_REFERENCE_DATA_DIR/chaindata
echo "Restore chaindata"
mv $ERIGON_TESTBED_AREA/chaindata-prev $ERIGON_REFERENCE_DATA_DIR/chaindata
fi

- name: Resume the Erigon instance dedicated to db maintenance
if: ${{ always() }}
run: |
python3 $ERIGON_QA_PATH/test_system/db-producer/resume_production.py || true

- name: Upload test results
if: steps.test_step.outputs.test_executed == 'true'
uses: actions/upload-artifact@v4
with:
name: test-results
path: ${{ env.TEST_RESULT_DIR }}

- name: Save test results
if: steps.test_step.outputs.test_executed == 'true'
working-directory: ${{ github.workspace }}
env:
TEST_RESULT: ${{ steps.test_step.outputs.TEST_RESULT }}
run: |
db_version=$(python3 $ERIGON_QA_PATH/test_system/qa-tests/uploads/prod_info.py $ERIGON_REFERENCE_DATA_DIR/../production.ini production erigon_repo_commit)
if [ -z "$db_version" ]; then
db_version="no-version"
fi

python3 $ERIGON_QA_PATH/test_system/qa-tests/uploads/upload_test_results.py --repo erigon --commit $(git rev-parse HEAD) --branch ${{ github.ref_name }} --test_name rpc-integration-tests --chain $CHAIN --runner ${{ runner.name }} --db_version $db_version --outcome $TEST_RESULT #--result_file ${{ github.workspace }}/result-$CHAIN.json

- name: Action to check failure condition
if: failure()
run: |
if [ "${{ steps.test_step.outputs.test_executed }}" != "true" ]; then
echo "::error::Test not executed, workflow failed for infrastructure reasons"
fi
exit 1

- name: Action for Success
if: steps.test_step.outputs.TEST_RESULT == 'success'
run: echo "::notice::Tests completed successfully"

- name: Action for Failure
if: steps.test_step.outputs.TEST_RESULT != 'success'
run: |
echo "::error::Error detected during tests: some tests failed, check the logs or the artifacts for more details"
exit 1

Loading
Loading