330 Commits

Author SHA1 Message Date
Eugene Kabanov
437bc79532
Adjust default port numbers for tests. (#6849)
* Adjust default port numbers.

* Update copyright year.
2025-01-15 15:20:56 +00:00
tersec
e29ef244ed
rm Nimbus book reference to import --method=single-salt (#6805) 2024-12-31 13:00:14 +01:00
Jacek Sieka
6973c38de2
bump mdbook version req
* use same versions as style guide
* remove obsoletion notice from summary - this is not supported by
mdbook: https://github.com/rust-lang/mdBook/issues/1766
2024-10-29 08:57:11 +01:00
tersec
2d3614ff69
update to devnet-4-compatible engine API (#6657) 2024-10-17 16:53:37 +02:00
Eugene Kabanov
fcf72a6e8e
VC: Electra fixes. (#6631)
* Initial commit.

* Add aggregated attestation processing.

* Add missing presets file.

* Fix compilation error.

* Fix post-rebase compilation error.

* Satisfy push raises requirement.

* Fix sync committee duties retrieval process.

* Fix forks configuration management.

* Fix deposits to use new fork configuration scheme.

* Fix /eth/v2/validator/aggregate_attestation implementation.

* Fix RANDAO preparation loop to handle blocks at epoch boundary properly.

* Simplification of RANDAO fix.

* Fix typo.

* Address review comments and fix tests.

* Fix incorrect status codes in REST test.

* Rework attestation and aggregated attestations processing code.

* Address review comments.

* Fill committee_index in RegisteredAttestation construction code.

* Address review comments part 2.

* Address review comments part 3.

* use Deneb fork epoch

* Add transition from Deneb to Electra into CI finalization test.

---------

Co-authored-by: tersec <tersec@users.noreply.github.com>
2024-10-16 17:20:39 +00:00
Eugene Kabanov
0ecd2798e8
Deprecate logtrace tool. (#6643)
* Deprecate logtrace tool.

* Eliminate mentions of logtrace in Makefile and scripts.
2024-10-15 13:54:07 +00:00
tersec
c01cf6601a
attestation and aggregated attestation BN fixes for Electra (#6641)
* attestation and aggregated attestation BN fixes for Electra

* disable electra transition for this PR

* use cleaned-up verification function everywhere
2024-10-14 14:20:26 +00:00
tersec
181f5f984d
use Deneb genesis for local testnet; add Electra forking support to local tesnet (#6634)
* use Deneb genesis for local testnet; add Electra forking support to local tesnet

* deneb -> electra in ncli_testnet help
2024-10-10 15:48:05 +00:00
tersec
6e610f64e0
rm unused/bitrotted ncli_query (#6618) 2024-10-10 05:22:44 +00:00
tersec
50894ad0d5
add Grandine to known libp2p agents 2024-06-14 04:25:42 +00:00
Etan Kissling
ab892c1a04
bump mainnet to f6b7882618a5ad2c1d2731ae35e5d16a660d5bb7 (#6310)
* bump `mainnet` to `f6b7882618a5ad2c1d2731ae35e5d16a660d5bb7`

- Initial commit

* fix soft links
2024-05-30 09:28:16 +00:00
824bb17115
ci: use clang 18 from Homebrew on aarch64
Not sure if `LDFLAGS` and `CPPFLAGS` are absolutely necessary but Brew docs recommend it.

Depends on:
https://github.com/status-im/infra-ci/commit/67fafcb5
https://github.com/status-im/status-jenkins-lib/pull/90

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-04-25 14:39:19 +02:00
tersec
13a70e9d69
rm built-in Goerli beacon chain support (#6057) 2024-04-03 23:25:36 +00:00
Miran
e1aa9e6de5
fix commit hash when publishing book (#6097)
Before, the commit hash was taken from the `gh-pages` branch,
instead from the branch used to publish the book.
2024-03-19 09:56:47 +01:00
andri lim
a45609c4a3
Switch to llvm-mingw for faster Windows CI (#5729)
* Switch to llvm-mingw for faster Windows CI

* Enable ubsan of Windows CI
2024-01-13 11:45:20 +02:00
Zahary Karadjov
d387b6cb26
Correct error message when the required mdbook version is not available 2023-11-28 23:49:44 +02:00
tersec
925d531884
test deneb in Jenkins finalization CI (#5627)
* Revert "Revert "test deneb in Jenkins finalization CI (#5625)" (#5626)"

This reverts commit bbf4551ff9ad3bccc98534b94e892b764da093cc.

* always use current Geth stable
2023-11-26 14:38:19 +00:00
tersec
bbf4551ff9
Revert "test deneb in Jenkins finalization CI (#5625)" (#5626)
This reverts commit af08c0f47d7ad089e7e65c6cc4124d85043dc184.
2023-11-26 05:17:46 +00:00
tersec
af08c0f47d
test deneb in Jenkins finalization CI (#5625) 2023-11-26 03:37:36 +00:00
Jacek Sieka
2db2442580
update mdbook versions 2023-11-10 08:40:04 +01:00
tersec
06e2ca5286
don't explicitly filter removed file parsedBeaconState.json from holesky (#5584) 2023-11-09 17:45:07 +03:00
Etan Kissling
eb7c8b7db2
do not download Holesky genesis on git clone (#5573)
Holesky genesis.ssz file may be unavailable due to quota limits on
`eth-clients/holesky`; do not download it by default during checkout.
Nimbus will download it on first startup from a mirror instead.
2023-11-06 12:10:36 +01:00
beemeeupnow
afc7912ebf
Add option to compile VC for gnosis (#5500) 2023-10-12 21:38:47 +03:00
Etan Kissling
aacb853a0b
add blob validation to test_fixture_fork_choice (#5441)
Preparation for processing new tests from:

- https://github.com/ethereum/consensus-specs/pull/3463
2023-09-20 01:14:49 +00:00
Etan Kissling
63440766ef
exclude 'public-keys/all.txt' file from checkout (#5439)
The 'vendor/holesky/public-keys/all.txt' file is not used by Nimbus,
but sometimes fails to download due to payment issues in `@eth-clients`.
Skipping the download of that file should reduce that risk.

```
Downloading public-keys/all.txt (240 MB)
Error downloading object: public-keys/all.txt (ba977b5): Smudge error: Error downloading public-keys/all.txt (ba977b5b1da180914c934623fce187860e1b54cff939e6208533b2cb5f589e07): batch response: This repository is over its data quota. Account responsible for LFS bandwidth should purchase more data packs to restore access.
```

* bump nbs: Patch libnatpmp.a rule to support llvm-mingw in targets.mk

* bump nbs: Allow passing config to submodule initialization in `update-common`
2023-09-18 20:24:13 +02:00
Etan Kissling
bb8584c58a
provide hint when Git LFS is not installed (#5425)
Add a hint message during git clone to direct the user to install
Git LFS if it is missing. It is required to clone Holesky submodule.

---------

Co-authored-by: Jakub <jakub@status.im>
2023-09-14 12:09:02 +02:00
Etan Kissling
672c69b0bf
increase Windows test stack size for Nim 2.0 (#5419)
Nim 2.0 has trouble running the `test_libnimbus_lc` test with the MinGW
default main thread stack size of 2 MB. Bump test stack size to 8 MB.
2023-09-11 20:59:07 +00:00
tersec
91a53e0cb6
capella genesis in local testnet (#5403) 2023-09-11 11:26:21 +02:00
Etan Kissling
ba8b5d8d67
lower number of --remote-validators-count in CI (#5399)
The CI signing node sometimes becomes overloaded, leading to late block.

```
{"lvl":"DBG","ts":"2023-09-05 23:46:34.515+01:00","msg":"REST request body has been sent","remote":"127.0.0.1:5201","request":"/api/v1/eth2/sign/0x82ad1b336ce728978983cbe7c7dd25f757fdc66536f3457cf9f0120c07943f8d464eec55fefcaef9c0d5da6e9f7c1443","size":549,"http_method":"POST"}
```

```
DBG 2023-09-05 23:46:36.098+01:00 Received request                           peer=127.0.0.1:51194 meth=POST uri=/api/v1/eth2/sign/0x82ad1b336ce728978983cbe7c7dd25f757fdc66536f3457cf9f0120c07943f8d464eec55fefcaef9c0d5da6e9f7c1443
```

Especially on the `minimal` preset with short slot timings, this leads
to attestations and sync duties being made for an old head, ultimately:

```
{"lvl":"FAT","ts":"2023-09-05 23:46:41.915+01:00","msg":"Low sync committee participation","topics":"chaindag","slot":15,"num_active_participants":8}
```

Looking at `nimbus_signing_node.0.jsonl` shows that the signing node is
very busy. Lowering the validator count should reduce the latency a bit.
2023-09-06 09:08:33 +00:00
Etan Kissling
ffd4e7a024
avoid verbose debug logs when using make (#5348)
Remove `set -x` from Makefile target to reduce debug noice during build.
2023-08-24 16:25:29 +00:00
tersec
295c3e2e41
rm state_sim; capella genesis for block_sim (#5331)
* rm state_sim; capella genesis for block_sim

* copyright year
2023-08-21 09:10:15 +00:00
Jacek Sieka
8208419f08
run minimal test thread-free (#5315)
This increases the end-to-end testing for single-threaded mode which
otherwise might run into problems like
https://github.com/status-im/nimbus-eth2/pull/5303
2023-08-18 13:54:24 +02:00
Etan Kissling
41634f6385
avoid port 8301 on Jenkins (#5271)
Port 8301 is used by Consul: https://github.com/status-im/nimbus-eth2/issues/4575#issuecomment-1667490331

Avoid using it in the local testnet simulation when EXECUTOR_NUMBER == 2
2023-08-07 19:58:24 +00:00
Etan Kissling
6a2bac5cee
need even more log lines for debugging keymanager (#5260)
Keymanager test logs are still cut off, further increase log lines.
2023-08-07 18:02:08 +02:00
Etan Kissling
c26e8132fc
fix ubsan for test_libnimbus_lc (#5258)
Pass `-fsanitize=undefined` flag when compiling `test_libnimbus_lc`
when building in ubsan mode.
2023-08-07 07:57:56 +02:00
Etan Kissling
6d24e73f8d
adjust keymanager test port base (#5263)
Port 9952 sometimes seems blocked, maybe by another Status project
being tested on the same host, or by UPS process, or maybe it needs
SO_REUSEPORT as well?

Switch to 9962 for now to see if that improves things.

```
{"lvl":"DBG","ts":"2023-08-06 13:44:56.834+03:00","msg":"Initializing ELManager","topics":"beacnde","tid":231629305,"file":"el_manager.nim:1823","depositContractBlockNumber":1,"depositContractBlockHash":"00000000"}
{"lvl":"ERR","ts":"2023-08-06 13:44:56.834+03:00","msg":"Could not create HTTP server instance","topics":"beacnde","tid":231629305,"file":"server.nim:50","address":{"family":"IPv4","address_v4":[127,0,0,1],"port":9952},"serverIdent":"nim-presto/0.0.3 (arm64/macosx)","serverFlags":["NotifyDisconnect","QueryCommaSeparatedArray"],"socketFlags":["ReuseAddr"],"serverUri":{"scheme":"","username":"","password":"","hostname":"","port":"","path":"","query":"","anchor":"","opaque":false,"isIpv6":false},"maxConnections":-1,"backlogSize":100,"bufferSize":4096,"httpHeadersTimeout":"15250w1d23h47m16s854ms775us807ns","maxHeadersSize":131072,"maxRequestBodySize":16777216,"err":"(48) Address already in use"}
{"lvl":"NOT","ts":"2023-08-06 13:44:56.835+03:00","msg":"Rest server could not be started","topics":"beacnde","tid":231629305,"file":"nimbus_binary_common.nim:370","address":"127.0.0.1:9952","reason":"Could not create HTTP server instance"}
```
2023-08-07 04:58:50 +02:00
Etan Kissling
5b70a686e3
further adjust test_keymanager_api logs (#5259)
It is still unclear how `test_keymanager_api` sometimes fails in CI;
further adjust logging parameters.
2023-08-05 13:12:44 +00:00
Etan Kissling
40e9bdc220
update port assignments to support more Jenkins executors (#5243)
Some Linux hosts have 3 concurrent executors. To avoid job failure
due to network port conflicts, adjust the port assignments.
2023-08-03 20:43:45 +00:00
Etan Kissling
ed213538c7
more log lines when jobs fail (#5226)
Increase log lines emitted on test failure to 1000.
2023-07-31 15:03:32 +02:00
Etan Kissling
971b4483c5
add libnimbus_lc.a C library (#5122)
Add a new C library for processing light client data based on the Nimbus
implementation. This can be used from other, non-Nimbus components.
2023-07-19 09:48:39 +02:00
Miran
283f716593
update required mdbook versions (#5125)
I couldn't install those packages with the versions previously stated.
The new versions install successfully,
and `make publish-book` works without errors.
2023-06-26 16:04:01 +00:00
tersec
38a6706509
initial version of mock builder relay (#5034) 2023-06-06 15:21:15 +00:00
Etan Kissling
d7890ac013
avoid port number conflict in test_signing_node (#5018)
Allow multiple copies of `test_signing_node` to run concurrently by
ensuring that they use unique network port numbers.
2023-06-01 09:33:25 +00:00
zah
8833acbe23
Add support for using custom remote signers in local sim (#4989)
* Add support for using custom remote signers in local sim

Other changes:

* Enable the Nimbus remote signer in the minimal simulation
* Move all log files into the `logs` folder of the simulation
* Create PID files for all processes and use them during the clean-up
  phase instead of the previous more fragile methods for killing the
  remaining processes.
2023-05-25 15:05:38 +00:00
Zahary Karadjov
01a5a6c14a
Remove some obsolete Makefile targets 2023-05-15 17:41:12 +03:00
henridf
573228ffa0
Rename eth1/ -> el/ and eth1_monitor.nim -> el_monitor.nim (#4944) 2023-05-15 05:05:12 +00:00
tersec
8686991890
add optimized Linux amd64 flavor (#4914)
* add optimized Linux amd64 flavor

* copyright year
2023-05-11 13:05:52 +03:00
tersec
630ab3567e
actually reach capella fork epoch in mainnet local sims (#4845) 2023-04-20 18:18:35 +03:00
Zahary Karadjov
69d737e61d
Remove the Makefile targets related to the deprecated zhejiang testnet 2023-04-18 15:07:11 +03:00
Etan Kissling
450f06566b
accelerate execution layer sync using light client (#4805)
Turn on `--sync-light-client` option by default, now that it has shown
stability in local testnets.
2023-04-10 14:28:46 +00:00