Skip to content

Replace remerkleable with eth-ssz-specs - #5520

Open
jtraglia wants to merge 4 commits into
ethereum:masterfrom
jtraglia:eth-ssz-specs
Open

Replace remerkleable with eth-ssz-specs#5520
jtraglia wants to merge 4 commits into
ethereum:masterfrom
jtraglia:eth-ssz-specs

Conversation

@jtraglia

@jtraglia jtraglia commented Aug 7, 2026

Copy link
Copy Markdown
Member

This PR takes the final step in replacing Remerkleable with a new SSZ library which is all-around better. The new library, ethereum/ssz-specs is ~2x faster, supports the ty type checker, and supports some nice features like slicing. When reviewing, please do not worry much about the changes to pysetup as I intend to rewrite this from scratch soon. This PR also removes the SSZ specs/tests (eg ssz_generic) here, since ssz-specs is intended to serve that purpose.

Related to #5465.

@jtraglia
jtraglia requested review from jihoonsong and nflaig August 7, 2026 19:36
@github-actions github-actions Bot added ssz Simple Serialize lightclients testing CI, actions, tests, testing infra phase0 altair bellatrix capella deneb electra fulu gloas eip8025 Optional Execution Proofs heze eip8148 Custom sweep threshold labels Aug 7, 2026
jtraglia added a commit that referenced this pull request Aug 12, 2026
This PR removes the SimpleSerialize (SSZ) specifications from this
repository. These specifications now exist in the
[`ethereum/ssz-specs`](https://github.com/ethereum/ssz-specs)
repository. This PR should be merged before #5520.
jtraglia added a commit that referenced this pull request Aug 12, 2026
This PR removes the SimpleSerialize (SSZ) generic tests from this
repository. Tests for SSZ libraries now exist in the
[`ethereum/ssz-specs`](https://github.com/ethereum/ssz-specs)
repository. This PR should be merged before #5520.
jtraglia added a commit that referenced this pull request Aug 12, 2026
The new SSZ library (see #5520) does not currently provide a way to
`sum()` set bits. Instead of replicating this functionality in
`eth-ssz-specs`, I think we should introduce a new helper function for
this. Using `sum()` here is a bit too pythonic and a new reader might
not understand what it's doing. An explicit helper function would clear
that up.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

altair bellatrix capella deneb eip8025 Optional Execution Proofs eip8148 Custom sweep threshold electra fulu gloas heze lightclients phase0 ssz Simple Serialize testing CI, actions, tests, testing infra

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant