Skip to content

Update dependency scipy to v1.16.1 #241

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 3, 2025

This PR contains the following updates:

Package Change Age Confidence
scipy 1.14.1 -> 1.16.1 age confidence

Release Notes

scipy/scipy (scipy)

v1.16.1: SciPy 1.16.1

Compare Source

SciPy 1.16.1 Release Notes

SciPy 1.16.1 is a bug-fix release that adds support for Python 3.14.0rc1,
including PyPI wheels.

Authors

  • Name (commits)
  • Evgeni Burovski (1)
  • Rob Falck (1)
  • Ralf Gommers (7)
  • Geoffrey Gunter (1) +
  • Matt Haberland (2)
  • Joren Hammudoglu (1)
  • Andrew Nelson (2)
  • newyork_loki (1) +
  • Ilhan Polat (1)
  • Tyler Reddy (25)
  • Daniel Schmitz (1)
  • Dan Schult (2)

A total of 12 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

The full issue and pull request lists, and the release asset hashes are available
in the associated README.txt file.

v1.16.0: SciPy 1.16.0

Compare Source

SciPy 1.16.0 Release Notes

SciPy 1.16.0 is the culmination of 6 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.16.x branch, and on adding new features on the main branch.

This release requires Python 3.11-3.13 and NumPy 1.25.2 or greater.

Highlights of this release

  • Improved experimental support for the Python array API standard, including
    new support in scipy.signal, and additional support in scipy.stats and
    scipy.special. Improved support for JAX and Dask backends has been added,
    with notable support in scipy.cluster.hierarchy, many functions in
    scipy.special, and many of the trimmed statistics functions.
  • scipy.optimize now uses the new Python implementation from the
    PRIMA package for COBYLA. The PRIMA implementation fixes many bugs
    in the old Fortran 77 implementation with a better performance on average.
  • scipy.sparse.coo_array now supports n-D arrays with reshaping, arithmetic and
    reduction operations like sum/mean/min/max. No n-D indexing or
    scipy.sparse.random_array support yet.
  • Updated guide and tools for migration from sparse matrices to sparse arrays.
  • Nearly all functions in the scipy.linalg namespace that accept array
    arguments now support N-dimensional arrays to be processed as a batch.
  • Two new scipy.signal functions, scipy.signal.firwin_2d and
    scipy.signal.closest_STFT_dual_window, for creation of a 2-D FIR filter and
    scipy.signal.ShortTimeFFT dual window calculation, respectively.
  • A new class, scipy.spatial.transform.RigidTransform, provides functionality
    to convert between different representations of rigid transforms in 3-D
    space.
  • A new function scipy.ndimage.vectorized_filter for generic filters that
    take advantage of a vectorized Python callable was added.

New features

scipy.io improvements

  • scipy.io.savemat now provides informative warnings for invalid field names.
  • scipy.io.mmread now provides a clearer error message when provided with
    a source file path that does not exist.
  • scipy.io.wavfile.read can now read non-seekable files.

scipy.integrate improvements

  • The error estimate of scipy.integrate.tanhsinh was improved.

scipy.interpolate improvements

  • Batch support was added to scipy.interpolate.make_smoothing_spline.

scipy.linalg improvements

  • Nearly all functions in the scipy.linalg namespace that accept array
    arguments now support N-dimensional arrays to be processed as a batch.
    See linalg_batch for details.
  • scipy.linalg.sqrtm is rewritten in C and its performance is improved. It
    also tries harder to return real-valued results for real-valued inputs if
    possible. See the function docstring for more details. In this version the
    input argument disp and the optional output argument errest are
    deprecated and will be removed four versions later. Similarly, after
    changing the underlying algorithm to recursion, the blocksize keyword
    argument has no effect and will be removed two versions later.
  • Wrappers for ?stevd, ?langb, ?sytri, ?hetri and
    ?gbcon were added to scipy.linalg.lapack.
  • The default driver of scipy.linalg.eigh_tridiagonal was improved.
  • scipy.linalg.solve can now estimate the reciprocal condition number and
    the matrix norm calculation is more efficient.

scipy.ndimage improvements

  • A new function scipy.ndimage.vectorized_filter for generic filters that
    take advantage of a vectorized Python callable was added.
  • scipy.ndimage.rotate has improved performance, especially on ARM platforms.

scipy.optimize improvements

  • COBYLA was updated to use the new Python implementation from the
    PRIMApackage.
    The PRIMA implementation fixes many bugs
    in the old Fortran 77 implementation. In addition, it results in fewer function evaluations on average
    but it depends on the problem and for some
    problems it can result in more function evaluations or a less optimal
    result. For those cases the user can try modifying the initial and final
    trust region radii given by rhobeg and tol respectively. A larger
    rhobeg can help the algorithm take bigger steps initially, while a
    smaller tol can help it continue and find a better solution.
    For more information, see the PRIMA documentation.
  • Several of the scipy.optimize.minimize methods, and the
    scipy.optimize.least_squares function, have been given a workers
    keyword. This allows parallelization of some calculations via a map-like
    callable, such as multiprocessing.Pool. These parallelization
    opportunities typically occur during numerical differentiation. This can
    greatly speed up minimization when the objective function is expensive to
    calculate.
  • The lm method of scipy.optimize.least_squares can now accept
    3-point and cs for the jac keyword.
  • The SLSQP Fortran 77 code was ported to C. When this method is used now the
    constraint multipliers are exposed to the user through the multiplier
    keyword of the returned scipy.optimize.OptimizeResult object.
  • NNLS code has been corrected and rewritten in C to address the performance
    regression introduced in 1.15.x
  • scipy.optimize.root now warns for invalid inner parameters when using the
    newton_krylov method
  • The return value of minimization with method='L-BFGS-B' now has
    a faster hess_inv.todense() implementation. Time complexity has improved
    from cubic to quadratic.
  • scipy.optimize.least_squares has a new callback argument that is applicable
    to the trf and dogbox methods. callback may be used to track
    optimization results at each step or to provide custom conditions for
    stopping.

