SciPy 1.11.0 Release Notes#
SciPy 1.11.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.11.x branch, and on adding new features on the main branch.
This release requires Python 3.9+ and NumPy 1.21.6 or greater.
For running on PyPy, PyPy3 6.0+ is required.
Highlights of this release#
- Several - scipy.sparsearray API improvements, including sparse.sparray, a new public base class distinct from the older sparse.spmatrix class, proper 64-bit index support, and numerous deprecations paving the way to a modern sparse array experience.
- scipy.statsadded tools for survival analysis, multiple hypothesis testing, sensitivity analysis, and working with censored data.
- A new function was added for quasi-Monte Carlo integration, and linear algebra functions - detand- lunow accept nD-arrays.
- An - axesargument was added broadly to- ndimagefunctions, facilitating analysis of stacked image data.
New features#
scipy.integrate improvements#
- Added - scipy.integrate.qmc_quadfor quasi-Monte Carlo integration.
- For an even number of points, - scipy.integrate.simpsonnow calculates a parabolic segment over the last three points which gives improved accuracy over the previous implementation.
scipy.cluster improvements#
- disjoint_sethas a new method- subset_sizefor providing the size of a particular subset.
scipy.constants improvements#
- The - quetta,- ronna,- ronto, and- quectoSI prefixes were added.
scipy.linalg improvements#
- scipy.linalg.detis improved and now accepts nD-arrays.
- scipy.linalg.luis improved and now accepts nD-arrays. With the new- p_indicesswitch the output permutation argument can be 1D- (n,)permutation index instead of the full- (n, n)array.
scipy.ndimage improvements#
- axesargument was added to- rank_filter,- percentile_filter,- median_filter,- uniform_filter,- minimum_filter,- maximum_filter, and- gaussian_filter, which can be useful for processing stacks of image data.
scipy.optimize improvements#
- scipy.optimize.linprognow passes unrecognized options directly to HiGHS.
- scipy.optimize.root_scalarnow uses Newton’s method to be used without providing- fprimeand the- secantmethod to be used without a second guess.
- scipy.optimize.lsq_linearnow accepts- boundsarguments of type- scipy.optimize.Bounds.
- scipy.optimize.minimize- method='cobyla'now supports simple bound constraints.
- Users can opt into a new callback interface for most methods of - scipy.optimize.minimize: If the provided callback callable accepts a single keyword argument,- intermediate_result,- scipy.optimize.minimizenow passes both the current solution and the optimal value of the objective function to the callback as an instance of- scipy.optimize.OptimizeResult. It also allows the user to terminate optimization by raising a- StopIterationexception from the callback function.- scipy.optimize.minimizewill return normally, and the latest solution information is provided in the result object.
- scipy.optimize.curve_fitnow supports an optional- nan_policyargument.
- scipy.optimize.shgonow has parallelization with the- workersargument, symmetry arguments that can improve performance, class-based design to improve usability, and generally improved performance.
scipy.signal improvements#
- istfthas an improved warning message when the NOLA condition fails.
scipy.sparse improvements#
- A new public base class - scipy.sparse.sparraywas introduced, allowing further extension of the sparse array API (such as the support for 1-dimensional sparse arrays) without breaking backwards compatibility.- isinstance(x, scipy.sparse.sparray)to select the new sparse array classes, while- isinstance(x, scipy.sparse.spmatrix)selects only the old sparse matrix classes.
- Division of sparse arrays by a dense array now returns sparse arrays. 
- scipy.sparse.isspmatrixnow only returns True for the sparse matrices instances.- scipy.sparse.issparsenow has to be used instead to check for instances of sparse arrays or instances of sparse matrices.
- Sparse arrays constructed with int64 indices will no longer automatically downcast to int32. 
- The - argminand- argmaxmethods now return the correct result when explicit zeros are present.
scipy.sparse.linalg improvements#
- dividing - LinearOperatorby a number now returns a- _ScaledLinearOperator
- LinearOperatornow supports right multiplication by arrays
- lobpcgshould be more efficient following removal of an extraneous QR decomposition.
scipy.spatial improvements#
- Usage of new C++ backend for additional distance metrics, the majority of which will see substantial performance improvements, though a few minor regressions are known. These are focused on distances between boolean arrays. 
scipy.special improvements#
- The factorial functions - factorial,- factorial2and- factorialkwere made consistent in their behavior (in terms of dimensionality, errors etc.). Additionally,- factorial2can now handle arrays with- exact=True, and- factorialkcan handle arrays.
scipy.stats improvements#
New Features#
- scipy.stats.sobol_indices, a method to compute Sobol’ sensitivity indices.
- scipy.stats.dunnett, which performs Dunnett’s test of the means of multiple experimental groups against the mean of a control group.
- scipy.stats.ecdffor computing the empirical CDF and complementary CDF (survival function / SF) from uncensored or right-censored data. This function is also useful for survival analysis / Kaplan-Meier estimation.
- scipy.stats.logrankto compare survival functions underlying samples.
- scipy.stats.false_discovery_controlfor adjusting p-values to control the false discovery rate of multiple hypothesis tests using the Benjamini-Hochberg or Benjamini-Yekutieli procedures.
- scipy.stats.CensoredDatato represent censored data. It can be used as input to the- fitmethod of univariate distributions and to the new- ecdffunction.
- Filliben’s goodness of fit test as - method='Filliben'of- scipy.stats.goodness_of_fit.
- scipy.stats.ttest_indhas a new method,- confidence_intervalfor computing a confidence interval of the difference between means.
- scipy.stats.MonteCarloMethod,- scipy.stats.PermutationMethod, and- scipy.stats.BootstrapMethodare new classes to configure resampling and/or Monte Carlo versions of hypothesis tests. They can currently be used with- scipy.stats.pearsonr.
Statistical Distributions#
- Added the von-Mises Fisher distribution as - scipy.stats.vonmises_fisher. This distribution is the most common analogue of the normal distribution on the unit sphere.
- Added the relativistic Breit-Wigner distribution as - scipy.stats.rel_breitwigner. It is used in high energy physics to model resonances.
- Added the Dirichlet multinomial distribution as - scipy.stats.dirichlet_multinomial.
- Improved the speed and precision of several univariate statistical distributions. 
- scipy.stats.beta- entropy
- scipy.stats.betaprime- cdf,- sf,- ppf
- scipy.stats.chi- entropy
- scipy.stats.chi2- entropy
- scipy.stats.dgamma- entropy,- cdf,- sf,- ppf, and- isf
- scipy.stats.dweibull- entropy,- sf, and- isf
- scipy.stats.exponweib- sfand- isf
- scipy.stats.f- entropy
- scipy.stats.foldnorm- cdfand- sf
- scipy.stats.gamma- entropy
- scipy.stats.genexpon- ppf,- isf,- rvs
- scipy.stats.gengamma- entropy
- scipy.stats.geom- entropy
- scipy.stats.genlogistic- entropy,- logcdf,- sf,- ppf, and- isf
- scipy.stats.genhyperbolic- cdfand- sf
- scipy.stats.gibrat- sfand- isf
- scipy.stats.gompertz- entropy,- sf. and- isf
- scipy.stats.halflogistic- sf, and- isf
- scipy.stats.halfcauchy- sfand- isf
- scipy.stats.halfnorm- cdf,- sf, and- isf
- scipy.stats.invgamma- entropy
- scipy.stats.invgauss- entropy
- scipy.stats.johnsonsb- pdf,- cdf,- sf,- ppf, and- isf
- scipy.stats.johnsonsu- pdf,- sf,- isf, and- stats
- scipy.stats.loguniform- entropy,- logpdf,- pdf,- cdf,- ppf, and- stats
- scipy.stats.maxwell- sfand- isf
- scipy.stats.nakagami- entropy
- scipy.stats.powerlognorm- logpdf,- logsf,- sf, and- isf
- scipy.stats.powernorm- sfand- isf
- scipy.stats.t- entropy,- logpdf, and- pdf
- scipy.stats.truncexpon- sf, and- isf
- scipy.stats.truncnorm- entropy
 
