Commit Graph

6960 Commits

Author SHA1 Message Date
Jacek Sieka 045c4cf185
electra attestation updates (#6295)
* electra attestation updates

In Electra, we have two attestation formats: on-chain and on-network -
the former combines all committees of a slot in a single committee bit
list.

This PR makes a number of cleanups to move towards fixing this -
attestation packing however still needs to be fixed as it currently
creates attestations with a single committee only which is very
inefficient.

* more attestations in the blocks

* signing and aggregation fixes

* tool fix

* test, import
2024-05-17 15:37:41 +03:00
tersec 826bf4c3ee
be more optimistic about electra 2024-05-17 07:13:30 +00:00
Eugene Kabanov 41db536d63
Fix el-manager warnings and issues. (#6293) 2024-05-16 13:54:51 +02:00
tersec 4355f81731
temporarily disable optimistic block hashing on electra 2024-05-16 11:17:31 +00:00
tersec c7b916fe7b
rename depositReceipts/exits to depositRequests/withdrawalRequests 2024-05-16 00:23:00 +00:00
tersec b9151d43ce
produce blobs in electra 2024-05-15 14:49:57 +00:00
tersec 111e5d8006
add push raises to nimbus_light_client 2024-05-15 14:01:52 +00:00
tersec 69f13eaa51
add electra gossip transition 2024-05-15 13:30:49 +00:00
Eugene Kabanov 0b8cb4efc4
Add metrics to all RPC {state_id} endpoints. (#6282) 2024-05-15 09:52:57 +03:00
tersec d0400e408b
rename ExitV1 to WithdrawalRequestV1 (#6290) 2024-05-15 06:44:52 +02:00
tersec c0601608f9
rm future_combinators (#6289) 2024-05-14 22:14:26 +02:00
tersec 0ca5211f6a
enable nbn electra block processing (#6288) 2024-05-14 20:29:03 +02:00
Eugene Kabanov e6b9bfc9e4
el_manager initial refactor. (#6228)
* Initial commit.

* Address review comments and fix missing primitive.

* Fix developer build.

* More asyncraises updates.

* Refactor and optimize forkchoiceUpdated() and sendNewPayload().

* Fix runtime assertion.

* Refactor getPayload().
2024-05-14 21:03:30 +03:00
tersec c1b9e82502
electra attestation gossip plumbing (#6287) 2024-05-14 19:01:26 +03:00
tersec 1c3aaa7be2
add (Signed)AggregateAndProof SSZ tests (#6285) 2024-05-14 13:51:06 +02:00
tersec 9c669cf57a
some debugRaiseAssert to debugComment; unblock some spec tests (#6284) 2024-05-14 12:19:24 +03:00
tersec 3f972a2ca5
add some support for electra aggregated attestations (#6283) 2024-05-14 06:12:35 +02:00
Etan Kissling 87605d08a7
bump `nim-eth` to `c482b4c5b658a77cc96b49d4a397aa6d98472ac7` (#6281)
- Introduce wrapper type for EIP-4844 transactions
2024-05-13 17:58:47 +02:00
Jacek Sieka 8ca537c8b9
libp2p: bump (#6280)
* fixes Defect on slow send
* avoid compiler warnings from chronos
* improve latency on send fast path
* avoid copying in message cache, improving heartbeat performance
2024-05-09 17:24:29 +02:00
Jacek Sieka 31fdbae9d4
ssz: bump to disable arm64 hashtree (#6278) 2024-05-09 08:15:22 +02:00
tersec 6b8061b5d6
automated consensus spec URL updating to v1.5.0-alpha.2 (#6279) 2024-05-09 05:03:10 +00:00
tersec 1051c3c9c5
use upstream/version-2-0 of Nim in CI (#6277) 2024-05-09 02:22:28 +02:00
tersec 137d969f1d
configure block_sim to start with Deneb genesis (#6274) 2024-05-08 06:38:49 +00:00
tersec 963e0bb92b
use EF consensus spec v1.5.0-alpha.2 test vectors (#6272) 2024-05-08 04:43:05 +02:00
tersec 1b30dcc165
initial electra attestation pool changes; electra block_sim (#6255) 2024-05-07 15:01:51 +00:00
dependabot[bot] 70d6c361c4
Bump jinja2 from 3.1.3 to 3.1.4 in /docs (#6269)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 22:35:57 +00:00
dependabot[bot] 72ac82ec0b
Bump jinja2 from 3.1.3 to 3.1.4 in /ncli (#6268)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-06 22:35:13 +00:00
Jakub Sokołowski 7acf383da2
ci: pin Nim for PR builds to v2.0.4 temporarily (#6267)
Mitigation for:
https://github.com/nim-lang/Nim/issues/23568

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-05-06 22:33:53 +00:00
Jakub Sokołowski 4a1a2c8196
add packages to Nix flake config, move to repo root
This way we can actually build and run a node using just:
```sh
nix run 'github:status-im/nimbus-eth2?submodules=1'
```
The `?submodules=1` part should eventually not be necessary.
For more details see:
https://github.com/NixOS/nix/issues/4423

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2024-05-06 16:57:23 +02:00
tersec c41fe698cf
small datatypes cleanups (#6266) 2024-05-06 10:21:37 +02:00
Eugene Kabanov a6f68d3edc
Fix POST to /eth/v2/beacon/blocks unable to verify correct block signature. (#6261) 2024-05-06 04:15:17 +00:00
Jacek Sieka d0cea28a79
chronos: bump (#6264)
* Revert "revert to v2.0.4"

This reverts commit fc3fad2433.

* chronos: bump

Maybe work around https://github.com/nim-lang/Nim/issues/23568
2024-05-05 19:36:16 +02:00
Jacek Sieka 2969e187b8
ssz: bump (#6262)
*  fix missing arm64 symbols
* official release ver
2024-05-05 13:35:19 +02:00
Etan Kissling 8c84e835c6
bump `nim-chronicles` to `33761a5f77610d3f87f774244490eae43a9ac5a1` (#6265)
- Fixing CI.
2024-05-05 03:25:29 +02:00
tersec fc3fad2433
revert to v2.0.4 2024-05-04 08:39:33 +00:00
Eugene Kabanov 484f48953b
Fix POST to eth/v1/builder/blinded_blocks missing header Eth-Consensus-Version. (#6256)
* Fix submitBlindededBlock() do not send consensus-version HTTP header.

* Address review comments.
2024-05-03 01:08:16 +00:00
Jacek Sieka 7bef68ce93
libp2p: bump (#6260)
Improves memory and cpu efficiency of seen/idonwant caches (100mb mem
savings on holesky)
2024-05-02 14:29:26 +02:00
Etan Kissling bfb9670f79
bump `holesky` to `bc5dfed5d939f611ad519a89d84ae227e83b5570` (#6258)
- Added Blockscout to the list of block explorers
2024-05-02 13:43:01 +02:00
Etan Kissling b6d0bf1df3
bump `gnosis-chain-configs` to `c115f3688c19eb6153e22c1e76477db4ed27fae3` (#6257)
- Bump config to v1.5.0-alpha.0
2024-05-02 12:35:11 +02:00
Etan Kissling 0881d38aad
bump `nim-chronos` to `72f560f049efa42fffb50aff2015782f6f17825e` (#6259)
- Fix RangeError defect being happened using android toolchain.
2024-05-02 09:26:17 +00:00
Jacek Sieka ab30efaf80
Integrate `hashtree` for better hashing performance (#5188)
status-im/nim-ssz-serialization#35 brings in https://github.com/prysmaticlabs/hashtree as a supported backend for SHA256, giving a nice little performance boost to all hash_tree_root calls on supported platforms / compilers.

Expected gains are on the order of 30% which in the case of a replayed state nets us 0.2-0.3s improvement.

More about this design here: https://hackmd.io/@potuz/BJyrx9DOF - kudos to @potuz for this excellent library!
2024-05-02 08:54:32 +02:00
Etan Kissling 9e8d2e70bd
block pull requests to `stable` (#6001)
* block pull requests to `stable`

Pull requests should be opened against the `unstable` branch.
See https://nimbus.guide/contribute.html#build-and-deploy

* avoid deleting branch to mimic manual close

* avoid triggering on dependabot PRs
2024-05-01 19:30:03 +00:00
Eugene Kabanov c9b54bf1aa
Enable IPv6 for discovery5 using dualstack support. (#6242)
* Make listen-address default to use dualstack.

* Use correct newProtocol().

* Bump nim-eth.

* Bump nim-eth one more time.

* Use `*` instead of IPv6 address for dualstack sockets.

* Bump chronos and nim-eth.

* Use new constructor.

* Fix listenAddress should be Opt[T] not Option[T].

* Fix options.md.
2024-05-01 19:29:39 +00:00
kaiserd bd33828681
Chore/update libp2p branch master (#6253)
* chore: change nim-libp2p branch from unstable to master

* chore: dummy bump of nim-libp2p version to please linter

---------

Co-authored-by: ksr <kaiserd@users.noreply.github.com>
2024-05-01 19:08:48 +02:00
Eugene Kabanov f3da063510
Fix VC not properly handled getAggregatedAttestation's 404 error. (#6254)
* Fix VC not properly handled getAggregatedAttestation's 404 error.

* Update AllTests.
2024-05-01 15:32:28 +00:00
tersec 1ab6f1654f
Merge remote-tracking branch 'origin/stable' into unstable 2024-04-29 06:08:43 +00:00
Etan Kissling f6fbb054b4
bump `nimbus-build-system` to `a15dc546a053dd94c610a4178887bbf7c908aadb` (#6244)
- switch to Nim `v1.6.20`
2024-04-28 22:37:30 -07:00
tersec e70fa6d6de
rename ElectraIndexedAttestation/ElectraAttesterSlashing for consistency (#6252) 2024-04-29 04:19:10 +02:00
tersec f20a21c015
v24.4.0 2024-04-29 01:00:13 +00:00
tersec abc8bbbf23
add EF consensus spec test Electra fork and transition fixtures (#6251) 2024-04-28 16:13:17 +02:00