Skip to content

Commit af20412

Browse files
committed
Merge branch 'master' into faster-hashes
2 parents fa5825f + 7d71cfe commit af20412

File tree

189 files changed

+7602
-6442
lines changed

Some content is hidden

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

189 files changed

+7602
-6442
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ on:
2222
- '.github/workflows/nimbus_verified_proxy.yml'
2323
- '.github/workflows/build_base_image.yml'
2424
- 'docker/**'
25+
- 'metrics/**'
2526

2627
pull_request:
2728
paths-ignore:
@@ -33,6 +34,7 @@ on:
3334
- '.github/workflows/nimbus_verified_proxy.yml'
3435
- '.github/workflows/build_base_image.yml'
3536
- 'docker/**'
37+
- 'metrics/**'
3638

3739
workflow_dispatch:
3840

.github/workflows/kurtosis.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,19 @@ on:
1919
- 'portal/docs/**'
2020
- '**/*.md'
2121
- 'hive_integration/**'
22-
- 'nimbus_verified_proxy/**'
23-
- '.github/workflows/nimbus_verified_proxy.yml'
2422
- '.github/workflows/build_base_image.yml'
2523
- 'docker/**'
24+
- 'metrics/**'
2625

2726
pull_request:
2827
paths-ignore:
2928
- 'doc/**'
3029
- 'portal/docs/**'
3130
- '**/*.md'
3231
- 'hive_integration/**'
33-
- 'nimbus_verified_proxy/**'
34-
- '.github/workflows/nimbus_verified_proxy.yml'
3532
- '.github/workflows/build_base_image.yml'
3633
- 'docker/**'
34+
- 'metrics/**'
3735

3836
concurrency: # Cancel stale PR builds (but not push builds)
3937
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}

.github/workflows/nimbus_verified_proxy.yml

Lines changed: 24 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,30 @@ on:
1313
push:
1414
branches:
1515
- master
16-
paths:
17-
- '.github/workflows/nimbus_verified_proxy.yml'
18-
- 'nimbus_verified_proxy/**'
19-
- '!nimbus_verified_proxy/**.md'
20-
- '!nimbus_verified_proxy/docs/**'
21-
- 'execution_chain/db/**'
22-
- 'vendor/**'
23-
- 'Makefile'
24-
- 'nimbus.nimble'
16+
paths-ignore:
17+
- 'doc/**'
18+
- 'portal/docs/**'
19+
- '**/*.md'
20+
- 'portal/**'
21+
- '.github/workflows/portal.yml'
22+
- '.github/workflows/portal_docs.yml'
23+
- '.github/workflows/build_base_image.yml'
24+
- 'docker/**'
25+
- 'metrics/**'
2526

2627
pull_request:
27-
paths:
28-
- '.github/workflows/nimbus_verified_proxy.yml'
29-
- 'nimbus_verified_proxy/**'
30-
- '!nimbus_verified_proxy/**.md'
31-
- '!nimbus_verified_proxy/docs/**'
32-
- 'execution_chain/db/**'
33-
- 'vendor/**'
34-
- 'Makefile'
35-
- 'nimbus.nimble'
28+
paths-ignore:
29+
- 'doc/**'
30+
- 'portal/docs/**'
31+
- '**/*.md'
32+
- 'portal/**'
33+
- '.github/workflows/portal.yml'
34+
- '.github/workflows/portal_docs.yml'
35+
- '.github/workflows/build_base_image.yml'
36+
- 'docker/**'
37+
- 'metrics/**'
38+
39+
workflow_dispatch:
3640

3741
concurrency: # Cancel stale PR builds (but not push builds)
3842
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
@@ -64,31 +68,12 @@ jobs:
6468
with:
6569
llvm-mingw: true
6670
nim-cache: true
67-
rocksdb-cache: true
71+
rocksdb-cache: false
6872
eest-cache: false
6973

