Commit Graph

6997 Commits

Author SHA1 Message Date
Etan Kissling 6f0a17b50d
bump nim-eth to `98b2a34075614f9ea8bd629c18580c16e8065397` (#6520)
- Fix rlpx hello crash caused by rlp decoder
2024-08-28 21:37:58 +00:00
Etan Kissling f772a272de
bump nim-unittest2 to `36c714fb3ddcf9e63b8772296dede80a788d81b7` (#6529)
- Ensure test is marked as failed when check is inside `proc`
2024-08-28 21:20:55 +00:00
Etan Kissling 79814a7125
bump nim-ssz-serialization to `b5aa78cae197cc97277be050ba69ef9c5d33aad1` (#6528)
- bump hashtree to `v0.2.0`
2024-08-28 20:38:01 +00:00
Etan Kissling b70de4f80a
bump nim-json-serialization to `8a4ed98bbd0a9479df15af2fa31da38a586ea6d5` (#6522)
- Update `nimbus-eth2` reference
- Add compile time switch to alter encoder enum representation
2024-08-28 22:23:37 +02:00
Etan Kissling 266f11fcfe
bump nim-results to `71d404b314479a6205bfd050f4fe5fe49cdafc69` (#6527)
- test `?` in `ok` (fixes #23)
- add `nph` formatting linter
- `lent` support
- v0.5.0
- disable `lent` with `orc` until 2.2
2024-08-28 22:23:08 +02:00
Etan Kissling 53abf2b908
bump nim-blscurve to `72d1980c8770ed2e6fb30c7f297b835d43aa925d` (#6517)
- Use correct header file for `blst_aux` ABI
2024-08-28 21:03:08 +02:00
Etan Kissling 54e5411633
bump nim-chronicles to `a28bb9781ce74e725796c307ad05083e646872be` (#6518)
- Cache time representation
2024-08-28 21:00:19 +02:00
Etan Kissling 8b530320c5
bump nim-metrics to `29bb7ba63cd884770169891687595348a70cf166` (#6525)
- Fix chronos dependency to require version >= v4.0.3
- make chronicles work with metrics logging
2024-08-28 20:57:49 +02:00
Etan Kissling de2b354198
bump nim-libbacktrace to `b6e26f03c091a8e3bba6adc06198fc3055bacc66` (#6523)
- bump libbacktrace to `86885d14049fab06ef8a33aac51664230ca09200`
- bump whereami to `dcb52a058dc14530ba9ae05e4339bd3ddfae0e0e`
2024-08-28 20:33:14 +02:00
Etan Kissling bd8d2e5ddd
bump holesky to `e7fdf62fc0e59434d9d3155d8ad6ed06bcfa0dde` (#6516)
- Add axol.io faucet to README.md
- Add lodestar holesky public enode
2024-08-28 19:31:49 +02:00
Etan Kissling 20e85f836f
bump nim-http-utils to `8b88ad6dd9a6326c29f82067800c483d9410d873` (#6521)
- Add HTTP response code 207 (Multi-Status)
2024-08-28 16:31:03 +00:00
Etan Kissling 73be2af0d9
more concise RLP decoding syntax in EL helpers (#6514)
The comment in `readExecutionTransaction` is not actually relevant when
the `rlp.decode` template is called from a non-generic function.
The function still cannot be simply inlined; `is_valid_versioned_hashes`
is itself generic and would require an `export eth_types_rlp` to work
properly (generic sandwich issue). The non-generic function wrapper
seems simpler and avoids injecting RLP into importing modules.
2024-08-28 14:21:28 +02:00
Joel Williamson 14f3584a0b
The git-lfs pacakge is required on Arch (#6513) 2024-08-27 15:58:55 -04:00
Pedro Miranda f9e44b2a3b
Improved electra attestations packing (#6498)
* test disjoint comittee bits

* test for aggregated attestations with disjoint bits

* improved attestation pool on-chain collecting and packing

* addressed format issues

* improved sorting method

* updated AllTests-mainnet file

* updated AllTests-mainnet file

* review corrections

* review corrections

* removed old phase0 artifacts

---------

Co-authored-by: Pedro Miranda <pedro.miranda@nimbus.team>
2024-08-23 13:26:35 +02:00
tersec 8c2e8f2b0f
some v1.5.0-alpha.5 consensus spec URL updates (#6509) 2024-08-23 12:43:54 +02:00
Jacek Sieka 42c4ea109c
Revert "stop testing broken upstream version-2-0" (#6506)
* Revert "stop testing broken upstream version-2-0 (#6499)"

This reverts commit 2be7eba25a.

* fix field warning template
2024-08-23 12:18:06 +02:00
tersec e4f18cba09
stop tracking phase0 spec artifact of current/prev target epoch for attestation block packing (#6508) 2024-08-22 20:28:21 +02:00
tersec 44cc72c104
refactor engine API conversions out of EL manager (#6507) 2024-08-22 16:12:03 +02:00
Advaita Saha 77c36b3c59
kurtosis network testing script (#6489)
* feat: kurtosis check running script

* fix: remove redundant code

* fix: suggested changes

* fix: typo Docker
2024-08-22 08:16:54 +00:00
Etan Kissling bd09e4d864
inhibit LC sync while DAG is synced (#6505)
Normally, running LC and DAG sync at same time is fine, but on tiny
devnet where some peer may not support the LC data, we can end up in
situation where peer gets disconnected when DAG is in sync, because
DAG sync never uses any req/resp on local devnet (perfect nw conditions)
so the LC sync over minutes removes the peer as sync is stuck.

We don't need to actively sync LC from network if DAG is already synced,
preventing this specific low peer devnet issue (there are others still).
LC is still locally updated when DAG finalized checkpoint advances.
2024-08-22 06:13:47 +00:00
Etan Kissling a597fe95fa
check blob versioned hashes when no EL is connected (#6501)
* check blob versioned hashes when no EL is connected

When no EL is conencted, we have to at the very least ensure that the
data in the beacon block is consistent with the execution payload.
We already do this for the block hash, but also have to do it for the
`blob_kzg_commitments`. To validate that they are linked with the
execution payload, we have to RLP decode all EIP-4844 blob transactions
and compare their blob versioned hashes with the hashed commitments.

* simplify loop in case where `blob_versioned_hashes` doesn't exist

* skip blob transaction parsing pre Deneb
2024-08-22 06:04:03 +00:00
tersec 21aeeaf561
automated consensus spec URL updating to v1.5.0-alpha.5 (#6504) 2024-08-21 14:25:19 +02:00
tersec 485ed833e0
use EF consensus-specs v1.5.0-alpha.5 test vectors (#6503) 2024-08-21 12:18:33 +02:00
Etan Kissling 8a87d4383a
bump nim-sqlite3-abi to `v3.46.1.0` (#6500)
- bump sqlite-amalgamation to `3.46.1`
2024-08-21 06:10:29 +00:00
tersec 2be7eba25a
stop testing broken upstream version-2-0 (#6499) 2024-08-20 14:33:54 +02:00
Etan Kissling b511f3eeb7
Use Pippenger multiplication for combining multiple sigs of same msg (#6484)
Newer `blst` releases expose multiscalar Pippenger multiplication that
allows accelerated verification of signatures pertaining to same msg.

- https://gist.github.com/wemeetagain/d52fc4b077f80db6e423935244c2afb2
2024-08-16 23:42:46 +02:00
Etan Kissling 6f7c4fffe7
Synchronously check all `transactions` to have non-zero length (#6491)
Reject blocks with zero length transactions early when no EL connected.

- https://github.com/ethereum/consensus-specs/pull/3885
2024-08-16 22:52:35 +02:00
Etan Kissling ca8c2ceb24
bump nim-eth to `cc6d88962e4a22170361b576534246bd57974d80` (#6494)
- port eth2_digest speedups to eth_hash
- hash compatibility fix
- Revert speedups
- Removed obsolete chunked rlpx message protocol extension
- Treat putting empty data in hexary trie as deleting data
2024-08-16 22:51:19 +02:00
Etan Kissling 231c41ea78
bump nim-blscurve to `d5d595a59ca906898c51af7f9511a01082435393` (#6492)
* bump nim-blscurve to `d5d595a59ca906898c51af7f9511a01082435393`

- Regenerate `blst_abi.nim`
- Expose Pippenger multiplication for combining multiple sigs of same msg

* bump nim-kzg4844 to `7bd7f115db8983be2549ce1a55891355c404fdc0`

- Ensure compatibility with patched `blst.h` from `nim-blscurve`
2024-08-16 19:48:10 +02:00
tersec cb581482e8
bump sepolia for new bootnode (#6490) 2024-08-14 06:48:36 +02:00
Jacek Sieka 5065584139
results: bump (genericsOpenSym support) (#6488) 2024-08-13 19:23:57 +00:00
tersec 2895df128c
increase TNS state downloading timeout to 120 seconds (#6487) 2024-08-12 03:49:10 +02:00
tersec f258cba816
some v1.5.0-alpha.4 consensus spec URL updates (#6485) 2024-08-10 07:09:37 +02:00
tersec 904318cf83
automated consensus spec URL updating to v1.5.0-alpha.4 (#6483) 2024-08-09 18:24:49 +02:00
tersec 2e40a401b0
use EF consensus-specs v1.5.0-alpha.4 test vectors (#6482) 2024-08-09 15:02:04 +02:00
tersec f5d360dadd
bump sepolia for additional bootnode (#6480) 2024-08-07 19:50:38 +02:00
tersec d2c8561fcd
add some Electra config constants to beacon API config endpoint (#6479) 2024-08-07 18:15:29 +02:00
Etan Kissling 3375875e05
remove option to select Capella fork choice algo (#6478)
* remove option to select Capella fork choice algo

With Deneb having run stable for quite a while now, it's time to remove
the option to select the prior fork choice algo from Capella.

* also remove usage from test
2024-08-07 14:48:05 +00:00
Etan Kissling 32fe62f084
bump nim-secp256k1 to `4470f49bcd6bcbfb59f0eeb67315ca9ddac0bdc0` (#6477)
- bump secp256k1 to `v0.5.1`
2024-08-07 11:40:14 +00:00
Etan Kissling 163403b5d0
bump nim-ssz-serialization to `6f831b79df24af00c10e73e717cbe40d7d0e2439` (#6476)
- update ci.yml and fix deprecations
- Add two convenience aliases from specification
2024-08-07 11:38:25 +00:00
tersec 535819263d
clear old electra attestations from attestation pool 2024-08-07 11:14:57 +00:00
Etan Kissling 053f78dcec
bump nim-toml-serialization to `cb1fc73f3519fed5f3a8fbfa90afc9a96d5f5f5c` (#6475)
- Fix syntax highlighting in README.md
- Do not close `nil` stream when it failed to open
2024-08-06 20:58:17 +00:00
Etan Kissling 5075d9c33a
bump nim-stint to `7c81df9adc80088f46a4c2b8bf2a46c26fab057c` (#6474)
- hash limbs instead of bytes
- fix modmul 256-bit perf
2024-08-06 20:58:04 +00:00
Etan Kissling 51ca617d9f
fix LC header upgrade to Electra (#6473)
Followup on incorrect upgrade procedure in #6375 where `blob_gas_used`
was accidentally copied into `excess_blob_gas` when running Electra
`LightClientStore` with earlier `LightClient(Bootstrap|Update)`.
2024-08-06 15:48:15 +00:00
Etan Kissling ad9b90cab6
bump nim-stew to `af07b0a70dbd5528cbca9d944b0aa8b7bea92963` (#6472)
- fix deprecation warnings from results; deprecate shims/io module;
  rm deprecated shims/os module
- Reduce declared but unused warnings in keyed-queue
- Add truncate()/ftruncate() cross-platform implementation
- Fix OpenFlags.Append mode for io2.openFile()
2024-08-06 15:47:44 +00:00
tersec c0fc0f41dd
calculate next slot's withdrawals properly even across epoch boundary (#6470) 2024-08-06 13:33:16 +02:00
Etan Kissling ac78eb9069
Merge branch 'dev/etan/df-forkedblobs' into feat_eip-7688 2024-08-06 13:17:43 +02:00
Etan Kissling 7a650fb876
Merge branch 'stable' into dev/etan/df-forkedblobs 2024-08-06 13:16:44 +02:00
Etan Kissling e2dac0a030
Merge branch 'feat/eip-7495' into feat_eip-7688 2024-08-06 13:16:10 +02:00
Etan Kissling 9749e186df
Merge branch 'stable' into feat/eip-7495 2024-08-05 18:07:23 +02:00