Commit Graph

7059 Commits

Author SHA1 Message Date
Etan Kissling 14edccc962
bump nim-json-serialization to `89f7be1783b2f828a95dea1496fdac3510532997` (#6409)
- update ci.yml and be more explicit in .nimble
- extend automatic serialization support for `distinct` in Nim 2
2024-07-03 21:48:47 +00:00
Etan Kissling cac63a3a82
use `pull_request_target` to run PR block action (#6376)
To avoid requiring authorization to run the PR block action for new
contributors, use `pull_request_target`. Running the workflow file from
the destination branch does not require approval.

- https://stackoverflow.com/questions/74957218/what-is-the-difference-between-pull-request-and-pull-request-target-event-in-git
2024-07-03 13:00:39 +02:00
Eugene Kabanov 84a35c85c5
Fix for gcc-14 issues in kzg-4844. (#6403)
* Bump nim-kzg4844.

* Fix code to use proper KZG types.

* Add missing coma.

* Fix compilation issue.

* Bump nim-kzg4844.

* Add debugging output.

* Remove debugging output.

* Restore groupBlobs function.
2024-07-03 10:01:33 +00:00
tersec e54b3e8fda
bump nimbus-build-system for Nim v2.0.8 (#6401) 2024-07-03 04:29:43 +00:00
Etan Kissling 515bd486e6
ensure passing unsigned integer to `rlp.encode` (#6397)
RLP encoding is not defined for signed integers. Make sure to use
unsigned integers when encoding RLP for EL block hash computation.
2024-07-03 01:43:16 +00:00
Etan Kissling fba8cc3ee5
fix EIP reference in Electra type definition (#6398)
The field `withdrawal_requests` is from EIP-7002 instead of EIP-6110.
2024-07-03 01:41:01 +00:00
Etan Kissling 1fd246b23e
explicitly refer to attestation fork in SSZ consensus object tests (#6399)
Use fully qualified types when referring to attestation related types
in tests. We should also consider to merge these to a single runner.
2024-07-03 01:40:47 +00:00
Etan Kissling 12a7ed8c29
bump geth to `v1.14.6` (#6400)
- https://github.com/ethereum/go-ethereum/releases/tag/v1.14.6
2024-07-03 01:40:17 +00:00
tersec 8c67a265d0
bump nim-web3 to align WithdrawalRequestV1 with EIP-7002 and consensus spec (#6395) 2024-07-01 16:07:30 +02:00
tersec 13e766d4df
add database electra block tests (#6394) 2024-07-01 04:18:41 +00:00
Jacek Sieka 68eabc098b
ssz: bump (fixes #6393) 2024-06-30 08:56:52 +02:00
Etan Kissling 08863465a0
deps: update ci.yml and be more explicit in .nimble (#6392)
Bump nim-blscurve, nim-faststreams, nim-http-utils, nim-metrics,
nim-presto, nim-serialization, nim-snappy for explicit refc and use
`results` instead of `stew/results`.
2024-06-28 16:04:04 +02:00
Eugene Kabanov 190dbfd481
Fix empty status string handling, address #6175. (#6391) 2024-06-28 05:54:51 +02:00
Eugene Kabanov bab7d8428f
Bump nim-bearssl. (#6390) 2024-06-27 03:54:04 +02:00
Etan Kissling 9924aec1e3
extend light client protocol for Electra (#6375)
* extend light client protocol for Electra

Add missing Electra support for light client protocol:

- https://github.com/ethereum/consensus-specs/pull/3811

Tested against PR consensus-spec-tests, the test runner automatically
picks up the new tests once available.

* workaround `version-2-0`: `Error: cannot instantiate: 'SomeUnsignedInt'`

* fix initialization when Electra not scheduled

* try reduce stack size in test

* put correct sync committee branch version into DB

* adjust fork schedule in light client data tests

* further reduce stack size

* split function into multiple parts

* rename variable

* regenerate test reports to cover new Electra tests

* add Nim bug reference
2024-06-26 19:02:03 +00:00
Etan Kissling 3da85e593f
update references for LC related Nim issues (#6389)
Addresses feedback from #6375 that is applicable to pre-existing code
moreso than to the new PR.
2024-06-26 14:31:36 +02:00
tersec 288540e794
fix UnnamedBreak deprecation build warnings (#6388) 2024-06-26 10:48:49 +02:00
tersec 2d4ece0c3b
bump nimbus-build-system to use Nim v2.0.6 (#6386)
* bump nimbus-build-system to use Nim v2.0.6

* fix: update name and hash for csources of Nim v2

Otherwise we get errors like:
```
Building: Nim compiler
/build/source/vendor/nimbus-build-system/vendor/Nim /build/source
cmd: git clone -q --depth 1 -b master https://github.com/nim-lang/csources_v2.git csources_v2
24.6.0-dirty
cmd: cd csources_v2
ci/funs.sh: line 10: cd: csources_v2: No such file or directory
make[1]: *** [vendor/nimbus-build-system/makefiles/targets.mk:81: build-nim] Error 1
```
Also need to add source for `checksums` repository.

Signed-off-by: Jakub Sokołowski <jakub@status.im>

---------

Signed-off-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: Jakub Sokołowski <jakub@status.im>
2024-06-25 00:02:16 +02:00
Etan Kissling 7b680bb72d
bump nim-libp2p to `v1.2.1-rc` (#6354)
- chore(README): small PRs
- Send IDONTWANT before validating message
- chore(peer-scoring): enhance score trace logs (x2)
- chore: fix typos
- fix(multicodec): remove unnecessary "!=" operator
2024-06-24 10:05:01 +00:00
tersec a787c85589
Merge remote-tracking branch 'origin/stable' into unstable 2024-06-24 09:23:31 +00:00
Etan Kissling cd4de1357a
during proposal duties, perform sync aggregation duties if not received (#6384)
Including sync contributions into a block affects validator rewards.
When we have not received aggregate sync contributions, but have seen
individual messages, we can produce the contributions locally, improving
validator rewards when subscribing to all subnets or when having a
non-aggregating attached validator in the sync committee.
2024-06-24 09:13:15 +00:00
tersec 7d00786d5e
version v24.6.0 2024-06-24 07:25:15 +00:00
Etan Kissling e4efe9ed75
ensure that rarely ran files are compiled on PR (#6379)
* ensure that rarely ran files are compiled on PR

Add some missing files to `isMainModule` developer internal builds CI.

* fix fork choice compilation

* fix `rest_api_benchmark` compilation

* skip linking

* fix loop

* fix `mock_genesis`

* fix signedness
2024-06-23 23:35:56 +00:00
Etan Kissling 6d0c9d37fa
produce Elctra attestations when running tests (#6383)
Test blocks don't include Electra attestations currently so finality
breaks and tests fail if prolonged. Fix that.
2024-06-23 13:06:58 +00:00
tersec 9b6b42c8f9
some consensus spec URL updates to v1.5.0-alpha.3 (#6382) 2024-06-22 07:28:19 +02:00
tersec b759038ba8
increase TNS state download timeout to 90 (#6363) 2024-06-21 22:14:28 +00:00
Etan Kissling 8bc53bde71
bump holesky to `874c199423ccd180607320c38cbaca05d9a1573a` (#6377)
- Add Chainlens explorer for Holesky
- update repository layout
2024-06-21 21:51:25 +00:00
Etan Kissling 35c6e68d84
bump nim-ssz-serialization to `b71ebc41c8e5027580be77a9707df1a64e6d9c8b` (#6381)
- Digest fallback when using llvm-mingw on Windows
2024-06-21 20:23:16 +00:00
Etan Kissling 573e0f09e1
bump nim-libbacktrace to `4db9cae5ac0225e3439f577f5c5cd67086232b3f` (#6380)
- bump whereami to `f5e3eac441acbb4ec1fe3e2c32646248ae463398`
2024-06-21 20:09:18 +00:00
Etan Kissling 784a5d3e02
remove prater reference from era file docs (#6378)
Prater network is no longer relevant, remove reference from docs.
2024-06-21 20:06:54 +00:00
Etan Kissling 31653d5869
fix DB size estimates for light client data (#6373)
Addresses two inaccuracies in light client data size documentation:

1. `SyncCommittee` pubkeys serialize are 48 bytes not 64 bytes
2. Some of the estimates used 1000 vs 1024 bytes/KB, aligned to 1024
2024-06-21 12:39:38 +00:00
Etan Kissling 22b5bc6256
cleanup Electra fork references (#6372)
Adjust two fork references to match surrounding code style.
2024-06-20 21:09:41 +02:00
Eugene Kabanov 61610fd243
BN: Disable genesis sync via long-range-sync argument. (#6361)
* Initial commit.

* Update options.md.

* Add pre-database initialization weak subjectivity period check.

* Add proper log message.
2024-06-20 18:57:08 +00:00
Etan Kissling f30f670584
bump nim-sqlite3-abi to `262fa35f092cb254abd6eff2a9d46b99392a6dca` (#6356)
- bump `sqlite-amalgamation` to `3.45.3`
2024-06-19 03:31:07 +00:00
Kim De Mey 7a8c1d818a
Bump nim-eth for Opt changes and make Opt related adjustments (#6369) 2024-06-18 23:46:51 +02:00
Jakub Sokołowski cb2c379b37
update links to public API endpoints in readme
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-06-18 09:03:58 +02:00
tersec bfd1a36fcf
add engine API consolidation requests support for getPayloadV4/newPayloadV4 (#6368) 2024-06-18 07:35:36 +02:00
Miran 597f47317f
use Nim 2.0.6 (#6366) 2024-06-18 03:54:15 +02:00
Eugene Kabanov 3a0e037c7d
Bump nim-stew. (#6367) 2024-06-18 00:08:40 +00:00
tersec 350c4eaa39
rm Goerli remnant; add explanatory comment about opt sync validation (#6365) 2024-06-17 09:40:41 +00:00
tersec 88fa8b17ea
automated consensus spec URL updating to v1.5.0-alpha.3 (#6364) 2024-06-16 02:59:25 +02:00
tersec 0fab9682a6
use EF consensus-specs v1.5.0-alpha.3 test vectors (#6362) 2024-06-16 00:15:27 +02:00
Etan Kissling 7920dd0bb9
bump nim-metrics to `2e29df095059a7a787b234f040612b742567b2bc` (#6353)
- use monotonic clock for update checks
- Adopt asyncraises and add metrics middleware implementation
2024-06-15 02:39:18 +00:00
Etan Kissling 20923a2465
bump nimbus-build-system to `8cdaec502b5a48f2514e11209f0d81a001d2a2b1` (#6357)
- bump rocksdb
2024-06-15 02:37:44 +00:00
tersec a93ab7cf3b
Revert "bump nim-kzg4844 for gcc-14 compatibility (#6342)" (#6360)
This reverts commit c5326619a4.
2024-06-14 23:23:19 +00:00
tersec 05d2271a9f
Revert "Revert "bump nim-bearssl for gcc-14 compatibility (#6337)" (#6346)" (#6359)
This reverts commit 3d65bdcb09.
2024-06-14 19:06:58 +02:00
tersec 50894ad0d5
add Grandine to known libp2p agents 2024-06-14 04:25:42 +00:00
Etan Kissling 9fc870777c
remove Bellatrix EL syncing support from light client (#6352)
Bellatrix light client data does not contain the EL block hash, so we
had to follow blocks gossip to learn the EL `block_hash` of such blocks.
Now that Bellatrix is obsolete, we can simplify EL syncing logic under
light client scenarios. Bellatrix light client data can still be used
to advance the light client sync itself, but will no longer result in
`engine_forkchoiceUpdated` calls until the sync reaches Capella. This
also frees up some memory as we no longer have to retain blocks.
2024-06-14 01:23:17 +00:00
Eugene Kabanov c5326619a4
bump nim-kzg4844 for gcc-14 compatibility (#6342)
* Bump nim-kzg4844.

* Fix code to use proper KZG types.

* Add missing coma.

* Fix compilation issue.

* Bump nim-kzg4844.
2024-06-14 00:46:03 +00:00
Etan Kissling b6d6247fa1
fix light client topic subscriptions (#6351)
Using `let contextFork = consensusFork` no longer seems to work to avoid
capturing the `var` loop variable; it ends up being `Electra` for all
handlers. Use `closureScope` as a more sustainable fix.
2024-06-14 00:45:40 +00:00