70-
- name: Run verified proxy tests (Windows)
71-
if: runner.os == 'Windows'
74+
- name: Run verified proxy tests
7275
run: |
7376
gcc --version
74-
DEFAULT_MAKE_FLAGS="-j${ncpu}"
75-
mingw32-make ${DEFAULT_MAKE_FLAGS} nimbus_verified_proxy libverifproxy
76-
build/nimbus_verified_proxy.exe --help
77-
mingw32-make ${DEFAULT_MAKE_FLAGS} nimbus-verified-proxy-test
78-
79-
- name: Run verified proxy tests (Linux)
80-
if: runner.os == 'Linux'
81-
run: |
82-
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib"
83-
DEFAULT_MAKE_FLAGS="-j${ncpu}"
84-
env CC=gcc make ${DEFAULT_MAKE_FLAGS} nimbus_verified_proxy libverifproxy
85-
build/nimbus_verified_proxy --help
86-
# CC is needed to select correct compiler 32/64 bit
87-
env CC=gcc CXX=g++ make ${DEFAULT_MAKE_FLAGS} nimbus-verified-proxy-test
88-
89-
- name: Run verified proxy tests (Macos)
90-
if: runner.os == 'Macos'
91-
run: |
9277
DEFAULT_MAKE_FLAGS="-j${ncpu}"
9378
make ${DEFAULT_MAKE_FLAGS} nimbus_verified_proxy libverifproxy
9479
build/nimbus_verified_proxy --help

.github/workflows/portal.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ on:
1818
- '.github/workflows/nimbus_verified_proxy.yml'
1919
- '.github/workflows/build_base_image.yml'
2020
- 'docker/**'
21+
- 'metrics/**'
2122

2223
pull_request:
2324
paths-ignore:
@@ -28,6 +29,7 @@ on:
2829
- '.github/workflows/nimbus_verified_proxy.yml'
2930
- '.github/workflows/build_base_image.yml'
3031
- 'docker/**'
32+
- 'metrics/**'
3133

3234
workflow_dispatch:
3335

@@ -132,14 +134,14 @@ jobs:
132134
with:
133135
llvm-mingw: true
134136
nim-cache: true
135-
rocksdb-cache: true
137+
rocksdb-cache: false
136138
eest-cache: false
137139

138140
- name: Run Nimbus Portal tests (Windows)
139141
if: runner.os == 'Windows'
140142
run: |
141143
gcc --version
142-
DEFAULT_MAKE_FLAGS="-j${ncpu} ROCKSDB_CI_CACHE=RocksBinCache"
144+
DEFAULT_MAKE_FLAGS="-j${ncpu}"
143145
mingw32-make ${DEFAULT_MAKE_FLAGS} nimbus_portal_client
144146
build/nimbus_portal_client.exe --help
145147
# find . -type d -name ".git" -exec rm -rf {} +
@@ -156,7 +158,7 @@ jobs:
156158
./env.sh nim -v
157159
ldd --version
158160
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/usr/local/lib"
159-
DEFAULT_MAKE_FLAGS="-j${ncpu} ROCKSDB_CI_CACHE=RocksBinCache"
161+
DEFAULT_MAKE_FLAGS="-j${ncpu}"
160162
env CC=gcc make ${DEFAULT_MAKE_FLAGS} nimbus_portal_client
161163
build/nimbus_portal_client --help
162164
env CC=gcc make ${DEFAULT_MAKE_FLAGS} portal-tools
@@ -166,7 +168,7 @@ jobs:
166168
- name: Run Nimbus Portal tests (Macos)
167169
if: runner.os == 'Macos'
168170
run: |
169-
DEFAULT_MAKE_FLAGS="-j${ncpu} ROCKSDB_CI_CACHE=RocksBinCache"
171+
DEFAULT_MAKE_FLAGS="-j${ncpu}"
170172
make ${DEFAULT_MAKE_FLAGS} nimbus_portal_client
171173
build/nimbus_portal_client --help
172174
make ${DEFAULT_MAKE_FLAGS} portal-tools

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,3 +51,5 @@ tests/fixtures/eest_static
5151
tests/fixtures/eest_stable
5252
tests/fixtures/eest_develop
5353
tests/fixtures/eest_devnet
54+
55+
execution_chain/nimbus

.gitmodules

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,3 +229,7 @@
229229
[submodule "vendor/constantine"]
230230
path = vendor/constantine
231231
url = https://github.com/mratsim/constantine
232+
[submodule "vendor/nim-mcl"]
233+
path = vendor/nim-mcl
234+
url = https://github.com/status-im/nim-mcl
235+
branch = main