scipy.signal improvements

  • A new function scipy.signal.firwin_2d for the creation of a 2-D FIR Filter
    using the 1-D window method was added.
  • scipy.signal.cspline1d_eval and scipy.signal.qspline1d_eval now provide
    an informative error on empty input rather than hitting the recursion limit.
  • A new function scipy.signal.closest_STFT_dual_window to calculate the
    scipy.signal.ShortTimeFFT dual window of a given window closest to a
    desired dual window.
  • A new classmethod scipy.signal.ShortTimeFFT.from_win_equals_dual to
    create a scipy.signal.ShortTimeFFT instance where the window and its dual
    are equal up to a scaling factor. It allows to create short-time Fourier
    transforms which are unitary mappings.
  • The performance of scipy.signal.convolve2d was improved.

scipy.sparse improvements

  • scipy.sparse.coo_array now supports n-D arrays using binary and reduction
    operations.
  • Faster operations between two DIA arrays/matrices for: add, sub, multiply,
    matmul.
  • scipy.sparse.csgraph.dijkstra shortest_path is more efficient.
  • scipy.sparse.csgraph.yen has performance improvements.
  • Support for lazy loading of sparse.csgraph and sparse.linalg was
    added.

scipy.spatial improvements

  • A new class, scipy.spatial.transform.RigidTransform, provides functionality
    to convert between different representations of rigid transforms in 3-D
    space, its application to vectors and transform composition.
    It follows the same design approach as scipy.spatial.transform.Rotation.
  • scipy.spatial.transform.Rotation now has an appropriate __repr__ method,
    and improved performance for its scipy.spatial.transform.Rotation.apply
    method.

scipy.stats improvements

  • A new function scipy.stats.quantile, an array API compatible function for
    quantile estimation, was added.
  • scipy.stats.make_distribution was extended to work with existing discrete
    distributions and to facilitate the creation of custom distributions in the
    new random variable infrastructure.
  • A new distribution, scipy.stats.Binomial, was added.
  • An equal_var keyword was added to scipy.stats.tukey_hsd (enables the
    Games-Howell test) and scipy.stats.f_oneway (enables Welch ANOVA).
  • The moment calculation for scipy.stats.gennorm was improved.
  • The scipy.stats.mode implementation was vectorized, for faster batch
    calculation.
  • Support for axis, nan_policy, and keepdims keywords was added to
    scipy.stats.power_divergence, scipy.stats.chisquare,
    scipy.stats.pointbiserialr, scipy.stats.kendalltau,
    scipy.stats.weightedtau, scipy.stats.theilslopes,
    scipy.stats.siegelslopes, scipy.stats.boxcox_llf, and
    scipy.stats.linregress.
  • Support for keepdims and nan_policy keywords was added to
    scipy.stats.gstd.
  • The performance of scipy.stats.special_ortho_group and scipy.stats.pearsonr
    was improved.
  • Support for an rng keyword argument was added to the logcdf and
    cdf methods of multivariate_normal_gen and multivariate_normal_frozen.

Array API Standard Support

Experimental support for array libraries other than NumPy has been added to
multiple submodules in recent versions of SciPy. Please consider testing
these features by setting the environment variable SCIPY_ARRAY_API=1 and
providing PyTorch, JAX, CuPy or Dask arrays as array arguments.

Many functions in scipy.stats, scipy.special, scipy.optimize, and
scipy.constants now provide tables documenting compatible array and device
types as well as support for lazy arrays and JIT compilation. New features with
support and old features with support added for SciPy 1.16.0 include:

  • Most of the scipy.signal functionality
  • scipy.ndimage.vectorized_filter
  • scipy.special.stdtrit
  • scipy.special.softmax
  • scipy.special.log_softmax
  • scipy.stats.quantile
  • scipy.stats.gstd
  • scipy.stats.rankdata

Features with extended array API support (generally, improved support
for JAX and Dask) in SciPy 1.16.0 include:

  • many of the scipy.cluster.hierarchy functions
  • many functions in scipy.special
  • many of the trimmed statistics functions in scipy.stats

SciPy now has a CI job that exercises GPU (CUDA) support, and as a result
using PyTorch, CuPy or JAX arrays on GPU with SciPy is now more reliable.

Deprecated features

  • The unused atol argument of scipy.optimize.nnls is deprecated and will
    be removed in SciPy 1.18.0.
  • The disp argument of scipy.linalg.signm, scipy.linalg.logm, and
    scipy.linalg.sqrtm will be removed in SciPy 1.18.0.
  • scipy.stats.multinomial now emits a FutureWarning if the rows of p
    do not sum to 1.0. This condition will produce NaNs beginning in SciPy
    1.18.0.
  • The disp and iprint arguments of the l-bfgs-b solver of scipy.optimize
    have been deprecated, and will be removed in SciPy 1.18.0.

Expired Deprecations

  • scipy.sparse.conjtransp has been removed. Use .T.conj() instead.
  • The quadrature='trapz' option has been removed from
    scipy.integrate.quad_vec, and scipy.stats.trapz has been removed. Use
    trapezoid in both instances instead.
  • scipy.special.comb and scipy.special.perm now raise when exact=True
    and arguments are non-integral.
  • Support for inference of the two sets of measurements from the single
    argument x has been removed from scipy.stats.linregress. The data
    must be specified separately as x and y.
  • Support for NumPy masked arrays has been removed from
    scipy.stats.power_divergence and scipy.stats.chisquare.
  • A significant number of functions from non-public namespaces
    (e.g., scipy.sparse.base, scipy.interpolate.dfitpack) were cleaned
    up. They were previously already emitting deprecation warnings.

Backwards incompatible changes

  • Several of the scipy.linalg functions for solving a linear system (e.g.
    scipy.linalg.solve) documented that the RHS argument must be either 1-D or
    2-D but did not always raise an error when the RHS argument had more the
    two dimensions. Now, many-dimensional right hand sides are treated according
    to the rules specified in linalg_batch.
  • scipy.stats.bootstrap now explicitly broadcasts elements of data to the
    same shape (ignoring axis) before performing the calculation.
  • Several submodule names are no longer available via from scipy.signal import *,
    but may still be imported directly, as detailed at scipy/scipy-stubs#549.

Build and packaging related changes

  • The minimum supported version of Clang was bumped from 12.0 to 15.0.
  • The lowest supported macOS version for wheels on PyPI is now 10.14 instead of
    10.13.
  • The sdist contents were optimized, resulting in a size reduction of about 50%,
    from 60 MB to 30 MB.
  • For Cython>=3.1.0, SciPy now uses the new cython --generate-shared
    functionality, which reduces the total size of SciPy's wheels and on-disk
    installations significantly.
  • SciPy no longer contains an internal shared library that requires RPATH support,
    after sf_error_state was removed from scipy.special.
  • A new build option -Duse-system-libraries has been added. It allows
    opting in to using system libraries instead of using vendored sources.
    Currently Boost.Math and Qhull are supported as system build
    dependencies.

