Skip to content

Commit fdb7aa5

Browse files
authored
Merge branch 'unstable' into sig-batch-reduce
2 parents 5b188fa + 8fedcd4 commit fdb7aa5

Some content is hidden

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

66 files changed

+746
-1594
lines changed

.github/workflows/ci.yml

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,6 @@ jobs:
3131
target:
3232
- os: linux
3333
cpu: amd64
34-
- os: macos
35-
cpu: amd64
3634
- os: macos
3735
cpu: arm64
3836
- os: windows
@@ -52,10 +50,6 @@ jobs:
5250
- target:
5351
os: linux
5452
builder: ['self-hosted','ubuntu-22.04']
55-
- target:
56-
os: macos
57-
cpu: amd64
58-
builder: macos-13
5953
- target:
6054
os: macos
6155
cpu: arm64
@@ -168,28 +162,12 @@ jobs:
168162
${make_cmd} -j ${ncpu} NIM_COMMIT=${{ matrix.branch }} ARCH_OVERRIDE=${PLATFORM} QUICK_AND_DIRTY_COMPILER=1 update
169163
./env.sh nim --version
170164
171-
- name: Get latest fixtures commit hash
172-
id: fixtures_version
173-
run: |
174-
getHash() {
175-
git ls-remote "https://github.com/$1" "${2:-HEAD}" | cut -f 1
176-
}
177-
fixturesHash=$(getHash status-im/nim-eth2-scenarios)
178-
echo "fixtures=${fixturesHash}" >> $GITHUB_OUTPUT
179-
180165
- name: Build binaries (with trace logging enabled)
181166
run: |
182167
${make_cmd} -j ${ncpu} V=1 NIM_COMMIT=${{ matrix.branch }} LOG_LEVEL=TRACE NIMFLAGS="-u:release --opt:none ${NIMFLAGS}"
183168
# The Windows image runs out of disk space, so make some room
184169
rm -rf build nimcache
185170
186-
- name: Restore Ethereum Foundation fixtures from cache
187-
id: fixtures-cache
188-
uses: actions/cache@v4
189-
with:
190-
path: fixturesCache
191-
key: 'eth2-scenarios-${{ steps.fixtures_version.outputs.fixtures }}'
192-
193171
# Important: even with a cache hit, this should be run
194172
# as it symlinks the cached items in their proper place
195173
- name: Get the Ethereum Foundation fixtures

.github/workflows/nightly_build.yml

Lines changed: 2 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ on:
1313
#pull_request:
1414

1515
env:
16-
# Build and include deposit_contract nimbus_signing_node nimbus_light_client in archive
16+
# Build and include nimbus_signing_node nimbus_light_client in archive
1717
BUILD_TOOLS: 1
1818

1919
jobs:
@@ -237,57 +237,6 @@ jobs:
237237
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_validator_client.sha512sum
238238
retention-days: 2
239239

240-
build-macos-amd64:
241-
name: macOS AMD64 release asset
242-
runs-on: ubuntu-latest
243-
steps:
244-
- name: Fix nim cache conflicts
245-
run: |
246-
echo "XDG_CACHE_HOME=${{ runner.temp }}/.nim-cache" >> $GITHUB_ENV
247-
echo "CI_CACHE=${{ runner.temp }}/.nbs-cache" >> $GITHUB_ENV
248-
249-
- name: Checkout code
250-
uses: actions/checkout@v4
251-
with:
252-
ref: unstable
253-
254-
- name: Build project
255-
id: make_dist
256-
run: |
257-
make dist-macos
258-
cd dist
259-
ARCHIVE=$(echo *.tar.gz)
260-
tar -xzf ${ARCHIVE}
261-
NEW_ARCHIVE_DIR="nimbus-eth2_macOS_amd64_$(date +%Y%m%d)_$(git rev-parse --short=8 HEAD)"
262-
mv ${ARCHIVE%.tar.gz} ${NEW_ARCHIVE_DIR}
263-
tar -czf ${NEW_ARCHIVE_DIR}.tar.gz ${NEW_ARCHIVE_DIR}
264-
cp ${NEW_ARCHIVE_DIR}.tar.gz nimbus-eth2_macOS_amd64_nightly_latest.tar.gz
265-
echo "::set-output name=archive::"${NEW_ARCHIVE_DIR}.tar.gz
266-
echo "::set-output name=archive_dir::"${NEW_ARCHIVE_DIR}
267-
268-
- name: Upload archive artefact
269-
uses: actions/upload-artifact@v4
270-
with:
271-
name: macOS_amd64_archive
272-
path: |
273-
./dist/${{ steps.make_dist.outputs.archive }}
274-
./dist/nimbus-eth2_macOS_amd64_nightly_latest.tar.gz
275-
retention-days: 2
276-
277-
- name: Upload BN checksum artefact
278-
uses: actions/upload-artifact@v4
279-
with:
280-
name: macOS_amd64_checksum_bn
281-
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_beacon_node.sha512sum
282-
retention-days: 2
283-
284-
- name: Upload VC checksum artefact
285-
uses: actions/upload-artifact@v4
286-
with:
287-
name: macOS_amd64_checksum_vc
288-
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_validator_client.sha512sum
289-
retention-days: 2
290-
291240
build-macos-arm64:
292241
name: macOS ARM64 release asset
293242
runs-on: ubuntu-latest
@@ -341,7 +290,7 @@ jobs:
341290

