celestiaorg / celestiaorg/rsmt2d
api: Consider dropping EDS importing in favour of EDS constructor
- Dominant language
- Go
- Stars
- 169
- Forks
- 87
- Avg merge
- 8h 9m
- Merged PRs (30d)
- 7
Description
Currently, EDS can only be imported from a flattened data square slice and is updated in place, breaking encapsulation and allowing users to incorrectly change the underlying slice causing undefined behavior for the library if used incorrectly. Instead, we should provide a new constructor that allocates/manages the EDS independently and provide proper setters/getters(such as #83) to make the rsmt2d foolproof by hiding complexity and further allocation/performance optimizations behind the API.
Contributor guide
Research direction
The issue identifies EDS importing from a flattened data square slice and points to issue #83 for setters/getters; begin by tracing the existing EDS entry point and reading #83. Done means EDS is independently allocated and managed, with the proposed constructor and encapsulating accessors replacing the unsafe import-and-update-in-place approach.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100