diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c53138d..1d8fcbec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Changed +- **Bumped the Rust backend's `blas-src` crate `0.10` → `0.14`.** `blas-src` is a + linker-only crate pulled in **only by the `accelerate` (macOS) feature**; the Linux + `openblas` path links system OpenBLAS via `build.rs` and the default/Windows builds use the + pure-Rust `faer` backend, so neither touches `blas-src`. `0.14` links the **same** system + Accelerate.framework as `0.10` (`accelerate-src` is unchanged at `0.3.2`), so there is no + API or numerical change. Validated on the macOS Accelerate path: clean `cargo build` / + `maturin develop --features accelerate` against the pinned `ndarray 0.17`, the Rust unit + tests, and the full Python⇄Rust equivalence suite (`tests/test_rust_backend.py`). + ## [3.5.3] - 2026-06-25 ### Added diff --git a/rust/Cargo.toml b/rust/Cargo.toml index e209e3b4..2e125876 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -33,9 +33,10 @@ rayon = "1.8" # BLAS for matrix-vector products is optional via accelerate/openblas features. faer = "0.24" -# BLAS backend (optional, activated by accelerate/openblas features) -# blas-src 0.10 is ndarray's tested version (see ndarray/crates/blas-tests/Cargo.toml) -blas-src = { version = "0.10", optional = true } +# BLAS backend — linker-only crate, pulled in ONLY by the `accelerate` +# (macOS) feature; OpenBLAS (Linux) is linked via build.rs, not blas-src +# (see src/lib.rs). 0.14 links the same system Accelerate.framework as 0.10. +blas-src = { version = "0.14", optional = true } [profile.release] lto = true