Releases: PyO3/rust-numpy
rust-numpy version 0.23.0
This release bumps PyO3 to 0.23.0. As part of this change many trait bounds have changed to require the new IntoPyObject
trait, and types implementing the Element
trait are now required to be Sync
.
Additionally, the rustc-hash
dependency has been bumped to 2 and the nalgebra
optional dependency has had the accepted range widened to allow version 0.33.
Thank you to @Icxolu, @kli6891 and @jonaspleyer for the improvements.
rust-numpy version 0.22.1
This release fixes support for 32-bit Windows, and adds PyReadWriteArray::make_nonwriteable
.
Thanks to @jakelishman for the improvements!
rust-numpy version 0.22.0
This long-overdue release bumps PyO3 version to 0.22.0, bringing Python 3.13 support. Also included is support for numpy 2.0 as well as ndarray 0.16.
Thank you to the long list of contributors who made this happen, including:
@adamreichold
@aMarcireau
@bschoenmaeckers
@davidhewitt
@euanwm
@itamarst
@JRRudy1
@maffoo
@magnusuMET
rust-numpy version 0.21.0
This release matches PyO3 version 0.21.0 and thanks to the tireless work of @Icxolu migrates to the new Bound
API which unlocks pervasive performance improvements. It also adds a prelude
module to simplify imports and extends the documentation to cover some surprising behaviours.
rust-numpy version 0.20.0
This release matches PyO3 version 0.20.0 and follows its MSRV increase to Rust 1.56. It adds support for fixed size string-like elements via PyFixedString
and PyFixedUnicode
, adds support for the bfloat16
element type often added to NumPy by third-party packages and introduces the PyArrayLike
receiver type to provide flexible yet efficient array-based API.
rust-numpy version 0.19.0
This release matches PyO3 version 0.19.0. It introduces PyUntypedArray
which allows safe inspection of an array before committing to an element type.
rust-numpy version 0.18.0
This release matches PyO3 version 0.18.0, adds basic conversions to and from the types provided by the nalgebra
crate, drops the deprecated wrappers around NumPy's iterators and makes the dynamic borrow checking work across multiple extensions and potentially language boundaries.
rust-numpy version 0.17.2
This release fixes unsound aliasing into Box<[T]>
when converting these into PyArray<T, D>
via the IntoPyArray
trait.
rust-numpy version 0.17.1
This release fixes a use-after-free bug in how the methods PyArray::resize
, PyArray::reshape
and PyArray::reshape_with_order
call into the NumPy C-API.
Due to this breaking memory safety and being easy to hit in release builds, the previous release 0.17.0 was yanked from crates.io.
rust-numpy version 0.17.0
This release matches PyO3 version 0.17.0. It introduces dynamic borrow checking for PyArray
and adds support for NumPy's float16
, datetime64
and timedelta64
data types. The complete changelog lists further fixes and enhancements.