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

feat: add function to decode a range from an updated sector #1704

Merged
merged 6 commits into from
May 19, 2023

Conversation

vmx
Copy link
Contributor

@vmx vmx commented May 17, 2023

Currently it's only possible to decode a full empty updated sector. With this new function, it's possible to also decode only a range.

You can pass in any readable stream, i.e. file descriptors but also pipes or even slices.

BREAKING CHANGE: EmptySectorUpdate::decode_from no longer takes h as argument.


This is based on @DrPeterVanNostrand work at #1687.

In case you wonder why the rhos() function was refactored. This makes it easier callable, as it now only needs the number of nodes as input. The new Rhos will then also be used for the upcoming binaries.

Currently it's only possible to decode a full empty updated sector. With
this new function, it's possible to also decode only a range.

You can pass in any readable stream, i.e. file descriptors but also pipes
or even slices.

BREAKING CHANGE: `EmptySectorUpdate::decode_from` no longer takes `h` as
argument.
If there would only be one generic for the input files, they both would
need to have the same type. E.g. you couldn't pass in a file and a slice.
With separate generics that's possible.
vmx added 3 commits May 19, 2023 11:02
The ChunkIterator is a higher level primitive that is only used on the API
surface, hence moving it out of the core.
cryptonemo
cryptonemo previously approved these changes May 19, 2023
Copy link
Collaborator

@cryptonemo cryptonemo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The decode parts (and testing) looks good to me. I'll approve, but let Jake confirm the change regarding the Rhos. Thanks!

Hard-code `h` only on the API, not on the proofs level.
@vmx vmx merged commit 63c7975 into master May 19, 2023
@vmx vmx deleted the decode_from_range branch May 19, 2023 16:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants