Polars: py-0.18.0 Release

Release date:
May 29, 2023
Previous version:
py-0.17.15 (released May 23, 2023)
Magnitude:
10,277 Diff Delta
Contributors:
12 total committers
Data confidence:
Commits:

59 Commits in this Release

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

Authored May 27, 2023

Top Contributors in py-0.18.0

stinodego
ritchie46
MarcoGorelli
mcrumiller
CloseChoice
alexander-beedie
jonashaag
universalmind303
tim-habitat
charliegallop

Directory Browser for py-0.18.0

We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.

Release Notes Published

πŸ† Highlights

  • Rename list namespace accesor from .arr to .list (#8999)

⚠️ Breaking changes

  • propagate null in equality comparisons (#9053)
  • formalize implode -> explode relation (#9038)
  • Drop subclassing support for DataFrame/LazyFrame (#9008)
  • consistently return list of date/datetime from lazy date_range (#8513)
  • Default date_range/ones/zeros to eager=False (#9007)
  • Rename list namespace accesor from .arr to .list (#8999)
  • disallow time zones other than those in zoneinfo.available_timezones() (#8993)
  • remove window expression magic (#8992)
  • raise error when sorted flag not set (#8994)
  • Drop subclassing support for GroupBy (#7746)
  • in Series constructor, if inputs are time-zone-aware datetimes, convert to UTC (#8881)
  • parse offset-naive date time strings as Timestamp(time_unit), offset-aware datetime strings as Timestamp(time_unit, "UTC"), and remove the utc argument (#8714)
  • Remove deprecated tz_aware argument (#8696)

πŸš€ Performance improvements

  • speed up write_csv for time-zone-aware columns (#9093)
  • parallelize rolling_window group materialization (#9095)
  • elide hot loop in hash joins (#9075)

✨ Enhancements

  • conversion from Utf8 to Decimal. (#9090)
  • default to checking sortedness in groupby_rolling… (#9063)
  • propagate null in equality comparisons (#9053)
  • warn if constructing Series with time-zone-aware datetimes (#9058)
  • implement apply for rolling/dynamic_groupby (#9049)
  • Support more data types in lazy repeat (#9046)
  • implement strategy=nearest for join_asof (#9024)
  • arr.sum expression (#9041)
  • formalize implode -> explode relation (#9038)
  • add array namespace and min/max expression (#9032)
  • improve error message on row-wise overflow (#9021)
  • properly apply slice at UNION level (#9018)
  • consistently return list of date/datetime from lazy date_range (#8513)
  • Default date_range/ones/zeros to eager=False (#9007)
  • disallow time zones other than those in zoneinfo.available_timezones() (#8993)
  • raise error when sorted flag not set (#8994)
  • in Series constructor, if inputs are time-zone-aware datetimes, convert to UTC (#8881)
  • parse offset-naive date time strings as Timestamp(time_unit), offset-aware datetime strings as Timestamp(time_unit, "UTC"), and remove the utc argument (#8714)

🐞 Bug fixes

  • rolling_groupy was returning incorrect results when offset was positive (#9082)
  • don't underflow on list.tail (#9089)
  • fix null/empty in List::take_unchecked (#9074)
  • repeat by (#9023)
  • raise in to_datetime/strptime if format contains hour but not minute directive (#9044)
  • Order of pl.Array arguments in docstring (#9059)
  • propagate nulls in broadcasting of order comparisons (#9050)
  • Improve read_parquet missing column error message (#8961)
  • fix apply with passed date/datetime return_dtype (#9035)
  • respect inner type in Array construction (#9020)
  • raise error on invalid aggregation (#9013)
  • fix fused arithmetic in window functions (#9012)
  • don't allow silent init of Series declared as int/temporal with floating point values (#9004)
  • deprecate time_unit property from Series (#8990)

πŸ› οΈ Other improvements

  • Improve expression parsing utils (#9094)
  • Refactor expression input parsing util (#9085)
  • Organize "as_datatype" functions (#9080)
  • Change eager path for repeat (#9048)
  • Clean up arange/date_range/time_range (#9027)
  • Drop subclassing support for DataFrame/LazyFrame (#9008)
  • minor SQLContext docstring cleanups (#9005)
  • Rename list namespace accesor from .arr to .list (#8999)
  • remove window expression magic (#8992)
  • Drop subclassing support for GroupBy (#7746)
  • refactor!(python): Remove old deprecated functionality (#8995)
  • Remove deprecated tz_aware argument (#8696)

Thank you to all our contributors for making this release possible! @CloseChoice, @MarcoGorelli, @alexander-beedie, @charliegallop, @jonashaag, @mcrumiller, @raymead, @ritchie46, @sorhawell, @stinodego, @tim-habitat and @universalmind303