Polars: py-1.29.0 Release

Release date:
April 30, 2025
Previous version:
py-1.28.1 (released April 27, 2025)
Magnitude:
3,673 Diff Delta
Contributors:
14 total committers
Data confidence:
Commits:

51 Commits in this Release

Ordered by the degree to which they evolved the repo in this version.

Authored April 27, 2025
Authored April 27, 2025
Authored April 27, 2025
Authored April 27, 2025
Authored April 28, 2025

Top Contributors in py-1.29.0

nameexhaustion
coastalwhite
JakubValtar
Julian-J-S
orlp
Matt711
alexander-beedie
Liyixin95
mcrumiller
bschoenmaeckers

Directory Browser for py-1.29.0

All files are compared to previous version, py-1.28.1. Click here to browse diffs between other versions.

Loading File Browser...

Release Notes Published

πŸš€ Performance improvements

  • Avoid alloc_zeroed in decompression (#22460)

✨ Enhancements

  • Highlight nodes in streaming phys plan graph (#22535)
  • Show physical stage graph (#22491)
  • Add structure for dispatching iceberg to native scans (#22405)
  • Add SQL support for checking array values with IN and NOT IN expressions (#22487)
  • Support DataFrame and Series init from torch Tensor objects (#22177)
  • Add RoundMode for Decimal and Float (#22248)
  • Inform users that IO error path file name can be expanded with POLARS_VERBOSE=1 (#22427)

🐞 Bug fixes

  • Streaming outer join coalesce bug (#22530)
  • Remove redundant print statement in assert_frame_schema_equal() (#22529)
  • Bug in .unique() followed by .slice() (#22471)
  • Fix error reading parquet with datetimes written by pandas (#22524)
  • Fix schema_overrides not taking effect in NDJSON (#22521)
  • Fold flags and verify scalar correctness in apply (#22519)
  • Invalid values were triggering panics instead of returning null in dt.to_date / dt.to_datetime (#22500)
  • Ensure numpy isinstance check is lazy (avoid forcing the dependency) (#22486)
  • Incorrectly dropped sort after unique for some queries (#22489)
  • Fix incorrect ternary agg state with mixed columns and scalars (#22496)
  • Make replace and replace_strict properly elementwise (#22465)
  • Fix index out of bounds panic on parquet prefiltering (#22458)
  • Integer underflow when checking parquet UTF-8 (#22472)
  • Add implementation for array.get with idx overflow (#22449)
  • Deprecate str. collection functions with flat strings and mark as elementwise (#22461)
  • Deprecate flat list.gather and mark as elementwise (#22456)
  • Inform users that IO error path file name can be expanded with POLARS_VERBOSE=1 (#22427)

πŸ“– Documentation

  • Fix typo in structs page (#22504)

πŸ› οΈ Other improvements

  • Don't store name/dtype in grouper (#22525)
  • Add structure for dispatching iceberg to native scans (#22405)
  • Remove unused reduction code (#22462)
  • Pin to explicit macOS version in code coverage (#22432)

Thank you to all our contributors for making this release possible! @AH-Merii, @JakubValtar, @Julian-J-S, @Kevin-Patyk, @Liyixin95, @MarcoGorelli, @Matt711, @alexander-beedie, @brianmakesthings, @coastalwhite, @nameexhaustion, @orlp and @ritchie46