# Changelog

## Baseline

- First survey — no prior run to compare against. CAI 42.

## Lenses

- Code Health 91
- Architecture 96
- Maturity 58
- Readiness 30
- Security 33

## Changes since last survey

- 300 commits — 159 feature/other, 141 fixes

## By area

- crates/polars-plan — 70 commits
- py-polars/src — 29 commits
- py-polars/tests — 25 commits
- crates/polars-stream — 17 commits
- docs/source — 17 commits
- (root) — 15 commits
- crates/polars-core — 15 commits
- crates/polars-io — 13 commits
- crates/polars-python — 13 commits
- crates/polars-ops — 12 commits
- crates/polars-arrow — 9 commits
- crates/polars-utils — 8 commits
- crates/polars-compute — 6 commits
- crates/polars-expr — 6 commits
- crates/polars-sql — 6 commits
- py-polars/runtime — 5 commits
- .github/workflows — 4 commits
- crates/polars-parquet — 4 commits
- crates/polars-mem-engine — 3 commits
- crates/polars-ooc — 3 commits

## Notable commits

- fix: chore(rust): Fix 1.97 Rust clippy hints (#28305)
- fix: chore: Patch jemalloc-sys for Makefile bug (#27945)
- fix: ci: Fix duckdb delta extension install collision (#28607)
- fix: docs(python): Fix Polars Cloud API reference link (#28693)
- fix: docs: Fix dataset regression in the examples (#28131)
- fix: docs: Fix dev docs being canonical for SEO (#28306)
- fix: docs: Fix to_titlecase incorrectly claiming alphanumeric separation (#28136)
- fix: docs: Minor fixes to Spark migration guide (#27730)
- fix: fix(docs): Grammar corrections (recommend to → recommend, allows to → allows using) (#28038)
- fix: fix(python): Avoid panic constructing Series from unaligned numpy arrays (#28120)
- fix: fix(python): Close ResourceWarning leaks in database tests (#28066)
- fix: fix(python): Database appends with `ADBC` shouldn't require "CREATE" privileges unless the table is confirmed not to exist (#28228)
- fix: fix(python): Expiry time loading for AWS `DeferredRefreshableCredentials` (#28099)
- fix: fix(python): Fully resolve remaining `ResourceWarning` leaks in database/iceberg tests (#28107)
- fix: fix(python): Normalize non-native byte order in numpy array construction (#28197)
- fix: fix(python): Remove usage of deprecated `pyarrow.feather.read_table` (#28323)
- fix: fix(rust): Add column length check to row encoding (#28248)
- fix: fix(rust): Add missing Send bounds in Connector (#28497)
- fix: fix(rust): Apply same type coercion to IsBetween as binary comparisons (#28300)
- fix: fix(rust): Bad array len in UnionArray (#28079)
- …and 280 more
