Hi all,
On behalf of the SciPy development team I'm pleased to announce the release
candidate
SciPy 1.13.0rc1. Please help us test this pre-release.
Sources and binary wheels can be found at:
https://pypi.org/project/scipy/
and at: https://github.com/scipy/scipy/releases/tag/v1.13.0rc1
One of a few ways to install the release candidate with pip:
pip install scipy==1.13.0rc1
==
SciPy 1.13.0 Release Notes
==
Note: SciPy 1.13.0 is not released yet!
SciPy 1.13.0 is the culmination of 3 months of hard work. This
out-of-band release aims to support NumPy ``2.0.0``, and is backwards
compatible to NumPy ``1.22.4``. The version of OpenBLAS used to build
the PyPI wheels has been increased to ``0.3.26``.
This release requires Python 3.9+ and NumPy 1.22.4 or greater.
For running on PyPy, PyPy3 6.0+ is required.
**
Highlights of this release
**
- Support for NumPy ``2.0.0``.
- Interactive examples have been added to the documentation, allowing users
to run the examples locally on embedded Jupyterlite notebooks in their
browser.
- Preliminary 1D array support for the COO and DOK sparse formats.
- Several `scipy.stats` functions have gained support for additional
``axis``, ``nan_policy``, and ``keepdims`` arguments. `scipy.stats` also
has several performance and accuracy improvements.
New features
`scipy.integrate` improvements
==
- The ``terminal`` attribute of `scipy.integrate.solve_ivp` ``events``
callables now additionally accepts integer values to specify a number
of occurrences required for termination, rather than the previous
restriction
of only accepting a ``bool`` value to terminate on the first registered
event.
`scipy.io` improvements
===
- `scipy.io.wavfile.write` has improved ``dtype`` input validation.
`scipy.interpolate` improvements
- The Modified Akima Interpolation has been added to
``interpolate.Akima1DInterpolator``, available via the new ``method``
argument.
- ``RegularGridInterpolator`` gained the functionality to compute
derivatives
in place. For instance, ``RegularGridInterolator((x, y), values,
method="cubic")(xi, nu=(1, 1))`` evaluates the mixed second derivative,
:math:`\partial^2 / \partial x \partial y` at ``xi``.
- Performance characteristics of tensor-product spline methods of
``RegularGridInterpolator`` have been changed: evaluations should be
significantly faster, while construction might be slower. If you
experience
issues with construction times, you may need to experiment with optional
keyword arguments ``solver`` and ``solver_args``. Previous behavior (fast
construction, slow evaluations) can be obtained via `"*_legacy"` methods:
``method="cubic_legacy"`` is exactly equivalent to ``method="cubic"`` in
previous releases. See ``gh-19633`` for details.
`scipy.signal` improvements
===
- Many filter design functions now have improved input validation for the
sampling frequency (``fs``).
`scipy.sparse` improvements
===
- ``coo_array`` now supports 1D shapes, and has additional 1D support for
``min``, ``max``, ``argmin``, and ``argmax``. The DOK format now has
preliminary 1D support as well, though only supports simple integer
indices
at the time of writing.
- Experimental support has been added for ``pydata/sparse`` array inputs to
`scipy.sparse.csgraph`.
- ``dok_array`` and ``dok_matrix`` now have proper implementations of
``fromkeys``.
- ``csr`` and ``csc`` formats now have improved ``setdiag`` performance.
`scipy.spatial` improvements
- ``voronoi_plot_2d`` now draws Voronoi edges to infinity more clearly
when the aspect ratio is skewed.
`scipy.special` improvements
- All Fortran code, namely, ``AMOS``, ``specfun``, and ``cdflib`` libraries
that the majority of special functions depend on, is ported to Cython/C.
- The function ``factorialk`` now also supports faster, approximate
calculation using ``exact=False``.
`scipy.stats` improvements
==
- `scipy.stats.rankdata` and `scipy.stats.wilcoxon` have been vectorized,
improving their performance and the performance of hypothesis tests that
depend on them.
- ``stats.mannwhitneyu`` should now be faster due to a vectorized statistic
calculation, improved caching, improved exploitation of symmetry, and a
memory reduction. ``PermutationMethod`` support was also added.
- `scipy.stats.mood` now has ``nan_policy`` and ``keepdims`` support.
- `scipy.stats.brunnermunzel` now has ``axis`` and ``keepdims`` support.
- `scipy.stats.friedmanchisquare`, `scipy.stats.shapiro`,
`scipy.stats.normaltest`, `scipy.stats.skewtest`,
`scipy.stats.kurtosistest`, `scipy.stats.f_oneway`,
`scipy.stats.alexandergovern`, `scipy.stats.combine_pvalue