Other changes

  • A new accompanying release of scipy-stubs (v1.16.0.0) is
    available at https://github.com/scipy/scipy-stubs/releases/tag/v1.16.0.0
  • The internal dependency of scipy._lib on scipy.sparse was removed,
    which reduces the import time of a number of other SciPy submodules.
  • Support for free-threaded CPython was improved: the last known thread-safety
    issues in scipy.special were fixed, and pytest-run-parallel is now used
    in a CI job to guard against regressions.
  • Support for spin as a developer
    CLI was added, including support for editable installs. The SciPy-specific
    python dev.py CLI will be removed in the next release cycle in favor of
    spin.
  • The vendored Qhull library was upgraded from version 2019.1 to 2020.2.
  • A large amount of the C++ code in scipy.special was moved to the new
    header-only xsf library. That library was
    included back in the SciPy source tree as a git submodule.
  • The namedtuple-like bunch objects returned by some SciPy functions
    now have improved compatibility with the polars library.
  • The output of the rvs method of scipy.stats.wrapcauchy is now mapped to
    the unit circle between 0 and 2 * pi.
  • The lm method of scipy.optimize.least_squares now has a different behavior
    for the maximum number of function evaluations, max_nfev. The default for
    the lm method is changed to 100 * n, for both a callable and a
    numerically estimated jacobian. This limit on function evaluations excludes
    those used for any numerical estimation of the Jacobian. Previously the
    default when using an estimated jacobian was 100 * n * (n + 1), because
    the method included evaluations used in the estimation. In addition, for the
    lm method the number of function calls used in Jacobian approximation
    is no longer included in OptimizeResult.nfev. This brings the behavior
    of lm, trf, and dogbox into line.

Authors

  • Name (commits)
  • h-vetinari (4)
  • aiudirog (1) +
  • Anton Akhmerov (2)
  • Thorsten Alteholz (1) +
  • Gabriel Augusto (1) +
  • Backfisch263 (1) +
  • Nickolai Belakovski (5)
  • Peter Bell (1)
  • Benoît W. (1) +
  • Evandro Bernardes (1)
  • Gauthier Berthomieu (1) +
  • Maxwell Bileschi (1) +
  • Sam Birch (1) +
  • Florian Bourgey (3) +
  • Charles Bousseau (2) +
  • Richard Strong Bowen (2) +
  • Jake Bowhay (127)
  • Matthew Brett (1)
  • Dietrich Brunn (53)
  • Evgeni Burovski (254)
  • Christine P. Chai (12) +
  • Gayatri Chakkithara (1) +
  • Saransh Chopra (2) +
  • Omer Cohen (1) +
  • Lucas Colley (91)
  • Yahya Darman (3) +
  • Benjamin Eisele (1) +
  • Donnie Erb (1)
  • Sagi Ezri (58) +
  • Alexander Fabisch (2) +
  • Matthew H Flamm (1)
  • Karthik Viswanath Ganti (1) +
  • Neil Girdhar (1)
  • Ralf Gommers (162)
  • Rohit Goswami (4)
  • Saarthak Gupta (4) +
  • Matt Haberland (326)
  • Sasha Hafner (1) +
  • Joren Hammudoglu (11)
  • Chengyu Han (1) +
  • Charles Harris (1)
  • Kim Hsieh (4) +
  • Yongcai Huang (2) +
  • Lukas Huber (1) +
  • Yuji Ikeda (2) +
  • Guido Imperiale (105) +
  • Robert Kern (2)
  • Harin Khakhi (2) +
  • Agriya Khetarpal (4)
  • Daniil Kiktenko (1) +
  • Kirill R. (2) +
  • Tetsuo Koyama (1)
  • Jigyasu Krishnan (1) +
  • Abhishek Kumar (2) +
  • Pratham Kumar (3) +
  • David Kun (1) +
  • Eric Larson (3)
  • lciti (1)
  • Antony Lee (1)
  • Kieran Leschinski (1) +
  • Thomas Li (2) +
  • Yuxi Long (2) +
  • Christian Lorentzen (2)
  • Loïc Estève (4)
  • Panos Mavrogiorgos (1) +
  • Nikolay Mayorov (2)
  • Melissa Weber Mendonça (10)
  • Michał Górny (1)
  • Miguel Cárdenas (2) +
  • Swastik Mishra (1) +
  • Sturla Molden (2)
  • Andreas Nazlidis (1) +
  • Andrew Nelson (209)
  • Parth Nobel (1) +
  • Nick ODell (9)
  • Giacomo Petrillo (1)
  • Victor PM (10) +
  • pmav99 (1) +
  • Ilhan Polat (74)
  • Tyler Reddy (128)
  • Érico Nogueira Rolim (1) +
  • Pamphile Roy (10)
  • Mikhail Ryazanov (6)
  • Atsushi Sakai (9)
  • Marco Salathe (1) +
  • sanvi (1) +
  • Neil Schemenauer (2) +
  • Daniel Schmitz (20)
  • Martin Schuck (1) +
  • Dan Schult (33)
  • Tomer Sery (19)
  • Adrian Seyboldt (1) +
  • Scott Shambaugh (4)
  • ShannonS00 (1) +
  • sildater (3) +
  • Param Singh (1) +
  • G Sreeja (7) +
  • Albert Steppi (133)
  • Kai Striega (3)
  • Anushka Suyal (2)
  • Julia Tatz (1) +
  • Tearyt (1) +
  • Elia Tomasi (1) +
  • Jamie Townsend (2) +
  • Edgar Andrés Margffoy Tuay (4)
  • Matthias Urlichs (1) +
  • Mark van Rossum (1) +
  • Jacob Vanderplas (2)
  • David Varela (2) +
  • Christian Veenhuis (3)
  • vfdev (1)
  • Stefan van der Walt (2)
  • Warren Weckesser (5)
  • Jason N. White (1) +
  • windows-server-2003 (5)
  • Zhiqing Xiao (1)
  • Pavadol Yamsiri (1)
  • Rory Yorke (3)
  • Irwin Zaid (4)
  • Austin Zhang (1) +
  • William Zijie Zhang (1) +
  • Zaikun Zhang (1) +
  • Zhenyu Zhu (1) +
  • Eric Zitong Zhou (11) +
  • Case Zumbrum (2) +
  • ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (45)