GeneralStateTestsDevnet.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,11 @@ OK: 5/5 Fail: 0/5 Skip: 0/5
139139
+ valid_multi_inf.json OK
140140
```
141141
OK: 6/6 Fail: 0/6 Skip: 0/6
142+
## bls12_precompiles_before_fork
143+
```diff
144+
+ precompile_before_fork.json OK
145+
```
146+
OK: 1/1 Fail: 0/1 Skip: 0/1
142147
## bls12_variable_length_input_contracts
143148
```diff
144149
+ invalid_gas_g1msm.json OK
@@ -165,6 +170,11 @@ OK: 15/15 Fail: 0/15 Skip: 0/15
165170
+ call_memory_expands_on_early_revert.json OK
166171
```
167172
OK: 3/3 Fail: 0/3 Skip: 0/3
173+
## call_and_callcode_gas_calculation
174+
```diff
175+
+ value_transfer_gas_calculation.json OK
176+
```
177+
OK: 1/1 Fail: 0/1 Skip: 0/1
168178
## calldatacopy
169179
```diff
170180
+ calldatacopy.json OK
@@ -461,9 +471,10 @@ OK: 50/50 Fail: 0/50 Skip: 0/50
461471
+ pointer_to_precompile.json OK
462472
+ pointer_to_static.json OK
463473
+ pointer_to_static_reentry.json OK
474+
+ set_code_type_tx_pre_fork.json OK
464475
+ static_to_pointer.json OK
465476
```
466-
OK: 15/15 Fail: 0/15 Skip: 0/15
477+
OK: 16/16 Fail: 0/16 Skip: 0/16
467478
## shift_combinations
468479
```diff
469480
+ combinations.json OK
@@ -551,4 +562,4 @@ OK: 2/2 Fail: 0/2 Skip: 0/2
551562
OK: 1/1 Fail: 0/1 Skip: 0/1
552563

553564
---TOTAL---
554-
OK: 265/265 Fail: 0/265 Skip: 0/265
565+
OK: 268/268 Fail: 0/268 Skip: 0/268

Makefile

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -131,16 +131,13 @@ VERIF_PROXY_OUT_PATH ?= build/libverifproxy/
131131
ifeq ($(NIM_PARAMS),)
132132
# "variables.mk" was not included, so we update the submodules.
133133
# selectively download nimbus-eth2 submodules because we don't need all of it's modules
134-
# also holesky already exceeds github LFS quota
134+
# also hoodi already exceeds github LFS quota
135135

136-
# We don't need these `vendor/holesky` files but fetching them
137-
# may trigger 'This repository is over its data quota' from GitHub
138136
GIT_SUBMODULE_CONFIG := -c lfs.fetchexclude=/public-keys/all.txt,/metadata/genesis.ssz,/parsed/parsedConsensusGenesis.json
139137

140138
GIT_SUBMODULE_UPDATE := git -c submodule."vendor/nimbus-eth2".update=none submodule update --init --recursive; \
141139
git $(GIT_SUBMODULE_CONFIG) submodule update vendor/nimbus-eth2; \
142140
cd vendor/nimbus-eth2; \
143-
git $(GIT_SUBMODULE_CONFIG) submodule update --init vendor/holesky; \
144141
git $(GIT_SUBMODULE_CONFIG) submodule update --init vendor/sepolia; \
145142
git $(GIT_SUBMODULE_CONFIG) submodule update --init vendor/hoodi; \
146143
git $(GIT_SUBMODULE_CONFIG) submodule update --init vendor/gnosis-chain-configs; \
@@ -161,7 +158,7 @@ GIT_SUBMODULE_UPDATE := git -c submodule."vendor/nimbus-eth2".update=none submod
161158
else # "variables.mk" was included. Business as usual until the end of this file.
162159

163160
# default target, because it's the first one that doesn't start with '.'
164-
all: | $(TOOLS) nimbus_execution_client
161+
all: | $(TOOLS) nimbus nimbus_execution_client
165162

166163
# must be included after the default target
167164
-include $(BUILD_SYSTEM_DIR)/makefiles/targets.mk
@@ -218,8 +215,9 @@ nimbus_execution_client: | build deps rocksdb
218215
check_revision: nimbus_execution_client
219216
scripts/check_revision.sh
220217

221-
nimbus: nimbus_execution_client
222-
echo "The nimbus target is deprecated and will soon change meaning, use 'nimbus_execution_client' instead"
218+
nimbus: | build deps rocksdb
219+
echo -e $(BUILD_MSG) "build/nimbus" && \
220+
$(ENV_SCRIPT) nim c $(NIM_PARAMS) -d:chronicles_log_level=TRACE -o:build/nimbus "execution_chain/nimbus.nim"
223221

224222
# symlink
225223
nimbus.nims:
@@ -290,20 +288,16 @@ portal-test-reproducibility:
290288
[ "$$MD5SUM1" = "$$MD5SUM2" ] && echo -e "\e[92mSuccess: identical binaries.\e[39m" || \
291289
{ echo -e "\e[91mFailure: the binary changed between builds.\e[39m"; exit 1; }
292290