342291
prepare-prerelease:
343292
name: Prepare pre-release
344-
needs: [build-amd64, build-arm64, build-arm, build-win64, build-macos-amd64, build-macos-arm64]
293+
needs: [build-amd64, build-arm64, build-arm, build-win64, build-macos-arm64]
345294
runs-on: ubuntu-latest
346295
steps:
347296
- name: Checkout code
@@ -371,9 +320,6 @@ jobs:
371320
echo '# Windows AMD64' >> release_notes.md
372321
cat Windows_amd64_checksum_bn/* >> release_notes.md
373322
cat Windows_amd64_checksum_vc/* >> release_notes.md
374-
echo '# macOS AMD64' >> release_notes.md
375-
cat macOS_amd64_checksum_bn/* >> release_notes.md
376-
cat macOS_amd64_checksum_vc/* >> release_notes.md
377323
echo '# macOS ARM64' >> release_notes.md
378324
cat macOS_arm64_checksum_bn/* >> release_notes.md
379325
cat macOS_arm64_checksum_vc/* >> release_notes.md
@@ -395,7 +341,6 @@ jobs:
395341
Linux_arm64_archive/* \
396342
Linux_arm_archive/* \
397343
Windows_amd64_archive/* \
398-
macOS_amd64_archive/* \
399344
macOS_arm64_archive/*
400345
env:
401346
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -417,9 +362,6 @@ jobs:
417362
Windows_amd64_archive
418363
Windows_amd64_checksum_bn
419364
Windows_amd64_checksum_vc
420-
macOS_amd64_archive
421-
macOS_amd64_checksum_bn
422-
macOS_amd64_checksum_vc
423365
macOS_arm64_archive
424366
macOS_arm64_checksum_bn
425367
macOS_arm64_checksum_vc

.github/workflows/release.yml

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -290,43 +290,6 @@ jobs:
290290
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_validator_client.sha512sum
291291
retention-days: 2
292292
overwrite: true # TODO remove after initial working upload
293-
build-macos-amd64:
294-
name: macOS AMD64 release asset
295-
runs-on: ubuntu-latest
296-
steps:
297-
- name: Checkout code
298-
uses: actions/checkout@v4
299-
- name: Build project
300-
id: make_dist
301-
run: |
302-
make dist-macos
303-
cd dist
304-
ARCHIVE=$(echo nimbus-eth2_macOS_amd64_*.tar.gz)
305-
echo "::set-output name=archive::"${ARCHIVE}
306-
echo "::set-output name=archive_dir::"${ARCHIVE%.tar.gz}
307-
tar -xzf ${ARCHIVE} ${ARCHIVE%.tar.gz}/build/nimbus_beacon_node.sha512sum
308-
tar -xzf ${ARCHIVE} ${ARCHIVE%.tar.gz}/build/nimbus_validator_client.sha512sum
309-
- name: Upload archive artefact
310-
uses: actions/upload-artifact@v4
311-
with:
312-
name: macOS_amd64_archive
313-
path: ./dist/${{ steps.make_dist.outputs.archive }}
314-
retention-days: 2
315-
overwrite: true # TODO remove after initial working upload
316-
- name: Upload BN checksum artefact
317-
uses: actions/upload-artifact@v4
318-
with:
319-
name: macOS_amd64_checksum_bn
320-
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_beacon_node.sha512sum
321-
retention-days: 2
322-
overwrite: true # TODO remove after initial working upload
323-
- name: Upload VC checksum artefact
324-
uses: actions/upload-artifact@v4
325-
with:
326-
name: macOS_amd64_checksum_vc
327-
path: ./dist/${{ steps.make_dist.outputs.archive_dir }}/build/nimbus_validator_client.sha512sum
328-
retention-days: 2
329-
overwrite: true # TODO remove after initial working upload
330293
build-macos-arm64:
331294
name: macOS ARM64 release asset
332295
runs-on: ubuntu-latest
@@ -366,7 +329,7 @@ jobs:
366329
overwrite: true # TODO remove after initial working upload
367330
prepare-release:
368331
name: Prepare release draft
369-
needs: [build-amd64, build-arm64, build-arm, build-win64, build-macos-amd64, build-macos-arm64]
332+
needs: [build-amd64, build-arm64, build-arm, build-win64, build-macos-arm64]
370333
runs-on: ubuntu-latest
371334
steps:
372335
- name: Download artefacts
@@ -400,9 +363,6 @@ jobs:
400363
echo '# Windows AMD64' >> release_notes.md
401364
cat Windows_amd64_checksum_bn/* >> release_notes.md
402365
cat Windows_amd64_checksum_vc/* >> release_notes.md
403-
echo '# macOS AMD64' >> release_notes.md
404-
cat macOS_amd64_checksum_bn/* >> release_notes.md
405-
cat macOS_amd64_checksum_vc/* >> release_notes.md
406366
echo '# macOS ARM64' >> release_notes.md
407367
cat macOS_arm64_checksum_bn/* >> release_notes.md
408368
cat macOS_arm64_checksum_vc/* >> release_notes.md
@@ -424,7 +384,6 @@ jobs:
424384
Linux_arm_archive/*
425385
Linux_arm_packages/*
426386
Windows_amd64_archive/*
427-
macOS_amd64_archive/*
428387
macOS_arm64_archive/*
429388
- name: Delete artefacts
430389
uses: geekyeggo/delete-artifact@v1
@@ -446,9 +405,6 @@ jobs:
446405
Windows_amd64_archive
447406
Windows_amd64_checksum_bn
448407
Windows_amd64_checksum_vc
449-
macOS_amd64_archive
450-
macOS_amd64_checksum_bn
451-
macOS_amd64_checksum_vc
452408
macOS_arm64_archive
453409
macOS_arm64_checksum_bn
454410
macOS_arm64_checksum_vc

.gitmodules

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,3 +229,11 @@
229229
url = https://github.com/eth-clients/hoodi
230230
ignore = untracked
231231
branch = main
232+
[submodule "vendor/nim-ngtcp2"]
233+
path = vendor/nim-ngtcp2
234+
url = https://github.com/vacp2p/nim-ngtcp2
235+
branch = main
236+
[submodule "vendor/nim-quic"]
237+
path = vendor/nim-quic
238+
url = https://github.com/vacp2p/nim-quic
239+
branch = main

AllTests-mainnet.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,6 @@ AllTests-mainnet
172172
+ database and memory overfill protection and pruning test OK
173173
+ database unload/load test OK
174174
+ overfill protection test OK
175-
+ popSidecars()/hasSidecars() return []/true on block without columns OK
176175
+ pruneAfterFinalization() test OK
177176
+ put() duplicate items should not affect counters OK
178177
+ put()/fetchMissingSidecars/remove test [node] OK

CHANGELOG.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,64 @@
1+
2025-11-03 v25.11.0
2+
===================
3+
4+
Nimbus `v25.11.0` is a `high-urgency` release for mainnet due to the impending Fusaka fork and a `low-urgency` release on other networks.
5+
6+
### Improvements
7+
8+
- Schedule Fulu on mainnet:
9+
https://github.com/status-im/nimbus-eth2/pull/7702
10+
11+
2025-10-31 v25.10.0
12+
===================
13+
14+
Nimbus `v25.10.0` is a `low-urgency` release which increases the default gas limit to 60M, improves beacon API support, adds runtime configuration flexibility, and removes macOS amd64 support.
15+
16+
### Improvements
17+
18+
- Increase default builder API gas limit to 60M:
19+
https://github.com/status-im/nimbus-eth2/pull/7555
20+
21+
- Support `--peerdas-supernode` to require beacon node to operate as a supernode:
22+
https://github.com/status-im/nimbus-eth2/pull/7629
23+
24+
- Support runtime configuration of `SECONDS_PER_SLOT`:
25+
https://github.com/status-im/nimbus-eth2/pull/7639
26+
https://github.com/status-im/nimbus-eth2/pull/7643
27+
https://github.com/status-im/nimbus-eth2/pull/7644
28+
https://github.com/status-im/nimbus-eth2/pull/7645
29+
https://github.com/status-im/nimbus-eth2/pull/7647
30+
https://github.com/status-im/nimbus-eth2/pull/7652
31+
https://github.com/status-im/nimbus-eth2/pull/7653
32+
https://github.com/status-im/nimbus-eth2/pull/7654
33+
https://github.com/status-im/nimbus-eth2/pull/7658
34+
https://github.com/status-im/nimbus-eth2/pull/7661
35+
36+
- Implement getBlobs beacon API endpoint:
37+
https://github.com/status-im/nimbus-eth2/pull/7670
38+
39+
- Ensure validator client uses non-deprecated beacon API attestation endpoints:
40+
https://github.com/status-im/nimbus-eth2/pull/7642
41+
42+
- Double trusted node sync state download timeout to 6 minutes:
43+
https://github.com/status-im/nimbus-eth2/pull/7677
44+
45+
- Make `REORG_HEAD_WEIGHT_THRESHOLD` and `REORG_MAX_EPOCHS_SINCE_FINALIZATION` runtime-configurable:
46+
https://github.com/status-im/nimbus-eth2/pull/7620
47+
48+
### Fixes
49+
50+
- Fix consensus fork when validator client publishes attestations:
51+
https://github.com/status-im/nimbus-eth2/pull/7689
52+
53+
- Fix Nix builds:
54+
https://github.com/status-im/nimbus-eth2/pull/7585
55+
56+
- Ensure validator client always targets the correct slot:
57+
https://github.com/status-im/nimbus-eth2/pull/7571
58+
59+
- Stop using obsolete `TTFB_TIMEOUT` and `RESP_TIMEOUT` configuration:
60+
https://github.com/status-im/nimbus-eth2/pull/7619
61+
162
2025-09-26 v25.9.2
263
==================
364

ConsensusSpecPreset-mainnet.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3798,8 +3798,18 @@ ConsensusSpecPreset-mainnet
37983798
```
37993799
## EF - Gloas - Operations - Execution Payload [Preset: mainnet]
38003800
```diff
3801+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_everything_first_paylo OK
3802+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_everything_regular_pay OK
3803+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_parent_hash_first_payl OK
3804+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_parent_hash_regular_pa OK
3805+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_pre_randao_regular_pay OK
3806+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_bad_prev_randao_first_payl OK
38013807
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_correct_input__execution_i OK
38023808
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_exceed_max_blobs_per_block OK
3809+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_future_timestamp_first_pay OK
3810+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_future_timestamp_regular_p OK
3811+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_past_timestamp_first_paylo OK
3812+
+ [Invalid] EF - Gloas - Operations - Execution Payload - invalid_past_timestamp_regular_pay OK
38033813
+ [Invalid] EF - Gloas - Operations - Execution Payload - process_execution_payload_executio OK
38043814
+ [Invalid] EF - Gloas - Operations - Execution Payload - process_execution_payload_invalid_ OK
38053815
+ [Invalid] EF - Gloas - Operations - Execution Payload - process_execution_payload_wrong_be OK
@@ -4196,11 +4206,6 @@ ConsensusSpecPreset-mainnet
41964206
```
41974207
## EF - Merkle proof [Preset: mainnet]
41984208
```diff
4199-
Merkle proof - Single merkle proof - blob_kzg_commitments_merkle_proof__basic Skip
4200-
Merkle proof - Single merkle proof - blob_kzg_commitments_merkle_proof__max_blobs Skip
4201-
Merkle proof - Single merkle proof - blob_kzg_commitments_merkle_proof__multiple_blobs Skip
4202-
Merkle proof - Single merkle proof - blob_kzg_commitments_merkle_proof__random_block_1 Skip
4203-
Merkle proof - Single merkle proof - eip7805 Skip
42044209
+ Merkle proof - Single merkle proof - mainnet/deneb/merkle_proof/single_merkle_proof/Beacon OK
42054210
+ Merkle proof - Single merkle proof - mainnet/deneb/merkle_proof/single_merkle_proof/Beacon OK
42064211
+ Merkle proof - Single merkle proof - mainnet/deneb/merkle_proof/single_merkle_proof/Beacon OK

0 commit comments

Comments
 (0)