py-1.32.1
📦 polarsView on GitHub →
✨ 5 features🐛 28 fixes⚡ 1 deprecations🔧 29 symbols
Summary
This release focuses heavily on performance improvements by lowering more operations to the streaming engine and optimizing internal parsing. Numerous bug fixes address issues across Iceberg/Delta scans, data type handling, and aggregation queries.
✨ New Features
- Implement `dt.days_in_month` function.
- Making `Expr.rolling_*_by` methods available to `pl.Series`.
- Reinterpret binary data to fixed size numerical array.
- Implement `repeat_by` for `Array` and `Null`.
- Support initializing from `__arrow_c_schema__` protocol in `pl.Schema`.
🐛 Bug Fixes
- Categorical namespace functions now work correctly on `Enum` columns.
- Properly set sumwise complete on filter for missing columns.
- Restore Arrow-FFI-based Python<->Rust conversion in pyo3-polars.
- Fix Group By with filters issues.
- Fix `read_csv` ignoring Decimal schema for header-only data.
- Ensure `collect()` native Iceberg always scans latest when no `snapshot_id` is given.
- Fix writing List(Array) columns to JSON without panic.
- Fill Iceberg missing fields with partition values if present in metadata.
- Create file for streaming sink even if unspawned.
- Fix Parquet filtering on multiple RGs with literal predicate.
- Fix incorrect datatype passed to libc::write.
- Properly feature gate TZ_AWARE_RE usage.
- Improve identification of "non group-key" aggregates in SQL `GROUP BY` queries.
- Fix spawning tokio task outside reactor.
- Correctly raise DuplicateError on asof_join with suffix="".
- Fix errors on native `scan_iceberg`.
- Fix index out of bounds panic filtering parquet.
- Fix error on empty range requests.
- Fix handling of hive partitioning `hive_start_idx` parameter.
- Allow encoding of `pl.Enum` with smaller physicals.
- Filter sorted flag from physical in CategoricalChunked.
- Remove accidental todo! in repeat node.
- Make `meta.pop` operate on `Expr` only.
- Fix Stack overflow in `DslPlan` serde.
- Clear credentials cached in Python when rebuilding object store.
- Fix Datetime selectors with mixed timezone info.
- Support i128 in asof join.
- Remove sleep for credential refresh.
🔧 Affected Symbols
BytecodeParserwarn_on_inefficient_maprle_idCredentialProviderAWSscan/write_deltascan_icebergunique_countsvalue_countspl.Schema__arrow_c_schema__show_versionsdt.days_in_monthExpr.rolling_*_bypl.Seriesrolling_mapCachingCredentialProviderLazyFrameExt.remote()LazyFrameRemoterepeat_byArrayNullCategoricalread_csvcollect()List(Array)meta.popDslPlanasof_joinpl.Enum⚡ Deprecations
- Passing physical ordering to Categorical now issues a DeprecationWarning.