You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Minarrow 0.19.0 - 2026-10-27
Breaking
default_categorical_8 now includes Categorical32 with Categorical8. Previously this feature gated out Categorical32 completely. Note: This change is only breaking for users who previously had the default_categorical_8 feature activated for 256 maximum categories at a lower memory footprint.
Column selection views have been optimised to replace expensive gathering with optimised Bitmask processing. As a result, DataSelector::resolve_indices has been replaced by resolve_mask, returning a Bitmask, and resolve_range.
Matrix::extract_rows is renamed gather_rows.
Added
Array::scatter_indices, the write counterpart to gather_indices.
adjacent_window and ptr_eq, joining consecutive windows of one parent without copying.
gather_rows_mask on Matrix and MatrixV.
Value::arrow_type.
DataSelector::to_owned, and DataSelector for Box<dyn DataSelector>.
logical_bytes for Matrix, NdArray, SuperNdArray, XArray and their views.
Optimisations
Word-level Bitmask copy and append, and Array::bool packing.
Integer arithmetic for datetime period flooring.
Faster string to categorical interning.
Bugfixes
Several bitmask kernels have been corrected to accept input windows at any bit offset.
Scalar to scalar broadcasting arithmetic now correctly reflects the underlying ArithmeticOperator.
Fixed a regression on word-based mask bug-fixes for lengths ending part-way through a word affecting all-true and all-false masks.