Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v1.5.0-alpha.4 #3853

Merged
merged 163 commits into from
Aug 9, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
163 commits
Select commit Hold shift + click to select a range
7f699bf
Rename `get_safe_execution_payload_hash` -> `*_block_hash`
etan-status Feb 8, 2024
94535a6
Add Electra merkle proof test vectors
hwwhww May 13, 2024
01a2c7b
Add `test_fork_has_compounding_withdrawal_credential` test case
hwwhww May 13, 2024
8b26470
Add `test_fork_pre_activation` test case
hwwhww May 13, 2024
b848ca6
improved sampling description
cskiraly May 28, 2024
8d33278
clarify the use of LossyDAS
cskiraly May 28, 2024
7b4d23c
fix toc
hwwhww May 28, 2024
4e1d566
improve candidate peer text
cskiraly May 29, 2024
a04cd87
fix the (source-view) formatting of the table
cskiraly May 29, 2024
5f3beca
remove LossyDAS naming from spec
cskiraly May 29, 2024
436e58e
add get_extended_sample_count helper function
cskiraly May 29, 2024
4c57399
self-contained get_extended_sample_count
cskiraly Jun 4, 2024
2ab4f1e
get_extended_sample_count: use SAMPLES_PER_SLOT constant
cskiraly Jun 10, 2024
6711acf
clarifying reconstruction and cross-seeding
cskiraly Jun 11, 2024
cf46b07
Bump remerkleable to `v0.1.28`
etan-status Jun 16, 2024
6e2b370
Merge pull request #3807 from etan-status/bd-remerkleable
hwwhww Jun 18, 2024
fb02045
Add `get_extended_sample_count` unit tests
hwwhww Jun 18, 2024
29d3a24
Merge pull request #3763 from ethereum/electra-merkle-proof-tests
hwwhww Jun 19, 2024
2c384da
Fix typing issue when `10e10` is interpreted as float
etan-status Jun 21, 2024
2035a9f
Update light client specifications for Electra
etan-status Jun 21, 2024
ea04148
Lint
etan-status Jun 21, 2024
67a053d
Refer to Altair gindices as that's where they were introduced
etan-status Jun 21, 2024
835576a
Enable light client data test generation for Electra
etan-status Jun 21, 2024
f30a3a3
Update `test_incorrect_not_enough_consolidation_churn_available` and …
hwwhww Jun 24, 2024
fed320c
Merge pull request #3810 from etan-status/bf-payloadinit
hwwhww Jun 24, 2024
beedf85
Revert division change and add comments
hwwhww Jun 25, 2024
1f87bbe
Merge branch 'dev' into pr3782
hwwhww Jun 25, 2024
4539265
moving part of text in custody section
cskiraly Jun 25, 2024
ee97738
Add `test_get_extended_sample_count__table_in_spec` to verify the tab…
hwwhww Jun 25, 2024
ded072a
Make MAX_BLOBS_PER_BLOCK a config parameter
dapplion Jun 25, 2024
25b810f
lint
dapplion Jun 26, 2024
9280cc7
Update doctoc
dapplion Jun 26, 2024
29f3948
Merge pull request #3814 from ethereum/update-consolidation-tests
hwwhww Jun 26, 2024
17dfb9a
fix get_extended_sample_count proc signature
cskiraly Jun 27, 2024
78b583d
clarify use of get_extended_sample_count
cskiraly Jun 27, 2024
1ad381d
adding get_extended_sample_count docsstring
cskiraly Jun 27, 2024
258c2c9
Merge pull request #3794 from cskiraly/peer-das-reconstruction
hwwhww Jun 27, 2024
0a49572
Merge pull request #3782 from cskiraly/peer-das-sampling
hwwhww Jun 27, 2024
a3a6c91
Remove proof parameter from `recover_cells_and_kzg_proofs` (#3819)
kevaundray Jun 27, 2024
f25aac6
Add MetadataV3 with custody_subnet_count
dapplion Jun 28, 2024
83da380
EIP7594: Do universal verification in verify_cell_kzg_proof_batch() (…
b-wagn Jun 28, 2024
0e03d8c
Fix beacon-chain.md section header issues
jtraglia Jun 28, 2024
090d349
Merge pull request #3764 from ethereum/electra-fork-tests
ralexstokes Jul 1, 2024
0532952
Merge pull request #3822 from jtraglia/section-header-nits
ralexstokes Jul 1, 2024
77c371b
Replace "updated" with "modified" in Electra spec (#3823)
jtraglia Jul 1, 2024
7b72cbd
Fix link to Deneb spec
jtraglia Jul 1, 2024
b4f44ca
Fix EL block hash computation for Deneb
etan-status Jul 2, 2024
81f3ea8
Merge pull request #3826 from jtraglia/fix-deneb-link
hwwhww Jul 2, 2024
a63bad0
Fix Deneb `test_process_execution_payload`
etan-status Jul 2, 2024
c078a97
Remove verify_cell_kzg_proof (non-batch)
jtraglia Jul 2, 2024
1189d52
Remove VALID_INDIVIDUAL_RANDOM_CELL_BYTES import
jtraglia Jul 2, 2024
0daa2ac
Remove verify_kzg_proof_multi_impl too
jtraglia Jul 2, 2024
9be0529
Merge pull request #3829 from etan-status/df-elhash
hwwhww Jul 5, 2024
228752c
In batch cell verification, check if there are zero cells
jtraglia Jul 5, 2024
b9e7b03
Update algorithm & remove check
jtraglia Jul 8, 2024
104fbc7
beacon chain changes
potuz Jun 24, 2024
673c75c
Forkchoice changes
potuz Jun 25, 2024
971c57c
Honest validator guide
potuz Jun 25, 2024
614e14e
Honest Builder Guide
potuz Jun 25, 2024
cd7dbef
P2P changes
potuz Jun 25, 2024
6d6ef7b
Fork logic
potuz Jun 25, 2024
0d082fd
Add comment about attestations and sync committee duties
potuz Jun 28, 2024
6e02cb4
Fix epbs consensus spec to be executable (#10)
terencechain Jun 28, 2024
a01f124
modify INTEVALS_PER_SLOT
potuz Jun 28, 2024
b7b1de9
Verify withdrawals only when present
potuz Jun 30, 2024
51e47ff
small typo fixes (#12)
gorondan Jul 1, 2024
25a0fdc
doctoc
potuz Jul 1, 2024
ed7f17e
Add gas_limit to the execution payload header
potuz Jul 1, 2024
95dd081
codespell
potuz Jul 2, 2024
752a804
use boolean instead of bool in forkchoice
potuz Jul 2, 2024
4997588
add fake value to KZG indices
potuz Jul 2, 2024
ad8d71d
Fix python execution 1
potuz Jul 2, 2024
2a43ce5
doctoc
potuz Jul 2, 2024
4500eab
Fix python execution 2
potuz Jul 2, 2024
d7a199f
Fix python execution 3
potuz Jul 3, 2024
5013e57
Fix epbs pre fork (#13)
terencechain Jul 3, 2024
181ce5e
add type annotation
potuz Jul 3, 2024
a11ffb5
use definitive EIP number
potuz Jul 3, 2024
b230a42
Add deprecation helpers in spec builder
hwwhww Jul 3, 2024
b2d6e68
Fix and add `EIP7732_FORK_EPOCH` and `EIP7594_FORK_VERSION`
hwwhww Jul 3, 2024
1127640
Add `eip7732` to .gitignore
hwwhww Jul 3, 2024
603cf53
add fork fixes
potuz Jul 3, 2024
e9a8dda
Fix python execution 4
potuz Jul 3, 2024
e3cd216
Fix python execution 5
potuz Jul 3, 2024
dba3cda
Fix python execution 6
potuz Jul 3, 2024
53aaf26
Fix python execution 7
potuz Jul 3, 2024
3d48e72
Deal with attestations from previous forks
potuz Jul 3, 2024
a5d2161
add CI workflow
potuz Jul 3, 2024
614284c
Fix p2p to use eip7732 (#14)
terencechain Jul 3, 2024
eb3382f
Disable eip7732 tests like whisk-style
hwwhww Jul 4, 2024
2af6e7d
Minor refactoring
hwwhww Jul 4, 2024
bb7ce4f
minor fixes
potuz Jul 5, 2024
e93f923
fix typo last_withdrawals_root
potuz Jul 5, 2024
9181e29
modify get_blob_sidecars to take the commitments
potuz Jul 5, 2024
17b7905
modify get_blob_sidecars to use nested proof
potuz Jul 8, 2024
19c6f84
linter
potuz Jul 8, 2024
b556420
linter 2
potuz Jul 8, 2024
0e94fc9
Rename changed preset
potuz Jul 8, 2024
93aa7d6
Fix linter error
hwwhww Jul 8, 2024
9274a66
fix Merkle proof generator
potuz Jul 8, 2024
f97f0b4
use List with limit to hash withdrawals
potuz Jul 8, 2024
1642610
Merge pull request #3835 from jtraglia/early-exit-zero-cells
asn-d6 Jul 8, 2024
1dbb68d
Update get_data_column_sidecars to take cells/proofs
jtraglia Jul 8, 2024
8da90b2
Fix linter issues
jtraglia Jul 8, 2024
b7149ef
Update beacon-chain.md
ralexstokes Jul 8, 2024
5cce790
Merge pull request #3837 from ethereum/ralexstokes-patch-2
hwwhww Jul 9, 2024
c402414
Merge branch 'dev' into remove-verify-cell-kzg-proof
jtraglia Jul 9, 2024
096e564
Verify kzg-commitments length with the payload
potuz Jul 9, 2024
63433ec
Use separate constant names for post-Electra gindices
etan-status Jul 9, 2024
a86eeb3
Freeze Altair constants at Deneb
etan-status Jul 9, 2024
82fe862
Fix lint
etan-status Jul 9, 2024
088f771
fix spec error in get_generalized_index function
kocubinski Jul 9, 2024
9a9fa96
In batch cell verification, take commitment for each cell (#3834)
jtraglia Jul 10, 2024
dc5f74d
Merge pull request #3830 from jtraglia/remove-verify-cell-kzg-proof
asn-d6 Jul 10, 2024
db71770
Move to peerdas eip
dapplion Jul 11, 2024
e2c06c3
Fix link
etan-status Jul 15, 2024
9db6d3f
Remove unnecessary cast
etan-status Jul 15, 2024
3529b46
Fix block_header.state_root and forkchoice filtering
potuz Jul 15, 2024
252b852
Rename column_index to cell_index in KZG spec (#3841)
jtraglia Jul 15, 2024
4b43b96
doctoc
potuz Jul 15, 2024
5961e26
Remove unnecessary comment
jtraglia Jul 15, 2024
5bb25c8
remove spurious config prefix
potuz Jul 15, 2024
b4432fb
Merge pull request #3817 from dapplion/max-blobs-config
hwwhww Jul 16, 2024
bb8f3ca
Merge pull request #3836 from jtraglia/columns-cells-and-proofs
asn-d6 Jul 16, 2024
6d146e2
For pytest, replace NUMBER_OF_CORES with auto
jtraglia Jul 16, 2024
460d46d
Merge branch 'dev' into lc-electra
etan-status Jul 17, 2024
2331291
Replace `recover_data` with `recover_polynomialcoeff` (#3820)
kevaundray Jul 17, 2024
f3dcc59
Update description for test format
jtraglia Jul 18, 2024
a42d670
Merge pull request #3811 from etan-status/lc-electra
hwwhww Jul 19, 2024
80092b1
remove beacon_attestation_subnet from global topics
0xTylerHolmes Jul 19, 2024
8c9514e
Restore proposer_boost timeliness calculation
potuz Jul 22, 2024
b7461ac
Remove block_timeliness from the store
potuz Jul 23, 2024
d0fad1f
Advance best child with empty until it is higher than every children
potuz Jul 23, 2024
0c9ca6d
solve ties by block slot first
potuz Jul 23, 2024
b082140
Revert "Remove block_timeliness from the store"
potuz Jul 24, 2024
2218c94
Merge pull request #3849 from 0xTylerHolmes/electra-p2p-topics
hwwhww Jul 25, 2024
2d59c55
Fix indentation for kzg_7594 tests
jtraglia Jul 25, 2024
e9be4e2
Merge pull request #3855 from jtraglia/kzg-7594-tests-indentation
hwwhww Jul 25, 2024
e8fcebc
Merge pull request #3846 from jtraglia/replace-ncores-with-auto
hwwhww Jul 27, 2024
85a42cd
improve comments in recovery
b-wagn Jul 31, 2024
225c486
some punctuation
b-wagn Jul 31, 2024
31c23f8
Remove compute_cells test format
agnxsh Jul 31, 2024
9c39645
Merge pull request #3858 from b-wagn/documentation-reconstruct
asn-d6 Aug 1, 2024
b394b27
Merge pull request #3848 from ethereum/jtraglia-eip7594-format-fix
hwwhww Aug 2, 2024
ef3c9dc
Remove dead link to no longer existing public method.
b-wagn Aug 2, 2024
10becc5
Merge pull request #3595 from etan-status/bf-safehash
mkalinin Aug 2, 2024
92aeafe
Merge pull request #3863 from b-wagn/patch-3
asn-d6 Aug 2, 2024
7ab2bbe
Make process_withdrawals slightly cleaner (equivalent functionality) …
vbuterin Aug 2, 2024
74124f5
Typo in validator.md
potuz Aug 2, 2024
1a086f6
Merge pull request #3838 from kocubinski/dev
hwwhww Aug 3, 2024
b5cea48
bump to 1.5.0-alpha.4
hwwhww Aug 3, 2024
9515f3e
Merge pull request #3865 from ethereum/bump-version
hwwhww Aug 6, 2024
572ca9e
Merge pull request #3821 from dapplion/csc
hwwhww Aug 6, 2024
fcca2b5
Fix off-by-one in process_pending_consolidations
mkalinin Aug 6, 2024
b665698
Fix off-by-one in process_pending_balance_deposits
mkalinin Aug 6, 2024
8f8ab03
Merge pull request #3828 from potuz/epbs_cl_repo
hwwhww Aug 6, 2024
7c10922
p2p: clean up payload_attestation_message conditions
terencechain Aug 3, 2024
5e06787
Apply suggestions by @fradamt
mkalinin Aug 7, 2024
024ee04
Fix lint
mkalinin Aug 7, 2024
5409396
Fix nits in eip7594 p2p-interface spec
jtraglia Aug 8, 2024
674d924
Merge pull request #3869 from terencechain/p2p-payload-att1
hwwhww Aug 8, 2024
bd396a6
Merge pull request #3873 from jtraglia/nits-in-7594-p2p-interface
hwwhww Aug 8, 2024
f4e3908
Merge pull request #3868 from mkalinin/fix-consolidation
hwwhww Aug 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Add get_extended_sample_count unit tests
  • Loading branch information
hwwhww committed Jun 18, 2024
commit fb020456cba20ffa76d5c3566c8240b8206a47f5
6 changes: 5 additions & 1 deletion specs/_features/eip7594/das-core.md
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,11 @@ def get_extended_sample_count(allowed_failures: uint64) -> uint64:
return r

def hypergeom_cdf(k, M, n, N):
return sum([math_comb(n, i) * math_comb(M - n, N - i) / math_comb(M, N)
k = int(k)
M = int(M)
n = int(n)
N = int(N)
return sum([math_comb(n, i) * math_comb(M - n, N - i) // math_comb(M, N)
for i in range(k + 1)])

worst_case_missing = NUMBER_OF_COLUMNS // 2 + 1
Expand Down
52 changes: 52 additions & 0 deletions tests/core/pyspec/eth2spec/test/eip7594/unittests/das/test_das.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import random
from eth2spec.test.context import (
expect_assertion_error,
spec_test,
single_phase,
with_eip7594_and_later,
Expand Down Expand Up @@ -67,3 +68,54 @@ def test_recover_matrix(spec):
recovered_matrix = spec.recover_matrix(cells_dict, blob_count)
flatten_original_cells = [cell for cells in original_cells for cell in cells]
assert recovered_matrix == flatten_original_cells


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__1(spec):
rng = random.Random(1111)
allowed_failures = rng.randint(0, spec.config.NUMBER_OF_COLUMNS // 2)
spec.get_extended_sample_count(allowed_failures)


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__2(spec):
rng = random.Random(2222)
allowed_failures = rng.randint(0, spec.config.NUMBER_OF_COLUMNS // 2)
spec.get_extended_sample_count(allowed_failures)


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__3(spec):
rng = random.Random(3333)
allowed_failures = rng.randint(0, spec.config.NUMBER_OF_COLUMNS // 2)
spec.get_extended_sample_count(allowed_failures)


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__lower_bound(spec):
allowed_failures = 0
spec.get_extended_sample_count(allowed_failures)


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__upper_bound(spec):
allowed_failures = spec.config.NUMBER_OF_COLUMNS // 2
spec.get_extended_sample_count(allowed_failures)


@with_eip7594_and_later
@spec_test
@single_phase
def test_get_extended_sample_count__upper_bound_exceed(spec):
allowed_failures = spec.config.NUMBER_OF_COLUMNS // 2 + 1
expect_assertion_error(lambda: spec.get_extended_sample_count(allowed_failures))