Python Polars 1.1.0
🚀 Performance improvements
- Keep more parallelism when CSE plan cache hits (#17463)
- Batch parquet primitive decoding (#17462)
- Respect allow_threading in some more operators (#17450)
- Parallelize parquet metadata deserialization (#17399)
- Use underlying fileno for Python files when possible (#17315)
- Add future arg to Series.to_arrow (#17371)
✨ Enhancements
- Add "future" versioning (#17421)
- Apply slice pushdown immediately to in-memory frames (#17459)
- Support writing hive partitioned parquet (#17324)
- Add right join support (#17441)
- Support hive partitioning in
scan_ipc(#17434) - Improve error message when passing string key to
Series.__getitem__(#17408)
🐞 Bug fixes
- Handle DB cursor descriptions that contain more fields than the DBAPI2 standard (#17468)
- Fix decimal dyn float supertype (#17464)
- Verify the integrity of pandas column names before implied string conversion (#17433)
- Don't rechunk on phys_repr (#17461)
- Harden alchemy session for old sqlalchemy versions (#17366)
- Fix swapping rename schema (#17458)
- Make boolean reads consistent across all
read_excelengines (#17448) - Raise on oob decimal precision (#17445)
- Fix handling of TextIOWrapper in write_csv (#17328)
- Support sa session (#17435)
- Fix
from_pandasfor string columns with missing values (#17397) - Fix a global variable table-discovery edge case for the
SQLinterface (#17400) - Don't allow json inference method to be chunked/streaming (#17396)
- Set literal nesting to 0 (#17392)
- Fix scanning cloud paths with spaces (#17379)
- Fix
slicelength no longer allowingNone(#17372) - Fix typo in
SchemaErrorexception message (#17350) - Raise proper error for mismatching parquet schema instead of panicking (#17321)
📖 Documentation
- Add examples for scanning hive datasets to user guide (#17431)
- Update
partition_bydocstring to match new behavior (#17394) - Update
GroupBy.__iter__docstring to match new behavior (#17383)
📦 Build system
- Add support for NumPy 2.0 (#17384)
🛠️ Other improvements
- Add automated check for PR title formatting (#17412)
- Remove transmute for object store path (#17395)
- Fix Python version resolver in release drafter (#17390)
- Avoid use of
np.trapzin tests to prepare for NumPy 2.0 (#17387) - Avoid writing to disk when running
sink_csvtest (#17386)
Thank you to all our contributors for making this release possible!
@alexander-beedie, @brunobbaraujo, @cmdlineluser, @coastalwhite, @dependabot, @dependabot[bot], @nameexhaustion, @orlp, @phi-friday, @ritchie46, @ruihe774, @sherlockbeard, @stinodego, @tylerriccio33 and @wence-