Releases: scipy/scipy-stubs
v1.16.0.1
This is the second scipy-stubs release that supports SciPy 1.16. In these last 2 weeks of hard work, we've also made many improvements to the accuracy, correctness, and documentation 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.
What's Changed
👽️ SciPy Changes
✨ Improvements
stats: Annotate the private functions and consts in_continuous_distnsby @jorenham in #650cluster.vq: improved dtype annotations by @jorenham in #651interpolate: Generic Krogh and barycentric interpolator types by @jorenham in #667optimize: GenericBoundstype by @jorenham in #675sparse.linalg: Improved linear solver function annotations by @jorenham in #678fft: improved*fft,*fft2and*fftnannotations by @jorenham in #681fft: improved[i]fftshiftannotations by @jorenham in #682fft: sync (private) signatures of_realtransformsand_realtransforms_backendby @jorenham in #684
🐛 Fixes
stats.qmc: Add missingseedconstructor parameters by @jorenham in #647optimize: accept tuple functions infmin_l_bfgs_bby @jorenham in #649cluster.vq: Add missingseedparameter tokmeansandkmeans2by @jorenham in #652interpolate: Add missingseedkwarg to theBarycentricInterpolatorconstructor by @jorenham in #654linalg: Add missingseedkwarg toclarkson_woodruff_transformby @jorenham in #655optimize: Add missingseedkwargs to the global optimize functions by @jorenham in #656sparse: Add missingrandom_statekwarg torandom_arrayandrand[om]by @jorenham in #657sparse.linalg: Add missingrandom_statekwarg tosvdsby @jorenham in #658spatial.distance: Add missingseedkwarg todirected_hausdorffby @jorenham in #659spatial.transform: Add missingrandom_statekwarg toRotation.randomby @jorenham in #660stats: Add missingrandom_statekwargs by @jorenham in #661sparse: fix sparse array/matrix indexing by @jorenham in #664signal: simplifyget_windowinput type by @jorenham in #665sparse: Transposition duality of CSR and CSC arrays by @jorenham in #669sparse.linalg: Fixfactorizereturn type annotations by @jorenham in #679interpolate: consistentRBFInterpolatorgeneric type parameter ordering by @jorenham in #685
⬆️ Dependencies
- require
scipy>=1.16.0<1.17by @jorenham in #642 - bump
ruffto0.12.1by @jorenham in #680 - bump
basedpyrightto1.29.5by @jorenham in #691
📝 Documentation
- generic type reference docs by @jorenham in #673
- support versions of generic types by @jorenham in #690
Other Changes
- 🏷️
io:loadmatreturn dict with gradual value types by @jorenham in #676 - 💬 update string literals for SciPy
1.16.0by @jorenham in #683 - 🔧 update release note config by @jorenham in #686
- 🧑💻 update editorconfig and vscode settings by @jorenham in #687
- 🧑💻
dprintformatter for markdown, json, toml and yaml by @jorenham in #688 - ⬆️ Bump crate-ci/typos from 1.33.1 to 1.34.0 in the actions group by @dependabot in #689
Full Changelog: v1.16.0.0...v1.16.0.1
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
_libby @jorenham in #525 - scipy 1.16 changes for
cluster.vq.whitenby @jorenham in #526 - scipy 1.16 changes for
interpolate.dfitpackby @jorenham in #527 - scipy 1.16 change for
interpolate.RectBivariateSplineby @jorenham in #528 - scipy 1.16 change for
interpolate.make_smoothing_splineby @jorenham in #529 - scipy 1.16 addition for
io.matlabby @jorenham in #530 - scipy 1.16 changes for
linalg.sqrtmby @jorenham in #531 - scipy 1.16 new function
ndimage.vectorized_filterby @jorenham in #537 - scipy 1.16 batching support in
scipy.linalgby @jorenham in #535 - scipy 1.16 changes for
optimize._differentiable_functionsby @jorenham in #538 - scipy 1.16 changes for
optimize.least_squaresby @jorenham in #539 - scipy 1.16 changes for
optimize._numdiffby @jorenham in #540 - scipy 1.16 changes for
optimize._trustregion_constrby @jorenham in #541 - scipy 1.16 changes for
optimize.nnlsby @jorenham in #542 - scipy 1.16 changes for
optimize.slsqpby @jorenham in #544 - scipy 1.16 additions for
signal._short_time_fftby @jorenham in #546 - scipy 1.16 new function
signal.firwin_2dby @jorenham in #548 - scipy 1.16 changes for
signal.__all__by @jorenham in #549 - scipy 1.16 changes for
signal.windowsby @jorenham in #550 signal: dedupe the@deprecatedpublic 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._sparseby @jorenham in #555 - scipy 1.16 changes for
sparse._baseby @jorenham in #556 - scipy 1.16 removals for
sparseby @jorenham in #557 - scipy 1.16 changes for
sparse.csgraph._shortest_pathby @jorenham in #558 - scipy 1.16 changes for
sparse._sputilsby @jorenham in #559 - scipy 1.16 expired deprecations for
sparse._dokby @jorenham in #560 - scipy 1.16 additions for
spatial.transform._rotationby @jorenham in #561 - scipy 1.16 new class
spatial.transform.RigidTransformby @jorenham in #562 - scipy 1.16 changes for
special._support_alternative_backendsby @jorenham in #563 - scipy 1.16 new function
stats.quantileby @jorenham in #564 - scipy 1.16 changes for
stats.make_distributionby @jorenham in #565 - scipy 1.16 new class
stats._distribution_infrastructureby @jorenham in #566 - scipy 1.16 new class
stats.Binomialby @jorenham in #567 - scipy 1.16 removal of
stats._mvnby @jorenham in #569 - scipy 1.16 changes for
stats.tukey_hsdby @jorenham in #570 - scipy 1.16 changes for
stats.f_onewayby @jorenham in #573 - scipy 1.16 removal of
stats.trapzby @jorenham in #574 - scipy 1.16 changes for
stats.multivariate_normal.[log]cdfby @jorenham in #575 - scipy 1.16 changes for
stats.gaussian_kde.integrate_boxby @jorenham in #576 - scipy 1.16 changes for
stats.boxcox_llfby @jorenham in #577 - scipy 1.16 changes for
stats.{siegel,theil}slopesby @jorenham in #580 - scipy 1.16 changes for
stats.gstdby @jorenham in #581 - scipy 1.16 changes for
stats.power_divergenceandstats.chisquareby @jorenham in #582 - scipy 1.16 expired deprecation for
stats.linregressby @jorenham in #583 - scipy 1.16 changes for
stats.linregressby @jorenham in #584 - scipy 1.16 changes for
stats.pointbiserialrby @jorenham in #585 - scipy 1.16 changes for
stats.{kendall,weighted}tauby @jorenham in #586 - scipy 1.16 changes for
versionby @jorenham in #587
✨ Improvements
signal: genericShortTimeFFTtype-param and improved annotations by @jorenham in #547linalg: improved_matfuncsreturn 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_slsqplibcpython extension module by @jorenham in #596linalg: stub_decomp_interpolativecpython extension module by @jorenham in #597stats: stub the_rcontsubpackage 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_typereturn type by @jorenham in #625sparse: simplified gradualload_npzreturn 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 towidthandplateau_sizeforfind_peaks()by @jorenham in #519- fix
numpy<2.2compatability 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_typereturn type by @jorenham in #625sparse: distinguish between different values for argumentwhichineigsandeigshby @lcwllmr in #633optimize: fix false rejection of identity functions inminimizeby @jorenham in https://github.com/scipy/scipy-stubs/p...
v1.15.3.0 (scipy 1.15.3)
⭐ Highlights
- Support for SciPy 1.15.3 and NumPy 2.2.5
What's Changed
🐛 Fixes
⬆️ Dependencies
- upgrade development dependencies by @jorenham in #508
- bump
astral-sh/setup-uvtov6by @jorenham in #509 - update the dev dependencies by @jorenham in #514
- upgrade
scipyto1.15.3by @jorenham in #516
Other Changes
- 🔖 prepare for further development by @jorenham in #507
- Remove License Trove Classifier from
pyproject.tomlby @it176131 in #513 - 🛂 explicit CI permissions by @jorenham in #515
New Contributors
Full Changelog: v1.15.2.2...v1.15.3.0
v1.15.2.2 (scipy 1.15.2)
What's Changed
✨ Improvements
ndimage: improved filter and measurement function annotations by @jorenham in #499optimize: narrowedOptimizeResult.{fun,x}attrs forminimize[_scalar]by @jorenham in #504
🐛 Fixes
- adjust pyright config for
optype.numpycompatibility by @jorenham in #491 interpolate: acceptndarrayforpointsinRegularGridInterpolatorby @jorenham in #501optimize: accept a scalar forx0inminimizeby @jorenham in #502optimize: accept a scalar forx0infmin*by @jorenham in #503
📝 Documentation
⬆️ Dependencies
- upgrade
optypeto0.9.2by @jorenham in #481 - bump
ruffto0.11.0by @jorenham in #484 - bump
numpyto2.2.4by @jorenham in #487 - update development dependencies by @jorenham in #489
- bump
optypeto0.9.3by @jorenham in #490 - bump
ruffto0.11.4by @jorenham in #506
Other Changes
- 🔖 prepare for further development by @jorenham in #480
- 👷 ensure
pyrightcompatibility by @jorenham in #482 - 🔧 adjust
basedmypyconfig formypycompat by @jorenham in #483 - 🔧 fix vscode settings syntax by @jorenham in #485
- 🔧 remove
filesfrom[tool.mypy]by @jorenham in #486 - 💚 fix mypy_primer failure and mypy/basedmypy compat by @jorenham in #500
Full Changelog: v1.15.2.1...v1.15.2.2
v1.15.2.1 (scipy 1.15.2)
What's Changed
✨ Improvements
🐛 Fixes
optimize: allow callingminimize_scalarwithout abracketby @jorenham in #467transform: accept proper Euler angles inRotation.as_eulerby @KiSchnelle in #470interpolate: accept scalar input in__call__by @jorenham and @ev-br in #476 and #478
📝 Documentation
Dependencies
- ⬆️ bump
ruffto0.9.7by @jorenham in #460 - ⬆️
basedpyright 1.28.1andruff 0.9.9by @jorenham in #466
Other Changes
- 🔖 prepare for further development by @jorenham in #458
- 💄
add-trailing-commaby @jorenham in #461 - 🔥 remove the codemods by @jorenham in #462
- 🔧 fix the
add-trailing-commahook to also work on.pyiby @jorenham in #463 - 🔥 remove pre-commit by @jorenham in #469
New Contributors
- @KiSchnelle made their first contribution in #470
- @ev-br made their first contribution in #478
Full Changelog: v1.15.2.0...v1.15.2.1
v1.15.2.0
⭐ Highlights
- The repo has been transferred from
jorenham/scipy-stubstoscipy/scipy-stubsby @rgommers - Support for SciPy 1.15.2 and NumPy 2.2.3
What's Changed
✨ Improvements
special: improved dtype handling in the "basic" functions by @jorenham in #419signal: genericlti, anddltitypes by @jorenham in #425optimize: improvedlinprogandmilpannotations by @jorenham in #427optimize: method-specific overloads and options forminimize_scalarby @jorenham in #428optimize: GenericInverseJacobianand related types by @jorenham in #429signal: improvements related tocztandzoom_fftby @jorenham in #430sparse: genericsparrayby @jorenham in #435stats.zmap: accept complex input and basic shape-typing by @jorenham in #457
🐛 Fixes
stats: fixrv_discretesample constructor by @jorenham in #418signal: add plain number option forfind_peaksargument prominence by @drewsilcock in #448stats: makeoptimizerargument optional inrv_continuous.fit()by @drewsilcock in #451
📝 Documentation
- Use SciPy's Code of Conduct by @jorenham in #439
- Streamlined contributing guide by @jorenham in #445
⬆️ Dependencies
- bump
sp-repo-reviewto2025.1.22by @jorenham in #426 - bump
basedpyrightto1.27.1,ruffto0.9.6by @jorenham in #454 - Optype 0.9.1 by @jorenham in #449
- NumPy 2.2.3 by @jorenham in #455
- SciPy 1.15.2 by @jorenham in #456
Other Changes
- 🔖 prepare for further development by @jorenham in #415
- 🎨 optype 0.9 simplifications by @jorenham in #424
- 🔨 more
tox, lesspoeby @jorenham in #431 - ⬆️ bump
ruffto0.9.3by @jorenham in #432 - 🎨
sparse: preferoptype.numpyoverscipy._typingby @jorenham in #434 - 💸 remove the sponsor button by @jorenham in #437
- 🔧 scipy.org as homepage and add scipy-dev as maintainer by @jorenham in #440
- 🔧
.tomlauto-format config for vscode users by @jorenham in #444 - 🚚 change
jorenham/scipy-stubsrefs toscipy/scipy-stubsby @jorenham in #446 - 🔨 use
uvas source of python versions by @jorenham in #452
New Contributors
- @drewsilcock made their first contribution in #448
Full Changelog: v1.15.1.0...v1.15.2.0
v1.15.1.0 (scipy 1.15.1)
This is the first scipy-stubs release that supports SciPy 1.15.1.
What's Changed
Improvements
- 🎨 remove outdated
# TODO's by @jorenham in #408 - ✨
spatial: generic[c]KDTreeand other improvements by @jorenham in #413
Dependencies
- ⬆️ bump
ruffto0.8.5by @jorenham in #396 - ⬆️ bump
scipyto1.15.0(final) by @jorenham in #409 - ⬆️ bump dev deps to latest by @jorenham in #410
- ⬆️ bump
ruffto0.9.0by @jorenham in #412 - 📌 SciPy 1.15.1 by @jorenham in #414
Other Changes
Full Changelog: v1.15.0.0...v1.15.1.0
v1.15.0.0 (scipy 1.15.0)
This is the first scipy-stubs release that supports SciPy 1.15.0.
What's Changed
SciPy 1.15.0 compatability
- ⬆️ increase the minimum
scipyversion to1.15.0rc1by @jorenham in #327 - 🚧 temporarily ignore all stubtest errors by @jorenham in #326
- ⚰️
misc: remove all code by @jorenham in #328 - ✨
differentiate: preliminary (yet complete) stubs by @jorenham in #329 - 🏷️
_typing: SPEC-7 compliant (private)ToRNGtype alias (previouslySeed) by @jorenham in #333 - 👽️
fft[pack]: 1.15.0 support by @jorenham in #336 - 👽️
integrate: 1.15.0 support by @jorenham in #337 - 👽️
interpolate: 1.15.0 support by @jorenham in #338 - 👽️
constants: 1.15.0 support by @jorenham in #330 - 👽️
_lib: 1.15.0 support by @jorenham in #331 - 👽️
cluster: 1.15.0 support by @jorenham in #334 - 👽️
io: 1.15.0 support by @jorenham in #341 - 👽️
linalg.interpolative: 1.15.0 support by @jorenham in #343 - 👽️
linalg: 1.15.0 support by @jorenham in #344 - 👽️
version: 1.15.0 removecommit_countby @jorenham in #345 - 👽️
ndimage: 1.15.0 support by @jorenham in #346 - 👽️
optimize: SPEC 7 & scipy 1.15.0 support by @jorenham in #347 - 👽️
sparse: 1.15.0 support by @jorenham in #349 - 👽️
special: 1.15.0 support by @jorenham in #351 - 👽️
signal: 1.15.0 support by @jorenham in #348 - 👽️
spatial: 1.15.0 support and many improvements by @jorenham in #350 - 👽️
stats: 1.15.0 support and several improvements by @jorenham in #353 - 👽️
sparse: acceptaxes: tuple[int[:], int[:]]incoo_array.tensordotby @jorenham in #357 - 👽️
stats: 1.15.0 new distribution infrastructure by @jorenham in #360 - 💬
interpolate: fix scipy version ininterpnddeprecation warning messages by @jorenham in #366 - 💬
special: mention the deprecation version inlpnand[c]lpmnby @jorenham in #367 - 🗑️
interpolate: deprecate thedfitpackfunctions, fix & improve thesp*functions by @jorenham in #372 - 📌 pin
scipy<1.16by @jorenham in #371 - 👽️
scipy==1.15.0rc2by @jorenham in #376
Improvements
- ✨ more precise
__config__and__init__annotations by @jorenham in #362 - ✨
_lib: improved annotations by @jorenham in #364 - ✨
special: several improved ufuncs by @jorenham in #374 - ✨
special: ufunc improvements by @jorenham in #375 - ✨
signal: complete_filter_design, fix and improve_cztby @jorenham in #378 - ✨
signal: complete_signaltoolsby @jorenham in #379 - ✨
signal: complete_fir_filter_design.*enmax_len_seqby @jorenham in #384 - ✨
signal: complete_ltisys.*by @jorenham in #385 - 🎨
optype 0.8simplifications by @jorenham in #382 - 🎨
stats: simplify_distn_infrastructurewithoptype 0.8by @jorenham in #387 - 🎨
_typing: DRYFalsyandTruthytype aliases by @jorenham in #390
Fixes
Documentation
- 📝 several
README.mdimprovements by @jorenham in #365 - 📝 better describe the supported numpy versions by @jorenham in #368
Dependencies
- 📌 upgrade
optypeto0.8.0by @jorenham in #380 - ⬆️ update pre-commit hooks by @pre-commit-ci in #339
- ⬆️ bump
basedpyrightto1.23.1by @jorenham in #356 - ⬆️ bump
ruffto0.8.4and disallowmdformat==0.7.20by @jorenham in #358 - ⬆️ bump
mdformatto0.7.21by @jorenham in #359 - ⬆️ bump
basedmypyto2.9.0by @jorenham in #393 - Bump astral-sh/setup-uv from 4 to 5 in the actions group by @dependabot in #361
- Bump DavidAnson/markdownlint-cli2-action from 18 to 19 in the actions group by @dependabot in #386
Other Changes
- 🧑💻 remove mypy from pre-commit (too slow) by @jorenham in #355
- 👷 increase the timeout of the CI
typeteststep by @jorenham in #342 - 👷 PyPI trusted publishing workflow by @jorenham in #383
- 👷 exclude unsupported test matrix version combinations by @jorenham in #388
- 🔧 configure pre-commit ci to use gitmoji style by @jorenham in #340
- 🔧 de-duplicate the
scipyversion requirements by @jorenham in #389 - 🔧 regex'd
.mypyignoreby @jorenham in #335 - 🔧
.mypyignorecleanup by @jorenham in #392
Full Changelog: v1.14.1.6...v1.15.0.0
v1.14.1.6
Highlights
scipy.interpolate: The public API is now 100% annotated (by humans)scipy.sparse: The public API is now 100% annotated (by humans)- the sparse array- and matrix- types optionally accept a generic type parameter for their scalar type, e.g.
coo_array[np.float64]. {coo, csr, dok}_arrayadditionally accept a 2nd optional type parameter for their 1-d (tuple[int]) or 2-d (tuple[int, int]) shape-type.
- the sparse array- and matrix- types optionally accept a generic type parameter for their scalar type, e.g.
- fixed some typing issues on older numpy versions
What's Changed
Improvements
- 🎨
interpolate: remove duplicated function and classes by @jorenham in #267 - ✨
interpolate: stub_dfitpackby @jorenham in #270 - ✨
spatial: improve_qhullby @jorenham in #271 - ✨
interpolate: complete and improveinterpndby @jorenham in #272 - ✨
interpolate: complete_bsplinesand_ndbsplineby @jorenham in #273 - ✨
interpolate: completeRBFInterpolatorandRbfby @jorenham in #274 - ✨
interpolate: complete_fitpack_impl(1/2) by @jorenham in #275 - ✨
interpolate: complete_fitpack_impl(2/2) by @jorenham in #276 - ✨
interpolate: complete_fitpack2by @jorenham in #277 - ✨
interpolate: complete_polyintby @jorenham in #279 - ✨
signal: complete frequency response functions in_filter_designby @jorenham in #287 - 🎨
sparse: code cleanup by @jorenham in #294 - ✨
sparse.linalg: complete theLinearOperators in_interfaceby @jorenham in #295 - 🎨
sparseexplicit imports in__init__by @jorenham in #296 - ✨
sparse.linalg: complete the matrix operation functions by @jorenham in #298 - ✨
sparse.linalg: complete the matrix norm functions by @jorenham in #300 - ✨
sparse.linalg: completeLaplacianNd& accept in dtypes inLinearOperatorby @jorenham in #301 - ✨
sparse.linalg: complete_dsolveby @jorenham in #302 - ✨
sparse.linalg: complete_eigen.arpackby @jorenham in #303 - ✨
sparse.linalg: completelobpcgby @jorenham in #305 - ✨
sparse.linalg: completesvdsby @jorenham in #306 - ✨
sparse: complete the sparse arrays and matrices by @jorenham in #307 - ✨
sparse: completeeye[_array]by @jorenham in #309 - ✨
sparse: completeidentityby @jorenham in #310 - ✨
sparse: completekron[sum]by @jorenham in #311 - ✨
sparse: complete{h,v}stackby @jorenham in #313 - ✨
sparse: complete[sp]diags[_array]by @jorenham in #314 - ✨
sparse: complete{load,save}_npzby @jorenham in #315 - ✨
sparse: complete_sputils.*(private) by @jorenham in #316 - ✨
sparse: complete_spfuncs.*(private) by @jorenham in #317 - ✨
sparse: completefindandtri{l,u}by @jorenham in #318 - ✨
sparse: completerand[om[_array]]by @jorenham in #319 - ✨
sparse: completebmatandblock_{array,diag}by @jorenham in #320 - ✨
sparse: adopt the new generic sparse arrays inlinalgandcsgraphby @jorenham in #321 - 🎨
sparse: variouslinalg.LinearOperatortweaks and improvements by @jorenham in #322 - ✨
sparse: completelinalg.ls{m,q}rby @jorenham in #323 - ✨
sparse: completelinalg._isolve.utils.*(private) by @jorenham in #324 - ✨
sparse: complete the remainingsparse.linalgfunctions by @jorenham in #325
Fixes
- ✨
interpolate: complete_rgiby @jorenham in #278 - 🐛 fix typing errors on
numpy<1.24by @jorenham in #292 - ⬆️ bump
basedmypyto2.8.1by @jorenham in #293 - 👽️ work around several
mypybugs withnumpy>=2.2.0by @jorenham in #288
Documentation
- 🌕
interpolate: mark as 100% annotated by @jorenham in #280 - 📝 correct the documented lowest supported numpy version by @jorenham in #281
- 📝 installation instructions for humans by @jorenham in #282
- 🎤 add podcast to
README.mdby @jorenham in #299 - 📝 update the coverage progress for
scipy.sparseby @jorenham in #304 - 📝 mention gitmoji in
CONTRIBUTING.mdby @jorenham in #308
Dependencies
- ⬆️ bump
basedpyrightto1.22.1andbasedmypyto2.8.0by @jorenham in #255 - dynamic minimum requirements by @miloth in #259
- ⬆️ bump
ruffto0.8.2by @jorenham in #265 - ⬆️ bump the dev deps by @jorenham in #312
Other Changes
- 🧑💻 uv-compatible mypy vscode config by @jorenham in #256
- 💡 add a comment to prevent breaking the
#installationpermalink by @jorenham in #266 - 🔧 fix caching issue in
poe {mypy,stubtest,typetest}by @jorenham in #269 - 🔧 stricter
basedpyrightconfig by @jorenham in #283 - 👷 include
.mypyignorein sdist build by @jorenham in #284 - ➖ remove broken
mdformat-pyprojectby @miloth in #262 - 💚 towards fixing the
typetest-oldest-supported-numpyCI job by @jorenham in #289 - 👷 fix and simplify the CI workflow by @jorenham in #290
- Dynamic testing matrix for combinations of python and numpy versions. by @wolph in #286
New Contributors
AI generated Podcast
SciPy.Type.Hints.mp4
Full Changelog: v1.14.1.5...v1.14.1.6
v1.14.1.5
Highlights
scipy-stubsis now also available on conda-forge, thanks to @lucascolleyscipy-stubsnow usesuvfor package- and project-management (previouslypoetry)scipy.linalghas been significantly improved- functions with either real or complex output now use overloads for more accurate return types
- almost all functions are now aware of the shape-type of input array-likes and output
ndarrays.
scipy.optimizeis now 100% annotated (by hand)scipy.signalnow accurately type-hints the "waveform" functionssawtooth,square,chirp,sweep_poly,unit_impulseandgausspulsescipy.specialnow accurately type-hints 80% of its ufuncs using type-signature-specific overloaded protocols.
What's Changed
Improvements
*: switch to the shape-typedoptype.numpyarray-likes by @jorenham in #192special: type-signature-specific annotations for 80% of the ufuncs by @jorenham in #189special: update the development progress phase to 🌔 by @jorenham in #194signal: Add type stubs to_waveforms.pyi. by @pavyamsiri in #195datasets: Improved type-hints withTypedDicts andLiterals by @jorenham in #203- prefer
optype.numpyfor annotating arrays by @jorenham in #204 optimize: complete_constraintsand_trustregion_constr.*by @jorenham in #205optimize: complete the root-finding functions by @jorenham in #207optimize: completefixed_pointby @jorenham in #208optimize: completecurve_fit,leastsq, andfsolveby @jorenham in #209optimize: completeHessianUpdateStrategy,BFGS, andSR1by @jorenham in #210optimize: completebasinhoppingby @jorenham in #211optimize: fix and completedirectby @jorenham in #212optimize: complete_differentiable_functions(private) by @jorenham in #214optimize: complete_lsq(private subpackage) by @jorenham in #215- Codemod for pos-only
selfparameters by @jorenham in #218 optimize: completedifferential_evolutionby @jorenham in #219optimize: completedual_annealingby @jorenham in #220optimize: fix and improveminimizeandbasinhoppingby @jorenham in #221optimize: completeshgo, improvebasinhoppingby @jorenham in #222optimize: completeline_searchby @jorenham in #223optimize: complete_dcsrch(private) by @jorenham in #224optimize: completelinear_sum_assignmentby @jorenham in #225optimize: completequadratic_assignmentby @jorenham in #227signal: Replace the finalUntypedin_short_time_fft.pyi. by @pavyamsiri in #226optimize: complete_shgo_lib(private) by @jorenham in #228optimize: complete_trliband_trustregion*(private) by @jorenham in #236optimize: complete_numdiff(private) by @jorenham in #237optimize: complete_group_columns(private) by @jorenham in #238optimize: remove_remove_redundancy(private) by @jorenham in #239optimize: completefmin_cobylaby @jorenham in #240optimize: completefmin_l_bfgs_bandLbfgsInvHessProductby @jorenham in #241optimize: completefmin_slsqpby @jorenham in #242linalg._basic: add overloads for shapes and dtypes by @jorenham in #244linalg._decomp*: add overloads for shapes and dtypes by @jorenham in #245linalg: improved special matrix constructor signatures by @jorenham in #246linalg: improvednormsignature by @jorenham in #247linalg: improve the shape- & scalar-type overloads of various functions by @jorenham in #252
Documentation
- add docs to the
codegen/directory by @jorenham in #200 - improved
README.mdby @jorenham in #206 - document that
scipy-stubsis installable with conda by @jorenham in #230 - 📝 update the
scipycoverage phase table by @jorenham in #243 - Add a highlights section in
README.mdby @jorenham in #249 - update the
README.mdphase table to better reflect theUntypedcounts by @jorenham in #253 - prevent lock update with tools and
uvsetup guide by @miloth in #254
Dependencies
- bump
mdformatandmdformat-pyprojectby @jorenham in #187 - bump
ruffto0.8.0by @jorenham in #191 - bump
basedpyrightto1.22.0by @jorenham in #193 - bump
optypeto0.7.2by @jorenham in #197 - Bump poethepoet from 0.31.0 to 0.31.1 in the actions group by @dependabot in #202
- configure (based)pyright to ignore
.venvwhen opened by @jorenham in #213 - bump
ruffto0.8.1by @jorenham in #229 - bump
optypeto0.7.3by @jorenham in #232
Other Changes
- prepare for further development by @jorenham in #186
- move libcst config out of the root dir by @jorenham in #188
optimize: remove private testing module_tstutilsby @jorenham in #196- custom auto-generated release notes by @jorenham in #199
- enable all
ruffrules by default by @jorenham in #201 - restore the
libcstcodemod config by @jorenham in #217 - test with the oldest supported numpy version in the CI by @jorenham in #231
- use the new 0-d
optypearray aliases to simplify the code by @jorenham in #234 - use the new
optypestrict-shape array-likes by @jorenham in #235 - security policy update by @jorenham in #251
- use
uvas package manager by @miloth in #174
New Contributors
Full Changelog: v1.14.1.4...v1.14.1.5