status-im / nimbus-eth2

Nim implementation of the Ethereum Beacon Chain
https://nimbus.guide
Other
543 stars 233 forks source link

bump to c-kzg-4844 `v2.0.0` #6502

Closed agnxsh closed 2 months ago

agnxsh commented 2 months ago

This PR merges the newest release of c-kzg-4844 v2.0.0, which for the first time include peerDAS functions in it, this PR would eventually allow us to merge peerDAS crypto and it's other core specs into unstable

ref PR: https://github.com/ethereum/c-kzg-4844/pull/482

Gist of changes, as per Justin:

- Remove the "zero overhead aliases" which I find pretty confusing.
- I think one could argue that these are over-complicated & prone to issues.
- When adding EIP-7594 support, I made several mistakes.
- Remove duplicate tests, only use reference tests.
- The tests for each API (kzg, kzg_abi, kzg_ex) were too much.
- It's okay to only run through the reference tests.
- Use a global KzgCtx like the other bindings do.
- This is simpler & also less prone to mistakes.
- Requires that free_trusted_setup is called on exit.

All the necessary fixes in nimbus-eth2 are made by me in this PR.

github-actions[bot] commented 2 months ago

Unit Test Results

         9 files  ±0    1 337 suites  ±0   45m 48s :stopwatch: + 3m 17s   5 066 tests ±0    4 718 :heavy_check_mark: ±0  348 :zzz: ±0  0 :x: ±0  20 997 runs  ±0  20 593 :heavy_check_mark: ±0  404 :zzz: ±0  0 :x: ±0 

Results for commit fdd4b200. ± Comparison against base commit 1e70b0d2.

:recycle: This comment has been updated with latest results.