# Polars 1.2.1 — Python Polars 1.2.1 - Product: Polars (https://whatsnew.fyi/product/polars) - Vendor: Polars - Date: 2024-07-18 - Version: 1.2.1 - Original notes: https://github.com/pola-rs/polars/releases/tag/py-1.2.1 - Permalink: https://whatsnew.fyi/product/polars/releases/1.2.1 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **changed** — Specify tune-cpu and add more features for performance optimization - **changed** — Improve garbage collection and push_view for binviews - **changed** — Raise error instead of panic in unsupported serde - **added** — Expose Arrow C interface directly on Polars - **added** — Include file path option for NDJSON - **fixed** — Use bytemuck in slice reinterpret for Parquet ArrayChunks - **fixed** — Remove non-existing names from __all__ - **fixed** — Fix return type hint for LazyFrame sink methods - **fixed** — Propagate struct outer nullability eagerly - **fixed** — Address read_database issue with batched reads from Snowflake - **fixed** — Use ETag for HTTP file cache invalidation - **fixed** — Fix default name for value_counts methods based on normalize parameter - **added** — Add reduce ComputeNode in new streaming engine ##### 🚀 Performance improvements - Specify tune-cpu \& add more features (#17615) - Better GC and push\_view for binviews (#17627) ##### ✨ Enhancements - Raise error instead of panic in unsupported serde (#17679) - Expose Arrow C interface directly on Polars (#17696) - Include file path option for NDJSON (#17681) ##### 🐞 Bug fixes - Use bytemuck in slice reinterpret for Parquet ArrayChunks (#17700) - Remove non-existing names from `__all__` (#17494) - Fix return type hint for LazyFrame `sink` methods (#17698) - Propagate struct outer nullability eagerly (#17697) - Address `read_database` issue with batched reads from Snowflake (#17688) - Use ETag for HTTP file cache invalidation (#17684) ##### 📖 Documentation - Fixed default name for `value_counts` methods based on normalize parameter (#17685) ##### 📦 Build system - Pin `setuptools` to fix failing CI (#17695) ##### 🛠️ Other improvements - Fix return type hint for LazyFrame `sink` methods (#17698) - Pin `setuptools` to fix failing CI (#17695) - Name tests so they actually run (#17690) - Add reduce `ComputeNode` in new streaming engine (#17389) Thank you to all our contributors for making this release possible! @5j9, @ByteNybbler, @MarcoGorelli, @alexander-beedie, @coastalwhite, @diegoglozano, @eitsupi, @nameexhaustion, @orlp, @ragyabraham, @ritchie46 and @ruihe774