A total of 126 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

Complete issue list, PR list, and release asset hashes are available in the associated README.txt.

v1.15.3: SciPy 1.15.3

Compare Source

SciPy 1.15.3 Release Notes

SciPy 1.15.3 is a bug-fix release with no new features
compared to 1.15.2.

For the complete issue and PR lists see the raw release notes.

Authors

  • Name (commits)
  • aiudirog (1) +
  • Nickolai Belakovski (1)
  • Florian Bourgey (1) +
  • Richard Strong Bowen (2) +
  • Jake Bowhay (1)
  • Dietrich Brunn (2)
  • Evgeni Burovski (1)
  • Lucas Colley (1)
  • Ralf Gommers (1)
  • Saarthak Gupta (1) +
  • Matt Haberland (4)
  • Chengyu Han (1) +
  • Lukas Huber (1) +
  • Nick ODell (2)
  • Ilhan Polat (4)
  • Tyler Reddy (52)
  • Neil Schemenauer (1) +
  • Dan Schult (1)
  • sildater (1) +
  • Gagandeep Singh (4)
  • Albert Steppi (2)
  • Matthias Urlichs (1) +
  • David Varela (1) +
  • ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (3)

A total of 24 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

v1.15.2: SciPy 1.15.2

Compare Source

SciPy 1.15.2 Release Notes

SciPy 1.15.2 is a bug-fix release with no new features
compared to 1.15.1. Free-threaded Python 3.13 wheels
for Linux ARM platform are available on PyPI starting with
this release.

Authors

  • Name (commits)
  • Peter Bell (1)
  • Charles Bousseau (1) +
  • Jake Bowhay (3)
  • Matthew Brett (1)
  • Ralf Gommers (3)
  • Rohit Goswami (1)
  • Matt Haberland (4)
  • Parth Nobel (1) +
  • Tyler Reddy (33)
  • Daniel Schmitz (2)
  • Dan Schult (5)
  • Scott Shambaugh (2)
  • Edgar Andrés Margffoy Tuay (1)
  • Warren Weckesser (4)

A total of 14 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

v1.15.1: SciPy 1.15.1

Compare Source

SciPy 1.15.1 Release Notes

SciPy 1.15.1 is a bug-fix release with no new features
compared to 1.15.0. Importantly, an issue with the
import of scipy.optimize breaking other packages
has been fixed.

Authors

  • Name (commits)
  • Ralf Gommers (3)
  • Rohit Goswami (1)
  • Matt Haberland (2)
  • Tyler Reddy (7)
  • Daniel Schmitz (1)

A total of 5 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.

v1.15.0: SciPy 1.15.0

Compare Source

SciPy 1.15.0 Release Notes

SciPy 1.15.0 is the culmination of 6 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.15.x branch, and on adding new features on the main branch.

This release requires Python 3.10-3.13 and NumPy 1.23.5 or greater.

Highlights of this release

  • Sparse arrays are now fully functional for 1-D and 2-D arrays. We recommend
    that all new code use sparse arrays instead of sparse matrices and that
    developers start to migrate their existing code from sparse matrix to sparse
    array: migration_to_sparray. Both sparse.linalg and sparse.csgraph
    work with either sparse matrix or sparse array and work internally with
    sparse array.

  • Sparse arrays now provide basic support for n-D arrays in the COO format
    including add, subtract, reshape, transpose, matmul,
    dot, tensordot and others. More functionality is coming in future
    releases.

  • Preliminary support for free-threaded Python 3.13.

  • New probability distribution features in scipy.stats can be used to improve
    the speed and accuracy of existing continuous distributions and perform new
    probability calculations.

  • Several new features support vectorized calculations with Python Array API
    Standard compatible input (see "Array API Standard Support" below):

    • scipy.differentiate is a new top-level submodule for accurate
      estimation of derivatives of black box functions.
    • scipy.optimize.elementwise contains new functions for root-finding and
      minimization of univariate functions.
    • scipy.integrate offers new functions cubature, tanhsinh, and
      nsum for multivariate integration, univariate integration, and
      univariate series summation, respectively.
  • scipy.interpolate.AAA adds the AAA algorithm for barycentric rational
    approximation of real or complex functions.

  • scipy.special adds new functions offering improved Legendre function
    implementations with a more consistent interface.

New features

scipy.differentiate introduction

The new scipy.differentiate sub-package contains functions for accurate
estimation of derivatives of black box functions.

  • Use scipy.differentiate.derivative for first-order derivatives of
    scalar-in, scalar-out functions.
  • Use scipy.differentiate.jacobian for first-order partial derivatives of
    vector-in, vector-out functions.
  • Use scipy.differentiate.hessian for second-order partial derivatives of
    vector-in, scalar-out functions.

All functions use high-order finite difference rules with adaptive (real)
step size. To facilitate batch computation, these functions are vectorized
and support several Array API compatible array libraries in addition to NumPy
(see "Array API Standard Support" below).

scipy.integrate improvements

  • The new scipy.integrate.cubature function supports multidimensional
    integration, and has support for approximating integrals with
    one or more sets of infinite limits.
  • scipy.integrate.tanhsinh is now exposed for public use, allowing
    evaluation of a convergent integral using tanh-sinh quadrature.
  • scipy.integrate.nsum evaluates finite and infinite series and their
    logarithms.
  • scipy.integrate.lebedev_rule computes abscissae and weights for
    integration over the surface of a sphere.
  • The QUADPACK Fortran77 package has been ported to C.

scipy.interpolate improvements

  • scipy.interpolate.AAA adds the AAA algorithm for barycentric rational
    approximation of real or complex functions.
  • scipy.interpolate.FloaterHormannInterpolator adds barycentric rational
    interpolation.
  • New functions scipy.interpolate.make_splrep and
    scipy.interpolate.make_splprep implement construction of smoothing splines.
    The algorithmic content is equivalent to FITPACK (splrep and splprep
    functions, and *UnivariateSpline classes) and the user API is consistent
    with make_interp_spline: these functions receive data arrays and return
    a scipy.interpolate.BSpline instance.
  • New generator function scipy.interpolate.generate_knots implements the
    FITPACK strategy for selecting knots of a smoothing spline given the
    smoothness parameter, s. The function exposes the internal logic of knot
    selection that splrep and *UnivariateSpline was using.

