Wheels: linux x86_64 / macOS x86_64 / macOS aarch64 + sdist via maturin
trusted-publish. Triggered by the v0.1.6 tag push.
Notes (from PR #5, merged at 855e959):
- chunked_pca: 3-path randomised SVD
1. auto-materialise to dense when scaled matrix fits in <materialize_threshold_gb
2. implicit centering via (N - μ)/σ · W = N · diag(1/σ) · W - (μ/σ) · W
so sparse counts → scaled PCA never densifies (~1 GB peak on 42k × 60k)
3. legacy chunked Halko as fallback
- use_highly_variable kwarg (default True) restricts PCA to HVG columns
- Default n_power_iters bumped 2 → 4 (accuracy regression test guards this)
- Real-data: TS-Vasculature 42k × 60k PCA 370.6s → 39.6s (9.4×) at 17× less RAM