py-1.43.1
parruda/swarmpy-1.43.1Jul 27, 2026by github-actions[bot]
AI Summary
Polars 1.43.1 brings significant performance optimizations and fixes critical bugs related to self-joins, empty chunks, and SQL aggregate NULL handling.
Key Highlights
- Optimized `not(bool_f)` to `not_bool_f` for better performance
- Fixed panics on self-join of scan_delta and scan_iceberg
- Fixed undefined behavior on first/last_non_null with empty chunks
- Fixed SQL `NOT IN` interaction with NULL values
New Features
- Performance improvements for boolean operations
- Fixes for self-join operations
- Fixes for expression handling in streaming engine
- SQL aggregate NULL handling fixes
Full Release Notes
## 🚀 Performance improvements - Optimize not(bool\_f) to not\_bool\_f (#28474) ## ✨ Enhancements - Allow callback sinks on cloud (#28458) ## 🐞 Bug fixes - Fix panic on self join of scan\_delta / scan\_iceberg (#28468) - Fix UB on first/last\_non\_null with empty chunk (#28495) - Do not CSE non-column height expr on streaming engine (#28480) - Propagate adjusted sortedness through Gather (#28493) - Deduplicate the expression equality checks (#28483) - Address 3VL issue with SQL `NOT IN` interaction with `NULL` values and joins (#28484) - Use total comparison in Expr literal values (#28482) - Ensure SQL `SUM` and `CORR` aggregates return NULL for all-null inputs, add `TOTAL` (#28475) - Share `null_count_dtype` helper between Delta and Iceberg, fixing `SchemaError` (#28479) - Remove non-output columns from the equi-join and semi/anti-join operators (#28446) - Fix dropped slice on multiple unions (#28477) - Fix in-memory engine incorrect slice on maintain order join (#28478) - Check join schema by position (#28455) - Block predicate pushdown past overwritten window keys (#28429) ## 📖 Documentation - Update and restructure README (#28490) - Minor fixes to Spark migration guide (#27730) - Relocate Polars Cloud \& On-Prem User Guide (#28462) - Add notes on k8s operator (#28445) ## 🛠️ Other improvements - Make hive\_part extraction a function and public (#28507) - Deduplicate the expression equality checks (#28483) - Bump `ruff` and `mypy` package versions (#28456) - Fix flaky test (#28454) Thank you to all our contributors for making this release possible! @AnirudhRahul, @EndPositive, @Jesse-Bakker, @alexander-beedie, @carnarez, @dancsi, @mdroogh, @mroeschke, @nameexhaustion, @nchammas, @orlp, @r-brink and @ritchie46