py-1.12.0
pola-rs/polarspy-1.12.0Oct 27, 2024by github-actions[bot]
AI Summary
Python release aligning with Rust 0.44.0 features, focusing on Parquet enhancements, credential providers, and bug fixes.
Key Highlights
- Respect `include_index` for pandas series
- Add `credential_provider` argument to more read functions
- Support querying specific snapshot by id in `scan_iceberg`
New Features
- Implement nested Parquet writing for High-Precision Decimals
- Improve `read_database` typing
- Respect `include_index` for pandas series
- Add `credential_provider` argument to more read functions
- Add IPC sink in new streaming engine
- Support querying specific snapshot by id in `scan_iceberg`
Full Release Notes
## ⚠️ Deprecations - Make some parameters of `dt.add_business_days` keyword-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_database` typing (#19444) - Respect `include_index` for pandas series (#19453) - Add `credential_provider` argument 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 `ColumnNotFound` error (#19473) - Properly raise on mean\_horizontal with wrong dtypes (#19472) - Make output dtype known for `list.to_struct` when `fields` are 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_missing` also compares outer validity (#19443) - Fix incorrect reverse on struct containing NULLs (#19446) - Faulty `escape_regex` example (#19440) - Capture groups should be ignored in replace when literal=True (#19413) - Fix `ColumnNotFound` when using `pl.element()` inside `list.eval` (#19438) - Updates error message in csv parser to recommend schema\_overrides instead of deprecated dtypes argument (#19416) - Incorrect `.join(..., how="left").head(N)` if `N <= 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 `examples` folder 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