py-1.40.1
AppFlowy-IO/AppFlowypy-1.40.1Apr 22, 2026by github-actions[bot]
AI Summary
Performance optimizations and bug fixes for the Python Polars library.
Key Highlights
- Skip validity mask processing in `__array_ufunc__` when no inputs have nulls
- Added `maintain_order` parameter to `merge_sorted`
- Fixed `GroupBy` iterator to honor `having` predicate
- Fixed `list.sample()` to allow `fraction` > 1 with replacement
- Fixed `append()` to error when `upcast=False`
New Features
- maintain_order parameter for merge_sorted
Full Release Notes
## 🚀 Performance improvements - Skip validity mask processing in \_\_array\_ufunc\_\_ when no inputs have nulls (#27358) ## ✨ Enhancements - Cargo deny (#27363) - Add `maintain_order` parameter to `merge_sorted` (#27263) ## 🐞 Bug fixes - Honor `having` predicate in `GroupBy` iter (#27370) - Use the physical dtype for `NumUnorderedImplodeReducer` arrow `ListArray` (#27375) - Address bug in `reduce_balanced` for certain input length lists affecting `pl.concat` (#27352) - Ensure `list.sample()` allows `fraction` > 1 when `with_replacement=True` (#27350) - Ensure `append()` errors when `upcast=False` (#27346) - Always rechunk sorts, prune sorts even in eager execution (#27356) - Fix typing for `DataFrame.__init__` and `Series.__init__` so they don't require all optional dependencies to be installed (#27348) ## 📖 Documentation - Split out openlineage docs into guide and configuration (#27371) - Add explanation on the observatory sqlite db file (#27354) ## 🛠️ Other improvements - Disable mypy type checking for `pyarrow` calls (#27377) - Disable debug symbols in macos coverage tests (#27361) - Cargo deny (#27363) Thank you to all our contributors for making this release possible! @EndPositive, @Kevin-Patyk, @MarcoGorelli, @carnarez, @dsprenkels, @gab23r, @jonathanchang31, @kdn36, @mzjp2 and @ritchie46