scipy.linalg improvements

  • scipy.linalg.interpolative Fortran77 code has been ported to Cython.
  • scipy.linalg.solve supports several new values for the assume_a
    argument, enabling faster computation for diagonal, tri-diagonal, banded, and
    triangular matrices. Also, when assume_a is left unspecified, the
    function now automatically detects and exploits diagonal, tri-diagonal,
    and triangular structures.
  • scipy.linalg matrix creation functions (scipy.linalg.circulant,
    scipy.linalg.companion, scipy.linalg.convolution_matrix,
    scipy.linalg.fiedler, scipy.linalg.fiedler_companion, and
    scipy.linalg.leslie) now support batch
    matrix creation.
  • scipy.linalg.funm is faster.
  • scipy.linalg.orthogonal_procrustes now supports complex input.
  • Wrappers for the following LAPACK routines have been added in
    scipy.linalg.lapack: ?lantr, ?sytrs, ?hetrs, ?trcon,
    and ?gtcon.
  • scipy.linalg.expm was rewritten in C.
  • scipy.linalg.null_space now accepts the new arguments overwrite_a,
    check_finite, and lapack_driver.
  • id_dist Fortran code was rewritten in Cython.

scipy.ndimage improvements

  • Several additional filtering functions now support an axes argument
    that specifies which axes of the input filtering is to be performed on.
    These include correlate, convolve, generic_laplace, laplace,
    gaussian_laplace, derivative2, generic_gradient_magnitude,
    gaussian_gradient_magnitude and generic_filter.
  • The binary and grayscale morphology functions now support an axes
    argument that specifies which axes of the input filtering is to be performed
    on.
  • scipy.ndimage.rank_filter time complexity has improved from n to
    log(n).

scipy.optimize improvements

  • The vendored HiGHS library has been upgraded from 1.4.0 to 1.8.0,
    bringing accuracy and performance improvements to solvers.
  • The MINPACK Fortran77 package has been ported to C.
  • The L-BFGS-B Fortran77 package has been ported to C.
  • The new scipy.optimize.elementwise namespace includes functions
    bracket_root, find_root, bracket_minimum, and find_minimum
    for root-finding and minimization of univariate functions. To facilitate
    batch computation, these functions are vectorized and support several
    Array API compatible array libraries in addition to NumPy (see
    "Array API Standard Support" below). Compared to existing functions (e.g.
    scipy.optimize.root_scalar and scipy.optimize.minimize_scalar),
    these functions can offer speedups of over 100x when used with NumPy arrays,
    and even greater gains are possible with other Array API Standard compatible
    array libraries (e.g. CuPy).
  • scipy.optimize.differential_evolution now supports more general use of
    workers, such as passing a map-like callable.
  • scipy.optimize.nnls was rewritten in Cython.
  • HessianUpdateStrategy now supports __matmul__.

scipy.signal improvements

  • Add functionality of complex-valued waveforms to signal.chirp().
  • scipy.signal.lombscargle has two new arguments, weights and
    floating_mean, enabling sample weighting and removal of an unknown
    y-offset independently for each frequency. Additionally, the normalize
    argument includes a new option to return the complex representation of the
    amplitude and phase.
  • New function scipy.signal.envelope for computation of the envelope of a
    real or complex valued signal.

scipy.sparse improvements

  • A migration guide is now available for
    moving from sparse.matrix to sparse.array in your code/library.
  • Sparse arrays now support indexing for 1-D and 2-D arrays. So, sparse
    arrays are now fully functional for 1-D and 2D.
  • n-D sparse arrays in COO format can now be constructed, reshaped and used
    for basic arithmetic.
  • New functions sparse.linalg.is_sptriangular and
    sparse.linalg.spbandwidth mimic the existing dense tools
    linalg.is_triangular and linalg.bandwidth.
  • sparse.linalg and sparse.csgraph now work with sparse arrays. Be
    careful that your index arrays are 32-bit. We are working on 64bit support.
  • The vendored ARPACK library has been upgraded to version 3.9.1.
  • COO, CSR, CSC and LIL formats now support the axis argument for
    count_nonzero.
  • Sparse arrays and matrices may now raise errors when initialized with
    incompatible data types, such as float16.
  • min, max, argmin, and argmax now support computation
    over nonzero elements only via the new explicit argument.
  • New functions get_index_dtype and safely_cast_index_arrays are
    available to facilitate index array casting in sparse.

scipy.spatial improvements

  • Rotation.concatenate now accepts a bare Rotation object, and will
    return a copy of it.

scipy.special improvements

  • New functions offering improved Legendre function implementations with a
    more consistent interface. See respective docstrings for more information.

    • scipy.special.legendre_p, scipy.special.legendre_p_all
    • scipy.special.assoc_legendre_p, scipy.special.assoc_legendre_p_all
    • scipy.special.sph_harm_y, scipy.special.sph_harm_y_all
    • scipy.special.sph_legendre_p, scipy.special.sph_legendre_p_all,
  • The factorial functions special.{factorial,factorial2,factorialk} now
    offer an extension to the complex domain by passing the kwarg
    extend='complex'. This is opt-in because it changes the values for
    negative inputs (which by default return 0), as well as for some integers
    (in the case of factorial2 and factorialk; for more details,
    check the respective docstrings).

  • scipy.special.zeta now defines the Riemann zeta function on the complex
    plane.

  • scipy.special.softplus computes the softplus function

  • The spherical Bessel functions (scipy.special.spherical_jn,
    scipy.special.spherical_yn, scipy.special.spherical_in, and
    scipy.special.spherical_kn) now support negative arguments with real dtype.

  • scipy.special.logsumexp now preserves precision when one element of the
    sum has magnitude much bigger than the rest.

  • The accuracy of several functions has been improved:

    • scipy.special.ncfdtr, scipy.special.nctdtr, and
      scipy.special.gdtrib have been improved throughout the domain.
    • scipy.special.hyperu is improved for the case of b=1, small x,
      and small a.
    • scipy.special.logit is improved near the argument p=0.5.
    • scipy.special.rel_entr is improved when x/y overflows, underflows,
      or is close to 1.
  • scipy.special.ndtr is now more efficient for sqrt(2)/2 < |x| < 1.

