SciPy 1.15.0 Release Notes#
Note
SciPy 1.15.0 is not released yet!
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 from spmatrix to sparray. Both
sparse.linalg
andsparse.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 functionscubature
,tanhsinh
, andnsum
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.
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
andscipy.interpolate.make_splprep
implement construction of smoothing splines. The algorithmic content is equivalent to FITPACK (splrep
andsplprep
functions, and*UnivariateSpline
classes) and the user API is consistent withmake_interp_spline
: these functions receive data arrays and return ascipy.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 thatsplrep
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 theassume_a
argument, enabling faster computation for diagonal, tri-diagonal, banded, and triangular matrices. Also, whenassume_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
, andscipy.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 argumentsoverwrite_a
,check_finite
, andlapack_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 includecorrelate
,convolve
,generic_laplace
,laplace
,gaussian_laplace
,derivative2
,generic_gradient_magnitude
,gaussian_gradient_magnitude
andgeneric_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 fromn
tolog(n)
.
scipy.optimize
improvements#
The vendored HiGHS library has been upgraded from
1.4.0
to1.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 functionsbracket_root
,find_root
,bracket_minimum
, andfind_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
andscipy.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 ofworkers
, 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
andfloating_mean
, enabling sample weighting and removal of an unknown y-offset independently for each frequency. Additionally, thenormalize
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
andsparse.linalg.spbandwidth
mimic the existing dense toolslinalg.is_triangular
andlinalg.bandwidth
.sparse.linalg
andsparse.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 version3.9.1
.COO, CSR, CSC and LIL formats now support the
axis
argument forcount_nonzero
.Sparse arrays and matrices may now raise errors when initialized with incompatible data types, such as
float16
.min
,max
,argmin
, andargmax
now support computation over nonzero elements only via the newexplicit
argument.New functions
get_index_dtype
andsafely_cast_index_arrays
are available to facilitate index array casting insparse
.
scipy.spatial
improvements#
Rotation.concatenate
now accepts a bareRotation
object, and will return a copy of it.
scipy.special
improvements#
The factorial functions
special.{factorial,factorial2,factorialk}
now offer an extension to the complex domain by passing the kwargextend='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 offactorial2
andfactorialk
; 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 functionThe spherical Bessel functions (
scipy.special.spherical_jn
,scipy.special.spherical_yn
,scipy.special.spherical_in
, andscipy.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
andscipy.special.nctdtr
have been improved throughout the domain.scipy.special.hyperu
is improved for the case ofb=1
, smallx
, and smalla
.scipy.special.logit
is improved near the argumentp=0.5
.scipy.special.rel_entr
is improved whenx/y
overflows, underflows, or is close to1
.
scipy.special.gdtrib
may now be used in a CuPyElementwiseKernel
on GPUs.scipy.special.ndtr
is now more efficient.
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 Random Variable Transition Guide 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
andscipy.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 bymake_distribution
.scipy.stats.Mixture
can be used to represent mixture distributions.
Instances of
scipy.stats.Normal
,scipy.stats.Uniform
, and the classes returned byscipy.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
, andscipy.stats.log
. For example,scipy.stats.abs(Normal())
is distributed according to the folded normal andscipy.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 defaultmethod='auto'
. Other values ofmethod
provided by the user are now respected in all cases, and the method argumentapprox
has been renamed toasymptotic
for consistency with similar functions. (Use ofapprox
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
andscipy.stats.combine_pvalues
is faster.scipy.stats.chisquare
added an argumentsum_check
. By default, the function raises an error when the sum of expected and obseved frequencies are not equal; settingsum_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
methodpdf
scipy.stats.crystalball
methodsf
scipy.stats.geom
methodrvs
scipy.stats.cauchy
methodslogpdf
,pdf
,ppf
andisf
The
logcdf
and/orlogsf
methods of distributions that do not override the generic implementation of these methods, includingscipy.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
, andscipy.stats.t
.
scipy.stats.qmc.PoissonDisk
now accepts lower and upper bounds parametersl_bounds
andu_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 Thread Safety in SciPy 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
, andscipy.optimize.rosen_hess
scipy.integrate.tanhsinh
(newly public function)scipy.integrate.cubature
(new function)scipy.integrate.nsum
(new function)scipy.special.chdtr
,scipy.special.betainc
, andscipy.special.betaincc
scipy.stats.zmap
,scipy.stats.zscore
, andscipy.stats.gzscore
scipy.stats.tmean
,scipy.stats.tvar
,scipy.stats.tstd
,scipy.stats.tsem
,scipy.stats.tmin
, andscipy.stats.tmax
scipy.ndimage
functions will now delegate tocupyx.scipy.ndimage
, and for other backends will transit via NumPy arrays on the host.
Deprecated features#
Functions
scipy.linalg.interpolative.rand
andscipy.linalg.interpolative.seed
have been deprecated and will be removed in SciPy1.17.0
.Complex inputs to
scipy.spatial.distance.cosine
andscipy.spatial.distance.correlation
have been deprecated and will raise an error in SciPy1.17.0
.scipy.spatial.distance.kulczynski1
andscipy.spatial.distance.sokalmichener
were deprecated and will be removed in SciPy1.17.0
.scipy.stats.find_repeats
is deprecated as of SciPy1.15.0
and will be removed in SciPy1.17.0
. Please usenumpy.unique
/numpy.unique_counts
instead.scipy.linalg.kron
is deprecated in favour ofnumpy.kron
.Using object arrays and longdouble arrays in
scipy.signal
convolution/correlation functions (scipy.signal.correlate
,scipy.signal.convolve
andscipy.signal.choose_conv_method
) and filtering functions (scipy.signal.lfilter
,scipy.signal.sosfilt
) has been deprecated as of SciPy1.15.0
and will be removed in SciPy1.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 ofscipy.stats.trapezoid
.scipy.special.lpn
is deprecated in favor ofscipy.special.legendre_p_all
.scipy.special.lpmn
andscipy.special.clpmn
are deprecated in favor ofscipy.special.assoc_legendre_p_all
.The raveling of multi-dimensional input by
scipy.linalg.toeplitz
has been deprecated. It will support batching in SciPy1.17.0
.The
random_state
andpermutations
arguments ofscipy.stats.ttest_ind
are deprecated. Usemethod
to perform a permutation test, instead.
Expired Deprecations#
The wavelet functions in
scipy.signal
have been removed. This includesdaub
,qmf
,cascade
,morlet
,morlet2
,ricker
, andcwt
. Users should usepywavelets
instead.scipy.signal.cmplx_sort
has been removed.scipy.integrate.quadrature
andscipy.integrate.romberg
have been removed in favour ofscipy.integrate.quad
.scipy.stats.rvs_ratio_uniforms
has been removed in favor ofscipy.stats.sampling.RatioUniforms
.scipy.special.factorial
now raises an error for non-integer scalars whenexact=True
.scipy.integrate.cumulative_trapezoid
now raises an error for values ofinitial
other than0
andNone
.Complex dtypes now raise an error in
scipy.interpolate.Akima1DInterpolator
andscipy.interpolate.PchipInterpolator
special.btdtr
andspecial.btdtri
have been removed.The default of the
exact=
kwarg inspecial.factorialk
has changed fromTrue
toFalse
.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 theextrapolate
argument.scipy.stats.wilcoxon
now respects themethod
argument provided by the user. Previously, even ifmethod='exact'
was specified, the function would resort tomethod='approx'
in some cases.scipy.integrate.AccuracyWarning
has been removed as the functions the warning was emitted from (scipy.integrate.quadrature
andscipy.integrate.romberg
) have been removed.
Other changes#
A separate accompanying type stubs package,
scipy-stubs
, will be made available with the1.15.0
release. Installation instructions are available.scipy.stats.bootstrap
now emits aFutureWarning
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 theaxis
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 likeseed
andrandom_sate
. In many cases, use ofrng
will change the behavior of the function unless the argument is already an instance ofnumpy.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
, allscipy.stats.qmc
classes that consume random numbers, andscipy.stats.sobol_indices
.When passed by keyword, the
rng
argument will follow the SPEC 7 standard behavior: the argument will be normalized withnp.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 in1.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 keywordrng
. 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 toscipy.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
.
Issues closed for 1.15.0#
#2011: DEP: spatial: ‘sokalmichener’ and ‘rogerstanimoto’ distances…
#2035: ENH: Add methods to compute derivatives (Trac #1510)
#2116: Cholesky decomposition - are elements in the ‘other’ triangle…
#2162: MAINT: signal:
lombscargle
is unclear about normalisation…#2509: distributions cdf, sf evaluation in the wrong tail
#4096: DOC: special: Clarify Mathieu function documentation
#4275: BUG: linalg.interpolative: svd integer overflow
#4517: MAINT: special.hankel2:
(0, 0)
delivers (nan+nan*j) instead…#4538: alternative parametrizations of univariate distributions
#4708: ENH: linalg.funm: a possible speed-up
#4952: DOC: stats: improvement suggestions for tutorial
#5818: Clarify definition of preconditioner for sparse linear system…
#6528: ENH: stats: Add Normal-inverse-gamma distribution
#7099: ENH:
stats.fisher_exact
: support tables larger than 2x2#7242: ENH: implement at least one good robust scalar root-finding algorithm…
#8053: Random variate distribution random_state set after init does…
#8307: scipy.sparse.linalg.eigs gives incorrect largest magnitude eigenvalue
#8344: BUG: special.nctdtr: incorrect results
#8362: a function to convert a matrix into diagonal ordered form (ab)…
#8787: BUG: signal.lombscargle: raises
ZeroDivisionError
#8888: MAINT: special.gegenbauer: case of
alpha = 0
not handled#9249: BUG: linalg:
test_interpolative::TestInterpolativeDecomposition::test_id
…#9321: Easy access to scipy.stat.<distributionName> frozen distribution…
#9509: BUG: special:
test_kolmogorov
fails on 32-bit platforms#10106: Slow random variate generation in scipy.stats
#10328: DOC: stats: documentation is not distribution-specific
#10364: Add Double Pareto-Lognormal Distribution
#10374: ENH: make ARPACK-NG deterministic
#11341: MAINT: constants: disparate electric permittivity constants
#11465: Numerical stability of distributions: Add log_p as argument to…
#11649: trust-constr error when attempting to keep bound constrained…
#12019: scipy.linalg.orthogonal_procrustes
#12282: API: stats.chisquare: must observed and expected frequencies…
#12367: Allow whitespace alignment of tables of numbers?
#12593: BUG: linalg:
estimate_rank
is quite unreliable#12651: BUG: cluster:
fcluster
assigning all points to a single cluster…#12662: Complex numpy exponentiation, nan, and/or inf causes segfault…
#12895: BUG:
special.riccati_yn
: Definition missing minus sign#13019: TST, MAINT: test_maxiter_worsening on Python 3.9 + Linux ARM64
#13137: BUG: linalg.schur: bug sorting complex eigenvalues in real form
#13504: TST: stats: test distribution
support
method behavior for…#13643: BUG: signal.sepfir2d: fails with complex input on Windows
#13986: Distributions cannot be freed by garbage collector due to self-references
#14304: Jaccard distance greater than 1 if elements are strings
#14467: DOC: constants: explain
0.0
uncertainty#14582: BUG:
special.spherical_jn
: Negative arguments lead to nans#14788: DOC:
linalg.hankel
: clarify that first entry ofr
is…#14895: ENH: All statistical distributions in scipy.stats should have…
#14945: BUG: Overflows/NaNs cause segfault in integrate.quad on certain…
#15012: ENH:
linalg.cholesky
: document that user is responsible…#15016: BUG: linalg.schur: sorting by imaginary part does not work for…
#15021: scipy.linalg.qr with pivoting=True should return P as (N,N) permutation…
#15533: BUG: test failure in
test_x0_equals_Mb
withbicgstab
#15582: BUG:
special.ncfdtr(dfn, dfd, nc, f)
andstats.ncf.cdf(x,
…#15620: BUG: signal.resample_poly returns an array consisting only of…
#15888: BUG: linprog, with highs is killed by the OOM killer when called…
#15896: Compiled code coverage with
--gcov
doesn’t work with Meson#15915: ENH: optimize: object-oriented interface to HiGHS
#16494: MAINT: Speed up some slow tests
#16531: DOC: Warnings/error in docstring examples.
#16700: BUG: segfault on i386 in special
test_kolmogorov.py
TestSmirnovp#17059: ENH: Robust and fast numerical derivative for error propagation
#17075: Test failures with Intel compilers
#17136: BUG: logm sometimes raises ZeroDivisionError for matrices with…
#17307: BUG: stats: frozen distribution domain error produced too late
#17344: ENH:
scipy.linalg.circulant
should allow batching#17385: BUG:
TestOnenormest.test_onenormest_table_6_t_1
is failing…#17404: DOC: comparison of optimizers in optimization guide
#17494: MAINT: HiGHS build flag cleanup
#17571: ENH: Add units to scipy.constants description
#17905: ENH: Add softplus implementation
#18014: Potential use-after-free bug in
fcn_callback
(Static Analyzer…#18250: BUG:
complex256
type created by enteringcomplex128
into…#18295: BUG: special: Loss of precision in
logsumexp
#18367: RFC: Get rid of linalg.interpolative Fortran code
#18409: ENH: extensions of
factorial{,2,k}
for complex domains, recurrences,…#18445: ENH: add a callback feature to minimize_scalar and root_scalar
#18879: BUG:
integrate.quad_vec
: Fatal error when usingworkers
…#18880: TST:
test_expm_multiply_dtype
failure on aarch64 (flaky test)#18882: BUG: minimize does not satisfy nonlinear constraint even if keep_feasible=True
#18907: BUG:
presolve
option inmilp
causing feasible problem…#18909: BUG: Cython3 linalg import order bug
#18945: BUG: circe-ci SVD-LOBPCG benchmarks do not check accuracy so…
#19042: DOC: sparse: BSR does not support slicing,
__getitem__
not…#19071: BUG: scipy.special.gammasgn implementation & docs inconsistent…
#19207: BUG: sparse.linalg:
LinearOperator
dtype determination broken#19223: BUG: io: scipy.io.loadmat error message recommend use of function…
#19355: MAINT: lobpcg: add unit tests for accuracy matching benchmark…
#19405: ENH: sparse.csr_array: keep axis functionality in
getnnz()
#19446: BUG: In test_b_orthonormalize, cannot parameterize Vdtype, Bdtype,…
#19524: BUG: deepcopy on stats.rvs breaks seed / random generation.
#19634: ENH: Dedicated Function for Envelope Extraction
#19759: BUG: Bad result for stats.randint.pmf (edge case)
#19791: DOC: linalg.schur: unclear signature for
sort
callable when…#19907: DEP: extend deprecation of private namespaces also to fortran-generated…
#20026: ENH: ndimage: 1D rank filter speed up
#20048: BUG:
stats.rv_discrete.ppf
: infinite loop in default implementation#20077: DEP: linalg: deprecate
kron
#20155: DOC:
optimize.curve_fit
: Inconsistent naming convention…#20196: MAINT: Audit usage of cython memoryviews, add
const
to allow…#20207: ENH: sparse: Validate dtype on sparse array/matrix creation
#20239: DOC: Sparse arrays: todense() does not return numpy.matrix
#20240: ENH: multiple small improvements to scipy.stats.circmean
#20288: ENH: Poisson disk sampling for arbitrary bounds
#20370: DOC: ndimage.convolve: clarify origin parameter description
#20389: BUG:
sparse.hstack
does not respectdtype
of{indptr,indices}
…#20452: BUG:linalg:interpolative: Crashing if k is requested too high…
#20552: DOC/DEV/MAINT: review distributing section of core-dev guide
#20574: MAINT, BENCH: would be good to be able to run benchmarks with…
#20602: MAINT/STY: fix UP031, UP032 linter errors
#20609: BUG:linalg:interpolative: Inputs are not mapped to compatible…
#20635: DOC: Titles of long function names in API Reference truncated…
#20638: DOC: Specify cut-off frequency in firwin as half-ampltude vs…
#20693: BUG: stats.noncentral_t: incorrect pdf values
#20710: ENH:
special.rel_entr
: avoid premature overflow#20728: BUG: sparse.linalg: Segfault in
arpack
withifx
#20733: DOC: stats.mannwhitneyu: reversed options for
alternative
…#20739: DOC/DEV: update commit message guidance
#20740: BLD/DEV: special: build warnings
#20761: ENH: stats.cauchy: improve cdf and quantile accuracy in tail
#20763: BUG: sparse.csgraph, array types: some functions should expect…
#20813: BUG:
optimize.nnls
sometimes fails when inputA
is a…#20821: BUG:
stats.levy_stable.rvs
: “S0”-parameterization ignored#20844: DOC: update testing docs for alternative backends
#20879: MAINT: clean up
sparse._sputils.getdtype
#20893: DOC/DEV: Developer docs should mention Accelerate support
#20904: BUG: sparse.csgraph.dijkstra errors on inputs with int64 or no…
#20910: BUG: positional argument
DeprecationWarning
message is overly…#20931: MAINT: Premature setting of attributes in
HBInfo
inscipy.io._harwell_boei
…#20957: TST, MAINT: array API GPU test failures
#20963: TST:
special.tests.test_support_alternative_backends
: failure…#20984: BUG: scipy.optimize.nnls 1.11.4 version has better performance…
#20991: BUG:
special.pro_rad1
returns ‘nan’ for any combination of…#20994: BUG:
spatial.distance.cosine
withcomplex
arguments raises…#21009: BUG: Floating point exception when passing the invalid argument…
#21010: BUG: Segmentation fault when passing invalid arguments to some…
#21011: BUG: Double free or corruption when passing invalid arguments…
#21016: BUG: Indexing broken for sparse arrays
#21030: DOC, DEV: release notes
gh_lists
touchups#21044: RFC: quo vadis,
xp_assert_*
infrastructure?#21045: BUG:
scipy/optimize/tests/test_hessian_update_strategy.py::TestHessianUpdateSt
…#21057: BUG: loong64 architecture fails TestQuad.test_complex
#21059: TST, MAINT:
TestHyp2f1.test_region5
tol issue with gcc 14.1.0#21078: BUG: linalg.expm: slower by a factor of ~4 in
scipy>1.13
#21088: DOC:
optimize.InverseJacobian
: document or deprecate?#21099: DOC: incorrect section ordering for classes
#21106: BUG:
stats.combine_pvalues
gives result with wrong dimensionality…#21140: BUG: optimize.nnls: re-implementation not robust
#21144: BUG: sparse: Two new XSLOW test failures
#21145: BUG: dev.py build –debug doesn’t produce a debug build
#21148: BUG: scipy.optimize.root_scalar pass in an array instead of float
#21152: BUG:
stats.bartlett
: returned statistic can be negative…#21158: RFC: spatial: review calculation formula for Jaccard distance…
#21166: ENH:
linalg.null_space
: exposelapack_driver
andcheck_finite
#21174: BUG: special tests failing on main when CuPy is installed with…
#21178: DOC:
optimize.root_scalar
: arguments incorrectly marked…#21181: MAINT: spatial: weighted
chebyshev
distance revisited#21187: BUG: spatial.distance:
kulczynski1
returns similarity rather…#21192: BUG:
stats.differential_entropy
: incorrect results with…#21193: BUG: optimize: Hessian update strategy fails on nested minimize…
#21208: RFC: Should mutable default arguments be forbidden by the linter?
#21212: DOC: doc build failing in CI
#21217: BUG: SciPy won’t pick the correct BLAS when running the test…
#21227: BUG: stats/fft/differentiate/optimize: test suite failures with…
#21239: ENH: Add a Python level lapack wrapper for DSYTRS
#21241: DOC: add sphinx-copybutton to the documentation
#21248: BUG: ValueError:
x0
violates bound constraints in minimize#21256: BUG: io.loadmat: failure with large file due to address position…
#21266: DOC: CosineMixture function in go_benchmark_functions is wrong
#21275: CI: wheel builds for Python 3.13 are failing
#21286: BUG: Delaunay/qhull segfault on self-pass
#21292: TST: ndimage: GPU test failures
#21296: DOC: optimize.root: fix docs for
inner_\*
parameters#21300: BUG: integrate.simpson:
x
param is keyword only#21311: BUG: special.chdtr: torch failures
#21351: ENH: spatial: Rotation: add
split
to break apart object with…#21357: DOC: signal.hilbert: Terminology issue
#21366: DOC:
stats.f_oneway
: use attributes instead of tuple unpacking…#21369: BUG: stats.tukeylambda:
support(lam)
is incorrect whenlam
…#21379: BUG: spatial: Voronoi diagram missing ridges
#21383: BUG:
stats.sobol_indices
: in-place modification offunc
…#21394: DEV: jupytext notebooks break caching of doc builds
#21405: MAINT: a few potential minor cleanups
#21421: DOC/DEV: direct to building guide from quickstart guide
#21439: DOC/DEV: replace mambaforge with miniforge
#21447: DEV/MAINT: Allow unicode characters
±
and∞
in source…#21452: DOC: signal.firls: reference unavailable
#21453: ENH: Add support for Xi Correlation in scipy
#21460: MAINT, DOC: make dist pipefail issue
#21461: BUG:
special.pro_rad2
: incorrect results since translation…#21486: MAINT: ndimage test failures with CuPy
#21504: DOC: add note about
args
/kwargs
to description of callable…#21507: BUG: fft.fft: real-valued array-api-strict inputs fail
#21510: DOC: signal.freqz: problem with
fs
#21513: TST, MAINT: test_differentiate torch GPU failures
#21519: BUG: optimize.minimize:
method='Powell'
gives array not scalar#21534: TST, MAINT:
test_matrix_input
failing#21556: DOC: Lack of table of contents in cluster
#21566: DOC: stats.pearsonr: error in notes of API reference
#21571: DOC: interpolate.interp1d: clarify status and alternatives
#21576: DOC: building: specify
.ps1
for windows example#21582: BUG: Squeezed output from batched
scipy.linalg.det
#21583: BUG: optimize: test failures in scikit-learn following LBFGS…
#21584: BUG: linalg.expm: nightly inaccurate for
complex64
#21596: MAINT: Update constants to CODATA 2022 recommendation
#21610: BUG: special.logsumexp: imaginary component exceeds
(-pi, pi]
#21615: BUG: Invalid treatment of ellipsis in indexing of sparse matrices
#21627: DOC: optimize.root: outdated naming of fprime in
method=’hybr’
#21630: BUG: optimize.nnls: precision problems
#21641: BUG: io.mmwrite: auto-appending of
.mtx
extension#21660: BLD, MAINT: linker warnings with newer AppleClang/ld
#21661: BUG: fft.fht: should set
u.imag[-1] = 0
only whenn
is…#21670: BUG: ndimage:
_normalize_sequence
fails on 0d array#21671: BUG: signal.ShortTimeFFT: inverse tranform error with multichannel…
#21677: BLD: build warnings from quadpack
#21696: MAINT: lombscargle numerical backward-compat
#21704: DOC: stats.bootstrap: clarify meaning of
paired
argument#21709: BUG: logsumexp returning incorrect results in Scipy 1.15.0.dev0
#21724: MAINT: signal deprecation cleanups
#21733: BUG: cluster: incorrect type of default value of
dist
in…#21738: BUG: “ERROR: Dependency “OpenBLAS” not found” in macOS tests…
#21745: TST, MAINT: array API GPU test fails in
test_cubature.py
#21747: BUG: boolean indexing of sparse arrays broken on
main
#21758: BENCH/DEV: Add
conda-build
toenvironment.yml
#21759: DEP: remove
special.btdtr
andspecial.btdtri
#21760: BUG: failure in
scipy/optimize/tests/test_minimize_constrained.py::test_gh1164
…#21769: BENCH: Warnings from
linprog
#21772: BUG:
optimize.curve_fit
withnan_policy="omit"
fails…#21775: BUG: sparse matrix-vector multiplication fails with flattened…
#21788: BUG: stats:
qmc.Sobol
raisesValueError
in multi-threading#21791: BUG: sparse:
setdiag
broken when not entire diagonal belongs…#21807: BUG: signal: Confusing error when giving an invalid mode to
correlation_lags
#21810: RFC: special: Behavior of
gamma
function and related functions…#21814: TST: interpolate: tests on
griddata
are not parametrized#21817: QUERY:
optimize.isotonic_regression
: cannot replicate results…#21820: BUG: stats: New XSLOW failures in
test_fit.py::TestFit
#21829: BLD: accelerate detection with GNU toolchain on ARM mac
#21830: BLD: threads.h with MacOS 14.x ARM + gcc 14.2.0
#21833: SPEC 7 Transition Tracker
#21837: BUG: linalg.svd: Segmentation Fault, Integer overflow in LAPACK…
#21838: ENH: sparse: revisit default index dtype selection in sparray…
#21855: TST, MAINT: torch + GPU failures for test_create_diagonal
#21885: BUG:
interpolate/tests/test_interpnd.py::TestLinearNDInterpolation::test_threa
…#21900: BUG: stats: New XSLOW test failure in test_sampling.py
#21908: BUG: integrate.trapezoid: broadcasting failure after #21524
#21927: TST: failures in
test_riemann_zeta_complex
on windows in…#21934: BUG: Intel oneAPI tests / py3.12, dev.py:
meson.build:1:0:
…#21940: DOC, REL: 1.15.0 author mappings
#21946: BUG: several failing tests in
interpolate
on macOS15#21949: BUG: stats: XSLOW test failure in
scipy.stats.tests.test_fit::TestFit
#21952: DOC:
stats.goodness_of_fit
: improve examples#21957: CI: failure for “Oldest GCC …” Linux CI job (related to pre-release…
#21963: DOC: Deprecation warning in
sphinx
when used with Python…#21988: refguide_check currently failing
#22005: TST:
TestJacobian::test_attrs
tol bump?
Pull requests for 1.15.0#
#11345: MAINT: constants: revise way ‘exact’ values are recomputed
#12071: ENH: linalg: update
_procrustes.py
to handle complex matrices…#12824: ENH:
linalg.solve
: detect and exploit matrix structure#15993: TST: sparse.linalg: Add iterative step test of solvers with LU…
#16088: DOC: signal: Make
_filter_design.py
plot labels consistent#16090: ENH: vectorize companion matrix function
#16467: ENH: sparse: add nonzero functionality to
min, max, argmin,
…#16877: MAINT: remove un-necessary all-true array.
#17318: ENH: signal: Add functionality of Complex Chirp waveform
#18605: ENH: special: add
softplus
#18979: DOC: Add units to scipy.constants description
#19058: DOC:special/signal: Add examples for
berp_zeros
andband_stop_obj
#19145: ENH: stats: add Landau distribution
#19209: BUG: sparse.linalg: fix
LinearOperator
dtype determination#19255: ENH: Use
highspy
inlinprog
#19361: BENCH: sparse.linalg: check accuracy in SVD-LOBPCG benchmarks
#19475: ENH: stats.lmoment: add function to calculate sample L-moments
#19764: MAINT: stats: fix
axis_nan_policy
decorator non-broadcastable…#19970: ENH: interpolate: replicate
splrep
andsplprep
in Python#19988: MAINT: unify factorial implementations
#19989: MAINT: special: factorial clean-ups
#20040: DOC: optimize: add comparison of optimizers to guide
#20058: DOC:signal: Suggest remedies for slow speed in
resample
when…#20097: ENH: signal: Compute envelope of a real- or complex-valued signal
#20194: BUG: linalg.cossin: fix for nonsymmetric cases
#20242: DOC: sparse: Correct
todense
documentation#20303: DOC: stats: Convert sampling tutorial to MyST-md
#20408: DOC: ndimage.convolve: modify
origin
param description#20496: DOC: stats: added
Raises
section to a few functions#20514: TST/BUG: linalg.expm: empty array support
#20517: DOC: sparse.linalg: updated preconditioner doc for iterative…
#20519: MAINT: signal: further refactor spline filters
#20520: BUG: linalg.polar: empty array support
#20539: ENH: special: Overhaul of Legendre functions
#20543: ENH: ndimage: log(n) implementation for 1D rank filter
#20558: ENH: linalg: Cythonize
id_dist
FORTRAN code#20589: TST: optimize.linprog/milp: add tests for various bug reports
#20671: ENH: interpolate: fix concurrency issues throughout
#20695: MAINT: special.ndtr: adjust implementation to more closely match…
#20701: TST/MAINT: special: test with CuPy, make some CUDA fixes
#20708: ENH:
differentiate.hessian
: usejacobian
to compute…#20713: ENH: optimize.HessianUpdateStrategy: add
__matmul__
#20719: MAINT: sparse: fix
__init__
func sig to allowmaxprint
…#20743: ENH:
stats._xp_mean
, an array API compatiblemean
with…#20754: ENH: sparse: add dtype validation in
__init__
andastype
#20759: MAINT: sparse.linalg: adjust
norm
,eigs
, andlsqr
…#20766: MAINT: stats: minor numerical improvements to circular statistics
#20767: ENH: stats.qmc: add bounds parameters to PoissonDisk
#20771: ENH:
stats.ttest_ind
: add array API support#20773: BUG: sparse.csgraph, array types: support non-zero
fill_value
...#20785: ENH:
stats.nct.pdf
: increase range in left tail using boost#20793: ENH: stats: end-to-end array-API support for NHSTs with beta…
#20794: ENH: stats: add array API support for
directional_stats
#20800: ENH: optimize.elementwise: vectorized scalar optimization and…
#20809: ENH: ndimage: extend ndimage filter axes support to correlate…
#20811: ENH: ndimage: extend filter axes support to remaining filters…
#20816: ENH:
special.rel_entr
: Avoid overflow before computing…#20822: CI: Add Linux workflow to test on free-threaded Python builds
#20827: REL: set version to 1.15.0.dev0
#20829: MAINT: special: fix typo in
four_gammas
used byhyp2f1
#20830: DOC:
optimize.differential_evolution
: change convergence…#20833: BUG: interpolate: make BSpline.integrate always return an array
#20834: ENH: integrate.nsum: elementwise evaluation of finite or infinite…
#20837: MAINT: linalg: add
const
to Cython function signatures#20843: DOC/DEV: add docs for enabling interactive examples
#20846: DOC: Wrap long titles in docs pages
#20849: DOC/DEV: mention
-b
option in contributor guide on testing#20855: TST: add additional margin to
fail_slow
s#20856: TYP:
_lib.doccer
: add type annotations#20857: ENH: sparse: add axis parameter to
count_nonzero
method#20859: DEP: signal: remove
cmplx_sort
#20862: MAINT: special: Add kokkos
mdspan
#20864: DEP: integrate: remove quadrature and romberg
#20865: DEP: signal: remove wavelet functions
#20866: DEP: stats: remove
rvs_ratio_uniforms
#20867: DEP:
integrate.cumulative_trapezoid
: raiseValueError
…#20868: DEP: interpolate: deprecate complex dtypes in
{Akima1D, Pchip}Interpolator
#20869: DEP: special.factorial: raise error for non-integer scalars and…
#20872: MAINT: interpolate: add
const
to Cython function signatures#20873: MAINT: sparse: add
const
to Cython function signatures#20874: MAINT: spatial: add
const
to Cython function signatures#20875: BLD/DEV: special: Fix warning due to mixed initializers
#20876: DOC: use
intersphinx_registry
for easier intersphinx mapping…#20882: CI: Add workflow to build and upload free-threaded wheels
#20883: ENH: stats: rewrite
ttest_rel
in terms ofttest_1samp
#20884: ENH: stats: end-to-end array-API support for NHSTs with Student’s…
#20885: BUG: fix incorrect intersphinx-registry entry in environment.yml
#20886: CI/DEV: fix Node.js 16 warnings by bumping actions
#20887: MAINT: signal: add
const
to Cython function signatures#20889: MAINT: sparse: Align matmul tests in
test_base.py
for spmatrix…#20891: MAINT: stats: add
const
to Cython function signatures#20895: TST: sparse: Finish allowing
test_base.py
to easily switch…#20897: DOC: Fix bug with parallel doc build
#20898: MAINT: sparse: clean up
_sputils.getdtype
docstring#20900: ENH: stats: add array API support to combine_pvalues
#20906: DOC: linalg.schur: update doc for the argument
sort
#20907: CI: Make sure nightly free-threaded wheels are tested with GIL…
#20912: DOC: Add more information about how to use Accelerate
#20913: BUG: sparse.csgraph.dijkstra: fix dtype and shape bugs
#20915: DOC:
integrate.quad_vec
: Add example when usingworkers
#20916: DOC: Mention that
sparse.bsr_array
does not support slicing.#20922: BUG: stats.mstats: fix
mstats.{ttest_rel, ttest_1samp}
when…#20924: BUG:
_lib
: ensure reasonable length_deprecate_positional_args
…#20926: DOC: sparse: Add migration guide for converting code from spmatrix…
#20928: ENH:
optimize._differentiate
: add array API support#20932: MAINT: io: fix premature setting of attributes in
HBInfo
#20934: TST:
stats.combine_pvalues
: parameterise tests and update…#20941: DOC/MAINT: single to double backticks to remove improper linking
#20942: CI: Use Cython nightly wheel on free-threaded CI
#20944: DOC: update distributing section
#20946: ENH: stats.gmean: add array API support
#20951: CI: Add MacOS to free-threaded wheel release CI
#20954: MAINT: stats.hmean/pmean: simplify prior to array API conversion
#20955: DOC: Single to double backticks for non-targets
#20962: DOC/MAINT: stats.gmean/gstd/hmean/pmean: document/treat invalid…
#20965: ENH:
stats.tmean
: add array API support#20968: MAINT: fix some misspellings
#20969: DOC: linalg: add # may vary to a linalg.schur example
#20971: TST: special: use
standard_normal
to generate arguments in…#20974: ENH:
stats.combine_pvalues
: add native axis support#20975: DOC: single to double backticks
#20976: BUG: Update scipy-optimise directive in view of new default role
#20977: DOC: More single to double backtick
#20980: CI, MAINT:
test_plot_iv
NumPy 2 shim#20985: BLD: Add build only CI workflow for Windows using MSVC + ifx…
#20986: DEV:
gh_lists
: single -> double backticks#20987: DOC/DEV: update commit message guidance
#20989: ENH:
stats.chi2_contingency
: addmethod
parameter#20995: CI: test cp313-dev
#20998: MAINT: signal: fix code comment typo
#21003: MAINT: odr: fix a refcounting issue in
__odrpack.c
#21004: DOC: stats: Convert
chisquare
example to notebook#21005: CI: one invocation for all tests in array API job
#21017: MAINT: smoke-docs: add
special/_precompute
to –ignore list,…#21018: MAINT: sparse: better error message on
matmul
mismatch#21021: ENH:MAINT:optimize: Re-rewrite nnls in Cython
#21022: BUG: sparse: Fix advanced indexing using both slice and array
#21023: DEV: lint: enforce newlines at end of files
#21025: API: signal: rename
sosfreqz
tofreqz_sos
#21028: ENH: stats.tmin/tmax: add array API support
#21029: MAINT/STY: Fix UP031 AND UP032 linter errors
#21032: DOC/DEV: update vendored-code page
#21033: DOC: interpolate: discuss linear interpolation with extrapolation
#21034: ENH:
stats.xp_var
: array-API compatible variance withscipy.stats
…#21035: ENH: stats.hmean/pmean: add array API support
#21036: ENH: stats.tvar/tstd/tsem: add array API support
#21037: MAINT: forward port 1.14.0 relnotes
#21041: ENH:
differentiate
: add sub-package for array-API compatible…#21042: DOC: stats: Move biomedical examples to notebooks
#21047: TST: optimize: fix exception test on PyPy3.10
#21050: ENH:
stats.Normal
: add new continuous distribution infrastructure…#21051: BUG: interpolate.LinearNDInterpolator: fix for precomputed triangulation
#21063: MAINT: gcc-14
test_region5
tol bump#21068: ENH:
stats.zmap
/zscore
/gzscore
: add array API…#21076: ENH:
stats.differential_entropy
: add array API support#21081: DOC: Add default options for COBYQA
#21083: MAINT: simplify
_integrate_pdf
#21085: DEP: spatial: deprecate complex input to
cosine
andcorrelation
#21086: DOC: spatial: Fix typo in
seuclidean
docstring#21087: DOC: optimize: remove inadvertent block quote indentation
#21089: ENH:
stats.alexandergovern
: vectorize calculation for n-D…#21094: DOC: sparse.linalg.gcrotmk: fix backticks and add
maxiter
…#21096: DOC: sparse.linalg.gcrotmk: add missing backticks
#21097: ENH:
stats.boxcox_llf
: add array API support#21098: DEV: don’t add
sparse
label for submodules#21101: DOC: special.ellipj: fix order of parameters in docstring
#21103: MAINT: itemsize pybind cleanup
#21109: MAINT:
stats.combine_pvalues
: fix nativeaxis
support…#21110: ENH:sparse.linalg: Update vendored ARPACK version to 3.9.1
#21111: BUG:
ndimage.binary_erosion
: avoid divide by zero by capping…#21112: DOC:
optimize.differential_evolution
: fix interval for…#21113: MAINT, DOC: simplify docs warn filter
#21115: BENCH: Corrections to benchmarks README and
sparse.Arithmetic
…#21116: BUG:
optimize.root_scalar
: let bracket be passed as a NumPy…#21117: TST: interpolate: use
xp_assert
infrastructure#21118: DOC: optimize: Add docstring to
InverseJacobian
#21119: MAINT: remove another mpl test shim
#21120: BUG: cluster: Avoid OOB write when distances are NaN in
centroid
#21121: BUG: cluster: Fix
fcluster
"maxclust"
binary search logic#21123: DEV/CI: add
gmpy2
back to test dependencies#21124: MAINT: use
xp_vector_norm
instead ofxp.linalg.vector_norm
#21125: MAINT: remove unused minpack2 fortran code
#21127: TST: fix
boxcox_llf
test skips#21128: TST: special.logsumexp: modernise tests
#21129: TST: sparse.linalg: test all dtypes for
lobpcg
B-orthonormalization#21131: ENH:optimize: Rewrite MINPACK in C
#21132: TST: sparse.linalg: simplify dtypes def in
test_expm_multiply.py
#21133: TST: sparse.csgraph: simplify dtypes def in
test_graph_laplacian.py
#21141: DOC: Remove outdated comment about macos/musl in Cirrus CI config
#21143: MAINT: signal: Don’t redefine
PyArray_MIN
macro#21146: MAINT: sparse.linalg:
spsolve
simplification#21149: ENH: special.logsumexp: add array API standard support
#21150: ENH: ndimage: add array API standard support
#21151: DOC: interpolate: fix
py:obj reference target not found
warning#21154: DOC: fix documentation about verbose in minimize_trustregion_constr.py
#21157: DEP:
stats.find_repeats
: deprecate function#21162: MAINT:
optimize.root_scalar
: ensure user function gets…#21163: MAINT: special: Make fixes needed for ellipkinc and ellipeinc…
#21167: ENH: interpolate: add AAA algorithm for rational approximation
#21168: BLD: remove optional test dependencies from cibuildwheel config
#21171: DEV: fix
--debug
and add--release
todev.py build
#21173: BUG/CI: Compile and run tests with
ifx
+MKL
on Linux#21176: MAINT: spatial.distance.jaccard: correct numerator calculation
#21179: BUG: special:
cupy
import guard#21182: MAINT: spatial: improve weighted Chebyshev distance doc and zero…
#21185: DOC: optimize: Mark
x1
as optional for secant root finding#21186: DOC:
array
->``array_like`` in a few functions#21194: MAINT:
stats.differential_entropy
: fix results with integer…#21196: DEV: add label glob for
scipy.differentiate
#21197: ENH: sparse: extend COO arrays to n-dimensions
#21199: MAINT: bump pybind11, mark C/C++/Cython extension modules as…
#21201: ENH:integrate: Rewrite QUADPACK in C
#21203: BUG: optimize: Avoid sharing BFGS HessianUpdateStrategy between…
#21204: MAINT: ensure Python.h is included first in __minpack.c
#21210: MAINT: special: Make sine and cosine integrals work in CUDA
#21211: DEP: signal.{correlate,convolve,lfilter}: deprecate object arrays…
#21213: MAINT, DOC: bump jupyterlite-sphinx lower bound
#21215: MAINT:
_lib
: update_docscrape
from upstream#21216: ENH:
integrate._tanhsinh
: add array API support#21220: TST: sparse.linalg.lobpcg: add unit tests for accuracy
#21221: BENCH: sparse.linalg: check accuracy properly in LOBPCG benchmarks
#21222: BUG: special:
cython_special
missing dep#21223: MAINT: interpolate: remove several fused type uses from
_bspl.pyx
#21225: MAINT: io: move
_test_fortran
undertests
#21230: ENH:
differentiate
: support arrayinitial_step
#21231: ENH:
optimize.elementwise.find_minimum
: add array API support#21235: MAINT: interpolate: remove
README
#21240: ENH: sparse: refactor 2-D COO sparse-dense matrix-matrix multiplication
#21242: BUG: sparse: fix two slow tests that fail in numpy 2 inside A.nnz
#21243: BENCH: fix
--compare
inpython dev.py bench
#21245: DOC: add sphinx-copybutton
#21247: ENH: linalg.nullspace: expose SVD options
#21252: DOC:
integrate.solve_bvp
: make notation consistent#21254: CI: Test icx + icpx + ifx + MKL build of SciPy
#21257: MAINT: BUG: fixed issue where optimization method trust-constr…
#21259: BUG: interpolate: avoid OOB in the periodic spline constructor
#21260: BUG: io.loadmat: fix read of large Matlab 4 arrays
#21264: MAINT: utilise
array_api_compat
v1.8#21265: BUG: fix cstddef include
#21267: DOC: add Stack Overflow link to readme file
#21268: MAINT/BENCH: optimize: fix
CosineMixture
reference#21276: MAINT: Fix incorrectly named 1234 Hz fs .wav test file
#21277: ENH: signal.lombscargle: update to the generalized Lomb-Scargle…
#21278: BLD: bump cibuildwheel closes #21275
#21281: MAINT:
test_maxiter_worsening
cleanup#21282: TST: ndimage: unskip
test_boundary_spline_accuracy
fortorch
#21284: MAINT: Remove mutable defaults in function definitions, forbid…
#21290: MAINT: linalg: run
dos2unix
oncython_lapack_signatures.txt
#21294: TST: fix GPU failures
#21295: DOC:
find_simplex
no self#21297: MAINT: special: rename C++ library to
xsf
#21299: DEV:
gh_lists
: improve sanitization of backticks#21301: ENH: stats: Implement
_logcdf
and_logsf
forrv_continuous
#21304: TST: Fix bugs in various tests found via linter
#21309: MAINT:integrate: Fix an off-by-one error in QUADPACK
#21310: MAINT/DOC: clean up
_lib._array_api
, update docs#21312: MAINT: special: fix Pylance typing nit
#21313: BUG: find_simplex shape () segfault
#21314: ENH: optimize: Rewrite LBFGSB in C
#21316: MAINT: special.chdtr: fix generic chdtr
#21318: BUG: special: Fix bug in beta ppf by setting correct Boost policy
#21321: BUG: linalg: fix
solve_banded
raisingIndexError
when…#21322: BUG: stats: Allow
betaprime._ppf
to accept scalars.#21326: MAINT: stats: Improve precision of argus.sf.
#21328: ENH: linalg: add Python wrapper of
?gtcon
#21329: MAINT: interpolate.AAA: improve input validation of
max_terms
#21330: ENH: integrate: multidimensional integration of array-valued…
#21331: ENH: linalg: add Python wrapper of ?trcon
#21332: BUG:
stats.levy_stable
: fix ignored parameterization#21333: DOC:integrate.simpson: Remove reference to removed
even
param#21334: TST: add
xfail_xp_backends
#21335: BUG/ENH: stats: updates for cauchy.
#21336: ENH: linalg: Add
sy/hetrs
LAPACK wrappers#21339: ENH:
stats.poisson_binom
: add Poisson Binomial distribution#21342: MAINT: stats: fix test that discrete distribution methods accept…
#21344: BLD: require Meson 1.5.0, fix a missing build dependency for…
#21346: TST: special: Fix two XSLOW tests.
#21347: BUG/ENH: stats: Cauchy distribution fixes
#21349: TST: linalg: skip
svd_gesdd
test for large matrices for/in…#21352: ENH:
linalg.lapack.?lantr
: add Python wrapper#21353: MAINT:
stats.randint.pmf
: fix zero PMF values within the…#21354: MAINT:
stats.rv_discrete.ppf
: fix infinite loop bug#21355: MAINT:
stats.geom.rvs
: ensure that output is not negative…#21360: BLD: use OpenBLAS v0.3.28 with fewer kernels, fix OpenBLAS licences
#21361: BLD: switch to more robust git hash determination
#21363: ENH: linalg.solve: use structure to speed up finite check, apply…
#21365: BUG: interpolate: FITPACK: remove
fpchec.f
in-lineif-then-endif
…#21367: MAINT:
stats.mannwhitneyu
: simplify alternative hypotheses#21368: DOC: fixes ISSUE#21366
#21371: BUG: stats.tukeylambda: Fix the support() method.
#21373: ENH: interpolate.AAA: add cleanup function for removing spurious…
#21375: MAINT: Add local resources for smoke-tutorials
#21377: BENCH: Update BlockDiagSparseConstruction to use a
coo_matrix
…#21378: DOC: signal.hilbert: update to reflect implementation
#21387: DOC: signal: fix typos in
_short_time_fft.py
andsignal.rst
#21388: ENH: special: Improve precision of special.logit.
#21389: ENH:
scipy.stats
: add normal-inverse-gamma distribution#21395: DOC: stats.ecdf: fix example plot
#21397: DOC/DEV: add
pooch
to virtualenv dev quickstart guide#21399: MAINT: optimize: remove unnecessary
isnan
check#21407: BUG: optimize.minimize: set
trust-constr
success=False
…#21412: ENH: sparse: add CSR/CSC
_broadcast_to
method#21413: MAINT: cleaner 0-D/scalar checks for
xp
assertions, round…#21419: ENH:
linalg.circulant
: allow batching#21423: MAINT:
linalg.logm
: avoidZeroDivisionError
, emit…#21425: DOC: linalg.qr: add example about explicit permutation matrix
#21427: DOC: linalg.cholesky: document when/whether only selected half…
#21428: DOC: linalg.hankel: emphasize that first element of
r
is…#21429: MAINT:
linalg.schur
: fixsort='iuc'/'ouc'
, correct…#21430: MAINT: forward port 1.14.1 relnotes
#21433: DOC: Cache jupyter notebooks build
#21435: ENH: sparse: Add nD COO support for matmul, dot and tensordot
#21437: TST/DOC: smoke docs: strict checks
#21440: ENH: linalg.funm: Pythranize double for loop
#21441: DOC: special: prolate spheroidal docs wrong
#21443: DOC/DEV/CI: mambaforge -> miniforge
#21444: DOC: optimize: make
lsq_linear
example smaller#21446: ENH: linalg: enable N-D batch support in special matrix functions
#21449: DEV/MAINT: Add
±
and∞
to the extra set of allowed Unicode…#21450: Use miniforge for uploading wheel builds
#21451: DOC: interpolate: add missing call to example code
#21454: ENH: special: Add root finding tools to xsf and implement gdtrib…
#21455: TYP: ignore missing sphinx import in mypy.ini
#21457: MAINT: few scipy cleanups
#21458: DOC: signal.firls: fix broken link
#21464: CI: remove
fetch-depth: 0
from wheel build jobs#21467: STY: fix new lint rules that are popping up in CI
#21468: MAINT: special: remove more functions from
functions.json
#21469: DOC/MAINT: add references to Boost
#21471: BUG: sparse: undesired behaviour of 1D/2D matmul
#21472: MAINT: special: refactor
ufunc.h
and move toxsf
#21473: ENH: integrate.cubature: array API standard support
#21474: DOC: use
https
URLs in pull request template#21477: DOC: update Contributor Quickstart guide to refer to the Building…
#21478: DOC: Fix version matching by extending the length of
GITVER
#21481: MAINT/DEV: pin sphinx in
environment.yml
, bumpjupyterlite-sphinx
#21483: ENH: special: computing derivatives by simple autodifferentiation
#21485: MAINT: interpolate: abstract out barycentric representation of…
#21492: MAINT: Specify SHELL=/bin/bash in doc/Makefile
#21493: MAINT: Check for all submodule paths in
check_installation
#21496: TST: Use pytest-run-parallel against free-threaded CI
#21497: ENH: interpolate: add
FloaterHormannInterpolator
#21499: MAINT, TST: CuPy skip ndimage test
#21502: MAINT: Update COBYQA to the latest release
#21505: BUG: special: Use Boost for ncfdtr, fixing accuracy issues
#21508: BUG: fft: fix real input to standard funcs
#21512: TST: signal: convert to
xp_assert_\*
infrastructure (pt….#21514: DOC: signal.freqz: fix example
#21515: MAINT: differentiate: manually promote dtype before element assignment
#21516: TST: remove redundant torch skips
#21517: DEV:
pytorch
->torch
#21518: ENH:
stats.boxcox_llf
: add GPU support#21520: TST:
special._smirnovp
: remove test xfail after translation…#21524: ENH: integrate.trapezoid: add array API standard support
#21525: MAINT: stats: Fix typos principle -> principal
#21526: BUG: optimize.minimize.powell: stop squeezing everything
#21528: BUG: special.logsumexp: fix type promotion
#21530: TST: signal: convert to
xp_assert_\*
infrastructure, pt 2#21536: TST: interpolate: fix a spurious failure with -b all
#21539: MAINT: interpolate: move an internal utility from cython to python
#21542: DOC: integrate.cubature: fix doc formatting and references issues
#21544: DOC: optimize: document recipe for
\*args
and\*\*kwargs
#21545: STY: ignore rule UP038
#21549: ENH: ndimage: add axes support to most morphology functions
#21551: MAINT: interpolate: trim down
_bspl
extension#21553: ENH:linalg: Rewrite expm in C
#21564: TST, MAINT: skip some torch GPU tests
#21565: ENH: HiGHs re-integration
#21567: MAINT: stats.wilcoxon: small improvements/fixes
#21568: MAINT: special: performance optimization for simple autodifferentiation
#21570: MAINT, BLD: 3.13 to classifiers
#21572: DEP: spatial.distance: deprecate
kulczynski1
andsokalmichener
…#21573: DOC/MAINT: stats: fix some typos
#21575: DOC/MAINT: doc: fix some typos
#21577: MAINT: special.hankel2: fix edge case
#21578: DOC:
special.mathieu_c/sem
: add information to docstring#21579: TST/DEV: allow stacking of
skip_xp_backends
#21585: DOC/MAINT: special: fix some typos
#21586: DOC/MAINT: spatial: fix some typos
#21587: BUG:linalg: Fix single precision expm UV computation
#21588: BUG: linalg.det: Fix edge case handling of stacked 1x1 arrays
#21590: DOC: signal.firwin: emphasise cutoff freq is half-amplitude
#21593: DOC:
special.roots_legendre
: fix typo in example#21595: DOC: building: specify .ps1 for windows example
#21597: ENH:
special.logsumexp
: improve precision when one element…#21598: DOC:
spatial.voronoi_plot_2d
: notes on degeneracy#21599: CI: use gha-update [wheel build]
#21600: MAINT:
_lib
: vendor and use array-api-extra#21602: BUG:optimize: Correct guarding, previosuly Fortran indexed, mod…
#21603: DOC:
special.riccati_yn
: highlight sign convention#21604: MAINT:
special.gegenbauer
: fix behavior forn=0
;…#21605: MAINT: constants: update codata values to 2022
#21607: DOC/MAINT: sparse: fix some typos
#21608: TST: ndimage: skip fourier tests for JAX
#21609: ENH:
integrate.lebedev_rule
: points and weights of Lebedev…#21612: MAINT: special: fix delegation to generic implementations
#21616: BUG: sparse: fix indexing after ellipsis and 2D array indexing
#21617: DOC/MAINT: signal: fix some typos
#21621: DOC/MAINT: ndimage: fix some typos
#21622: MAINT: special.logsumexp: enforce branch cut convention
#21624: DOC/MAINT: linalg: fix some typos
#21625: ENH:
optimize.differential_evolution
: respect workers when…#21626: BUG: sparse.linalg: Set
t=2
intest_onenormest_table_6_t_1
…#21629: MAINT: special: use reflection formulas for spherical Bessel…
#21633: DEP: linalg: deprecate kron
#21635: TST: special: fix XSLOW failure in
test_mpmath.TestSystematic.test_spherical_j
…#21636: MAINT:
differentiate.differentiate
: rename function to…#21637: MAINT: interpolate: deduplicate input validation for NdBSpline
#21638: ENH:
differentiate.jacobian
: support arraystep_direction
#21642: BUG: io.mmwrite: fix auto-appending of
.mtx
extension#21646: DOC: sparse: Migration Guide rewording and tweaks
#21647: DOC: optimize.root: replace ‘fprime’ with ‘jac’ in
method=’hybr’
#21648: DOC/TST:
integrate.cubature
: Clean up docstring and add…#21656: API:
integrate.cubature
: change some arguments to keyword-only#21657: ENH:
integrate.cubature
: support for infinite limits#21658: ENH: stats.chatterjeexi: add xi correlation function
#21663: CI: fix failing conda setup
#21668: BUG: fft.fht: set
u.imag[-1] = 0
only whenn
is even#21672: BUG: ndimage: fix 0d arrays in
_normalize_sequence
#21673: BUG: signal.ShortTimeFFT: fix multichannel roundtrip with
mfft
…#21680: MAINT:integrate: Silence a few QUADPACK compiler warnings
#21682: DOC: Reduce duplication in user guide
#21686: BUG: signal: int handling for
resample_poly
#21689: BUG: optimize: fix bugs found in L-BFGS-B implementation
#21695: ENH:
stats.chisquare
: addsum_check
to disable check…#21697: MAINT: signal.lombscargle: fix numerical backward-compat
#21699: BUG: sparse.linalg: remove faulty test of eigval order from ARPACK
#21700: ENH:
stats.Mixture
: add mixture distributions for new infrastructure#21701: MAINT: interpolate: remove undocumented nu arg of BSpline.design_matrix
#21702: MAINT: special: clean up factorial corner cases, including complex…
#21703: DOC: sparse: update spdiags handling in
doc_string
and migration…#21705: MAINT: Allow greek Unicode symbols in linter.
#21706: DEP: signal: deprecate object arrays in sosfilt
#21707: ENH:
stats.make_distribution
: generate aContinuousDistribution
…#21710: ENH: sparse.linalg: convert sparse.linalg to use sparray internally
#21711: BUG: special: Fix formula for division of dual numbers in xsf
#21712: MAINT: special.logsumexp: preserve tiny imaginary components
#21714: TST: stats.sampling: add fail slow exception
#21718: DOC:
stats.bootstrap
: improve description ofpaired
…#21719: BLD: macos-12 image deprecated [wheel build]
#21721: MAINT: signal: lombscargle docstring tweaks and fix handling…
#21723: DOC: Fixed a typo in the description of
scipy.sparse.csgraph.maximum_bipartite
…#21726: ENH: linalg.solve: add
assume_a='banded'
#21728: ENH: special: use boost in
nctdtr
#21729: MAINT: signal.lombscargle: vectorization changes and handling…
#21730: MAINT: sparse.linalg: use @ for matmul in docs/tests for Linear…
#21731: ENH:
stats.dpareto_lognorm
: add double Pareto lognormal…#21734: BUG: cluster: correct type of default value of
dist
inClusterNode
#21737: TST: differentiate: small tolerance bump on failing test
#21739: BLD: fix issue with capitalisation when meson detects Accelerate
#21744: ENH: special: Extend Riemann Zeta function to complex inputs
#21746: ENH: stats: exponential, logarithm, and reciprocal of a random…
#21748: MAINT: Updated pybind11 min version to 2.13.2
#21749: MAINT/DEV: fix
python dev.py ipython
under Debian 12 / Python…#21751: BUG: array API conformance in cubature
#21752: ENH: stats.truncate: truncated random variables
#21753: DOC: sparse: migration to sparray guide updates
#21754: MAINT: interpolate: rename
interpnd
->_interpnd
#21756: DOC: interpolate: detail
interp1d
recommended replacements#21763: BUG: handle pearsonr constant case with n=2 vectors
#21765: MAINT: remove equality constraint that was impossible to satisfy…
#21767: MAINT:
stats.ContinuousDistribution
: protect attributes,…#21768: BUG: sparse: fix ellipsis and bool array indexing combination
#21770: DOC: stats: correct conclusion associated with high p-value
#21773: DEP: special: Remove
special.btdtr
andspecial.btdtri
#21774: API:
optimize.differential_evolution
: transition to Generator…#21776: BUG/ENH/DOC: spatial: Better handle & document
Rotation
splitting#21777: ENH: stats: absolute value of a random variable
#21778: ENH: optimize: add array api support to
rosen
and friends#21779: ENH: sparse.csgraph: migrate to use sparray (code changes only)
#21780: BUG: signal: Fix
ShortTimeFFT.extent()
forfft_mode ==
…#21784: BUG: sparse: fix Asp @ vsp for 1D sparse vector and add tests
#21785: MAINT: optimize: migration to sparray pass 1 changes
#21789: ENH: integrate.nsum: support unimodal functions and infinite…
#21790: ENH: stats: distributions of order statistics
#21792: BUG: sparse: fix setdiag for matrices with missing diagonal entries
#21793: CI: Move free-threaded-wheels.yml into wheels.yml
#21794: BUG: stats.qmc: fix
get_poly_vinit
for multi-threading#21796: MAINT: Update
array_api_compat
submodule for the 2023.12…#21797: BUG: special: fix array index out of bound for
pro_rad2
#21799: ENH: sparse.linalg: add
is_sptriangular
andspbandwidth
…#21800: DOC: signal.find_peaks: Document that widths are returned
#21801: ENH: extend factorial{,2,k} to allow complex inputs
#21802: MAINT: special: remove dependence of
xsf::numpy
onsf_error
#21808: BUG:
signal.correlation_lags
: fail with meaningful error…#21811: ENH: differentiate: add array API support to
jacobian
and…#21812: API: interpolate.BarycentricInterpolator: transition to Generator…
#21815: TST: interpolate: parametrize tests on
griddata
#21818: CI: Replace deadsnakes 3.13t by Quansight-Labs/setup-python action
#21819: ENH:
stats.ContinuousDistribution
: improve method resolution…#21821: TST: optimize: mark MIP6 tests xslow
#21822: TST:
stats.fit
: adjust tests forseed
->``rng`` transition#21823: API:
optimize.dual_annealing
: adopt SPEC007#21824: BUG: sparse: fix
idx_dtype
when building index arrays in…#21825: DOC: make
_transition_to_rng
replace documentation ofrng
#21827: BUG: special: Fix behavior of
gamma
andgammasgn
at poles…#21831: DOC: fixup
_transition_to_rng
Oldest GCC"'rng' is not
…#21832: CI: constrain array-api-strict version to allow conversion to…
#21834: DOC: fft.fht: fix typo in example
#21839: MAINT:sparse.linalg: Detach ARPACK and PROPACK code sharing
#21840: DOC: interpolate: add a tutorial page for smoothing splines
#21841: DOC: tone down the text of the “legacy” admonition
#21843: MAINT: stats.lmoment: fixup keepdims behavior
#21845: API:
optimize.check_grad
: transition to Generator (SPEC…#21847: API: optimize.basinhopping: transition to Generator (SPEC 7)
#21848: API:
optimize.quadratic_assignment
: transition to rng (SPEC…#21849: DOC: interpolate: declare 1D FITPACK wrappers legacy
#21850: BUG: linalg.svd: avoid segmentation fault
#21851: STY: add comment about allowed whitespace in table
#21853: DOC: replace only first paragraph of rng documentation
#21854: API:
stats._resampling
: transition to rng (SPEC 7)#21856: MAINT, TST:
test_create_diagonal
GPU support#21857: BLD: warn on accelerate + non-native
#21858: ENH: sparse: Add safe casting function for sparse index to sputils
#21859: DOC:
signal.unit_impulse
: add explanation about delta#21860: MAINT: improve handling of thread-local storage
#21861: MAINT: special: Use consistent std::isnan and std::isinf in a…
#21864: DEP: remove scipy.misc
#21865: MAINT:
fft
: Remove outdated documentation workaround#21867: MAINT: stats.wilcoxon: improve documentation and tests
#21868: BUG: io.matlab: expose
varmats_from_mat
#21869: MAINT: stats.ContinuousDistribution: clarify conditions that…
#21870: MAINT: spatial/special: follow-up on
std::isnan
,std::isinf
#21871: ENH: stats.ContinuousDistribution.sample: generate QMC samples
#21873: DOC: sparse.csgraph: update csgraph docs to use sparray
#21875: MAINT:
interpolate.barycentric_interpolate
: add rng argument#21878: API: cluster: transition to rng (SPEC 7)
#21880: API:
linalg.clarkson_woodruff_transform
: transition to…#21881: API:
stats
: transitiongoodness_of_fit
,sobol_indices
...#21883: DOC/MAINT: Fix some typos regarding GitHub
#21886: API:
stats.{PermutationMethod,BootstrapMethod}
: transition…#21888: API:
sparse
: transitionrandom
-like functions to…#21891: BUG: spatial: guard
distance_wrap
directives#21892: MAINT:
_lib
: useis_numpy
etc helpers from the compat…#21893: MAINT: linalg.interpolative: normalize rng argument (SPEC7)
#21895: MAINT: bump array-api-extra
#21897: MAINT: Hausdorff Generator handling
#21901: MAINT: stats.dpareto_lognorm._cdf: treat special case at x=0
#21903: MAINT: Silence warnings during linprog benchmarks
#21904: BUG: fix nogil LinearNDInterpolator
#21905: MAINT: io: migration to use sparray in IO
#21906: CI: gha update
#21909: DOC: io.loadmat: document
uint16_codec
parameter#21912: BUG: integrate.trapezoid: fix broadcasting issue
#21913: API:
spatial.directed_hausdorff
: transition to ‘rng’ keyword…#21914: MAINT:
spatial.transform.Rotation.random
: transition to…#21916: MAINT, TST: differentiate:
test_examples
tolerance bump#21917: BLD: fortran: only use
-std=legacy
for gfortran#21918: BUG:
optimize.curve_fit
: fix sigma dimension issue with…#21919: Call
lcov
to generate coverage reports for C, C++ and Fortran…#21921: DEP:
stats.ttest_ind
: deprecaterandom_state
andpermutation
…#21926: REV: Revert “MAINT: io: move
_test_fortran
undertests
...#21928: DEV:
gh_lists
: fix warnings#21929: MAINT: bump array-api-extra to 0.2.0
#21930: TST: sparse.linalg: tweak rtol for flaky
expm_multiply
test#21931: MAINT: stats.qmc: transition to rng (SPEC 7)
#21932: ENH: integrate.nsum: add array API standard support
#21937: TST: linalg.blas: fix test concurrency, mark
\*ger
as unsafe#21938: TST: linalg: do not call
np.asarray_chkfinite(np.empty((3,
…#21941: DOC: add docs on parallel execution and thread safety
#21943: MAINT: mark f2py-generated extension modules as safe to run without…
#21944: MAINT: sparse: add
broadcast_shapes
function to_sputils.py
#21947: TST: stats.chatterjeexi: fix error message
#21948: TST: add more thorough SPEC 7 tests
#21950: CI: fix
Intel oneAPI tests
job#21953: TST: stats.rdist: skip failing xslow test
#21954: ENH: sparse: ensure thread-safety
#21955: ENH: spatial: ensure thread-safety
#21961: MAINT: free-threading: declare HiGHS,
ndimage._rank_filter_1d
…#21964: TST: optimize: slight tolerance bump for a dual-annealing test
#21965: ENH: special: ensure tests are thread-safe
#21967: DOC: stats.goodness_of_fit: clarify distinction between known/fit…
#21973: DEV: lint: disable UP031
#21974: DEV: add
conda-build
toenvironment.yml
#21975: CI: use stable NumPy for “old build”
#21976: TST:
optimize.elementwise.bracket_root
: fix torch test…#21977: ENH: integrate.tanhsinh: make
_tanhsinh
public#21979: API: integrate.simpson: allow
x
to be passed positionally#21981: MAINT: purge
from __future__ import annotations
#21983: BUG: linalg: fix cython import order
#21984: BUG: signal: actually reject objects in correlate/convolve
#21985: DOC: optimize.root: fix docs for
inner_\*
parameters#21989: DOC: integrate.tanhsinh: fix reference format; Examples heading
#21990: CI: remove setting macOS 10.9 for SDK and deployment target
#21991: BUG:
stats.sobol_indices
: fix mutation of input parameters#21992: DOC: Unhide
toctree
inscipy.cluster
withmaxdepth
…#21994: BLD: Remove
ld_classic
usage on macOS#21996: ENH:
stats.fisher_exact
: extend toR x C
tables#21998: MAINT, DOC: Use Jupytext’s API, and fix cross-platform usage…
#22002: TST: Run complex zeta avoid underflow tests only on platforms…
#22003: DEV: unified git submodule exclusion for tools
#22009: TST: differentiate.jacobian: tolerance bump for float32