v1.16.0.0
This is the first scipy-stubs
release that supports SciPy 1.16. In these last 6 weeks of hard work, we've also made many improvements to the accuracy, correctness, and testing coverage of scipy-stubs
.
If you encounter any regressions or other issues, please report them at https://github.com/scipy/scipy-stubs/issues.
This release requires Python 3.11-3.13
and NumPy 1.25.2
or greater.
⭐ Highlights
- Support for SciPy 1.16 (currently
1.16.0rc2
) (release notes) - Support for NumPy 2.3 (currently
2.3.0
) (release notes) scipy.linalg
: Low-level BLAS and LAPACK function annotationsscipy.sparse
: Many sparse array and matrix improvements, including preliminary shape-typing support- Improved type-testing coverage, which uncovered several bugs that have now been fixed
See below for the complete list of PR's that are included in this scipy-stubs
release.
What's Changed
👽️ SciPy 1.16.0 Changes
- scipy 1.16 changes for
_lib
by @jorenham in #525 - scipy 1.16 changes for
cluster.vq.whiten
by @jorenham in #526 - scipy 1.16 changes for
interpolate.dfitpack
by @jorenham in #527 - scipy 1.16 change for
interpolate.RectBivariateSpline
by @jorenham in #528 - scipy 1.16 change for
interpolate.make_smoothing_spline
by @jorenham in #529 - scipy 1.16 addition for
io.matlab
by @jorenham in #530 - scipy 1.16 changes for
linalg.sqrtm
by @jorenham in #531 - scipy 1.16 new function
ndimage.vectorized_filter
by @jorenham in #537 - scipy 1.16 batching support in
scipy.linalg
by @jorenham in #535 - scipy 1.16 changes for
optimize._differentiable_functions
by @jorenham in #538 - scipy 1.16 changes for
optimize.least_squares
by @jorenham in #539 - scipy 1.16 changes for
optimize._numdiff
by @jorenham in #540 - scipy 1.16 changes for
optimize._trustregion_constr
by @jorenham in #541 - scipy 1.16 changes for
optimize.nnls
by @jorenham in #542 - scipy 1.16 changes for
optimize.slsqp
by @jorenham in #544 - scipy 1.16 additions for
signal._short_time_fft
by @jorenham in #546 - scipy 1.16 new function
signal.firwin_2d
by @jorenham in #548 - scipy 1.16 changes for
signal.__all__
by @jorenham in #549 - scipy 1.16 changes for
signal.windows
by @jorenham in #550 signal
: dedupe the@deprecated
public submodule function definitions by @jorenham in #551- scipy 1.16 deprecations for
linalg.{logm, signm, sqrtm}
by @jorenham in #553 - scipy 1.16 new internal module
_lib._sparse
by @jorenham in #555 - scipy 1.16 changes for
sparse._base
by @jorenham in #556 - scipy 1.16 removals for
sparse
by @jorenham in #557 - scipy 1.16 changes for
sparse.csgraph._shortest_path
by @jorenham in #558 - scipy 1.16 changes for
sparse._sputils
by @jorenham in #559 - scipy 1.16 expired deprecations for
sparse._dok
by @jorenham in #560 - scipy 1.16 additions for
spatial.transform._rotation
by @jorenham in #561 - scipy 1.16 new class
spatial.transform.RigidTransform
by @jorenham in #562 - scipy 1.16 changes for
special._support_alternative_backends
by @jorenham in #563 - scipy 1.16 new function
stats.quantile
by @jorenham in #564 - scipy 1.16 changes for
stats.make_distribution
by @jorenham in #565 - scipy 1.16 new class
stats._distribution_infrastructure
by @jorenham in #566 - scipy 1.16 new class
stats.Binomial
by @jorenham in #567 - scipy 1.16 removal of
stats._mvn
by @jorenham in #569 - scipy 1.16 changes for
stats.tukey_hsd
by @jorenham in #570 - scipy 1.16 changes for
stats.f_oneway
by @jorenham in #573 - scipy 1.16 removal of
stats.trapz
by @jorenham in #574 - scipy 1.16 changes for
stats.multivariate_normal.[log]cdf
by @jorenham in #575 - scipy 1.16 changes for
stats.gaussian_kde.integrate_box
by @jorenham in #576 - scipy 1.16 changes for
stats.boxcox_llf
by @jorenham in #577 - scipy 1.16 changes for
stats.{siegel,theil}slopes
by @jorenham in #580 - scipy 1.16 changes for
stats.gstd
by @jorenham in #581 - scipy 1.16 changes for
stats.power_divergence
andstats.chisquare
by @jorenham in #582 - scipy 1.16 expired deprecation for
stats.linregress
by @jorenham in #583 - scipy 1.16 changes for
stats.linregress
by @jorenham in #584 - scipy 1.16 changes for
stats.pointbiserialr
by @jorenham in #585 - scipy 1.16 changes for
stats.{kendall,weighted}tau
by @jorenham in #586 - scipy 1.16 changes for
version
by @jorenham in #587
✨ Improvements
signal
: genericShortTimeFFT
type-param and improved annotations by @jorenham in #547linalg
: improved_matfuncs
return dtypes by @jorenham in #554stats
: improved hypothesis test function return type annotations by @jorenham in #571linalg
: low-level BLAS function annotations by @jorenham in #594linalg
: low-level LAPACK function annotations by @jorenham in #595optimize
: stub_slsqplib
cpython extension module by @jorenham in #596linalg
: stub_decomp_interpolative
cpython extension module by @jorenham in #597stats
: stub the_rcont
subpackage by @jorenham in #598sparse
: improved annotations and code cleanup by @jorenham in #602sparse
: type testing & sparse matrix and array improvements by @jorenham in #605constants
: type-tests & improved annotations by @jorenham in #610sparse
: constructor function type-tests by @jorenham in #619sparse
: improved integer matrix/array method annotations by @jorenham in #624sparse
: fix and improveget_index_type
return type by @jorenham in #625sparse
: simplified gradualload_npz
return type by @jorenham in #626- preliminary support for Python 3.14 by @jorenham in #631
sparse
: Improved shape-typing support for CSR and DOK arrays by @jorenham in #634fft
: improved[i]fht()
annotations by @jorenham in #640fft
: improved discrete sine- and cosine transform return types by @jorenham in #641
🐛 Fixes
signal
: accept numbers as args towidth
andplateau_size
forfind_peaks()
by @jorenham in #519- fix
numpy<2.2
compatability withnp.bool_
by @jorenham in #579 - prefer gradual shape-type defaults for generics by @jorenham in #601
sparse
: covariant sparse matrix/array types by @jorenham in #623sparse
: fix and improveget_index_type
return type by @jorenham in #625sparse
: distinguish between different values for argumentwhich
ineigs
andeigsh
by @lcwllmr in #633optimize
: fix false rejection of identity functions inminimize
by @jorenham in #638fft
: fix input type annotations of the low-level backend functions by @jorenham in #639
✅ Testing
sparse
: type testing & sparse matrix and array improvements by @jorenham in #605constants
: type-tests & improved annotations by @jorenham in #610misc
: add type-tests by @jorenham in #611version
: add type-tests for thescipy.version
constants by @jorenham in #612datasets
: type-tests forscipy.datasets
by @jorenham in #615differentiate
: type-tests forderivative
,jacobian
, andhessian
by @jorenham in #616sparse
: constructor function type-tests by @jorenham in #619sparse
: type-tests fortril
andtriu
by @jorenham in #621
⬆️ Dependencies
- ⬆️ bump dev dependencies to latest by @jorenham in #522
- 📌 require
python>=3.11
by @jorenham in #523 - 📌 scipy 1.16.0rc1 by @jorenham in #524
- ⬆️ bump
optype
to0.10.0
by @jorenham in #590 - ⬆️ mypy 1.16.0 by @jorenham in #591
- ⬆️ bump
ruff
to0.11.12
by @jorenham in #592 - 📌 scipy 1.16.0rc2 by @jorenham in #599
- ⬆️ bump basedpyright to 1.29.4 (pyright 1.1.402) by @jorenham in #603
- ⬆️ bump
mypy
to1.16.1
by @jorenham in #617 - ➖ remove
mdformat
as dev dependency by @jorenham in #627 - ⬆️ bump
ruff
to0.12.0
by @jorenham in #632 - Bump DavidAnson/markdownlint-cli2-action from 19 to 20 in the actions group by @dependabot in #520
- Bump scientific-python/repo-review from 0.12.1 to 0.12.2 in the actions group by @dependabot in #521
Other Changes
- 🔖 prepare for further development by @jorenham in #518
- 👷 some CI tweaks by @jorenham in #578
- 🔧 remove scipy 1.16.0rc1 stubtest allowlist by @jorenham in #588
- 🎨 more consistent
ruff
style by @jorenham in #589 - 🩹 stop using
npt.NBitBase
inlinalg._misc
by @jorenham in #593 - 🤖 add instructions for copilot by @jorenham in #604
- 🤖 update the automated release-note generation by @jorenham in #606
- 🤖 additional instructions for copilot by @jorenham in #609
- 👷 update dependabot config to use
uv
by @jorenham in #613 - 🤖 amend copilot terminal workaround instruction by @jorenham in #614
- 🙈 globally ignore
ruff
'sANN401
by @jorenham in #618 - 🔧 add
scipy
toknown-local-folder
in theruff/isort
config by @jorenham in #620 - 🧑💻 add
.gitattributes
for better handling of lockfiles files by @jorenham in #628 - 🧑💻 lefthook by @jorenham in #629
- 🧑💻 move
tox.toml
intopyproject.toml
by @jorenham in #630 - 📝 some
README.md
improvements by @jorenham in #636 - 📝 fix
README
badges and image by @jorenham in #637
New Contributors
Full Changelog: v1.15.3.0...v1.16.0.0