github pola-rs/polars py-1.41.1
Python Polars 1.41.1

7 hours ago

🚀 Performance improvements

  • Adaptive size dispatch to hashset or radix sort + capacity-aware reset in agg_n_unique (#27719)

✨ Enhancements

  • Allow deeper expressions (#27768)

🐞 Bug fixes

  • Raise length mismatch in multiple sort_by in group_by (#27772)
  • Respect min_samples for rolling_by ops with nulls (#27706)
  • Fix memory usage regression affecting TPCH Q22 (#27758)
  • Add POLARS_ALLOW_NESTED_CSPE env var and make nested CSPE opt-in (#27765)
  • Post-apply residual pyarrow predicates (#27764)
  • Fix loss of precision for smaller floating types(#27662) (#27732)
  • Filter at scan dropped in CSPE filter pushdown (#27763)
  • Fix portstate assertion error on is_in (#27757)
  • Fix incorrect when/then after forward fill / reverse in groupby (#27745)
  • Accept empty Thrift list encoded as bare 0x00 byte in parquet metadata (#27754)
  • Stabilize object store credentialprovider cache key (#27712)
  • Add to merge_sorted docs that the input must be nulls first (#27743)

📖 Documentation

  • Docs fixes (#27766)
  • Sync from Polars Cloud (#27751)
  • Add to merge_sorted docs that the input must be nulls first (#27743)

🛠️ Other improvements

  • Attribute annotations for CatalogCredentialProvider (#27739)
  • Solve type: ignore in _AioDataFrameResult (#27311)
  • Remove dead code in _write_utils.py (#27721)
  • Remove unnecessary not isinstance(v, DataType) check (#27723)

Thank you to all our contributors for making this release possible!
@EndPositive, @JakubValtar, @MarcoGorelli, @NicoOhR, @azimafroozeh, @carnarez, @dsprenkels, @jorenham, @kdn36, @nameexhaustion, @orlp and @ritchie46

Don't miss a new polars release

NewReleases is sending notifications on new releases.