Pre-Release of Polars 2.0
- ID
- 21087
- Status
- summarized
- Published
- 03 Sep 2026, 2:59 PM
- Fetched
- 04 Sep 2026, 4:03 AM
- Provider
- Hacker News
- Category
- dev-community
- Original URL
- https://pola.rs/posts/announcing-polars-2/
- Source URL
- https://hnrss.org/best
Summary
- Score
- 7.0
- Created
- 04 Sep 2026, 4:05 AM
- Tags
- Audience
- developersai_agent_usersdatabase_learners
What happened
Polars 2.0 release candidate is out, with the biggest change being that LazyFrame collect() now defaults to the streaming engine instead of the in-memory engine, expecting ~5x performance improvements and lower memory usage. Row order is no longer guaranteed for joins, group_by, and unpivot unless you set maintain_order=True, and stricter schema validation is emphasized with collect_schema() for early error detection.
Why it matters
If you use Polars in pipelines, your query results may now arrive in different row order after upgradingāaudit any join/group_by/unpivot where order matters and add maintain_order=True or pin engine='in-memory'. The collect_schema() method is worth adopting if you're building AI agent workflows that generate Polars queries, since it lets agents validate schema without materializing data.
Discussion angle
Walk through the migration risk: which of your existing Polars queries silently depend on row ordering from joins or group_bys, and is the 5x streaming performance worth the audit cost versus just pinning engine='in-memory'?