Python Polars 1.12.0
⚠️ Deprecations
- Make some parameters of
dt.add_business_dayskeyword-only (#19428)
🚀 Performance improvements
- Address inadvertent quadratic behaviour in
expand_columns(#19469) - Move rolling_corr/cov to an actual implementation on Series (#19466)
- Don't split par if cast to categorical (#19462)
✨ Enhancements
- Implement nested Parquet writing for High-Precision Decimals (#19476)
- Improve
read_databasetyping (#19444) - Respect
include_indexfor pandas series (#19453) - Add
credential_providerargument to more read functions (#19421) - Add IPC sink in new streaming engine (#19431)
- Support querying specific snapshot by id in
scan_iceberg(#19388)
🐞 Bug fixes
- Include Array in
to_physical(#19474) - Don't panic in SQL temporal string check; raise suitable
ColumnNotFounderror (#19473) - Properly raise on mean_horizontal with wrong dtypes (#19472)
- Make output dtype known for
list.to_structwhenfieldsare passed (#19439) - Address inadvertent quadratic behaviour in
expand_columns(#19469) - Ensure sorted flag is unset after Int->String cast (#19470)
- Fix row_index of batched reader (#19465)
- Fix perfect groupby (#19461)
- Correct wildcard expansion for functions (#19449)
- Ensure struct
eq/ne_missingalso compares outer validity (#19443) - Fix incorrect reverse on struct containing NULLs (#19446)
- Faulty
escape_regexexample (#19440) - Capture groups should be ignored in replace when literal=True (#19413)
- Fix
ColumnNotFoundwhen usingpl.element()insidelist.eval(#19438) - Updates error message in csv parser to recommend schema_overrides instead of deprecated dtypes argument (#19416)
- Incorrect
.join(..., how="left").head(N)ifN <= left_df.height()and there are duplicate matches (#19422) - Support Array type in more DataType methods (#19427)
- Bug in group_tuples_perfect, tail was not processed properly (#19417)
- Ensure that
ASCII*table formats do not use the UTF8 ellipsis char when truncating rows/cols/values (#19404)
📖 Documentation
- Fix docstrings for ATAN2 and ATAN2D SQL functions (#19351)
🛠️ Other improvements
- Undo conflicting fix (#19463)
- Simplify rust side of
datetime(#19459) - Add tests for data mismatch on
read_json(#19425) - Remove code in
examplesfolder in favor of the user guide (#19430)
Thank you to all our contributors for making this release possible!
@alexander-beedie, @cmdlineluser, @coastalwhite, @corleyma, @corwinjoy, @dvillaveces, @eitsupi, @gab23r, @janscholten, @nameexhaustion, @orlp, @ritchie46, @siddharth-vi, @stinodego and @wakabame