Releases: orbitinghail/splinter-rs
v0.8.0
Highlights
- adding reference to
splynterswrapper in README by @nrposner in #60 - Optimize run partition usage & close to full partitions by @carlsverre in #67
Dependencies
- chore(deps): update actions/checkout action to v5 by @renovate[bot] in #59
- fix(deps): update all other updates by @renovate[bot] in #58
- chore(deps): lock file maintenance by @renovate[bot] in #62
- chore(deps): update taiki-e/install-action digest to 5597bc2 by @renovate[bot] in #61
- chore(deps): update taiki-e/install-action digest to d0f4f69 by @renovate[bot] in #63
- chore(deps): update taiki-e/install-action digest to 522492a by @renovate[bot] in #64
- chore(deps): update rust crate thiserror to v2.0.17 by @renovate[bot] in #66
- chore(deps): update taiki-e/install-action digest to 5b5de1b by @renovate[bot] in #65
New Contributors
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- implement position, remove_range, and extends by @carlsverre in #56
- many more bitop impls by @carlsverre in #57
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Breaking Changes
- Merge::merge has been replaced by BitOr::bitor.
What's Changed
- bitwise operations by @carlsverre in #55
- fixed bug in PartialEq which caused it to return incorrect results for certain inputs
Full Changelog: v0.5.4...v0.6.0
v0.5.4
Improve compression by removing legacy tree_min config. This helps compress super tiny sets even more.
Full Changelog: v0.5.3...v0.5.4
v0.5.3
Optimized Tree::from_iter to improve performance of Splinter::optimize.
Full Changelog: v0.5.2...v0.5.3
v0.5.2
Added DecodeErr to top level exports.
Full Changelog: v0.5.1...v0.5.2
v0.5.1
Added Eq implementations for all Splinter types.
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
- Added culprit support to entire decode path by @carlsverre in #53
Full Changelog: v0.4.0...v0.5.0
v0.4.0 - Splinter Encoding v2
Splinter Encoding V2!
This release marks an almost full rewrite of Splinter with dramatic improvements to it's compression ratio without impacting performance in most situations. The new codebase is much cleaner and uses the Rust typesystem in a more idiomatic way.
The big change to the Splinter encoding is that it now supports switching between partition storage types at every level of the segment tree. This means that small Splinters can now be encoded as a small vector in certain cases.
The other big change is the addition of run-length storage to Splinter. Due to the overhead of determining when it is optimal to use run-length storage, to take advantage of this new storage option you'll need to run Splinter::optimize. This function will compute the optimal storage layout for the Splinter. It's recommended you do this before serialization for maximum compression.
IMPORTANT: This release contains a backwards incompatible version of Splinter's encoding. All previous serialized Splinters will need to be re-encoded to use the new encoding.
All changes
- chore(deps): lock file maintenance by @renovate[bot] in #39
- chore(deps): update taiki-e/install-action digest to 2383334 by @renovate[bot] in #38
- chore(deps): lock file maintenance by @renovate[bot] in #41
- chore(deps): update taiki-e/install-action digest to c07504c by @renovate[bot] in #40
- chore(deps): lock file maintenance by @renovate[bot] in #43
- chore(deps): update all other updates by @renovate[bot] in #42
- chore(deps): update all other updates by @renovate[bot] in #44
- chore(deps): lock file maintenance by @renovate[bot] in #47
- chore(deps): update all other updates by @renovate[bot] in #46
- fix(deps): update rust crate thiserror to v2.0.15 by @renovate[bot] in #49
- chore(deps): update taiki-e/install-action digest to ad95d4e by @renovate[bot] in #48
- fix(deps): update rust crate thiserror to v2.0.16 by @renovate[bot] in #51
- chore(deps): update all other updates by @renovate[bot] in #50
- Splinter Encoding v2 by @carlsverre in #45
- replace splinter v1 with splinter v2 implementation by @carlsverre in #52
Full Changelog: v0.3.3...v0.4.0