6653 Commits

Author SHA1 Message Date
Etan Kissling
5d5517b566
bump nim-websock to 63bcc2902d884c63101e144555ad99421734a70a (#6241)
- Fix CI badge URL
2024-04-26 04:42:21 +00:00
Etan Kissling
224a24c717
bump nim-web3 to 290acb6e6200230fc625209e6654f6bb60aceb13 (#6240)
- Change some FeeHistoryResult field types from Quantity to UInt256
- bump `execution-apis` to `v1.0.0-beta.4`
2024-04-26 04:12:47 +00:00
Etan Kissling
c89843efd4
bump nim-libp2p to 2b5319622c997ce1c80bc62c863e30f3349ee0d7 (#6238)
- fix: reset accept fut in stop
- always allow new data be received if the recvWindow is > 0
- Revert "always allow new data be received if the recvWindow is > 0"
2024-04-26 02:45:12 +00:00
Etan Kissling
98e710b7ff
bump nim-stew to 104132fd0217e846b04dd26a5fbe3e43a4929a05 (#6239)
- Update LRU directives
2024-04-26 02:33:21 +00:00
Etan Kissling
d864ab717f
bump nim-chronicles to 856514a5b10e9293f6cdcf4cc60d7bb969f6b1c0 (#6237)
- task requires
- Fix CI badge URL
2024-04-26 02:09:56 +00:00
Etan Kissling
23116bafee
bump geth to v1.14.0 (#6236)
- https://github.com/ethereum/go-ethereum/releases/tag/v1.14.0
2024-04-26 00:07:20 +00:00
tersec
b0f58a58b6
add EF consensus spec test Electra consolidation operations fixture (#6235) 2024-04-25 18:50:54 +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
8c4ddd64c0
add EF consensus spec test attester slashing, proposer slashing, voluntary exit, and execution layer withdrawal request tests (#6234) 2024-04-25 08:41:17 +00:00
Kim De Mey
70a41bd78a
Update nimbus.guide color schemes to be closer to nimbus.team (#6227)
The new nimbus.team website got launched with different
color schemes than the previous.
This is a small attempt to get the color schemes (dark/light)
closer to those used on nimbus.team.

There was already a dark scheme added before. This change just
sets that dark scheme as default, as is also the case for
nimbus.team.

It also removes orange/amber colors from the light scheme.
2024-04-24 19:14:33 +02:00
tersec
90ac2def31
switch back to version-2-0 (#6233) 2024-04-24 13:49:05 +00:00
tersec
f53271eaaa
add rest of EF consensus spec test Electra epoch transition fixture(s) (#6232) 2024-04-24 12:28:47 +00:00
tersec
9ba6b8d8a7
add Electra epoch rewards test fixture (#6231)
* add Electra epoch rewards test fixture

* version-2-0 still has another issue
2024-04-23 15:47:39 +00:00
tersec
e6e95cbab7
add Electra slot sanity tests (#6230) 2024-04-23 07:58:32 +00:00
tersec
eb997f4e1f
add 10 sub-test-fixtures for electra epoch transitions; use v2.0.4 for Nim 2.x (#6229) 2024-04-23 01:15:55 +00:00
tersec
67a22b3887
add Electra BLS to Execution Change, Block Heaer, Sync Aggregate, and Withdrawals operations test fixtures (#6226) 2024-04-22 12:37:38 +00:00
tersec
87452374e4
add Electra SSZ object test fixture (#6225) 2024-04-22 09:00:38 +00:00
tersec
d139c92df9
explicitly scope AttesterSlashing and IndexedAttestation types to phase0 (#6224) 2024-04-21 05:49:11 +00:00
tersec
caa3b73dbb
move AttesterSlashing and IndexedAttestation from base to phase0 (#6223) 2024-04-21 01:17:02 +00:00
tersec
41f8400f97
fix Electra light client objects; use version-2-0 for Nim again (#6222) 2024-04-19 19:20:45 +00:00
careworry
2ec82fe3ce
chore: remove repetitive words (#6219)
Signed-off-by: careworry <worrycare@outlook.com>
2024-04-19 11:31:15 +00:00
tersec
73738c702c
use consensus spec v1.5.0-alpha.0 test vectors; use Nim v2.0.4 specifically for 2.0.x (#6221) 2024-04-19 02:55:58 +00:00
80edebfd20
fix Nim v2 builds by checking for correct job name (#6218)
Since job folder structure has been changed we don't need the dash.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-04-18 17:08:44 +02:00
tersec
e4b0e24614
add compounding withdrawal helpers (#6217) 2024-04-18 10:12:37 +00:00
tersec
645e627b03
add new Electra beacon chain containers and presets (#6216)
* add new Electra beacon chain containers and presets

* re-enable attestations in electra state transition
2024-04-18 07:30:01 +00:00
tersec
0132f5d689
some consensus spec v1.4.0 spec URL updates (#6215) 2024-04-18 03:00:04 +02:00
tersec
603c83522e
explicitly refer to phase0.{Attestation,TrustedAttestation} rather than sans module name (#6214) 2024-04-17 20:44:29 +00:00
Etan Kissling
4c031a7887
bump nimcrypto to 485f7b3cfa83c1beecc0e31be0e964d697aa74d7 (#6213)
- test refc under Nim 2.0 and later
2024-04-17 14:11:53 +00:00
Etan Kissling
23a4646705
bump nim-chronos to 0d050d582306e8c521c3a4a6f6dcb3c83c93a90f (#6211)
- Add custom ring buffer into chronos streams and transports.
- Add `join()` operation to wait for future completion.
- Ensure that all buffers used inside HTTP client will follow original buffer size.
- Add automatic constructors for TCP and UDP transports.
2024-04-17 14:01:21 +00:00
Etan Kissling
02a61258d4
bump nim-faststreams to 11b9d952a80ec87e2443405a6a5382f9daac51f8 (#6212)
- Fix spelling & grammer errors in the README
2024-04-17 13:43:34 +00:00
Etan Kissling
d03e014bd6
bump nim-bearssl to d81b37dc2011bf3a2bd93500489877c2ce8e6ac3 (#6210)
- Bump cacert to version 2024-03-11.
2024-04-17 15:21:50 +02:00
Etan Kissling
c612244451
bump geth to v1.13.15 (#6209)
- https://github.com/ethereum/go-ethereum/releases/tag/v1.13.15
2024-04-17 15:07:44 +02:00
tersec
867995acd1
some consensus spec v1.4.0 spec URL updates (#6208) 2024-04-17 05:51:16 +02:00
tersec
bb2ca747bc
move Attestation-related types/logging from base to phase0 types (#6207) 2024-04-16 19:01:30 +00:00
tersec
bd3c9af0f8
implement EIP-7002 (#6206)
* implement EIP-7002

* fix linting
2024-04-16 18:09:39 +00:00
Etan Kissling
c7d5ad78e1
avoid --gc:arc issue in validator key caching (#6203)
The current implementation of the validator key cache as introduced in
#5883 leads to issues when compiling with `--gc:arc`. Namely, the assert
in `injectdestructors.nim` > `destructiveMoveVar` is triggered:

```nim
assert n.kind != nkSym or not hasDestructor(c, n.sym.typ)
```

`cached == nkSym`, and `n.sym.typ == ref HashedValidatorPubKeyItem` with
`hasDestructor(c, n.sym.typ) == true`.

Inlining the `addr ...[]` avoids the problem and allows `--gc:arc`
compilation as part of LC wasm demo project.

Compilation command:

```sh
nim c \
    -d:disable_libbacktrace \
    -d:disableMarchNative \
    -d:disableLTO \
    -d:emscripten \
    -d:release \
    -d:useGcAssert \
    -d:useSysAssert \
    --debuginfo:off \
    --nimcache:nimcache \
    --os:linux \
    --cpu:wasm32 \
    --cc:clang \
    --clang.exe:emcc \
    --clang.linkerexe:emcc \
    --gc:arc \
    --exceptions:goto \
    --define:noSignalHandler \
    --define:danger \
    --panics:on \
    --passC:-fpic \
    --passL:-Os \
    --passL:-fpic \
    --passC:'-pthread' \
    --passL:'-pthread' \
    --passC:'-sASSERTIONS' \
    --passL:'-sASSERTIONS' \
    --passC:'-sINITIAL_MEMORY=256MB' \
    --passL:'-sINITIAL_MEMORY=256MB' \
    --passC:'-sSTACK_SIZE=128MB' \
    --passL:'-sSTACK_SIZE=128MB' \
    --passC:'-sUSE_PTHREADS=1' \
    --passL:'-sUSE_PTHREADS=1' \
    --passC:'-sPTHREAD_POOL_SIZE_STRICT=0' \
    --passL:'-sPTHREAD_POOL_SIZE_STRICT=0' \
    --passL:'-sEXPORTED_FUNCTIONS="[_free, _malloc, _NimMain, _ETHRandomNumberCreate, _ETHConsensusConfigCreateFromYaml, _ETHConsensusConfigGetConsensusVersionAtEpoch, _ETHBeaconStateCreateFromSsz, _ETHBeaconStateDestroy, _ETHBeaconStateCopyGenesisValidatorsRoot, _ETHRootDestroy, _ETHForkDigestsCreateFromState, _ETHBeaconClockCreateFromState, _ETHBeaconClockGetSlot, _ETHLightClientStoreCreateFromBootstrap, _ETHLightClientStoreDestroy, _kETHLcSyncKind_UpdatesByRange, _kETHLcSyncKind_FinalityUpdate, _kETHLcSyncKind_OptimisticUpdate, _ETHLightClientStoreGetNextSyncTask, _ETHLightClientStoreGetMillisecondsToNextSyncTask, _ETHLightClientStoreProcessUpdatesByRange, _ETHLightClientStoreProcessFinalityUpdate, _ETHLightClientStoreProcessOptimisticUpdate, _ETHLightClientStoreGetFinalizedHeader, _ETHLightClientStoreIsNextSyncCommitteeKnown, _ETHLightClientStoreGetOptimisticHeader, _ETHLightClientStoreGetSafetyThreshold, _ETHLightClientHeaderCreateCopy, _ETHLightClientHeaderDestroy, _ETHLightClientHeaderCopyBeaconRoot, _ETHLightClientHeaderGetBeacon, _ETHBeaconBlockHeaderGetSlot, _ETHBeaconBlockHeaderGetProposerIndex, _ETHBeaconBlockHeaderGetParentRoot, _ETHBeaconBlockHeaderGetStateRoot, _ETHBeaconBlockHeaderGetBodyRoot, _ETHLightClientHeaderCopyExecutionHash, _ETHLightClientHeaderGetExecution, _ETHExecutionPayloadHeaderGetParentHash, _ETHExecutionPayloadHeaderGetFeeRecipient, _ETHExecutionPayloadHeaderGetStateRoot, _ETHExecutionPayloadHeaderGetReceiptsRoot, _ETHExecutionPayloadHeaderGetLogsBloom, _ETHExecutionPayloadHeaderGetPrevRandao, _ETHExecutionPayloadHeaderGetBlockNumber, _ETHExecutionPayloadHeaderGetGasLimit, _ETHExecutionPayloadHeaderGetGasUsed, _ETHExecutionPayloadHeaderGetTimestamp, _ETHExecutionPayloadHeaderGetExtraDataBytes, _ETHExecutionPayloadHeaderGetBaseFeePerGas, _ETHExecutionPayloadHeaderGetBlobGasUsed, _ETHExecutionPayloadHeaderGetExcessBlobGas, _ETHExecutionBlockHeaderCreateFromJson, _ETHExecutionBlockHeaderDestroy, _ETHExecutionBlockHeaderGetTransactionsRoot, _ETHExecutionBlockHeaderGetWithdrawalsRoot, _ETHTransactionsCreateFromJson, _ETHTransactionsDestroy, _ETHTransactionsGetCount, _ETHTransactionsGet, _ETHTransactionGetHash, _ETHTransactionGetFrom, _ETHTransactionGetNonce, _ETHTransactionGetMaxPriorityFeePerGas, _ETHTransactionGetMaxFeePerGas, _ETHTransactionGetGas, _ETHTransactionIsCreatingContract, _ETHTransactionGetTo, _ETHTransactionGetValue, _ETHTransactionGetInputBytes, _ETHTransactionGetBytes, _ETHTransactionGetEip6493Root, _ETHTransactionGetEip6493Bytes, _ETHTransactionGetNumEip6493SnappyBytes, _ETHReceiptsCreateFromJson, _ETHReceiptsDestroy, _ETHReceiptsGet, _ETHReceiptHasStatus, _ETHReceiptGetBytes, _ETHReceiptGetEip6493Bytes, _ETHReceiptGetNumEip6493SnappyBytes]"' \
    --passL:'-sEXPORTED_RUNTIME_METHODS="[lengthBytesUTF8, stringToNewUTF8]"' \
    --passL:'-Wl,--no-entry' \
    --noMain:on \
    --passL:'-o libnimbus_lc.js' \
    nimbus-eth2/beacon_chain/libnimbus_lc/libnimbus_lc.nim
```
2024-04-16 11:47:18 +02:00
Eugene Kabanov
c5f04dd237
produceBlockV3 call should send execution_payload_blinded value as boolean. (#6204)
* Fix `execution_payload_blinded` in produceBlockV3 response should be boolean not string.

* Address review comments.
2024-04-15 23:08:41 +00:00
Etan Kissling
c57fcb426a
bump nim-libp2p to 89cad5a3ba9088cc721682469a10917903da25a0 (#6199)
- add support for setting protocol handlers with `{.raises.}` annotation
- fix: valueOr and withValue utilities
- fix: remove explicit param from GossipSubParams constructor
2024-04-12 11:12:44 +02:00
Etan Kissling
6530a36a0f
bump nim-nat-traversal to 4c4fc6f1436b5e0468a6b3a7929bb603f0b43f33 (#6197)
- bump `miniupnp` to `miniupnpc_2_2_7`
2024-04-11 18:10:19 +02:00
tersec
e51c5ec783
add Electra blob support to block/blob quarantines, block processor, and request manager (#6201) 2024-04-11 09:31:39 +00:00
tersec
205d63a897
fill in executionpayload for/from GetPayloadV4 (#6200) 2024-04-10 23:34:34 +00:00
Etan Kissling
b9f9fc4035
bump nim-json-serialization to 1ac1d69f9512d55d15e8218a9dbdff129bf96ddb (#6198)
- Add JsonValueRef compare operation
2024-04-10 18:50:44 +00:00
Etan Kissling
c332c88f40
bump nim-libbacktrace to 66864ed4ae18d14a2b4acb4549561efd7755351f (#6196)
- quote and library paths for use in passc/passl to allow embedded spaces
- use strutils.escape to handle more special chars
2024-04-10 17:30:28 +00:00
Etan Kissling
2f388df0b4
bump nim-normalize to b828f07037c87382b7f20f96e6cca6e85788dd25 (#6195)
- test refc in Nim 2.0 and newer
- update CI
- update CI
2024-04-10 16:21:55 +00:00
Etan Kissling
7e58286887
bump nim-snappy to aaef74113cadaaca690c6144eae0cf2c2a10db28 (#6194)
- bump `snappycpp` to `1.2.0`
2024-04-10 15:36:55 +00:00
Etan Kissling
b305a58f57
bump nim-unicodedb to 3db16f8ece5d0eba310c8f1ed812c6ff5a21a34a (#6193)
- test refc in Nim 2.0 and newer
- update CI
- update CI
2024-04-10 17:03:36 +02:00
Etan Kissling
ef3aeb09a1
bump nimbus-build-system to d7e7f1044def3c62d0b4bcec60c0b53876e44d71 (#6192)
- fix miniupnpc build on Windows by not escaping PATH
- allow overriding CC for libimiupnpc.a and libnatpmp.a targets
- Use -fPIC when building nat traversal
2024-04-10 16:35:09 +02:00
Etan Kissling
9bffc51cf6
allow frontfilling finalized CP block from era file (#6164)
Add support for using era file for the initial checkpoint block.
This should also avoid an error when the beacon node is restarted
before the backfill process has made any progress (#6059).
2024-04-10 14:11:07 +02:00
Etan Kissling
a561024d88
rank peers by their score instead of their memory address (#6149)
The `<` function to compare peers was not exported, leading to the same
peer be acquired over and over again until kick. `mixin` doesn't pull it
into `peerCmp` without `*` export, and with the export no mixin needed.
2024-04-10 14:09:37 +02:00
tersec
e7dede344a
bump nim-web3 to get updated Pectra GetPayloadV4 types (#6191) 2024-04-10 11:38:38 +02:00