celestiaorg/go-square
A library for encoding blobs into a 2D square of evenly sized chunks designed for sampling and reconstruction
GoApache-2.0
Issues
- 2
inclusion: SubtreeWidth should define what happens when subtreeRootThreshold<=0 else a divide by zero panic on
#120 opened by odeke-em - 0
share: builder.WriteSequenceLen needs bounds checks for .rawShareData lest encounter a panic; perhaps add a validation to fail on immediate constructor invocation
#121 opened by odeke-em - 0
inclusion, all: RoundDownPowerOfTwo and RoundUpPowerOfTwo are very inefficient and can cause running out of RAM due to an integer overflow
#117 opened by odeke-em - 0
- 3
- 4
merkle: innerHash dominates CPU/RAM consumption by sha256.Sum256(append(bytes...)) but it can be further sped up and allocations reduced as well by using a pool and reusing hashes
#43 opened by odeke-em - 1
Canonicalise Namespace and Share types
#66 opened by cmwaters - 0
Consider adding RowProof to this repo
#100 opened by rootulp - 2
- 0
Consider renaming blob proto package
#33 opened by rootulp - 0
Pre-verify blobs once instead of twice
#77 opened by evan-forbes - 2
refactor: remove compact and spare shares
#30 opened by rootulp - 2
- 0
Change shares package name to share
#88 opened by cmwaters - 0
Validate the namespace in the Share constructor
#86 opened by cmwaters - 0
Add benchmarks to share encoding / decoding
#81 opened by cmwaters - 0
Merge namespace and blob packages into shares
#79 opened by cmwaters - 1
- 0
Add a local blob type
#70 opened by cmwaters - 5
- 3
- 2
- 8
Enable dependabot
#21 opened by rootulp - 1
- 9
- 0
Add diagrams to README
#17 opened by rootulp - 0
- 2
- 1
inclusion: RoundUpByMultipleOf and all other modulo denominator must be checked for zero before usage
#45 opened by odeke-em - 0
Clarify this repo applies to original data square
#25 opened by rootulp - 0
shares: NamespacePaddingShare can take advantage of Go's memory guarantees to zero memory and use make([]byte, LEN) instead of bytes.Repeat([]byte{0}, LEN) which is less efficient
#41 opened by odeke-em - 1
shares: powersOf2 test should put less expensive comparison before AND and SUBTRACTION
#40 opened by odeke-em - 5
- 4
Move and link specs
#15 opened by cmwaters - 0
Add a license
#26 opened by rootulp - 2
Consider enabling go-critic
#18 opened by rootulp - 1
Path to publishing Go modules from this repo
#20 opened by rootulp - 2
- 3
- 0
Add readme
#7 opened by cmwaters - 0
Consider removing `FitsInSquare`
#4 opened by rootulp - 0
Setup CI workflows
#6 opened by cmwaters