scipy.stats improvements

  • A new probability distribution infrastructure has been added for the
    implementation of univariate, continuous distributions. It has several
    speed, accuracy, memory, and interface advantages compared to the
    previous infrastructure. See rv_infrastructure for a tutorial.

    • Use scipy.stats.make_distribution to treat an existing continuous
      distribution (e.g. scipy.stats.norm) with the new infrastructure.
      This can improve the speed and accuracy of existing distributions,
      especially those with methods not overridden with distribution-specific
      formulas.
    • scipy.stats.Normal and scipy.stats.Uniform are pre-defined classes
      to represent the normal and uniform distributions, respectively.
      Their interfaces may be faster and more convenient than those produced by
      make_distribution.
    • scipy.stats.Mixture can be used to represent mixture distributions.
  • Instances of scipy.stats.Normal, scipy.stats.Uniform, and the classes
    returned by scipy.stats.make_distribution are supported by several new
    mathematical transformations.

    • scipy.stats.truncate for truncation of the support.
    • scipy.stats.order_statistic for the order statistics of a given number
      of IID random variables.
    • scipy.stats.abs, scipy.stats.exp, and scipy.stats.log. For example,
      scipy.stats.abs(Normal()) is distributed according to the folded normal
      and scipy.stats.exp(Normal()) is lognormally distributed.
  • The new scipy.stats.lmoment calculates sample l-moments and l-moment
    ratios. Notably, these sample estimators are unbiased.

  • scipy.stats.chatterjeexi computes the Xi correlation coefficient, which
    can detect nonlinear dependence. The function also performs a hypothesis
    test of independence between samples.

  • scipy.stats.wilcoxon has improved method resolution logic for the default
    method='auto'. Other values of method provided by the user are now
    respected in all cases, and the method argument approx has been
    renamed to asymptotic for consistency with similar functions. (Use of
    approx is still allowed for backward compatibility.)

  • There are several new probability distributions:

    • scipy.stats.dpareto_lognorm represents the double Pareto lognormal
      distribution.
    • scipy.stats.landau represents the Landau distribution.
    • scipy.stats.normal_inverse_gamma represents the normal-inverse-gamma
      distribution.
    • scipy.stats.poisson_binom represents the Poisson binomial distribution.
  • Batch calculation with scipy.stats.alexandergovern and
    scipy.stats.combine_pvalues is faster.

  • scipy.stats.chisquare added an argument sum_check. By default, the
    function raises an error when the sum of expected and obseved frequencies
    are not equal; setting sum_check=False disables this check to
    facilitate hypothesis tests other than Pearson's chi-squared test.

  • The accuracy of several distribution methods has been improved, including:

    • scipy.stats.nct method pdf
    • scipy.stats.crystalball method sf
    • scipy.stats.geom method rvs
    • scipy.stats.cauchy methods logpdf, pdf, ppf and isf
    • The logcdf and/or logsf methods of distributions that do not
      override the generic implementation of these methods, including
      scipy.stats.beta, scipy.stats.betaprime, scipy.stats.cauchy,
      scipy.stats.chi, scipy.stats.chi2, scipy.stats.exponweib,
      scipy.stats.gamma, scipy.stats.gompertz, scipy.stats.halflogistic,
      scipy.stats.hypsecant, scipy.stats.invgamma, scipy.stats.laplace,
      scipy.stats.levy, scipy.stats.loggamma, scipy.stats.maxwell,
      scipy.stats.nakagami, and scipy.stats.t.
  • scipy.stats.qmc.PoissonDisk now accepts lower and upper bounds
    parameters l_bounds and u_bounds.

  • scipy.stats.fisher_exact now supports two-dimensional tables with shapes
    other than (2, 2).

Preliminary Support for Free-Threaded CPython 3.13

SciPy 1.15 has preliminary support for the free-threaded build of CPython
3.13. This allows SciPy functionality to execute in parallel with Python
threads
(see the threading stdlib module). This support was enabled by fixing a
significant number of thread-safety issues in both pure Python and
C/C++/Cython/Fortran extension modules. Wheels are provided on PyPI for this
release; NumPy >=2.1.3 is required at runtime. Note that building for a
free-threaded interpreter requires a recent pre-release or nightly for Cython
3.1.0.

Support for free-threaded Python does not mean that SciPy is fully thread-safe.
Please see scipy_thread_safety for more details.

If you are interested in free-threaded Python, for example because you have a
multiprocessing-based workflow that you are interested in running with Python
threads, we encourage testing and experimentation. If you run into problems
that you suspect are because of SciPy, please open an issue, checking first if
the bug also occurs in the "regular" non-free-threaded CPython 3.13 build.
Many threading bugs can also occur in code that releases the GIL; disabling
the GIL only makes it easier to hit threading bugs.

Array API Standard Support

Experimental support for array libraries other than NumPy has been added to
existing sub-packages in recent versions of SciPy. Please consider testing
these features by setting an environment variable SCIPY_ARRAY_API=1 and
providing PyTorch, JAX, ndonnx, or CuPy arrays as array arguments. Features
with support added for SciPy 1.15.0 include:

  • All functions in scipy.differentiate (new sub-package)
  • All functions in scipy.optimize.elementwise (new namespace)
  • scipy.optimize.rosen, scipy.optimize.rosen_der, and
    scipy.optimize.rosen_hess
  • scipy.special.logsumexp
  • scipy.integrate.trapezoid
  • scipy.integrate.tanhsinh (newly public function)
  • scipy.integrate.cubature (new function)
  • scipy.integrate.nsum (new function)
  • scipy.special.chdtr, scipy.special.betainc, and scipy.special.betaincc
  • scipy.stats.boxcox_llf
  • scipy.stats.differential_entropy
  • scipy.stats.zmap, scipy.stats.zscore, and scipy.stats.gzscore
  • scipy.stats.tmean, scipy.stats.tvar, scipy.stats.tstd,
    scipy.stats.tsem, scipy.stats.tmin, and scipy.stats.tmax
  • scipy.stats.gmean, scipy.stats.hmean and scipy.stats.pmean
  • scipy.stats.combine_pvalues
  • scipy.stats.ttest_ind, scipy.stats.ttest_rel
  • scipy.stats.directional_stats
  • scipy.ndimage functions will now delegate to cupyx.scipy.ndimage,
    and for other backends will transit via NumPy arrays on the host.