293-
# Portal tests
294-
all_eth_history_custom_chain_tests: | build deps
295-
echo -e $(BUILD_MSG) "build/$@" && \
296-
$(ENV_SCRIPT) nim c -r $(NIM_PARAMS) -d:chronicles_log_level=ERROR -d:mergeBlockNumber:38130 -o:build/$@ "portal/tests/eth_history_tests/$@.nim"
297-
291+
# builds and runs the Portal test suite
298292
all_portal_tests: | build deps
299293
echo -e $(BUILD_MSG) "build/$@" && \
300294
$(ENV_SCRIPT) nim c -r $(NIM_PARAMS) -d:chronicles_log_level=ERROR -o:build/$@ "portal/tests/$@.nim"
301295

302-
# builds and runs the Portal test suite
303-
portal-test: | all_portal_tests all_eth_history_custom_chain_tests
296+
# alias for all_portal_tests
297+
portal-test: | all_portal_tests
304298

305299
# builds the Portal tools, wherever they are
306-
$(PORTAL_TOOLS): | build deps rocksdb
300+
$(PORTAL_TOOLS): | build deps
307301
for D in $(PORTAL_TOOLS_DIRS); do [ -e "$${D}/$@.nim" ] && TOOL_DIR="$${D}" && break; done && \
308302
echo -e $(BUILD_MSG) "build/$@" && \
309303
$(ENV_SCRIPT) nim c $(NIM_PARAMS) -d:chronicles_log_level=TRACE -o:build/$@ "$${TOOL_DIR}/$@.nim"
@@ -333,7 +327,7 @@ fluffy: | build deps
333327
$(ENV_SCRIPT) nim c $(NIM_PARAMS) -d:chronicles_log_level=TRACE -o:build/$@ "portal/client/nimbus_portal_client.nim"
334328

335329
# Legacy target, same as nimbus_portal_bridge, deprecated
336-
portal_bridge: | build deps rocksdb
330+
portal_bridge: | build deps
337331
echo -e "\033[0;31mWarning:\033[0m The portal_bridge target and binary is deprecated, use 'make nimbus_portal_bridge' instead"
338332
echo -e $(BUILD_MSG) "build/$@" && \
339333
$(ENV_SCRIPT) nim c $(NIM_PARAMS) -d:chronicles_log_level=TRACE -o:build/$@ "portal/bridge/nimbus_portal_bridge.nim"

PrecompileTests.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ PrecompileTests
2828
OK: 22/22 Fail: 0/22 Skip: 0/22
2929
## eest
3030
```diff
31+
+ P256Verify.json OK
3132
+ add_G1_bls.json OK
3233
+ add_G2_bls.json OK
3334
+ fail-add_G1_bls.json OK
@@ -47,7 +48,7 @@ OK: 22/22 Fail: 0/22 Skip: 0/22
4748
+ mul_G2_bls.json OK
4849
+ pairing_check_bls.json OK
4950
```
50-
OK: 18/18 Fail: 0/18 Skip: 0/18
51+
OK: 19/19 Fail: 0/19 Skip: 0/19
5152

5253
---TOTAL---
53-
OK: 40/40 Fail: 0/40 Skip: 0/40
54+
OK: 41/41 Fail: 0/41 Skip: 0/41

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -310,7 +310,7 @@ make nimbus_execution_client
310310
# the Prometheus daemon will create its data dir in the current dir, so give it its own directory
311311
mkdir ../my_metrics
312312
# copy the basic config file over there
313-
cp -a examples/prometheus.yml ../my_metrics/
313+
cp -a metrics/prometheus.yml ../my_metrics/
314314
# start Prometheus in a separate terminal
315315
cd ../my_metrics
316316
prometheus --config.file=prometheus.yml # loads ./prometheus.yml, writes metric data to ./data
@@ -327,7 +327,7 @@ the form field, unless you click on it.
327327

328328
Create a new dashboard. Click on its default title in the upper left corner
329329
("New Dashboard"). In the new page, click "Import dashboard" in the right
330-
column and upload "examples/Nimbus-Grafana-dashboard.json".
330+
column and upload "metrics/grafana/grafana.infra.status.im.json".
331331

332332
In the main panel, there's a hidden button used to assign metrics to the left
333333
or right Y-axis - it's the coloured line on the left of the metric name, in the

0 commit comments

Comments
 (0)