Polars 1.29.0

1.29.0

Python Polars 1.29.0

Added 7
  • Highlight nodes in streaming phys plan graph
  • Show physical stage graph
  • Add structure for dispatching iceberg to native scans
  • Add SQL support for checking array values with IN and NOT IN expressions
  • Support DataFrame and Series init from torch Tensor objects
  • Add RoundMode for Decimal and Float
  • Inform users that IO error path file name can be expanded with POLARS_VERBOSE=1
Changed 1
  • Avoid alloc_zeroed in decompression
Fixed 12
  • Fix streaming outer join coalesce bug
  • Remove redundant print statement in assert_frame_schema_equal()
  • Fix bug in .unique() followed by .slice()
  • Fix error reading parquet with datetimes written by pandas
  • Fix schema_overrides not taking effect in NDJSON
  • Fix fold flags and verify scalar correctness in apply
🚀 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

View original

Upgraded? How did it go?

Discussion