Releases: celestiaorg/nmt
Releases · celestiaorg/nmt
v0.22.1
v0.22.0
v0.21.0
What's Changed
- chore(deps): bump github.com/stretchr/testify from 1.8.1 to 1.8.4 by @dependabot in #241
- chore(deps): bump github.com/tidwall/gjson from 1.14.4 to 1.16.0 by @dependabot in #240
- chore(deps): bump github.com/tidwall/gjson from 1.16.0 to 1.17.0 by @dependabot in #242
- chore(deps): bump actions/setup-go from 4 to 5 by @dependabot in #244
- chore(deps): bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #245
- chore(deps): bump github.com/tidwall/gjson from 1.17.0 to 1.17.1 by @dependabot in #246
- chore(deps): bump github.com/stretchr/testify from 1.8.4 to 1.9.0 by @dependabot in #247
- chore: rename master to main by @rootulp in #249
- chore(deps): bump golangci/golangci-lint-action from 4 to 6 by @dependabot in #252
- ci: add secrets.CODECOV_TOKEN to codecov by @ramin in #255
- chore: fixes dead link for golangci-lint status badge in README by @staheri14 in #254
- feat!: adds input range check to optimize VerifyLeafHashes and VerifyInclusion methods by @staheri14 in #253
- refactor: popIfNonEmpty for leaf hashes by @walldiss in #257
New Contributors
Full Changelog: v0.20.0...v0.21.0
v0.20.0
What's Changed
- chore: enable dependabot by @Chirag018 in #234
- chore(deps): bump actions/checkout from 2 to 4 by @dependabot in #237
- chore(deps): bump codecov/codecov-action from 1 to 3 by @dependabot in #236
- chore(deps): bump technote-space/get-diff-action from 4 to 6 by @dependabot in #235
- fix: replacing jsonProof with pb.Proof by @distractedm1nd in #233
New Contributors
- @Chirag018 made their first contribution in #234
- @dependabot made their first contribution in #237
Full Changelog: v0.19.0...v0.20.0
v0.19.0
What's Changed
- chore: bump to Go 1.21 by @rootulp in #230
- docs: add a table for alternative implementations by @rootulp in #229
- refactor(pb/proof.go)!: converting pb definition to use snake_case by @distractedm1nd in #232
Full Changelog: v0.18.1...v0.19.0
v0.18.1
v0.18.0
What's Changed
- doc: introduces short namespace absence proof in the NMT specs by @staheri14 in #209
- doc: aligns the nmt API doc with the current implementation by @staheri14 in #215
- test: incorporates tests for short absence proof verification by @staheri14 in #217
- feat(proof): create a proto representation of the proof by @vgonkivs in #220
New Contributors
Full Changelog: v0.17.0...v0.18.0
v0.17.0
What's Changed
- Add HexString method for namespace id by @walldiss in #201
- test: ExampleNamespacedMerkleTree by @rootulp in #203
- feat!: hex encode
id.String()
output by @rootulp in #202 - Added Quint specification by @ivan-gavran in #163
- feat: ensures VerifyLeafHashes rejects leafHashes with wrong namespaces by @staheri14 in #207
- feat: prepare for testing fraudulant blocks by allowing for custom hashers and the ability to add leaves without validation by @evan-forbes in #211
- feat(proof.go): adding JSON marshal/unmarshal by @distractedm1nd in #214
New Contributors
Full Changelog: v0.16.0...v0.17.0
v0.16.0
What's Changed
- fix: nmt spec for end-1 by @rootulp in #165
- chore: unexport
PrefixedData8
by @rootulp in #170 - chore: incorporates index-based Merkle range proof in the NMT specification by @staheri14 in #162
- feat: compute leaf hashes in the Push method by @staheri14 in #172
- chore: introduces a generic function to generate sample NMTs by @staheri14 in #177
- chore: adds a link to the nmt specs by @staheri14 in #174
- feat!: checks the exact size of the node in HashNode by @staheri14 in #175
- feat: ensures consistent namespace hash format for all tree node parameters in VerifyInclusion function by @staheri14 in #176
- feat: checks that all the arguments of VerifyNamespace conform to the same namespace hash format by @staheri14 in #179
- feat!: rejects invalid empty range proofs by @staheri14 in #180
- feat: returns error on invalid proof range in buildRangeProof by @staheri14 in #182
- feat!: handles empty proofs in validateLeafHash and VerifyInclusion by @staheri14 in #184
- feat: verifies namespace hash format to prevent panic in validateSiblingsNamespaceOrder by @staheri14 in #185
- feat: export
VerifyLeafHashes
by @rootulp in #189 - feat: verifies input range in the computeRoot to avoid panic by @staheri14 in #186
- feat!: verifies the namespace order for each tree node by @staheri14 in #187
- feat: adds the Size() method to the nmt API by @staheri14 in #191
- chore: replaces redundant codes in the HashNode with a proper function call by @staheri14 in #190
- feat!: add an additional constraint of empty leafHash field to the empty proof definition by @staheri14 in #192
- feat!: accounts for IgnoreMaxNamespace flag in the ProveNamespace method by @staheri14 in #194
- feat: ensures consistent use of the assumption that NMT nodes are ordered ascendingly by @staheri14 in #188
- feat!: resolves output inconsistencies when making multiple calls to the EmptyRoot by @staheri14 in #197
- feat: uses int instead of uint64 for leaves index by @staheri14 in #198
- chore: aligns the Ignore Max Namespace description with the implementation by @staheri14 in #199
Full Changelog: v0.15.0...v0.16.0
v0.15.0
What's Changed
- chore: improves documentation by @staheri14 in #96
- chore!: remove unused API functions Sha256Namespace8FlaggedLeaf and Sha256Namespace8FlaggedInner from the hasher by @staheri14 in #103
- feat: implement nmt methods Min/MaxNamespace by @rootulp in #105
- chore: add golangci-lint config by @rootulp in #107
- chore: NMT specifications by @staheri14 in #101
- feat: verify the range of the namespace IDs of the children in the HashNode by @staheri14 in #102
- feat: implements input validation functions for HashNode and HashLeaf to prevent panics by @staheri14 in #113
- chore: fixes the description of the index of leafHash in the absence proof by @staheri14 in #114
- chore: fixes the description of absence index in the calculateAbsenceIndex by @staheri14 in #119
- feat: check the namespace ID range of the leafHash in an absence proof to ensure soundness by @staheri14 in #116
- chore: splits the nmt spec into two files and moves them into separate directories by @staheri14 in #120
- chore: enable markdownlint by @rootulp in #124
- chore: removes the usage of the merkletree package by @staheri14 in #126
- chore: upgrade to Go 1.19 by @rootulp in #135
- Reworded explanation of calculating namespace when IgnoreMaxNamespace is set by @ivan-gavran in #134
- Add NOTICE file by @MSevey in #127
- test: remove duplicate test case by @rootulp in #150
- feat!: updates the HashNode and HashLeaf methods to return error instead of panic and refactors the code by @staheri14 in #136
- chore: delay initialization by @rootulp in #152
- fix: ProveNamespace godoc by @rootulp in #167
- test: fix TestNamespacedMerkleTree_calculateAbsenceIndex_Panic by @rootulp in #169
New Contributors
- @ivan-gavran made their first contribution in #134
- @MSevey made their first contribution in #127
Full Changelog: v0.14.0...v0.15.0