Tags: mexus/HdrHistogram_rust
Tags
Lots of changes, mostly from @marshallpierce - HDRHistogram-compatible serialization/deserialization (HdrHistogram#28, HdrHistogram#43) - Restrict supported counter types (HdrHistogram#49, HdrHistogram#29) - Reduced memory footprint (HdrHistogram#12) - More extensive test suite (HdrHistogram#8, HdrHistogram#18, HdrHistogram#24, HdrHistogram#25) - Better handling of errors in edge-cases (HdrHistogram#16, HdrHistogram#22, HdrHistogram#34, HdrHistogram#50) - Removed criterion (HdrHistogram#46, HdrHistogram#23) - Various performance improvements (HdrHistogram#15, HdrHistogram#26, HdrHistogram#48) In terms of backwards-incompatible changes, the major ones are: - Only u8-u64 counters are now supported. Support for iXX and fXX variants was removed as they end up with questionable logic around negative and non-integer numbers. See HdrHistogram#29 for details. - More functions now return `Result` where they would previously just panic or encounter undefined behavior. This has changed the APIs in a couple of places, though adapting to it should be straightforward.
A struct is now yielded for iteration values, rather than a hard-to-read tuple (HdrHistogram#5). Furthermore, u64 is used for aggregated counts, even if the underlying count type T is smaller than u64 (HdrHistogram#3). Thanks to @marshallpierce for putting together most of this release!