- scipy.stats.multivariate_tnow has- cdfand- entropymethods.
- scipy.stats.multivariate_normal,- scipy.stats.matrix_normal, and- scipy.stats.invwishartnow have an- entropymethod.
Other Improvements#
- scipy.stats.monte_carlo_testnow supports multi-sample statistics.
- scipy.stats.bootstrapcan now produce one-sided confidence intervals.
- scipy.stats.rankdataperformance was improved for- method=ordinaland- method=dense.
- scipy.stats.momentnow supports non-central moment calculation.
- scipy.stats.andersonnow supports the- weibull_mindistribution.
- scipy.stats.semand- scipy.stats.iqrnow support- axis,- nan_policy, and masked array input.
Deprecated features#
- Multi-Ellipsis sparse matrix indexing has been deprecated and will be removed in SciPy 1.13. 
- Several methods were deprecated for sparse arrays: - asfptype,- getrow,- getcol,- get_shape,- getmaxprint,- set_shape,- getnnz, and- getformat. Additionally, the- .Aand- .Hattributes were deprecated. Sparse matrix types are not affected.
- The - scipy.linalgfunctions- tri,- triu&- trilare deprecated and will be removed in SciPy 1.13. Users are recommended to use the NumPy versions of these functions with identical names.
- The - scipy.signalfunctions- bspline,- quadratic&- cubicare deprecated and will be removed in SciPy 1.13. Users are recommended to use- scipy.interpolate.BSplineinstead.
- The - evenkeyword of- scipy.integrate.simpsonis deprecated and will be removed in SciPy 1.13.0. Users should leave this as the default as this gives improved accuracy compared to the other methods.
- Using - exact=Truewhen passing integers in a float array to- factorialis deprecated and will be removed in SciPy 1.13.0.
- float128 and object dtypes are deprecated for - scipy.signal.medfiltand- scipy.signal.order_filter
- The functions - scipy.signal.{lsim2, impulse2, step2}had long been deprecated in documentation only. They now raise a DeprecationWarning and will be removed in SciPy 1.13.0.
- Importing window functions directly from scipy.window has been soft deprecated since SciPy 1.1.0. They now raise a - DeprecationWarningand will be removed in SciPy 1.13.0. Users should instead import them from scipy.signal.window or use the convenience function- scipy.signal.get_window.
Backwards incompatible changes#
- The default for the - legacykeyword of- scipy.special.combhas changed from- Trueto- False, as announced since its introduction.
Expired Deprecations#
There is an ongoing effort to follow through on long-standing deprecations. The following previously deprecated features are affected:
- The - nkeyword has been removed from- scipy.stats.moment.
- The - alphakeyword has been removed from scipy.stats.interval.
- The misspelt - gilbratdistribution has been removed (use- scipy.stats.gibrat).
- The deprecated spelling of the - kulsinskidistance metric has been removed (use- scipy.spatial.distance.kulczynski1).
- The - verticeskeyword of scipy.spatial.Delauney.qhull has been removed (use simplices).
- The - residualproperty of- scipy.sparse.csgraph.maximum_flowhas been removed (use- flow).
- The - extradockeyword of- scipy.stats.rv_continuous,- scipy.stats.rv_discreteand scipy.stats.rv_sample has been removed.
- The - sym_poskeyword of- scipy.linalg.solvehas been removed.
- The - scipy.optimize.minimizefunction now raises an error for- x0with- x0.ndim > 1.
- In - scipy.stats.mode, the default value of- keepdimsis now- False, and support for non-numeric input has been removed.
- The function - scipy.signal.lsimdoes not support non-uniform time steps anymore.
Other changes#
- Rewrote the source build docs and restructured the contributor guide. 
- Improved support for cross-compiling with meson build system. 
- MyST-NB notebook infrastructure has been added to our documentation. 
Issues closed for 1.11.0#
- #1766: __fitpack.h work array computations pretty much one big bug…. 
- #1953: use custom warnings instead of print statements (Trac #1428) 
- #3089: brentq, nan returns, and bounds 
- #4257: scipy.optimize.line_search returns None 
- #4532: box constraint in scipy optimize cobyla 
- #5584: Suspected underflow issue with sign check in bisection method 
- #5618: Solution for low accuracy of simps with even number of points 
- #5899: minimize_scalar – strange behaviour 
- #6414: scipy.stats Breit-Wigner distribution 
- #6842: Covariance matrix returned by ODR needs to be scaled by the residual… 
- #7306: any way of stopping optimization? 
- #7799: basinhopping result violates constraints 
- #8176: optimize.minimize should provide a way to return the cost function… 
- #8394: brentq returns solutions outside of the bounds 
- #8485: freqz() output for fifth order butterworth bandpass (low cut… 
- #8922: Bug in Solve_ivp with BDF and Radau solvers and numpy arrays 
- #9061: Will a vectorized fun offer advantages for scipy.integrate.LSODA? 
- #9265: DOC: optimize.minimize: recipe for avoiding redundant work when… 
- #9412: Callback return value erroneously ignored in minimize 
- #9728: DOC: scipy.integrate.solve_ivp 
- #9955: stats.mode nan_policy=’omit’ unexpected behavior when data are… 
- #10050: [Bug] inconsistent canonical format for coo_matrix 
- #10370: SciPy errors out expecting square matrix using for root-finding… 
- #10437: scipy.optimize.dual_annealing always rejects non-improving state 
- #10554: ndimage.gaussian_filter provide axis option 
- #10829: Extend Anderson Darling to cover Weibull distribution 
- #10853: ImportError: cannot import name spatial 
- #11052: optimize.dual_annealing does not pass arguments to jacobian. 
- #11564: LinearOperator objects cannot be applied to sparse matrices 
- #11723: Monte Carlo methods for scipy.integrate 
- #11775: Multi xatol for Nedler-Mead algorithm 
- #11841: Ignore NaN with scipy.optimize.curve_fit 
- #12114: scipy.optimize.shgo(): ‘args’ is incorrectly passed to constraint… 
- #12715: Why the covariance from curve_fit depends so sharply on the overall… 
- #13122: The test suite fails on Python 3.10: issue with factorial() on… 
- #13258: **kwargs for optimize.root_scalar and alike 
- #13407: `if rtol < _rtol / 4` should be changed? 
- #13535: Newton-iteration should not be done after secant interpolation 
- #13547: optimize.shgo: handle objective functions that return the gradient… 
- #13554: The correct root for test APS13 is 0 
- #13757: API for representing censored data 
- #13974: BUG: optimize.shgo: not using options 
- #14059: Bound on absolute tolerance ‘xtol’ in ‘optimize/zeros.py’ is… 
- #14262: cython_blas does not use const in signatures 
- #14414: brentq does converge and not raise an error for np.nan functions 
- #14486: One bug, one mistake and one refactorization proposal for the… 
- #14519: scipy/stats/tests/test_continuous_basic.py::test_cont_basic[500-200-ncf-arg74] test fails with IntegrationWarning 
- #14525: scipy.signal.bspline does not work for integer types 
- #14858: BUG: scipy.optimize.bracket sometimes fails silently 
- #14901: BUG: stats: distribution methods emit unnecessary warnings from… 
- #15089: BUG: scipy.optimize.minimize() does not report lowest energy… 
- #15136: ENH: Bump boost.math version 
- #15177: BUG: element-wise division between sparse matrices and array-likes… 
- #15212: BUG: stange behavior of scipy.integrate.quad for divergent integrals 
- #15514: BUG: optimize.shgo: error with vector constraints 
- #15600: BUG: handle inconsistencies in factorial functions and their… 
- #15613: ENH: Provide functions to compute log-integrals numerically (e.g.,… 
- #15702: MAINT:linalg: Either silent import NumPy versions or deprecate… 
- #15706: DEP: remove deprecated parameters from stats distributions 
- #15755: DEP: absorb lsim2 into lsim 
- #15756: DEP: remove non-numeric array support in stats.mode 
- #15790: BUG: `isspmatrix` doesn’t account for sparse arrays 
- #15808: DEP: raise on >1-dim inputs for optimize.minimize 
- #15814: CI: move Azure jobs to GitHub Actions 
- #15818: DEP: remove extradoc keyword in _distn_infrastructure 
- #15829: DEP: remove sym_pos-keyword of scipy.linalg.solve 
- #15852: DOC: helper function to seed examples 
- #15906: Missing degree of freedom parameter in return value from `stats.ttest_ind` 
- #15985: ENH, DOC: Add section explaining why and when to use a custom… 
- #15988: DEP: remove deprecated gilbrat distribution 
- #16014: DEP: remove MaximumFlowResult.residual 
- #16068: BUG: Missing Constant in Documentation 
- #16079: BUG: hypergeom.cdf slower in 1.8.0 than 1.7.3 
- #16196: BUG: OptimizeResult from optimize.minimize_scalar changes ‘x’… 
- #16269: DEP: remove `maxiter` kwarg in `_minimize_tnc` 
- #16270: DEP: remove `vertices` kwarg in qhull 
- #16271: DEP: remove `scipy.spatial.distance.kulsinski` 
- #16312: Meson complains about an absolute include path 
- #16322: DOC: building on Windows uses GCC with Meson, not MSVC 
- #16595: BUG: stats.mode emits annoying RuntimeWarning about nans even… 
- #16734: BUG: function p1evl in povevl.h not making what’s described 
- #16803: Update `scipy/__config__.py` to contain useful information 
- #16810: ENH: implement Dirichlet-multinomial distribution 
- #16917: BUG: Windows Built SciPy can’t import _fblas via pip install… 
- #16929: BUG: `scipy.sparse.csc_matrix.argmin` returns wrong values 
- #16949: Test failures for `gges` and `qz` for float32 input in macOS… 
- #16971: BUG: [issue in scipy.optimize.shgo, for COBYLA’s minimizer_kwargs… 
- #16998: Unpickled and deepcopied distributions do not use global random… 
- #17024: ENH: Force real part of Rotation.as_quat() to be positive. 
- #17107: BUG: The signature of cKDTree.query_pairs in the docs does not… 
- #17137: BUG: optimize: Intermittent failure of `test_milp_timeout_16545` 
- #17146: BUG: Scipy stats probability greater than 1 
- #17214: BUG: scipy.stats.mode: inconsistent shape with `axis=None`… 
- #17234: BUG: cythonization / compliation failure with development branch… 
- #17250: ENH: Expose parallel HiGHS solvers in high-level API 
- #17281: BUG: using LinearOperator as RHS operand of @ causes a NumPy… 
- #17285: ENH: Expose DisjointSet._sizes 
- #17312: ENH: Clarify that ndimage.find_objects returns slices ordered… 
- #17335: ENH: change term zero to root in newton 
- #17368: BUG: import scipy.stats fails under valgrind 
- #17378: griddata linear / LinearNDInterpolator unexpected behavior 
- #17381: BUG: FutureWarning in distance_transform_cdt 
- #17388: BUG: stats.binom: Boost binomial distribution edge case bug? 
- #17403: DOC: There is no general `scipy.sparse` page in the user guide 
- #17431: ENH: ECDF in scipy. 
- #17456: ENH: custom stopping criteria with auxiliary function 
- #17516: BUG: Error in documentation for scipy.optimize.minimize 
- #17532: DOC: side bar renders over the top of some of the text in the… 
- #17548: CI: The Ubuntu 18.04 Actions runner image is deprecated 
- #17570: ENH: optimize.root_scalar: default to `newton` when only `x0`… 
- #17576: ENH: override fit method for von mises 
- #17593: BUG: cannot import name ‘permutation_test’ from ‘scipy.stats’ 
- #17604: DOC: optimize.curve_fit: documentation of `fvec` is not specific 
- #17620: ENH: Cachable normalisation parameter for frozen distributions 
- #17631: BUG: numerical issues for cdf/ppf of the betaprime distribution 
- #17639: BUG: “xl” not returned if success = False for scipy.optimize.shgo 
- #17652: Check for non-running tests because of test function name and… 
- #17667: BUG: Wrong p-values with Wilcoxon signed-rank test because of… 
- #17683: TST: stats: Several functions with no tests in `stats.mstats` 
- #17713: BUG: `_axis_nan_policy` changes some common `TypeError`s 
- #17725: BUG: spatial: Bad error message from `hamming` when `w` has… 
- #17749: ENH: Compute non centraled moments with `stats.moment`? 
- #17754: Cosine distance of vector to self returns small non-zero answer… 
- #17776: BUG: dblquad and args kwarg 
- #17788: ENH: Scipy Optimize, equal Bounds should be directly passed to… 
- #17805: BUG: stats: dgamma.sf and dgamma.cdf lose precision in the tails 
- #17809: BUG: CDF and PMF of binomial function not same with extreme values 
- #17815: DOC: improve documentation for distance_transform_{cdt,edt} 
- #17819: BUG: `stats.ttest_ind_from_stats` doesn’t check whether standard… 
- #17828: DOC: UnivariateSpline does not have any documentation or a reference. 
- #17845: BUG: 1.10.0 FIR Decimation is broken when supplying ftype as… 
- #17846: BUG: Infinite loop in scipy.integrate.solve_ivp() 
- #17860: DOC: Incorrect link to ARPACK 
- #17866: DOC: Should `Result Classes` be its own top level section? 
- #17911: DOC: Formula of Tustin formula in scipy.signal.bilinear misses… 
- #17913: Unexpected behaviour of pearsonr pvalue for one sided tests 
- #17916: BUG: scipy 1.10.0 crashes when using a large float in skellam… 
- #17941: DOC: guidance on setting dev.py build -j flag in documentation,… 
- #17954: BUG: failure in lobpcg 
- #17970: BUG: ILP64 build issue on Python 3.11 
- #17985: DOC: update wheel generation process 
- #17992: BUG: matlab files with deeply lists of arrays with different… 
- #17999: DOC: incorrect example for stats.cramervonmises 
- #18026: BUG: stats: Error from e.g. `stats.betabinom.stats(10, 2, 3,… 
- #18067: ENH: stats: resampling/Monte Carlo configuration object 
- #18069: ENH: stats.ttest_ind is inconsistent with R. It does not allow… 
- #18071: BUG: rv_continuous.stats fails to converge when trying to estimate… 
- #18074: BUG: wrong dependencies for pooch 
- #18078: BUG: `QMCEngine.reset()` semantics and passed `Generator`… 
- #18079: BUG: `Halton(seed=rng)` does not consume `Generator` PRNG… 
- #18106: BUG: Linprog reports failure despite success convergence, given… 
- #18115: BUG: ValueError: setting an array element with a sequence for… 
- #18117: BUG: stats: large errors in genhyperbolic.cdf and .sf for large… 
- #18119: DOC: The comment about `fmin_powell` is wrong 
- #18123: BUG: [mmread] Error while reading mtx file with spaces before… 
- #18132: BUG: invalid output and behavior of scipy.stats.somersd 
- #18139: BUG: Overflow in ‘new’ implementation of scipy.stats.kendalltau 
- #18143: Building from source on Windows 32-bit Python did not succeed 
- #18171: BUG: optimize.root_scalar: should return normally with `converged=False`… 
- #18223: BUG: cKDTree segmentation faults when NaN input and balanced_tree=False,… 
- #18226: ENH: stats.geometric.entropy: implement analytical formula 
- #18239: DOC: linking to custom BLAS/LAPACK locations is not clear 
- #18254: BUG: stats.mode: failure with array of Pandas integers 
- #18271: Broken or wrong formulas on distance definition 
- #18272: BUG: stats: occasional failure of `test_multivariate.TestOrthoGroup.test_det_and_ortho` 
- #18274: BUG: stats: Spurious warnings from `betaprime.fit` 
- #18282: Incompatible pointer warning from `stats._rcond` 
- #18302: BUG: beta.pdf is broken on main (1.11.0.dev0) 
- #18322: BUG: scipy.stats.shapiro gives a negative pvalue 
- #18326: ENH: milp supporting sparse inputs 
- #18329: BUG: meson generates `warning: “MS_WIN64” redefined` when building… 
- #18368: DOC: Issue in scipy.stats.chisquare 
- #18377: BUG: `const` signature changes in `cython_blas` and `cython_lapack`… 
- #18388: Question about usage of _MACHEPS 
- #18407: CI: test_enzo_example_c_with_unboundedness started failing 
- #18415: BUG: Windows compilation error with Intel Fortran in PROPACK 
- #18425: DOC: clarify that scipy.ndimage.sobel does not compute the 2D… 
- #18443: BLD: errors when building SciPy on Windows with Meson 
- #18456: ENH: Allow passing non-varying arguments for the model function… 
- #18484: DEP: Warn on deprecated windows-import in base `scipy.signal`… 
- #18485: DEP: deprecate multiple-ellipsis handling in sparse matrix indexing 
- #18494: CI: occasional failure of `test_minimum_spanning_tree` 
- #18497: MAINT, BUG: guard against non-finite kd-tree queries 
- #18498: TST: interpolate overflow xslow tests (low priority) 
- #18525: DOC: sparse doc build warning causing failure (including in CI) 
- #18535: DOC: Dev branch docs render Dev TOC while viewing API Reference 
- #18547: CI: occasionally failing test `test_minimize_callback_copies_array[fmin]` 
- #18595: BUG: dev.py notes needs a small shim 
- #18597: CI, BUG: Cirrus wheel upload fails on maintenance branch 
- #18600: BUG: SciPy 1.11.0rc1 not buildable on PPC due to boost submodule 
- #18632: 1.11.0rc1: remaining test failures in conda-forge 
- #18634: BUG: stats.truncnorm.moments yields error for moment order greater… 
- #18654: BUG: ci/circleci: build_scipy broken 
- #18675: BUG: `signal.detrend` on main no longer accepts a sequence… 
- #18732: TST, MAINT: some tests blocking 1.11.0 on MacOS ARM64 with NumPy… 
Pull requests for 1.11.0#
- #8727: BUG: vq.kmeans() compares signed diff to a threshold. 
- #12787: ENH: add anderson darling test for weibull #10829 
- #13699: ENH: stats: Add handling of censored data to univariate cont…. 
- #14069: Use warnings instead of print statements 
- #15073: TST/MAINT: Parametrize `_METRICS_NAMES` & replace `assert_raises`… 
- #15841: Overhaul `factorial{,2,k}`: API coherence, bug fixes & consistent… 
- #15873: DEP: remove sym_pos argument from linalg.solve 
- #15877: DEP: remove extradoc in _distn_infrastructure 
- #15929: DEP: `lsim2` deprecated in favor of `lsim` 
- #15958: CI: move `prerelease_deps_coverage_64bit_blas` to GitHub actions. 
- #16071: ENH: Add missing “characteristic impedance of vacuum” 
- #16313: MAINT: Update optimize.shgo 
- #16782: ENH: stats: optimised fit for the truncated Pareto distribution 
- #16839: ENH: stats: optimised MLE for the lognormal distribution 
- #16936: BUG: sparse: fix argmin/argmax when all entries are nonzero 
- #16961: ENH: optimize: Add `nan_policy` optional argument for `curve_fit`. 
- #16996: ENH: stats.anderson_ksamp: add permutation version of test 
- #17116: MAINT: Adjust Pull-Request labeler configuration 
- #17208: DOC: Add triage guide 
- #17211: ENH: Implemented Dirichlet-multinomial distribution (#16810) 
- #17212: Guard against integer overflows in fitpackmodule.c 
- #17235: MAINT: pass check_finite to the vq() call of kmeans2() 
- #17267: DOC/MAINT: special: Several updates for tklmbda 
- #17268: DOC: special: Show that lambertw can solve x = a + b*exp(c*x) 
- #17287: DOC: Clarify minimum_spanning_tree behavior in non-connected… 
- #17310: DOC: missing-bits: document recommendations on return object… 
- #17322: DOC: Add notebook infrastructure for the docs 
- #17326: ENH: Clarify the index of element corresponding to a label in… 
- #17334: ENH: Map the rotation quaternion double cover of rotation space… 
- #17402: ENH: stats: add false discovery rate control function 
- #17410: ENH: stats.multivariate_t: add cdf method 
- #17432: BLD: Boost.Math standalone submodule 
- #17451: DEP: Remove `vertices` in qhull. 
- #17455: Deprecate scipy.signal.{bspline, quadratic, cubic} 
- #17479: ENH: Add new SI prefixes 
- #17480: ENH: stats: Implement _sf and _isf for halfnorm, gibrat, gompertz. 
- #17483: MAINT: optimize.basinhopping: fix acceptance of failed local… 
- #17486: ENH: optimize.minimize: callback enhancements 
- #17499: MAINT: remove use of `NPY_UPDATEIFCOPY` 
- #17505: ENH: Add relativistic Breit-Wigner Distribution 
- #17529: ENH: stats: Implement powerlaw._sf 
- #17531: TST: scipy.signal.order_filter: add test coverage 
- #17535: MAINT: special: Improve comments about Cephes p1evl function. 
- #17538: ENH: Extending _distance_pybind with additional distance metrics… 
- #17541: REL: set version to 1.11.0.dev0 
- #17553: DOC: optimize.curve_fit: add note about `pcov` condition number 
- #17555: DEP: stats: removal of kwargs n in stats.moment and alpha in… 
- #17556: DEV: bump flake8 version used in CI job 
- #17557: MAINT: bump Ubuntu version in Azure CI 
- #17561: MAINT: stats.mode: remove deprecated features, smooth edges 
- #17562: ENH: stats: Implement _ppf for the betaprime distribution. 
- #17563: DEP: stats: remove misspelt gilbrat distribution 
- #17566: DOC: correct, update, and extend `lobpcg` docstring info and… 
- #17567: MAINT: Update gitpod setup 
- #17573: DOC: Update testing documentation to dev.py 
- #17574: MAINT: clean up `NPY_OLD` usage in Cython code and build files 
- #17581: DOC fix trivial typo in description of loggamma in _add_newdocs.py 
- #17585: ENH: Von Mises distribution fit 
- #17587: BUG: stats: Avoid overflow/underflow issues in loggamma _cdf,… 
- #17589: BUG: FutureWarning in distance_transform_cdt 
- #17590: DEP: raise on >1-dim inputs for optimize.minimize 
- #17595: DOC: optimize.line_search: note that `pk` must be a descent… 
- #17597: DOC: Add Legacy directive 
- #17603: DEP: remove spatial.distance.kulsinski 
- #17605: DOC: example of epidemic model with LHS 
- #17608: DOC: curve_fit - clarify fvec output 
- #17610: DOC: add example to chi2_contingency 
- #17613: DOC: curve_fit, include sigma 
- #17615: MAINT: scipy.optimize.root: fix error when both args and jac… 
- #17616: MAINT: optimize.minimize: enhance `callback` for remaining… 
- #17617: DEP: remove MaximumFlowResult.residual 
- #17618: DOC: fix unicode in qmc example 
- #17622: MAINT: optimize.root_scalar: raise when NaN is encountered 
- #17624: ENH: add von Mises-Fisher distribution 
- #17625: DOC: Examples for special functions related to the student t… 
- #17626: DOC: improve docstrings of exp. scaled Bessel functions 
- #17628: ENH: add Sobol’ indices 
- #17629: DOC: stats: example treatment odd_ratio 
- #17637: DEP: switch default of special.comb to legacy=False 
- #17643: TST: interpolate/rgi: Add tests for descending ordered points 
- #17649: fix documentation lines 
- #17651: Update _svds.py removing no longer necessary QR for LOBPCG output 
- #17654: MAINT:interpolate:Add .c file to .gitignore 
- #17655: DEV: add check for misnamed tests 
- #17657: DEV: streamline OpenBLAS handling on Win machine 
- #17660: MAINT: optimize.newton: converged=False when secant has zero… 
- #17663: DOC: optimize.curve_fit: example output may vary 
- #17664: MAINT: optimize.root_scalar: fix underflow sign check bug 
- #17665: DOC: mention inaccuracy of curve_fit result `pcov` 
- #17666: DOC: optimize.root_scalar: harmonize documentation and implementation… 
- #17668: ENH: stats.loguniform: reformulate methods to avoid overflow 
- #17669: MAINT: optimize.newton: avoid error with complex `x0` 
- #17674: DOC: optimize: add tutorial example of passing kwargs to callable 
- #17675: ENH: update lobpcg.py 
- #17676: BUG: correctly handle array-like types in scipy.io.savemat 
- #17678: DOC: optimize: show how memoization avoids duplicating work 
- #17679: ENH: optimize.minimize: add bound constraints to COBYLA 
- #17680: DOC: examples for special functions related to neg. binomial… 
- #17682: DOC: add real example for `stats.chisquare` 
- #17684: ENH: support `Bounds` class in lsq_linear 
- #17685: ENH: stats: Implement _sf for the foldnorm distribution. 
- #17687: MAINT: optimize.toms748: correct “rtol too small” message 
- #17688: MAINT: optimize.curve_fit: memoize `f` and `jac` 
- #17691: ENH: optimize.root_scalar: allow newton without f’, secant without… 
- #17692: MAINT: optimize.minimize_scalar: enforce output shape consistency 
- #17693: DOC: pointbiserialr correlation formula notation fix. 
- #17694: ENH: stats: Implement _sf and _isf for halfcauchy; _sf for foldcauchy 
- #17698: MAINT: implicit float conversion in rgi test 
- #17700: ENH: Inverse wishart entropy 
- #17701: DOC: stats: Fix a reference for the genexpon distribution. 
- #17702: DOC: stats: complete references and links for descriptive stats 
- #17704: MAINT: optimize.bracket: don’t fail silently 
- #17705: DOC: optimize.minimize_scalar and friends: correct documentation… 
- #17707: DOC: add acetazolamide example to `stats.fisher_exact` 
- #17708: ENH: stats: Implement _ppf and _isf for genexpon. 
- #17709: MAINT: update copyright date 
- #17711: MAINT: forward port 1.10.0 relnotes 
- #17714: ENH: Provide public API for fast DisjointSet subset size. 
- #17724: DOC: spatial: Several updates: 
- #17729: STY: fix unicode error 
- #17730: MAINT: rotate CircleCI ssh key 
- #17732: MAINT: optimize.toms748: don’t do newton after secant interpolation 
- #17742: ENH: override _entropy for beta, chi and chi2 distributions 
- #17747: DOC: stats.jarque_bera: add semi-realistic example 
- #17750: ENH: Support multinomial distributions with n=0 trials. 
- #17758: ENH: analytical formula for f distribution entropy 
- #17759: DOC: stats.skewtest: add semi-realistic example 
- #17762: DOC: remove space between directive name and double colon - ::
- #17763: DOC: single -> double colon for directive. 
- #17764: ENH: entropy for matrix normal distribution 
- #17765: DOC: stats: additional normality test examples 
- #17767: DOC: stats: reorganize hypothesis tests in main page 
- #17768: TST: special: fix incorrectly named tests 
- #17769: DOC/BUG: add missing entropy methods in docstrings 
- #17770: TST: stats: fixed misnamed tests 
- #17772: MAINT: remove unused test utility functions 
- #17773: DOC: stats: add realistic examples to correlation tests 
- #17778: DOC: stats: add realistic examples to variance tests 
- #17780: MAINT: optimize.minimize: fix new callback interface when parameter… 
- #17784: DOC: linalg: fix docstring of `linalg.sqrtm` 
- #17786: DOC: examples for ndtr, ndtri 
- #17791: DEP: remove maxiter kwarg in _minimize_tnc 
- #17793: MAINT: remove divide by zero in differential_evolution 
- #17794: TST: Added test suite for dgamma distribution 
- #17812: MAINT: add (optional) pre-commit hook 
- #17813: MAINT: integrate.qmc_quad: re-introduce qmc_quad 
- #17816: MAINT: allow typed method in `stats.sobol_indices` 
- #17817: MAINT: remove unused args parameter from `qmc_quad` 
- #17818: BUG/ENH: stats: several updates for dgamma. 
- #17820: DOC/BUG: plot `ndtri` only where it is defined 
- #17824: ENH: analytical entropy for invgauss distribution 
- #17825: DOC: optimize: change term zero to root 
- #17829: DOC: stats: document RNG behavior when distribution is deepcopied 
- #17830: MAINT: stats._axis_nan_policy: raise appropriate TypeErrors 
- #17834: MAINT: improve accuracy of betaprime cdf in scipy.stats 
- #17835: DOC: integrate: document limitation of numerical integration 
- #17836: DOC: integrate.solve_ivp: clarify impact of parameter `vectorized` 
- #17837: DEP: integrate.nquad: deprecate parameter `full_output` 
- #17838: DOC: integrate.quad: behavior is not guaranteed for divergent… 
- #17841: DOC: linalg: expand pinv example 
- #17842: DOC, MAINT: Add issue template for Documentation issues 
- #17848: ENH: implement _sf and _isf for powernorm distribution 
- #17849: ENH: special: Add the function _scaled_exp1 
- #17852: MAINT: optimize: improve `optimize.curve_fit` doc and error… 
- #17853: DOC: integrate.dblquad/tplquad: update result descriptions 
- #17857: MAINT: analytical formula for genlogistic entropy 
- #17865: MAINT: stats: fix recent CI and other issues 
- #17867: DOC: note on negative variables for linprog 
- #17868: ENH: add analytical formula for Nakagami distribution entropy 
- #17873: ENH: Added analytical formula for dgamma distribution entropy… 
- #17874: ENH: Added analytical formula for truncnorm entropy (#17748) 
- #17876: DOC: remove hidden stats sections from sidebar/toctree 
- #17878: Lint everything 
- #17879: DOC: add docs for the main namespace 
- #17881: BUG: Fix handling on user-supplied filters in `signal.decimate` 
- #17882: BLD: fix Meson build warnings about multiple targets 
- #17883: DOC: Clarified the meaning of optional arguments in optimize.leastsq 
- #17886: ENH: Warn about missing boundary when NOLA condition failed in… 
- #17889: DOC: Cleanup development guide 
- #17892: MAINT: stats: Post-“lint everything” clean up in stats. 
- #17894: MAINT: update .gitignore with meson and linter 
- #17895: DOC: config info in issue template 
- #17897: MAINT: Update the “lint everything” SHA in .git-blame-ignore-revs 
- #17898: DOC: remove hidden submodules from sidebar 
- #17899: MAINT: use conda for linters 
- #17900: Re-implement pre-commit hook in Python 
- #17906: DOC: interpolate: add a note against using triangulation based… 
- #17907: DOC: stats.wilcoxon: warn about roundoff errors in x-y 
- #17908: ENH: powerlognormal distribution improvements 
- #17909: ENH: improve accuracy of betaprime ppf in scipy.stats 
- #17915: DOC: Add warning to butter function docstring 
- #17921: CI: clean conda index upon cache invalidation 
- #17922: DOC: corrected doc of bilinear discretization of lti 
- #17929: ENH: stats.nakagami.entropy: improve formulation 
- #17930: ENH: use asymptotic expansions for entropy of `genlogistic`… 
- #17937: DOC: Update pip + venv instructions in the contributor documentation… 
- #17939: DOC: ttest_ind_from_stats: discuss negative stdev 
- #17943: ENH: early exit random-cd optimization in 1D 
- #17944: pre-commit should fail when fixes are made by Ruff 
- #17945: DOC: remove seed in HTML only 
- #17946: ENH: Maxwell distribution `sf`/`isf` override 
- #17947: TST: Update list of modules for import cycle checks 
- #17948: STY: fix only staged files. 
- #17949: ENH: stats.dirichlet_multinomial: vectorize implementation 
- #17950: MAINT: bump OpenBLAS version, bump macOS image used in GHA 
- #17956: MAINT: optimize.dual_annealing: fix callable jac with args 
- #17959: MAINT: update supported versions of Python and NumPy to follow… 
- #17961: ENH: optimize.linprog: pass unrecognized options to HiGHS verbatim 
- #17964: DEP: integrate.quad_vec: deprecate parameter full_output 
- #17967: MAINT: Fully qualify std::move invocations to fix clang -Wunqualified-std-cast-call 
- #17971: ENH: stats: add axis tuple and nan_policy to `sem` and `iqr` 
- #17975: BUG: Update test_lobpcg.py 
- #17976: DOC/MAINT: simplify release entries 
- #17980: FIX: CI: avoid passing Cython files to ruff 
- #17982: MAINT: add release entries move to blame ignore 
- #17987: DOC: move .rst.txt to source and cleaning around generating doc 
- #17989: MAINT: sparse.linalg: remove unused __main__ code 
- #17990: BLD: make musllinux wheels for nightly 
- #17998: ENH: optimize.RootResults: make `RootResults` an `OptimizeResult` 
- #18000: DOC: stats, interpolate: Fix some minor docstring issues. 
- #18002: ENH: override halflogistic `sf` and `isf` 
- #18003: ENH: improve halfnorm CDF precision 
- #18006: BLD: use a relative path to numpy include and library directories 
- #18008: MAINT: forward port 1.10.1 relnotes 
- #18013: MAINT: stats.vonmises.fit: maintain backward compatibility 
- #18015: TST: optimize.root_scalar: refactor tests and add Chandrupatla… 
- #18016: Add axes argument to ndimage filters 
- #18018: DOC: Add an example showing how to plot Rotations to the docs 
- #18019: add tests for `trimmed_var` and `trimmed_std` in `stats.mstats` 
- #18020: TST: stats.mstats: add `median_cihs`/`sen_seasonal_slopes`… 
- #18021: DEP: linalg: deprecate tri{,u,l} 
- #18022: DOC: interpolate: link to the gist with the porting guide 
- #18023: DOC: how to document examples using RNG and also self-contained… 
- #18027: DOC: fix section title typo in interpolation tutorial 
- #18028: DOC: fix underlying of title in extrapolate 
- #18029: fix error from betabinom stats using only integers for a and… 
- #18032: BLD: add NDEBUG flag for release builds 
- #18034: BLD: avoid running `run_command(py3, …)`, for better cross-compiling 
- #18035: ENH: stats: add ecdf function 
- #18036: BLD: build Windows wheel for py39 against numpy 1.22.3 
- #18037: DOC/MAINT: fix source button 
- #18040: DOC: Fix error in doc of _minimize_trustregion_exact 
- #18043: MAINT: update GH bug template 
- #18045: MAINT: update codeowners. 
- #18047: DOC: Update scipy.spatial.distance.pdist docstring to match its… 
- #18049: STY: Include Python.h before any other headers. 
- #18050: MAINT: integrate.qmc_quad: correct behavior of parameter `log` 
- #18052: BLD: use anaconda-client to upload wheels 
- #18053: DOC fix expectile docstring - empirical CDF 
- #18058: BLD: use meson-native dependency lookup for pybind11 
- #18059: Johnson distributions `sf` and `isf` override 
- #18060: MAINT: remove pavement 
- #18061: ENH: implement array @ LinearOperator 
- #18063: DOC: improve documentation for distance_transform_{cdt,edt} 
- #18064: DOC: add examples in for xlogy 
- #18066: TST: stats.nct: add test for crash with large nc 
- #18068: TST: stats.ksone: loosen variance test tolerance 
- #18070: Docstring: note on bivariate spline axis ordering 
- #18072: DOC: Modifying t parameter documentation issue in splprep #17893 
- #18073: MAINT: avoid non-recommended numpy functions and constants 
- #18075: MAINT: update pooch deps 
- #18076: DOC: fix docstring typo for `kurtosis` and whitespace in `_continuous_distns` 
- #18077: BUG: Check for initial state finiteness 
- #18081: ENH: allow single observation for equal variance in `stats.ttest_ind` 
- #18082: DOC: add examples for xlog1py 
- #18083: STY: fix mypy assignment. 
- #18084: BUG: calculate VDC permutations at init of Halton 
- #18092: ENH: stats.ecdf: support right-censored data 
- #18094: ENH: improve entropy calculation of chi distribution using asymptotic… 
- #18095: ENH: asymptotic expansion for gamma distribution entropy 
- #18096: MAINT: stats.johnsonsu: override _stats 
- #18098: ENH: increase available range of Gompertz entropy using scaled_exp1 
- #18101: DOC: adding references to the UnivariateSpline docstring #17828 
- #18102: ENH: stats.goodness_of_fit: add Filliben’s test 
- #18104: BUG: enable matlab nested arrs 
- #18107: ENH: add Dunnett’s test 
- #18112: FIX: reset semantic in `QMCEngine.reset` 
- #18120: Correct the comments about ` fmin_powell` in `scipy/optimize` 
- #18122: ENH: Added asymptotic expansion for invgamma entropy (#18093) 
- #18127: MAINT: cleanup inconsistencies in _continous_dists 
- #18128: MAINT: add test against generic fit method for vonmises distribution 
- #18129: TST: stats.rv_continuous.fit: use `nnlf` instead of `_reduce_func`… 
- #18130: Some doc updates and small code tweaks. 
- #18131: ENH: Added asymptotic expansion for gengamma entropy 
- #18134: ENH: stats: Improve _cdf and implement _sf for genhyperbolic 
- #18135: Added asymptotic expansion for t entropy (#18093) 
- #18136: ENH: stats.ecdf: add `confidence_interval` methods 
- #18137: Bugfix for somersd where an integer overflow could occur 
- #18138: ENH: improve precision of genlogistic methods 
- #18144: DOC: Add doc examples for friedmanchisquare 
- #18145: BLD: emit a warning when building from source on 32-bit Windows 
- #18149: TST: fix issue with inaccurate `cython_blas` tests 
- #18150: ENH: add CI and str to Dunnett’s test 
- #18152: ENH: stats.moment: enable non-central moment calculation 
- #18157: CI: fix pre-release job that is failing on Cython 3.0b1 
- #18158: DOC:stats: Fix levy and levy_l descriptions 
- #18160: BUG: Wrong status returned by _check_result. See #18106. optimize 
- #18162: ENH: Dweibull entropy 
- #18168: TST: spatial: skip failing test to make CI green again 
- #18172: MAINT: optimize.root_scalar: return gracefully when callable… 
- #18173: DOC: update links for ARPACK to point to ARPACK-NG 
- #18174: DOC: cite pip issue about multiple `–config-settings` 
- #18178: ENH: Added `_sf` method for anglit distribution (#17832) 
- #18181: DOC: wheel build infra updates 
- #18187: MAINT: stats.ecdf: store number at risk just before events 
- #18188: BUG: interpolate: add x-y length validation for `make_smoothing_spline`. 
- #18189: DOC: Fix for side bar rendering on top of text issue 
- #18190: ENH: fix vonmises fit for bad guess of location parameter 
- #18193: MAINT: stats.kendalltau: avoid overflow 
- #18195: MAINT: interpolate: remove duplicated FITPACK interface _fitpack._spl_. 
- #18196: ENH: add Log rank for survival analysis 
- #18199: BUG: throw ValueError for mismatched w dimensions and test for… 
- #18200: TST: stats: Move genexpon from xslow to slow fit test sets. 
- #18204: MAINT/TST: fix `Slerp` typing and better iv in `Rotation` 
- #18207: ENH: improve precision of folded normal distribution cdf 
- #18209: ENH: improve integrate.simpson for even number of points 
- #18210: ENH: stats.ttest_ind: add degrees of freedom and confidence interval 
- #18212: ENH: stats.ecdf: add `evaluate` and `plot` methods; restructure… 
- #18215: DOC: stats: describe attributes of `DunnettResult` 
- #18216: MAINT: replace use of make_dataclass with explicit dataclasses 
- #18217: MAINT: stats: consistently return NumPy numbers 
- #18221: DOC: add guidance on how to make a dataclass for result objects 
- #18222: MAINT: stats.TTestResult: fix NaN bug in ttest confidence intervals 
- #18225: ENH:MAINT:linalg det in Cython and with nDarray support 
- #18227: ENH: stats: resampling methods configuration classes and example… 
- #18228: ENH: stats.geometric.entropy: implement analytical formula 
- #18229: ENH: stats.bootstrap: add one-sided confidence intervals 
- #18230: BUG: nan segfault in KDTree, reject non-finite input 
- #18231: ENH: stats.monte_carlo_test: add support for multi-sample statistics 
- #18232: ENH: override dweibull distribution survival and inverse survival… 
- #18237: MAINT: update typing of Rotation 
- #18238: MAINT:optimize: shgo assorted fixes 
- #18240: fix typo 
- #18241: MAINT: remove Gitpod in favour of GitHub CodeSpaces 
- #18242: MAINT: Allow scipy to be compiled in cython3 
- #18243: TST: stats.dunnett: fix seed in test_shapes 
- #18245: DOC: remove content related to `setup.py` usage from the docs 
- #18246: ci: touch up wheel build action 
- #18247: BLD: Add const to Cython signatures for BLAS/LAPACK 
- #18248: BLD: implement version check for minimum Cython version 
- #18251: DOC: orthogonal_procrustes fix date of reference paper and DOI 
- #18257: BLD: fix missing build dependency on cython signature .txt files 
- #18258: DOC: fix link in release notes v1.7 
- #18261: Add axes support to uniform_filter, minimum_filter, maximum_filter 
- #18263: BUG: some tweaks to PROPACK f2py wrapper and build flags 
- #18264: MAINT: remove `from numpy.math cimport` usages, update `npy_blas.h` 
- #18266: MAINT: Explicitly mark `cdef` functions not raising exception… 
- #18269: ENH: stats: Implement _sf and _isf for exponweib. 
- #18270: CI: test meson-python from its main branch in one CI job 
- #18275: TST: stats: infrastructure for generation of distribution function… 
- #18276: MAINT: stats.betaprime: avoid spurious warnings in `fit`, `stats` 
- #18280: DOC: spatial.distance: update formula for {s,sq}euclidean 
- #18281: BLD: Enable incompatible pointer types warnings 
- #18284: DOC: improved gmres doc on preconditioning (scipy.sparse.linalg) 
- #18285: MAINT: Remove codecov 
- #18287: DOC: `distance_transform_bf` example 
- #18288: TST: stats.ortho_group: improve determinant distribution test 
- #18289: MAINT: mmread allow leading whitespace 
- #18290: DEP: stats.mode: raise with non-numeric input 
- #18291: TST: stats._axis_nan_policy: add test that decorated function… 
- #18292: CI: add CircleCI API token to fix html preview link 
- #18293: BUG: fix for incompatible pointer warning from stats._rcond #18282 
- #18294: CI: remove `setup.py` based jobs from GitHub Actions and run… 
- #18297: MAINT: linalg.solve_discrete_are: fix typo in error message 
- #18299: DOC: interpolate: add see also references for data on regular… 
- #18301: CI: remove `runtests.py` and related scripts/files 
- #18303: DOC: css adjustment in dark mode and hidden toctree in dev section 
- #18304: MAINT: update boost_math 
- #18305: ENH: ndimage: add axes argument to rank_filter, percentile_filter,… 
- #18307: DOC: add cdf under methods for multivariate t distribution 
- #18311: CI: move lint job from Azure to GHA 
- #18312: CI: move gcc-8 test to GHA 
- #18313: CI: remove asv from AzureCI 
- #18314: CI: remove scikit-umfpack/sparse from Azure testing 
- #18315: CI: remove coverage jobs 
- #18318: MAINT: Mark function pointer ctypedefs as noexcept 
- #18320: CI: migrate ref guide-check to CircleCI 
- #18321: Revert “ENH: stats.anderson_ksamp: add permutation version of… 
- #18323: ENH: increase available range of vonmises `fit` 
- #18324: ENH: add `entropy` method for multivariate t distribution 
- #18325: CI: move Azure cp39/full/win job to GHA 
- #18327: MAINT: optimize.milp: improve behavior for unexpected sparse… 
- #18328: MAINT: stats.shapiro: override p-value when len(x)==3 
- #18330: BLD: avoid build warnings on Windows, bump pybind11 and meson… 
- #18332: TST: fix minor tolerance issue for `stats.multivariate_t` test 
- #18333: CI: windows cp311 use-pythran=false full, sdist GHA 
- #18337: MAINT: update boost_math 
- #18339: TST: optimize: fix test_milp_timeout 
- #18340: DOC: interpolate: declare Rbf legacy 
- #18341: DEP: signal: deprecate using medfilt and order_filter with float128… 
- #18342: TST: stats.mstats.median_cihs: strengthen test 
- #18343: MAINT: use math.prod (python >= 3.8) 
- #18344: MAINT: Set cython compiler directive cpow to True 
- #18345: DEV: work around pathlib bug affecting dev.py for Python 3.9… 
- #18349: MAINT: stats.dgamma.entropy: avoid deprecated NumPy usage and… 
- #18350: TST: use np not math for functions to avoid conversion of ndim>0… 
- #18351: CI: remove Azure sdist job 
- #18352: MAINT: stats: more avoidance of deprecated NumPy usage 
- #18353: Migrate ruff.toml configuration to lint.toml 
- #18355: ENH: allow dividing LinearOperator by number 
- #18357: MAINT: clearer error in `LinearOperator * spmatrix` 
- #18358: ENH:MAINT:linalg:lu Cythonized and ndarray support added 
- #18359: MAINT: Fix broken link in setup.py 
- #18360: DOC: improve neg. binomial function examples in `special` 
- #18362: MAINT: Add noexcept function declaration to `_cythonized_array_utils.pxd` 
- #18369: CI: bdist_wheel windows job Azure –> GHA 
- #18370: DOC: stats.chisquare: attribute is pvalue, not p 
- #18374: CI: pin to rtools40 
- #18378: DOC: add output_type to signature of cKDTree.query_pairs 
- #18379: TST/MAINT: remove vonmises fit correctnes test for extreme kappa… 
- #18380: MAINT: Limit fittable data for von mises fisher distribution… 
- #18382: TST: stats.cosine: modify test to silence failure 
- #18383: MAINT: add smoke testing of signal.detrend 
- #18384: DOC: improve vonmises documentation 
- #18387: DOC: interpolate: deduplicate docstrings in _fitpack_py and _fitpack_impl 
- #18392: BUG: optimize.differential_evolution: fix division by zero error 
- #18399: DOC: Replace “HACKING” with “hacking” 
- #18400: DOC: improve description of the method argument in mannwhitneyu 
- #18402: TST: fix failing signal.windows tests 
- #18405: Revert “BLD: Add const to Cython signatures for BLAS/LAPACK (#18247)” 
- #18410: TST: fix test failures in linprog unboundedness test 
- #18411: BLD: an Intel Fortran fix and MinGW-related cleanups 
- #18412: MAINT: signal: simplify shape manipulations in signal.detrend 
- #18413: MAINT: Harmonized documentation for Interpolator classes 
- #18414: CI: move last Azure job to GHA 
- #18418: Fix warning when `nogil` is placed before `except` 
- #18419: MAINT: interpolate: remove unused codes in `_fitpackmodule.c`. 
- #18421: BLD: more PROPACK fixes, removing timer code 
- #18422: MAINT: stats: genexpon is no longer too slow for test_rvs_broadcast. 
- #18426: BLD: fix two `-Duse-g77-abi` regressions and a PROPACK bug 
- #18427: ENH: prevent unnecessary computation in `scipy.stats.rankdata` 
- #18429: DOC: rewrite all build docs and restructure build/contributor… 
- #18430: MAINT: stats.mode: improve `nan_policy` behavior 
- #18433: ENH: improve t distribution logpdf and pdf for large degrees… 
- #18438: BLD: DOC: fix Sphinx doc build caching behavior for `.dev`… 
- #18439: BLD: detect `xsimd` if it’s installed and add to pythran dependency 
- #18441: ENH:stats: add sf method for betaprime 
- #18442: TST: fix precision of several linalg/sparse.linalg tests 
- #18444: DOC: clarify Sobel transform 
- #18446: MAINT: fix Deb03 GO benchmark 
- #18447: DOC: remove references to Azure 
- #18449: ENH: increase truncated exponential distribution sf/isf precision 
- #18451: DEV: use number of physical cores in `dev.py build` by default 
- #18454: DOC: add `distance_transform_cdt` example 
- #18455: MAINT: simplifiy detrend 
- #18458: DOC: odr: clarify `cov_beta` is not scaled by the residual… 
- #18459: DOC: optimize: add use of functools.partial to tutorial 
- #18460: DOC: examples for `ndimage.generic_filter` 
- #18461: TST: stats: ReferenceDistribution: use complementary methods… 
- #18462: MAINT: Clean up scipy/sparse/linalg/_isolve/tests/test_iterative.py 
- #18463: MAINT: parametrize scipy/sparse/linalg/_isolve/tests/test_iterative.py 
- #18466: DOC: fix issues in `svds` docstring examples that were failing… 
- #18468: BLD: enforce utf-8 in tools/cythonize.py, and some cleanups 
- #18472: MAINT: remove lsim2/impulse2/step2 docstring examples 
- #18475: DOC: remove warnings in doc build 
- #18476: TST: stats/optimize: filter warnings in tests 
- #18482: MAINT: ensure Nelder-Mead respects floating point type 
- #18486: DOC: remove already-resolved deprecation warning filter 
- #18489: DEP: signal: deprecate importing window functions from signal… 
- #18493: BUG: stats: Fix the variable that is checked to skip a test. 
- #18500: MAINT: tweak code comment for list of private-but-present modules 
- #18501: TST: interpolate: add a regression test for bisplev integer overflow 
- #18502: BUG: guard against non-finite kd-tree queries 
- #18503: Fix PPoly readonly issue for c parameter 
- #18504: MAINT: upload nighlighties to new location 
- #18505: MAINT: sparse: Generalize isshape to (optionally) handle non-2d… 
- #18507: Clean up sparse array API 
- #18508: ENH: Ensure that the result of divide(sparse, dense) is sparse 
- #18509: Remove indices downcasting for sparse arrays 
- #18510: TST: Add regression tests for sparse creation functions. 
- #18513: MAINT: sparse: cosmetic updates + typing for sputils 
- #18516: DOC: add user guide page introing new sparse arrays 
- #18522: Pin prerelease pipeline with Cython>=3.0.0b3 
- #18523: TST: piecemeal updates to `test_base.py` for sparray conversion 
- #18526: DOC: Fix broken reference to count_nonzero in See Also. 
- #18527: try stable sort in mst tree ordering 
- #18528: ENH: Update isspmatrix behavior 
- #18531: Class names to enable isinstance 
- #18532: Fix format property in _csr.py 
- #18536: Add deprecation notices to sparse array docs 
- #18538: ENH: sparse: Add _array version of `diags` creation functions. 
- #18539: DOC: sparse: Document sparse canonical formats 
- #18540: MAINT: sparse: Deprecate multi-Ellipsis indexing 
- #18542: ENH: sparse: add nanmin/nanmax (followup on gh-8902) 
- #18543: MAINT: optimize.root_scalar: ensure that root is a scalar 
- #18545: TST: speed up `test_import_cycles` 
- #18549: TST: optimize: filter RuntimeWarning that does not indicate test… 
- #18550: DOC: optimize.OptimizeResult: note that not all listed attributes… 
- #18551: Replace sparse __getattr__ with properties 
- #18553: BENCH: sparse: Add a benchmark for sparse matrix power 
- #18554: BUG: sparse: Fix DIA.tocoo canonical format setting 
- #18556: MAINT: io: replace isspmatrix with issparse in mmio module 
- #18560: MAINT: integrate: revert`full_output` deprecation / result… 
- #18562: fix doc strings for csr_array and friends 
- #18563: DOC: SciPy 1.11.0 release notes 
- #18591: MAINT: version bounds for 1.11.0rc1 
- #18596: DOC: Fix sidebar for API reference pages 
- #18598: CI: fix wheel upload to anaconda [wheel build] 
- #18599: Revert “ENH: sparse: Add _array version of `diags` creation… 
- #18608: Fix typo of module name in deprecation warning 
- #18629: Mark `void` functions as `noexcept` in _rotation.pyx 
- #18630: MAINT: stats: remove long double support for all boost ufuncs 
- #18636: MAINT: stats.truncnorm/stats.betaprime: fix _munp for higher… 
- #18657: MAINT: fix ‘no such option’ error in build_scipy CI 
- #18658: TST: fix two test failures that showed up on conda-forge 
- #18659: DOC: `scipy._sensitivity_analysis`: correct statement about… 
- #18671: MAINT: backports for 1.11.0rc2 
- #18672: BUG: small shim for release process 
- #18676: BUG: signal: fix detrend with array-like bp 
- #18697: MAINT: NumPy 1.25.0 shims for arm64 
- #18698: DEP: interpolate: delay interp2d deprecation and update link 
- #18724: MAINT, REL: prepare for SciPy 1.11.0 “final” 
- #18737: TST: flaky TestSOSFreqz::test_fs_param 
- #18738: TST: flaky `test_complex_iir_dlti`