Deprecated features and future changes

  • Functions scipy.linalg.interpolative.rand and
    scipy.linalg.interpolative.seed have been deprecated and will be removed
    in SciPy 1.17.0.
  • Complex inputs to scipy.spatial.distance.cosine and
    scipy.spatial.distance.correlation have been deprecated and will raise
    an error in SciPy 1.17.0.
  • scipy.spatial.distance.kulczynski1 and
    scipy.spatial.distance.sokalmichener were deprecated and will be removed
    in SciPy 1.17.0.
  • scipy.stats.find_repeats is deprecated and will be
    removed in SciPy 1.17.0. Please use
    numpy.unique/numpy.unique_counts instead.
  • scipy.linalg.kron is deprecated in favour of numpy.kron.
  • Using object arrays and longdouble arrays in scipy.signal
    convolution/correlation functions (scipy.signal.correlate,
    scipy.signal.convolve and scipy.signal.choose_conv_method) and
    filtering functions (scipy.signal.lfilter, scipy.signal.sosfilt) has
    been deprecated and will be removed in SciPy 1.17.0.
  • scipy.stats.linregress has deprecated one-argument use; the two
    variables must be specified as separate arguments.
  • scipy.stats.trapz is deprecated in favor of scipy.stats.trapezoid.
  • scipy.special.lpn is deprecated in favor of scipy.special.legendre_p_all.
  • scipy.special.lpmn and scipy.special.clpmn are deprecated in favor of
    scipy.special.assoc_legendre_p_all.
  • scipy.special.sph_harm has been deprecated in favor of
    scipy.special.sph_harm_y.
  • Multi-dimensional r and c arrays passed to scipy.linalg.toeplitz,
    scipy.linalg.matmul_toeplitz, or scipy.linalg.solve_toeplitz will be
    treated as batches of 1-D coefficients beginning in SciPy 1.17.0.
  • The random_state and permutations arguments of
    scipy.stats.ttest_ind are deprecated. Use method to perform a
    permutation test, instead.

Expired Deprecations

  • The wavelet functions in scipy.signal have been removed. This includes
    daub, qmf, cascade, morlet, morlet2, ricker,
    and cwt. Users should use pywavelets instead.
  • scipy.signal.cmplx_sort has been removed.
  • scipy.integrate.quadrature and scipy.integrate.romberg have been
    removed in favour of scipy.integrate.quad.
  • scipy.stats.rvs_ratio_uniforms has been removed in favor of
    scipy.stats.sampling.RatioUniforms.
  • scipy.special.factorial now raises an error for non-integer scalars when
    exact=True.
  • scipy.integrate.cumulative_trapezoid now raises an error for values of
    initial other than 0 and None.
  • Complex dtypes now raise an error in scipy.interpolate.Akima1DInterpolator
    and scipy.interpolate.PchipInterpolator
  • special.btdtr and special.btdtri have been removed.
  • The default of the exact= kwarg in special.factorialk has changed
    from True to False.
  • All functions in the scipy.misc submodule have been removed.

Backwards incompatible changes

  • interpolate.BSpline.integrate output is now always a numpy array.
    Previously, for 1D splines the output was a python float or a 0D array
    depending on the value of the extrapolate argument.
  • scipy.stats.wilcoxon now respects the method argument provided by the
    user. Previously, even if method='exact' was specified, the function
    would resort to method='approx' in some cases.
  • scipy.integrate.AccuracyWarning has been removed as the functions the
    warning was emitted from (scipy.integrate.quadrature and
    scipy.integrate.romberg) have been removed.

Other changes

  • A separate accompanying type stubs package, scipy-stubs, will be made
    available with the 1.15.0 release. Installation instructions are
    available
    .

  • scipy.stats.bootstrap now emits a FutureWarning if the shapes of the
    input arrays do not agree. Broadcast the arrays to the same batch shape
    (i.e. for all dimensions except those specified by the axis argument)
    to avoid the warning. Broadcasting will be performed automatically in the
    future.

  • SciPy endorsed SPEC-7,
    which proposes a rng argument to control pseudorandom number generation
    (PRNG) in a standard way, replacing legacy arguments like seed and
    random_sate. In many cases, use of rng will change the behavior of
    the function unless the argument is already an instance of
    numpy.random.Generator.

    • Effective in SciPy 1.15.0:

      • The rng argument has been added to the following functions:
        scipy.cluster.vq.kmeans, scipy.cluster.vq.kmeans2,
        scipy.interpolate.BarycentricInterpolator,
        scipy.interpolate.barycentric_interpolate,
        scipy.linalg.clarkson_woodruff_transform,
        scipy.optimize.basinhopping,
        scipy.optimize.differential_evolution, scipy.optimize.dual_annealing,
        scipy.optimize.check_grad, scipy.optimize.quadratic_assignment,
        scipy.sparse.random, scipy.sparse.random_array, scipy.sparse.rand,
        scipy.sparse.linalg.svds, scipy.spatial.transform.Rotation.random,
        scipy.spatial.distance.directed_hausdorff,
        scipy.stats.goodness_of_fit, scipy.stats.BootstrapMethod,
        scipy.stats.PermutationMethod, scipy.stats.bootstrap,
        scipy.stats.permutation_test, scipy.stats.dunnett, all
        scipy.stats.qmc classes that consume random numbers, and
        scipy.stats.sobol_indices.
      • When passed by keyword, the rng argument will follow the SPEC 7
        standard behavior: the argument will be normalized with
        np.random.default_rng before being used.
      • When passed by position or legacy keyword, the behavior of the argument
        will remain unchanged (for now).
    • It is planned that in 1.17.0 the legacy argument will start emitting
      warnings, and that in 1.19.0 the default behavior will change.

    • In all cases, users can avoid future disruption by proactively passing
      an instance of np.random.Generator by keyword rng. For details,
      see SPEC-7.

  • The SciPy build no longer adds -std=legacy for Fortran code,
    except when using Gfortran. This avoids problems with the new Flang and
    AMD Fortran compilers. It may make new build warnings appear for other
    compilers - if so, please file an issue.

  • scipy.signal.sosfreqz has been renamed to scipy.signal.freqz_sos.
    New code should use the new name. The old name is maintained as an alias for
    backwards compatibility.

  • Testing thread-safety improvements related to Python 3.13t have been
    made in: scipy.special, scipy.spatial, scipy.sparse,
    scipy.interpolate.

