Skip to content

Python Polars 0.20.6-rc.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 22 Jan 14:32
bb2d235

🏆 Highlights

  • new implementation for String/Binary type. (#13748)

🚀 Performance improvements

  • speedup boolean filter (#13905)
  • speedup binview filter (#13902)
  • allow python threads in read_ functions (#13886)
  • improve binview filter (#13878)
  • apply string view GC more conservatively (#13850)
  • add optimized BinaryViewArray comparison kernels (#13839)
  • lazy cache binview bytes len (#13830)
  • fast-path for eager int_range (#13811)
  • Optimize arr.sum for inner non-null bool (#13800)

✨ Enhancements

  • register 'set_sorted' as batch/elementwise (#13896)
  • move Enum/Categorical categories to binview (#13882)
  • Add ignore_nulls for list.join (#13701)
  • Add ignore_nulls for pl.concat_str (#13877)
  • Align int_range and int_ranges signatures (#13867)
  • fix parquet for binview (#13873)
  • support mmap for binview in OOC (#13872)
  • implement ffi for binview (#13871)
  • Support zero fill null strategy for binary and string columns (#13869)
  • allow df.rename and lf.rename to take a renaming function (#13708)
  • Implement/fix unary minus operator -pl.col(...) (#13776)
  • extend SQL EXTRACT with "century", "millennium", and "timezone" parts (#13634)
  • fix binview ipc format (#13842)
  • add SQL support for numeric and/or decimal types (#13739)
  • improve panic message (#13836)
  • Expressify str.zfill (#13790)
  • new implementation for String/Binary type. (#13748)
  • Add typing to hvplot plot namespace (#13813)
  • Add nulls_last for Series.sort (#13794)
  • allow ftp URLs, improve URL check (#13781)

🐞 Bug fixes

  • prune emtpy chunks before set operations (#13898)
  • treat null columns as zero in sum_horizontal (#13880)
  • include null count in rolling window validity with min_periods (#13863)
  • Fix interchange protocol for new String type (#13881)
  • parquet hybrid RLE encoding did not always align to bit width (#13883)
  • Add ignore_nulls for list.join (#13701)
  • .dt.time() was panicking for datetimes prior to unix epoch (#13812)
  • allow list creation of decimals (#13851)
  • ensure kwargs filter behaviour matches docstring (expect equivalence with eq) (#13864)
  • Implement abs for Decimal, error on Date/Time/Datetime (#13821)
  • rolling nested groups deadlock (#13835)
  • gather_every should work on agg context (#13810)
  • Fix segfault of is_in (#13814)
  • don't panic on full null qcut (#13815)
  • validate operator arithmetic with None, fix Series edge-case (#13780)

📖 Documentation

  • Mention deltalake write support in README (#13890)
  • use proper argument names in the code blocks of api.rst (#13866)

🛠️ Other improvements

  • move filter to polars-compute (#13897)
  • Revert pandas warning filter (#13893)
  • Make functions in expr/general non-anonymous (#13832)
  • Fix doctests (#13831)
  • Refactor Python release workflow (#13807)

Thank you to all our contributors for making this release possible!
@ByteNybbler, @MarcoGorelli, @Wainberg, @alexander-beedie, @dependabot, @dependabot[bot], @edavisau, @flisky, @ion-elgreco, @itamarst, @kstoneriv3, @mcrumiller, @mkucijan, @nameexhaustion, @orlp, @reswqa, @ritchie46, @stinodego, @taki-mekhalfa and @thomasaarholt