🚀 Performance improvements
- use row format in streaming join
~15%
(#9379) - row encode buffer reuse (#9371)
- bytes row format for streaming groupby/unique keys
>3.5x
(#9346) - push slices down map functions (#9350)
✨ Enhancements
- support all numeric dtypes in serde (#9393)
- allow easy load/save of polars
Config
options to/from file (#9391) - ensure part of the plan is streaming if aggregati… (#9387)
- add relaxed concatenation (#9382)
- add sql DROP TABLE (#9355)
- support ternary expressions in streaming (#9343)
- add SQL support for null-aware equality checks (#9332)
- add SQL support for regular expression operators (
~
,!~
,~*
, and!~*
) (#9327) - support
//
integer floordiv operator in the SQL engine (#9324)
🐞 Bug fixes
- fix bug when comparing series (#9359)
- list zip with (#9367)
- parquet + categorical (#9363)
- respect startby in groupby_dynamic when every is greater than 1d (#9362)
- raise groupby apply on empty frame (#9360)
- raise more informative error on string arguments (#9352)
- Allow for tolerance when comparing nested dtype columns (#9272)
- avoid
is_in
TypeError with sets of values containing 'None' (#9323)
🛠️ Other improvements
- add top-k test for #9385 (#9388)
- document apply 'return_dtype' requirement (#9361)
- clarify when day of week takes effect in groupby_dynamic (#9342)
- add "if you're coming from pandas" tip to groupby_dynamic (#9336)
- fix string language formatting (#9341)
- add doc entries for
eq_missing
andne_missing
expressions (#9331) - fixup options for
validate
arg injoin
(#9319)
Thank you to all our contributors for making this release possible!
@0xbe7a, @AnatolyBuga, @MarcoGorelli, @alexander-beedie, @dkrako, @durandtibo, @ritchie46 and @universalmind303