Repository navigation
Version 0.9.16 - October 29, 2026
This is a patch release with minor improvements and bug fixes
Features and Improvements
- #221: Add Agg.medianAll(), Agg.percentileAll() to return a Seq of multiple values
- #334: Add release notes
Bug Fixes
- #403: Repeated close exception prevents remaining zipped streams from closing
- #405: Very small positive percentiles produce a negative list index
- #407: Agg.bitAndInt() and Agg.bitAndLong() clear the sign bit
- #409: Agg.percentile() and Agg.percentileAll() pick the wrong element due to floating point rounding
- #411: Agg.avg() overflows for Byte, Short, Integer and Long values
- #413: Agg.avg() of BigDecimal values rounds to the scale of the sum
- #415: Window functions returning a Seq or a collection share cached results between rows
- #417: Window.firstValue() and Window.lastValue() are empty when the frame exceeds the partition on both ends
- #419: Window functions fail or return negative counts for frames entirely before or after the current partition
- #421: Window.ntile() distributes rows differently from SQL NTILE()
- #423: Window.percentRank() returns NaN for single-row partitions
- #427: Seq.range() and Seq.rangeClosed() produce infinite streams on overflow or with a non-positive step
- #429: Agg.maxAll(), Agg.minAll() and related collectors return wrong results in parallel streams
- #431: Agg.mode(), taking(), dropping() and other collectors combine partial results incorrectly in parallel streams
- #433: Seq.cycle(long) produces an infinite stream for negative values other than -1