Authors (commits)

  • endolith (4)
  • h-vetinari (62)
  • a-drenaline (1) +
  • Afleloup (1) +
  • Ahmad Alkadri (1) +
  • Luiz Eduardo Amaral (3) +
  • Virgile Andreani (3)
  • Isaac Alonso Asensio (2) +
  • Matteo Bachetti (1) +
  • Arash Badie-Modiri (1) +
  • Arnaud Baguet (1) +
  • Soutrik Bandyopadhyay (1) +
  • Ankit Barik (1) +
  • Christoph Baumgarten (1)
  • Nickolai Belakovski (3)
  • Krishan Bhasin (1) +
  • Jake Bowhay (89)
  • Michael Bratsch (2) +
  • Matthew Brett (1)
  • Keith Briggs (1) +
  • Olly Britton (145) +
  • Dietrich Brunn (11)
  • Clemens Brunner (1)
  • Evgeni Burovski (185)
  • Matthias Bussonnier (7)
  • CJ Carey (32)
  • Cesar Carrasco (4) +
  • Hood Chatham (1)
  • Aadya Chinubhai (1)
  • Alessandro Chitarrini (1) +
  • Thibault de Coincy (1) +
  • Lucas Colley (217)
  • Martin Diehl (1) +
  • Djip007 (1) +
  • Kevin Doshi (2) +
  • Michael Dunphy (2)
  • Andy Everall (1) +
  • Thomas J. Fan (2)
  • fancidev (60)
  • Sergey Fedorov (2) +
  • Sahil Garje (1) +
  • Gabriel Gerlero (2)
  • Yotam Gingold (1) +
  • Ralf Gommers (111)
  • Rohit Goswami (62)
  • Anil Gurses (1) +
  • Oscar Gustafsson (1) +
  • Matt Haberland (392)
  • Matt Hall (1) +
  • Joren Hammudoglu (6) +
  • CY Han (1) +
  • Daniel Isaac (4) +
  • Maxim Ivanov (1)
  • Jakob Jakobson (2)
  • Janez Demšar (4) +
  • Chris Jerdonek (2) +
  • Adam Jones (4) +
  • Aditi Juneja (1) +
  • Nuri Jung (1) +
  • Guus Kamphuis (1) +
  • Aditya Karumanchi (2) +
  • Robert Kern (5)
  • Agriya Khetarpal (11)
  • Andrew Knyazev (7)
  • Gideon Genadi Kogan (1) +
  • Damien LaRocque (1) +
  • Eric Larson (10)
  • Gregory R. Lee (4)
  • Linfye (1) +
  • Boyu Liu (1) +
  • Drew Allan Loney (1) +
  • Christian Lorentzen (1)
  • Loïc Estève (2)
  • Smit Lunagariya (1)
  • Henry Lunn (1) +
  • Marco Maggi (4)
  • Lauren Main (1) +
  • Martin Spišák (1) +
  • Mateusz Sokół (4)
  • Jan-Kristian Mathisen (1) +
  • Nikolay Mayorov (2)
  • Nicholas McKibben (1)
  • Melissa Weber Mendonça (62)
  • João Mendes (10)
  • Gian Marco Messa (1) +
  • Samuel Le Meur-Diebolt (1) +
  • Michał Górny (2)
  • Naoto Mizuno (2)
  • Nicolas Mokus (2)
  • musvaage (18) +
  • Andrew Nelson (88)
  • Jens Hedegaard Nielsen (1) +
  • Roman Nigmatullin (8) +
  • Nick ODell (37)
  • Yagiz Olmez (4)
  • Matti Picus (9)
  • Diogo Pires (5) +
  • Ilhan Polat (96)
  • Zachary Potthoff (1) +
  • Tom M. Ragonneau (2)
  • Peter Ralph (1) +
  • Stephan Rave (1) +
  • Tyler Reddy (192)
  • redha2404 (2) +
  • Ritvik1sharma (1) +
  • Érico Nogueira Rolim (1) +
  • Heshy Roskes (1)
  • Pamphile Roy (34)
  • Mikhail Ryazanov (1) +
  • Sina Saber (1) +
  • Atsushi Sakai (1)
  • Clemens Schmid (1) +
  • Daniel Schmitz (17)
  • Moritz Schreiber (1) +
  • Dan Schult (91)
  • Searchingdays (1) +
  • Matias Senger (1) +
  • Scott Shambaugh (1)
  • Zhida Shang (1) +
  • Sheila-nk (4)
  • Romain Simon (2) +
  • Gagandeep Singh (31)
  • Albert Steppi (40)
  • Kai Striega (1)
  • Anushka Suyal (143) +
  • Alex Szatmary (1)
  • Svetlin Tassev (1) +
  • Ewout ter Hoeven (1)
  • Tibor Völcker (4) +
  • Kanishk Tiwari (1) +
  • Yusuke Toyama (1) +
  • Edgar Andrés Margffoy Tuay (124)
  • Adam Turner (2) +
  • Nicole Vadot (1) +
  • Andrew Valentine (1)
  • Christian Veenhuis (2)
  • vfdev (2) +
  • Pauli Virtanen (2)
  • Simon Waldherr (1) +
  • Stefan van der Walt (2)
  • Warren Weckesser (23)
  • Anreas Weh (1)
  • Benoît Wygas (2) +
  • Pavadol Yamsiri (3) +
  • ysard (1) +
  • Xiao Yuan (2)
  • Irwin Zaid (12)
  • Gang Zhao (1)
  • ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (10)

A total of 149 people contributed to this release.
People with a "+" by their names contributed a patch for the first time.
This list of names is automatically generated, and may not be fully complete.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/scipy-1.x-lockfile branch from 72f1c0b to 22db608 Compare January 11, 2025 02:54
@renovate renovate bot changed the title Update dependency scipy to v1.15.0 Update dependency scipy to v1.15.1 Jan 11, 2025
@renovate renovate bot force-pushed the renovate/scipy-1.x-lockfile branch from 22db608 to f36f613 Compare February 17, 2025 03:01
@renovate renovate bot changed the title Update dependency scipy to v1.15.1 Update dependency scipy to v1.15.2 Feb 17, 2025
@renovate renovate bot force-pushed the renovate/scipy-1.x-lockfile branch from f36f613 to fd20b4e Compare May 8, 2025 19:10
@renovate renovate bot changed the title Update dependency scipy to v1.15.2 Update dependency scipy to v1.15.3 May 8, 2025
@renovate renovate bot changed the title Update dependency scipy to v1.15.3 Update dependency scipy to v1.16.0 Jun 22, 2025
@renovate renovate bot changed the title Update dependency scipy to v1.16.0 Update dependency scipy to v1.16.1 Jul 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants