*Release Note Entries for SciPy 1.14.0 (asterisk makes this appear at the top)
This file contains release note entries for the SciPy 1.14.0 release. PR authors and maintainers can add descriptions here when a PR gets merged. The release manager will then integrate those into the release notes in the main repo. The reason for doing it this way is to avoid merge conflicts that would happen if many PRs each add a bit to those release notes. See gh-7794 for discussion on how we arrived at this mechanism.
To authors: if you're unsure about the formatting, please follow an example from https://github.com/scipy/scipy/blob/main/doc/source/release/1.12.0-notes.rst
Note also that the material on this page should be written in reST syntax. For literal text and routine names etc., use double backticks --- for parts where you want source code link, write the fully qualified name with single backticks, e.g. `scipy.sparse.linalg`
Note: Scipy 1.14.0 has not been released yet
SciPy 1.14.0 is the culmination of X months of hard work. It contains
many new features, numerous bug-fixes, improved test coverage and better
documentation. There have been a number of deprecations and API changes
in this release, which are documented below. All users are encouraged to
upgrade to this release, as there are a large number of bug-fixes and
optimizations. Before upgrading, we recommend that users check that
their own code does not use deprecated SciPy functionality (to do so,
run your code with python -Wd
and check for DeprecationWarning
s).
Our development attention will now shift to bug-fix releases on the
1.10.x branch, and on adding new features on the master branch.
This release requires Python 3.X+ and NumPy 1.X.X or greater.
For running on PyPy, PyPy3 >= X.X and NumPy >=1.X.X are required.
- SciPy now supports the new Accelerate library introduced in macOS 13.3, and has wheels built against Accelerate for macOS >=14.
-
scipy.optimize.HessianUpdateStrategy
now also accepts square arrays forinit_scale
.
- A special case has been added to handle multiplying a
dia_array
by a scalar, which avoids a potentially costly conversion to CSR format.
-
Rotation
supports an alternative "scalar-first" convention of quaternion components order. It is available via the keyword argumentscalar_first=False
offrom_quat
andas_quat
methods.
There is an ongoing effort to follow through on long-standing deprecations. The following previously deprecated features are affected:
-
Several previously deprecated methods for sparse arrays were removed:
asfptype
,getrow
,getcol
,get_shape
,getmaxprint
,set_shape
,getnnz
, and getformat. Additionally, the.A
and.H
attributes were removed. -
scipy.integrate.{simps,trapz,cumtrapz}
have been removed in favour ofsimpson
,trapezoid
, andcumulative_trapezoid
-
The tol argument of
scipy.sparse.linalg.{bcg,bicstab,cg,cgs,gcrotmk,gmres,lgmres,minres,qmr,tfqmr}
has been removed in favour ofrtol
. Furthermore, the default value ofatol
for these functions has changed to0.0
. -
The
restrt
argument ofscipy.sparse.linalg.gmres
has been removed in favour ofrestart
. -
The
initial_lexsort
argument ofscipy.stats.kendalltau
has been removed. -
The
cond
andrcond
arguments ofscipy.linalg.pinv
have been removed. -
The
even
argument ofscipy.integrate.simpson
has been removed. -
The
turbo
andeigvals
arguments fromscipy.linalg.{eigh,eigvalsh}
have been removed -
The
legacy
argument ofscipy.special.comb
has been removed -
The
hz
/nyq
argument ofsignal.{firls, firwin, firwin2, remez}
has been removed -
Coinciding with changes to function signatures (e.g. removal of a deprecated keyword), we are deprecating positional use of keyword arguments for the affected functions, which will now raise an error. Affected functions are:
sparse.linalg.{bicg, bicgstab, cg, cgs, gcrotmk, gmres, lgmres, minres, qmr, tfqmr}
stats.kendalltau
linalg.pinv
integrate.simpson
linalg.{eigh,eigvalsh}
special.comb
signal.{firls, firwin, firwin2, remez}
SciPy now uses C17 as the C standard to build with, instead of C99. The C++ standard remains C++17.
macOS Accelerate, which got a major upgrade in macOS 13.3, is now supported. This results in significant performance improvements for linear algebra operations, as well as smaller binary wheels.