Skip to content

Commit d1f5d64

Browse files
Merge tag 'v4.1.0' into develop
2 parents 307ade9 + 693886b commit d1f5d64

File tree

503 files changed

+28700
-5722
lines changed

Some content is hidden

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

503 files changed

+28700
-5722
lines changed

.cargo/config.toml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[env]
2+
# Set the number of arenas to 16 when using jemalloc.
3+
JEMALLOC_SYS_WITH_MALLOC_CONF = "abort_conf:true,narenas:16"
4+

.github/workflows/docker.yml

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
branches:
66
- unstable
77
- stable
8+
- capella
89
tags:
910
- v*
1011

@@ -34,6 +35,11 @@ jobs:
3435
run: |
3536
echo "VERSION=latest" >> $GITHUB_ENV
3637
echo "VERSION_SUFFIX=-unstable" >> $GITHUB_ENV
38+
- name: Extract version (if capella)
39+
if: github.event.ref == 'refs/heads/capella'
40+
run: |
41+
echo "VERSION=capella" >> $GITHUB_ENV
42+
echo "VERSION_SUFFIX=" >> $GITHUB_ENV
3743
- name: Extract version (if tagged release)
3844
if: startsWith(github.event.ref, 'refs/tags')
3945
run: |
@@ -43,14 +49,18 @@ jobs:
4349
VERSION: ${{ env.VERSION }}
4450
VERSION_SUFFIX: ${{ env.VERSION_SUFFIX }}
4551
build-docker-single-arch:
46-
name: build-docker-${{ matrix.binary }}
52+
name: build-docker-${{ matrix.binary }}${{ matrix.features.version_suffix }}
4753
runs-on: ubuntu-22.04
4854
strategy:
4955
matrix:
5056
binary: [aarch64,
5157
aarch64-portable,
5258
x86_64,
5359
x86_64-portable]
60+
features: [
61+
{version_suffix: "", env: "gnosis,slasher-lmdb,slasher-mdbx,jemalloc"},
62+
{version_suffix: "-dev", env: "jemalloc,spec-minimal"}
63+
]
5464
include:
5565
- profile: maxperf
5666

@@ -60,6 +70,7 @@ jobs:
6070
DOCKER_CLI_EXPERIMENTAL: enabled
6171
VERSION: ${{ needs.extract-version.outputs.VERSION }}
6272
VERSION_SUFFIX: ${{ needs.extract-version.outputs.VERSION_SUFFIX }}
73+
FEATURE_SUFFIX: ${{ matrix.features.version_suffix }}
6374
steps:
6475
- uses: actions/checkout@v3
6576
- name: Update Rust
@@ -70,7 +81,7 @@ jobs:
7081
- name: Cross build Lighthouse binary
7182
run: |
7283
cargo install cross
73-
env CROSS_PROFILE=${{ matrix.profile }} make build-${{ matrix.binary }}
84+
env CROSS_PROFILE=${{ matrix.profile }} CROSS_FEATURES=${{ matrix.features.env }} make build-${{ matrix.binary }}
7485
- name: Move cross-built binary into Docker scope (if ARM)
7586
if: startsWith(matrix.binary, 'aarch64')
7687
run: |
@@ -98,7 +109,8 @@ jobs:
98109
docker buildx build \
99110
--platform=linux/${SHORT_ARCH} \
100111
--file ./Dockerfile.cross . \
101-
--tag ${IMAGE_NAME}:${VERSION}-${SHORT_ARCH}${VERSION_SUFFIX}${MODERNITY_SUFFIX} \
112+
--tag ${IMAGE_NAME}:${VERSION}-${SHORT_ARCH}${VERSION_SUFFIX}${MODERNITY_SUFFIX}${FEATURE_SUFFIX} \
113+
--provenance=false \
102114
--push
103115
build-docker-multiarch:
104116
name: build-docker-multiarch${{ matrix.modernity }}

.github/workflows/release.yml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,11 +134,17 @@ jobs:
134134

135135
- name: Build Lighthouse for Windows portable
136136
if: matrix.arch == 'x86_64-windows-portable'
137-
run: cargo install --path lighthouse --force --locked --features portable,gnosis --profile ${{ matrix.profile }}
137+
# NOTE: profile set to release until this rustc issue is fixed:
138+
#
139+
# https://github.com/rust-lang/rust/issues/107781
140+
#
141+
# tracked at: https://github.com/sigp/lighthouse/issues/3964
142+
run: cargo install --path lighthouse --force --locked --features portable,gnosis --profile release
138143

139144
- name: Build Lighthouse for Windows modern
140145
if: matrix.arch == 'x86_64-windows'
141-
run: cargo install --path lighthouse --force --locked --features modern,gnosis --profile ${{ matrix.profile }}
146+
# NOTE: profile set to release (see above)
147+
run: cargo install --path lighthouse --force --locked --features modern,gnosis --profile release
142148

143149
- name: Configure GPG and create artifacts
144150
if: startsWith(matrix.arch, 'x86_64-windows') != true

.github/workflows/test-suite.yml

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,10 @@ on:
1010
pull_request:
1111
env:
1212
# Deny warnings in CI
13-
RUSTFLAGS: "-D warnings"
13+
# Disable debug info (see https://github.com/sigp/lighthouse/issues/4005)
14+
RUSTFLAGS: "-D warnings -C debuginfo=0"
1415
# The Nightly version used for cargo-udeps, might need updating from time to time.
15-
PINNED_NIGHTLY: nightly-2022-12-15
16+
PINNED_NIGHTLY: nightly-2023-04-16
1617
# Prevent Github API rate limiting.
1718
LIGHTHOUSE_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1819
jobs:
@@ -280,7 +281,7 @@ jobs:
280281
- uses: actions/checkout@v3
281282
- uses: actions/setup-go@v3
282283
with:
283-
go-version: '1.17'
284+
go-version: '1.20'
284285
- uses: actions/setup-dotnet@v3
285286
with:
286287
dotnet-version: '6.0.201'
@@ -306,16 +307,6 @@ jobs:
306307
repo-token: ${{ secrets.GITHUB_TOKEN }}
307308
- name: Typecheck benchmark code without running it
308309
run: make check-benches
309-
check-consensus:
310-
name: check-consensus
311-
runs-on: ubuntu-latest
312-
needs: cargo-fmt
313-
steps:
314-
- uses: actions/checkout@v3
315-
- name: Get latest version of stable Rust
316-
run: rustup update stable
317-
- name: Typecheck consensus code in strict mode
318-
run: make check-consensus
319310
clippy:
320311
name: clippy
321312
runs-on: ubuntu-latest
@@ -382,14 +373,12 @@ jobs:
382373
- uses: actions/checkout@v3
383374
- name: Install Rust (${{ env.PINNED_NIGHTLY }})
384375
run: rustup toolchain install $PINNED_NIGHTLY
385-
# NOTE: cargo-udeps version is pinned until this issue is resolved:
386-
# https://github.com/est31/cargo-udeps/issues/135
387376
- name: Install Protoc
388377
uses: arduino/setup-protoc@e52d9eb8f7b63115df1ac544a1376fdbf5a39612
389378
with:
390379
repo-token: ${{ secrets.GITHUB_TOKEN }}
391380
- name: Install cargo-udeps
392-
run: cargo install cargo-udeps --locked --force --version 0.1.30
381+
run: cargo install cargo-udeps --locked --force
393382
- name: Create Cargo config dir
394383
run: mkdir -p .cargo
395384
- name: Install custom Cargo config

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,4 @@ genesis.ssz
1212

1313
# IntelliJ
1414
/*.iml
15+
.idea

0 commit comments

Comments
 (0)