SciPy 1.17.0 发行说明#

SciPy 1.17.0 是 6 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中包含一些弃用项和 API 变更,具体记录如下。建议所有用户升级到此版本,因为其中包含大量的错误修复和优化。在升级之前,我们建议用户检查自己的代码是否使用了已弃用的 SciPy 功能(为此,请使用 python -Wd 运行代码并检查 DeprecationWarning)。我们的开发重心现在将转向 1.17.x 分支的错误修复版本,以及在主分支上添加新功能。

此版本需要 Python 3.11-3.14 以及 NumPy 1.26.4 或更高版本。

此版本的亮点#

  • 许多 SciPy 函数已获得对 N 维数组输入批处理的原生支持,并增加了对数组 API 标准的支持。后者的总体摘要现已在一组 表格 中提供。

  • scipy.sparse 中,coo_array 现在支持索引。这包括整数、切片、数组、np.newaxisEllipsis,支持 1D、2D 和较新的 nD 索引。在 scipy.sparse.linalg 中,ARPACK 和 PROPACK 从 Fortran77 到 C 的重写现在支持使用外部伪随机数生成器(例如来自 numpy 的生成器)。

  • scipy.spatial 中,transform.Rotationtransform.RigidTransform 已扩展为支持 N 维数组。geometric_slerp 现在支持外插 (extrapolation)。

  • scipy.stats 增加了矩阵 t 分布和逻辑分布,并进行了许多性能和准确性改进。

  • 添加了对 64 位整数 (ILP64) BLAS 和 LAPACK 库的初始支持,包括 MKL 和 Apple Accelerate。如果遇到任何关于 ILP64 的问题,请向我们报告。

新功能#

scipy.integrate 改进#

  • 积分例程 dopri5dopri853LSODAvodezvode 已从 Fortran77 移植到 C。

  • 当积分区间为空时,scipy.integrate.quad 现在有一个返回 0 的快速路径。

  • BDFDOP853RK23RK45OdeSolverDenseOutputodecomplex_ode 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

scipy.cluster 改进#

scipy.interpolate 改进#

  • scipy.interpolate.make_splrepscipy.interpolate.make_splprepscipy.interpolate.generate_knots 添加了新的 bc_type 参数,用于控制样条拟合的边界条件。允许的值为 "not-a-knot"(默认)和 "periodic"

  • scipy.interpolate.NdBSpline 类添加了新的 derivative 方法,用于构造代表给定样条偏导数的新样条。此方法类似于 1 维样条对象的 BSpline.derivative 方法。此外,NdBSpline 的可变实例属性 .c 已更改为只读的 @property

  • 改进了 scipy.interpolate.RegularGridInterpolator"cubic""quintic" 模式的性能。此外,(可变的)实例属性 .grid.values 已更改为(只读)属性。

  • scipy.interpolate.AAA 的数值稳定性得到了提高,并增加了新的 axis 参数。

  • scipy.interpolate.FloaterHormannInterpolator 增加了对多维、批处理输入的支持,并增加了新的 axis 参数来选择插值轴。

  • RBFInterpolator 获得了一个兼容数组 API 标准的后端,并改进了对 GPU 数组的支持。

  • AAA*Interpolator*Poly*Spline 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

scipy.linalg 改进#

  • scipy.linalg.inv 例程已改进:

    • 它现在尝试检测其参数的结构,并选择合适的低级矩阵求逆例程。新的 assume_a 关键字允许在已知结构时绕过结构检测。对于批处理输入,除非提供了明确的 assume_a 值(在这种情况下,假设批次的所有 2D 切片结构相同),否则将对每个 2D 切片运行检测;

    • 添加了新的 lower={True,False} 关键字参数,以帮助为对称输入选择输入矩阵的上三角或下三角;详情请参阅 scipy.linalg.inv 的文档字符串;

    • 如果检测到病态 (ill-conditioned) 输入,该例程会发出 LinAlgWarning

    • 改进了批处理输入的性能。

  • scipy.linalg.fiedler 获得了对批处理输入的原生支持。

  • 对于某些矩阵结构,scipy.linalg.solve 在批处理输入下的性能得到了提高。

scipy.optimize 改进#

  • optimize.minimize(method="trust-exact") 现在接受特定于求解器的 "subproblem_maxiter" 选项。此选项可用于确保算法对于具有病态黑塞矩阵 (Hessian) 的函数收敛。

  • optimize.minimize(method="slsqp") 使用的回调函数可以通过接受单个关键字参数 intermediate_result 来选择使用新的回调接口。

  • BroydenFirst*JacobianBounds 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

scipy.signal 改进#

  • abcd_normalize 获得了更具信息量的错误消息,文档也得到了改进。

  • get_window 现在接受后缀 '_periodic''_symmetric' 来区分周期窗和对称窗(覆盖 fftbin 参数)。这惠及了 coherencecsdperiodogramwelchspectrogramstftistftresampleresample_polyfirwinfirwin2firwin_2dcheck_COLAcheck_NOLA 等函数,这些函数使用了 get_window 但未公开 fftbin 参数。

  • hilbert2 增加了新的关键字 axes,用于指定计算二维解析信号的轴。此外,hilberthilbert2 的文档得到了显著改进。

  • ShortTimeFFTLinearTimeInvariant 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

scipy.sparse 改进#

  • coo_array 现在支持索引。这包括切片、数组、np.newaxisEllipsis,支持 1D、2D 和新的 nD 索引。因此 COO 格式现在完全支持 nD,且允许在不转换格式的情况下进行索引。

  • 其他稀疏矩阵构建函数包括 expand_dimsswapaxespermute_dims,以及 kron 函数对 nD 的支持。

  • ARPACK Fortran77 库已移植到 C。在许多变化中,现在可以使用外部随机生成器(包括 NumPy PRNGs)进行可重复的运行。以前由于原始 ARPACK 代码的内部种子设定行为,这是不可能实现的。

  • 同样,PROPACK Fortran77 库也已移植到 C,并具有相同的 PRNG 增强和其他改进。

  • dok_array 现在支持 update 方法,该方法可用于使用字典、类似 dict.items() 的可迭代对象或另一个 dok_array 矩阵来更新稀疏数组。它还会执行额外的验证以确保键是有效的索引元组。

  • tocsr 的速度提高了约三倍,并且在更广泛的稀疏格式相互转换中删除了一些不必要的复制操作。

  • 添加了 scipy.sparse.linalg.funm_multiply_krylov,这是一种用于计算 y = f(tA) b 的重启 Krylov 方法。

  • sparse.linalg 中,LinearOperatorLaplacianNdSuperLU 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

  • sparse.linalg 中,eigseigsh 函数现在接受一个新的 rng 参数。

scipy.spatial 改进#

  • spatial.transform 模块获得了一个兼容数组 API 标准的后端。

  • transform.Rotationtransform.RigidTransform 已从支持 0D 单值和 1D 数组扩展到支持 N-D 数组,并遵循标准索引和广播规则。两者现在都有以下新增内容:

    • 一个 shape 属性。

    • identity() 构造函数增加了一个 shape 参数,应优先于现有的 num 参数。这也作为 Rotation.random() 的参数被添加(RigidTransform 目前没有 random 构造函数)。

    • mean() 函数增加了一个 axis 参数。

  • transform.Rotation.from_euler / from_davenport 生成的形状已更改,使其与广播规则保持一致。欧拉角的输入角度现在必须严格匹配最后一个维度中提供的轴数。生成的 Rotation 形状为 np.atleast_1d(angles).shape[:-1]。达文波特角 (Davenport angles) 的角度输入也必须匹配最后一个维度中的轴数。生成的 Rotation 形状为 np.broadcast_shapes(np.atleast_2d(axes).shape[:-2], np.atleast_1d(angles).shape[:-1])

  • Rotation.from_matrix 获得了一个 assume_valid 参数,当用户能保证矩阵输入有效时,该参数可以提高性能。在已知使用正交矩阵的情况下,from_matrix 现在也更快了。

  • scipy.spatial.geometric_slerp 函数现在可以进行外插。当给定超出范围 [0, 1] 的值时,geometric_slerp() 将在该范围外继续相同的旋转。例如,如果球面插值的 start 是赤道上的一个点,end 是北极的一个点,那么 t=-1 的值将给您南极的一个点。

  • Rotation.as_eulerRotation.as_davenport 方法增加了一个 suppress_warnings 参数,用于抑制万向节锁 (gimbal lock) 警告。

  • Rotation.__init__ 增加了一个新的可选参数 scalar_first,并且增加了一个新的 Rotation.__setitem__ 方法。

scipy.special 改进#

  • 以下统计应用函数的参数范围显著提高,错误率降低:btdtriabtdtribchdtrivchndtrchndtrixchndtridfchndtrincfdtrfdtrcfdtrigdtriagdtrixpdtrikstdtrstdtrit

  • 不完全贝塔函数 betaincbetainccbetaincinvbetainccinv 在极端参数范围内得到了改进。

scipy.stats 改进#

  • 添加了 scipy.stats.matrix_t 来表示矩阵 t 分布。它支持计算概率密度函数的 pdf(和 logpdf)方法以及生成随机变量的 rvs 方法。

  • 添加了 scipy.stats.Logistic 用于对服从逻辑分布的随机变量建模。

  • scipy.stats.quantile 现在接受一个 weights 参数来指定频率权重。

  • scipy.stats.quantile 在处理大型数组时速度更快,因为它不再内部使用稳定排序。

  • scipy.stats.quantilemethod 参数支持三个新值:'round_inward''round_outward''round_neareast',用于数据修整 (trimming) 和温索化 (winsorizing)。

  • scipy.stats.truncpareto 现在接受负的指数形状参数,使 truncpareto 能作为更通用的幂律分布使用。

  • scipy.stats.logser 现在提供了特定于分布的 sf 方法实现,提高了速度和精度。

  • 以下函数的实现已经过向量化:scipy.stats.ansariscipy.stats.cramervonmisesscipy.stats.cramervonmises_2sampscipy.stats.epps_singleton_2sampscipy.stats.flignerscipy.stats.friedmanchisquarescipy.stats.kruskalscipy.stats.ks_1sampscipy.stats.levenescipy.stats.mood。通常,这会提高多维(批处理)输入的性能。

  • 更新了 scipy.stats.anderson 的临界值表。

  • scipy.stats.anderson 的新 method 参数允许用户通过在表格值之间进行插值或使用蒙特卡罗模拟来计算 p 值。必须明确传递 method 参数,以便向结果对象添加 pvalue 属性,并避免关于即将移除 critical_valuesignificance_levelfit_result 属性的警告。

  • scipy.stats.anderson_ksamp 的新 variant 参数允许用户在三种不同的统计变量之间进行选择,取代了允许在两种统计变量之间切换的 midrank 参数。新的 'continuous' 变量在样本中没有结 (ties) 时等同于 'discrete',但计算速度更快。必须明确传递 variant 参数,以避免有关 midrank 属性弃用以及即将从结果对象中移除 critical_values 的警告。

  • 提高了大多数 scipy.stats.zipfian 方法的速度和准确性。

  • scipy.stats.Binomial 方法 logcdflogccdf 在尾部的精度得到了提高。

  • 改进了 scipy.stats.trapezoid.fit 的默认推测值。

  • 改进了 scipy.stats.binomscipy.stats.nbinomcdfsfisfppf 方法的精度和范围。

  • CovarianceUniformNormalBinomialMixturerv_frozenmulti_rv_frozen 类现在支持下标操作,使它们成为泛型类型,以兼容 scipy-stubs

  • multivariate_tmultivariate_normal 分布增加了一个新的 marginal(边缘分布)方法。

  • yeojohnson_llf 获得了新参数 axisnan_policykeepdims,现在返回 numpy 标量,而以前返回 0D 数组。

  • 新的 spearmanrho 函数是兼容数组 API 的 spearmanr 替代品。

  • median_abs_deviation 函数增加了一个 keepdims 参数。

  • trim_mean 函数增加了新的 nan_policykeepdims 参数。

数组 API 标准支持#

弃用的功能和未来的变更#

  • scipy.odr 模块在 v1.17.0 中已弃用,并将在 v1.19.0 中被完全移除。建议用户改用 odrpack 包。

  • scipy.sparse.diagsscipy.sparse.diags_array 的默认 dtype 行为将在 v1.19.0 中发生变化。

  • 在 v1.19.0 中,scipy.linalg.hankel 将不再展平 (ravel) 多维输入,而是将其视为批处理。

  • scipy.signal.lombscargleprecenter 参数已弃用,并将在 v1.19.0 中移除。此外,某些参数将变为仅限关键字 (keyword only)。

  • 对于 scipy.stats.anderson,返回对象的元组解包行为以及属性 critical_valuessignificance_levelfit_result 已弃用。请使用新的 method 参数以避免弃用警告。从 SciPy 1.19.0 开始,这些功能将不再可用,返回的对象将具有 statisticpvalue 属性。

  • 对于 scipy.stats.anderson_ksampmidrank 参数已弃用,应优先使用新的 variant 参数。这也意味着返回数组中 critical_values 的存在已弃用。

过期的弃用功能#

向后不兼容的变更#

  • transform.Rotation.from_euler / from_davenport 生成的形状已更改,使其与广播规则保持一致。欧拉角的输入角度现在必须严格匹配最后一个维度中提供的轴数。生成的 Rotation 形状为 np.atleast_1d(angles).shape[:-1]。达文波特角 (Davenport angles) 的角度输入也必须匹配最后一个维度中的轴数。生成的 Rotation 形状为 np.broadcast_shapes(np.atleast_2d(axes).shape[:-2], np.atleast_1d(angles).shape[:-1])

其他变更#

  • SciPy 使用的 Boost Math 库版本已从 1.88.0 升级到 1.89.0

  • 在 POSIX 操作系统上,如果用户未自行配置默认方法,SciPy 现在将在 Python 3.13 及更早版本中对 workers=<an-int> 调用使用 'forkserver' 多进程上下文。这遵循了 Python 3.14 的默认行为。

  • 添加了对 64 位整数 (ILP64) BLAS 和 LAPACK 库的初始支持。要启用它,请使用 -Duse-ilp64=true meson 选项构建 SciPy,并确保 LAPACK 库同时公开 LP64 和 ILP64 符号。目前支持的 LAPACK 库是 MKL 和 Apple Accelerate。请注意:

    • ILP64 支持是可选的,是对始终可用的 LP64 接口的补充;

    • 在运行时,您可以通过 get_{blas,lapack}_funcs 函数选择 ILP64 变体:scipy.linalg.lapack.get_lapack_funcs(..., use_ilp64="preferred") 如果可用则选择 ILP64 变体,否则选择 LP64 变体;

    • cython_blascython_lapack 模块为了 ABI 兼容性始终包含 LP64 例程。

如果遇到任何关于 ILP64 的问题,请向我们报告。

作者#

  • 姓名 (提交次数)

  • h-vetinari (3)

  • Joshua Alexander (1) +

  • Amit Aronovitch (1) +

  • Ayush Baranwal (1) +

  • Cristrian Batrin (1) +

  • Marco Berzborn (1) +

  • Ole Bialas (1) +

  • Om Biradar (1) +

  • Florian Bourgey (2)

  • Jake Bowhay (103)

  • Matteo Brivio (1) +

  • Dietrich Brunn (34)

  • Johannes Buchner (2) +

  • Evgeni Burovski (292)

  • Nicholas Carlini (1) +

  • Luca Cerina (1) +

  • Christine P. Chai (35)

  • Saransh Chopra (1)

  • Lucas Colley (121)

  • Björn Ingvar Dahlgren (2) +

  • Sumit Das (1) +

  • Hans Dembinski (1)

  • John M Dusel (1) +

  • DWesl (4)

  • Pieter Eendebak (6)

  • Kian Eliasi (2)

  • Rob Falck (1)

  • Abdullah Fayed (3) +

  • Emmanuel Ferdman (2) +

  • Filipe Laíns (1) +

  • Daniel Fremont (1) +

  • Neil Girdhar (1)

  • Ilan Gold (35)

  • Nathan Goldbaum (3) +

  • Ralf Gommers (124)

  • Nicolas Guidotti (1) +

  • Geoffrey Gunter (1) +

  • Matt Haberland (183)

  • Joren Hammudoglu (60)

  • Jacob Hass (2) +

  • Nick Hodgskin (1) +

  • Stephen Huan (1) +

  • Guido Imperiale (41)

  • Gert-Ludwig Ingold (1)

  • Jaime Rodríguez-Guerra (2) +

  • Jan Möseritz-Schmidt (2) +

  • JBlitzar (1) +

  • Adam Jones (2)

  • Dustin Kenefake (1) +

  • Robert Kern (3)

  • Gleb Khmyznikov (1) +

  • Daniil Kiktenko (1) +

  • Pascal Klein (2) +

  • kleiter (1) +

  • Oliver Kovacs (1) +

  • Koven (1) +

  • Abhishek Kumar (2) +

  • Arthur Lacote (2) +

  • Eric Larson (7)

  • Mouad Leachouri (1) +

  • Tristan Leclercq (1) +

  • Antony Lee (5)

  • Jesse Livezey (8)

  • Philip Loche (1)

  • Yuxi Long (4) +

  • Christian Lorentzen (1)

  • Joshua Markovic (1) +

  • Gabryel Mason-Williams (1) +

  • mcdigman (1) +

  • Rafael Menezes (1) +

  • Stefano Miccoli (1) +

  • Michał Górny (2)

  • Jost Migenda (7) +

  • Suriyaa MM (1) +

  • Andrew Nelson (72)

  • newyork_loki (2) +

  • Nick ODell (34)

  • Dimitri Papadopoulos Orfanos (2)

  • Drew Parsons (1)

  • Gilles Peiffer (3) +

  • Matti Picus (1)

  • Jonas Pleyer (2) +

  • Ilhan Polat (119)

  • Akshay Priyadarshi (2) +

  • Mohammed Abdul Rahman (1) +

  • Daniele Raimondi (2) +

  • Ritesh Rana (1) +

  • Adrian Raso (1) +

  • Dan Raviv (1) +

  • Tyler Reddy (136)

  • Lucas Roberts (4)

  • Bernard Roesler (1) +

  • Mikhail Ryazanov (27)

  • Daniel Schmitz (25)

  • Martin Schuck (25)

  • Dan Schult (33)

  • Mugunthan Selvanayagam (1) +

  • Scott Shambaugh (14)

  • Rodrigo Silva (1) +

  • Samaresh Kumar Singh (8) +

  • Kartik Sirohi (1) +

  • Albert Steppi (179)

  • Matthias Straka (1) +

  • Theo Teske (1) +

  • Noam Teyssier (1) +

  • tommie979 (1) +

  • Christian Veenhuis (1)

  • Pierre Veron (1) +

  • Shuhei Watanabe (1) +

  • Warren Weckesser (25)

  • WhimsyHippo (7) +

  • Rory Yorke (2)

  • Will Zhang (1) +

  • Eric Zitong Zhou (1)

  • Tingwei Zhu (1) +

  • Zhenyu Zhu (1) +

  • ਗਗਨਦੀਪ ਸਿੰਘ (Gagandeep Singh) (38)

    共有 117 人为此版本做出了贡献。姓名旁带有“+”的人是首次贡献补丁。此姓名列表为自动生成,可能不完全完整。

1.17.0 版本关闭的问题#

  • #1508: 文档中 Riccati-Bessel 函数拼写错误 (Trac #981)

  • #3890: ENH: stats.logser: 实现 cdf/sf

  • #4487: “scipy.integrate”的“dopri5”类中的“_solout”反转了...

  • #5503: ENH: special.betainc: 改进极端试验次数下的错误

  • #7931: scipy.special.tests.test_basic::TestCephes::test_fdtri 失败...

  • #9023: 有机会为 scipy.sparse.linalg.eig 添加 seed 或 random_state 参数...

  • #9185: BUG: sparse.linalg: ARPACK 错误 1

  • #9460: BUG: sparse.linalg.eigs: 排序行为的可靠性

  • #10744: BUG: sparse.linalg: 使用 BLIS BLAS 时测试失败

  • #11805: 致命 Python 错误:段错误 (Segmentation fault) - test_arpack.py::test_symmetric_modes

  • #12513: BUG: optimize: trust-exact 子问题中的停机问题

  • #13222: 将 scipy 的 Fortran 代码移植到 NAG 的 nagfor 编译器

  • #13671: QUERY: signal.coherence: 与 Matlab 的差异

  • #13692: scipy.sparse.linalg.eigsh 在 macOS 上处理复数矩阵时挂起

  • #13780: scipy.sparse.linalg.svds 的可重复性

  • #14498: 当 scipy.signal.detrend 中 type=”constant” 时忽略 overwrite_data=True 关键字参数

  • #14823: BUG: 特征值/向量例程产生的向量/矩阵...

  • #15940: odeint (lsoda) 发出过多无法过滤的警告。

  • #16232: BUG: 由于传递给 non-stealing 的新引用导致内存泄漏...

  • #18191: BUG: scipy.sparse.linalg._eigen.arpack 中的迭代次数大于……

  • #18736: TST: test_hermitian_modes 测试失败

  • #18919: BUG: 当 q=1 时,binom.ppf 的结果错误(广播问题?)……

  • #19291: BUG: firwin(pass_zero=False) 未能阻断直流分量 (DC)

  • #19756: BUG: sparse.linalg.eigsh:输出特征向量具有非确定性……

  • #19826: MAINT: gh-19724 的后续跟进(pytest 版本固定、临时 CI 更改……)

  • #19930: BUG: 多元 t 分布在 df=inf 时失效

  • #20050: ENH: interpolate: NdBSpline 偏导数

  • #20339: BUG: 复数稀疏特征值求解器发生段错误 (Segfault)

  • #20835: BUG: special.fdtri: 极端参数下的结果不准确……

  • #21039: ENH: 为 sparse.dia_array 实现所有相关方法

  • #21137: BUG: sparse.linalg.svds: ARPACK error -9: Starting vector is……

  • #21156: DOC: integrate: 教程中的 help 命令输出已过时……

  • #21541: ENH: spatial: Rotation.__mul__: 处理非 Rotation 类型……

  • #21563: ENH: stats.percentileofscore: 应修复 2D 数组输入问题……

  • #21716: DOC: conda-forge compilers 包现在也可在 Windows 上使用

  • #21936: BUG: linalg.blas 中的 *ger* 例程不是线程安全的

  • #22053: MAINT: 构建输出中出现 Cython lint 失败

  • #22310: BUG: 当 LinearOperator.dtype=None 时,scipy.sparse.linalg.eigsh 返回错误

  • #22365: BUG: ndimage: _rank_filter_1d.cpp 中的 C++ 内存管理问题

  • #22412: RFC/API: 将 clarkson_woodruff_transformlinalg 迁移……

  • #22436: BUG: special.itj0y0: t > 19 时出现回归问题

  • #22500: ENH: spatial.transform: 添加数组 API 标准支持

  • #22510: performance: scipy.stats 中的 _construct_docstrings 运行缓慢

  • #22682: BUG: special.betainc: 当 a 和 b 较小时不准确/不正确……

  • #22794: ENH: 为 stats.quantile 添加 weights 参数,类似于……

  • #22871: BUG: stats.sigmaclip: 返回了奇怪的阈值

  • #22880: BUG: interpolate: Akima1DInterpolator 对有效值抛出 ValueError……

  • #22887: DEV: 合并 spin 支持后的后续任务

  • #22974: ENH: sparse.linalg: 矩阵函数的 Krylov 方法

  • #22979: DOC: optimize.nnls: 应该是平方 2-范数而非 2-范数?

  • #22980: DEV: spin test -b all 重复添加了两次 --pyargs scipy

  • #23021: DEV: 我们能否“采集”全包范围的 make_xp_test_case 信息?

  • #23053: DEV: spin smoke-docs 重复添加了一个选项

  • #23080: BUG: optimize: 使用多进程时打开文件过多

  • #23101: BUG: special: 伴随 Legendre 函数中的不连续性

  • #23111: BUG: stats.pmean: 无穷阶时的值错误

  • #23116: BUG: spin build 导致的 UserWarning

  • #23124: CI: (重新)采用 (d)tach 进行模块化强制执行

  • #23136: DEV/DOC: 更新 _lib.decorator 的引入代码页

  • #23160: DOC: signal.medfilt: 移除过时的注释

  • #23166: BENCH/DEV: spin bench--quick 选项无效(总是……

  • #23171: BUG: interpolate.RegularGridInterpolator 在 2D 网格上失败……

  • #23195: BUG: 插值分解的新后端在处理 (1xn) 时失效……

  • #23204: BUG/TST: stats: ttest_ind 的极慢 (XSLOW) 测试失败

  • #23208: DOC: scipy.io 中部分警告缺失文档字符串

  • #23231: DOC: 修复 scipy v1.12.0 发布说明中的错误

  • #23237: DOC: API 参考文档中缺失面包屑导航且侧边栏不同……

  • #23248: BUG/TST: differentiatetest_dtypefloat16 下失败……

  • #23272: BUG: linalg.interpolative.reconstruct_matrix_from_id: 段错误……

  • #23297: BUG [nightly]: spatial.transform.Rotation.from_quat: 失败原因……

  • #23301: BUG: 自由线程:基于 multiprocessing.Pool 的功能……

  • #23303: BUG: spatial.transform.Rotation: 警告不一致

  • #23330: BUG: special.kv: AMOS Fortran 代码翻译错误导致……

  • #23334: DEV: spin lint: 始终使用 sys.executable

  • #23344: CircleCI 基准测试任务需要 hypothesis

  • #23345: DOC: 文档字符串中 PPoly.c 的维度错误

  • #23352: DOC: spatial.is_valid_dm: 具有误导性的文档

  • #23355: Chatterjee's Xi 根据 numpy 版本返回不同结果……

  • #23358: BUG: stats: 0 的 ppf 返回了分布范围之外的值……

  • #23369: DOC: interpolate: NearestNDInterpolator 支持多维……

  • #23371: BUG: (interpolate) 如果输入……_dierckx.data_matrix 抛出 ValueError

  • #23382: BUG: 使用 sparse.xxx_{matrix,array} 2D 单元素赋值

  • #23383: DOC/DEV: 修正可编辑安装的 spin 指南

  • #23390: BUG: stats.sampling: osx-arm64 上多个类发生段错误

  • #23391: ENH: spatial.transform: 数组 API 标准支持追踪器

  • #23400: ENH: spatial.geometric_slerp: 允许外推

  • #23409: BUG: stats.qmc.Sobol: 在 low_0_bit 中陷入死循环……

  • #23412: TST: stats: marray 测试在最新的 array-api-strict 下失败

  • #23418: BUG: 由于不正确的……scipy.signal.square 忽略了输入 dtype

  • #23423: CI: 新的 BLAS 测试 CI 任务未遵循 CI 跳过规则

  • #23431: DOC: interpolate.RbfInterpolator: “注意”部分中的方程式错误

  • #23449: DOC/ENH: signal.get_window: 对称/周期性的默认值不同……

  • #23462: BUG: sparse: load_npz 对维数 > 2 的 coo_arry 失败

  • #23477: DOC: 文件 scipy/_lib/_lazy_testing.py 已被移除

  • #23510: BUG: NdBSpline 在导数阶数过高时发生段错误

  • #23514: DOC: 在 README 中添加 LFX Insights 徽章

  • #23517: SHGO: 向目标函数传递参数时出现问题

  • #23542: BUG: interpolate: 运行时来自 fpknot 的内部错误……

  • #23551: BUG: stats.levene: 当 center="trimmed" 时测试结果不正确

  • #23553: BUG: scipy.sparse.csgraph.yen 因源点越界崩溃……

  • #23555: BUG: a 数组为空的 lfilter 可能触发误导性错误……

  • #23556: BUG: 除数或信号数组为空的 deconvolve 导致不一致……

  • #23559: DOC: stats: fligner 文档字符串中的一个参考文献出现了两次。

  • #23581: BUG: xp_capabilities 在文档字符串中添加了空行

  • #23596: DOC: stats.f_oneway 的 equal_var 参数版本信息错误

  • #23603: TST: 适配 NumPy 警告更改(空切片的平均值)

  • #23608: DOC: 明确 scipy.spatial.transform.Rotation.ra 的分布……

  • #23640: BUG: optimize: minpack LMSTR 中的终止准则不正确?

  • #23644: BUG: sparse: csc_array.setdiag() 导致索引未排序且未……

  • #23670: BUG: xp_promotexp_result_type 对大张量运行缓慢……

  • #23678: BUG: stats: 从 zipfian 生成的自定义分布具有……

  • #23686: BUG: macOS x86_64 上的 scipy 1.16.2 在 scipy.sparse.linalg.eigsh 中挂起……

  • #23689: CI: optimize: “UserWarning: 'where' used without 'out'” 错误……

  • #23703: DOC: special: factorialk 文档字符串中的第二个参数……

  • #23704: DOC: optimize: LinearConstraint 文档中的拼写错误

  • #23708: TST: FAILED scipy/stats/tests/test_continuous.py::TestDistributions::test_func……

  • #23710: BUG: signal/tests/test_short_time_fft.py::test_closest_STFT_dual_window_roundt……

  • #23711: BUG: stats/tests/test_axis_nan_policy.py::test_axis_nan_policy_axis_is_None

  • #23715: BUG: integrate: 基准测试 integrate.CubatureOscillatory.time_plain……

  • #23720: TST: torch 下 test_as_euler_symmetric_axes 的容差问题

  • #23742: QUERY: 拟合 4 参数 beta 分布导致非预期的……

  • #23750: TST: signal: 为备选后端测试添加更好的隔离……

  • #23760: DOC/DX: spin ipython --help 缺失必须使用 -- 的说明……

  • #23762: ENH: interpolate.RegularGridInterpolator: eliminate_zeros()……

  • #23763: BUG: scipy.odr.ODR 在 job=1 且显式……时发生段错误

  • #23778: ENH: 提高 csc 数组转换为 csr 数组的性能……

  • #23825: TST: 缺失 mathieu_even_coefmathieu_odd_coef 的测试

  • #23832: DOC: stats.quantile 中的广播机制

  • #23852: BUG/TST: stats: stats 中出现新的极慢 (XSLOW) 测试失败

  • #23867: BUG: special.comb(0, 0, repetition=False) == 0,而非 1

  • #23879: DOC: RigidTransform.as_components 文档有误

  • #23910: TST: stats: test_non_finite_inputs_and_int_bins 在自由线程下失败

  • #23925: DOC: “scipy.sparse……”的参数“shape”文档无效。

  • #23932: CI: mypy 和 clang 任务因“未使用函数”错误失败……

  • #23989: CI: Windows 任务挂起,OpenMP 冲突

  • #24043: DEV: 从 dtach 切换到 tach

  • #24046: TST: stats: TestStudentT.test_moments_t 失败

  • #24052: CI: TypeError: 数组输入存在多个命名空间

  • #24089: ENH: spatial.transform: 为 Rotation.from_matrix 添加 normalize 参数

  • #24131: BUG: 1.17.0rc1: ModuleNotFoundError: No module named 'scipy.integrate._lso……

  • #24152: DOC: 1.17.0rc1 发布说明中未提及的 1.17 API 变更……

  • #24212: BENCH, MAINT: (sparse) asv 套件兼容 NumPy 2.4.0

  • #24251: CI: linalg: ILP64 下的若干测试失败

  • #24256: DOC: 1.17.0rc2 发布说明中未提及的 1.17 API 变更……

1.17.0 的合并请求 (Pull requests)#

  • #19668: ENH: optimize.minimize: 为……添加 subproblem_maxiter 选项

  • #21683: ENH:MAINT:integrate: 用 C 语言重写 DOP F77 代码

  • #22041: BUG: 对 obj 执行 Py_DECREF 以避免内存泄漏

  • #22506: ENH: special.btdtria: 迁移至 boost

  • #22539: ENH/MAINT: 将 special.chndtr 及其反函数迁移至 boost

  • #22644: ENH: stats.quantile: 支持修剪 (trimming)/温索化 (Winsorizing) 的方法

  • #22699: ENH: special: boost 化 F 分布函数

  • #22743: ENH: ILP64 BLAS/LAPACK 支持

  • #22748: ENH:MAINT: sparse.linalg: 用 C 语言重写 ARPACK

  • #22795: ENH: special: 向 _support_alternative_backends 添加更多函数

  • #22827: ENH: stats: 为剩余的几个函数添加 marray 支持

  • #22856: MAINT: stats: 确保函数可在非默认设备上运行

  • #22857: ENH: stats: 为大部分 _axis_nan_policy 添加数组 API 支持……

  • #22885: MAINT: eager_warns: 接受 xp 作为仅限关键字参数

  • #22889: MAINT: 将 special.btdtrib 迁移至 boost

  • #22907: BENCH: stats.qmc.geometric_discrepancy: 添加基准测试

  • #22911: ENH: signal: 滤波器设计函数的数组 API 支持

  • #22914: ENH: signal: 为 filter_design 添加数组 API 兼容性……

  • #22924: ENH: linalg: 低级 nD 支持,第 3 次尝试

  • #22925: ENH: stats: 添加矩阵变量 t 分布

  • #22938: TST: signal 为新集合的处理添加测试覆盖……

  • #22962: MAINT: 将 stdtrstdtrit 迁移至 boost

  • #22972: ENH: spatial.transform.RigidTransform: 重构为纯 Python……

  • #22983: ENH: sparse.linalg: 用于评估……的重新启动 Krylov 方法

  • #22989: ENH: cluster: 向量化 is_isomorphic

  • #23006: REL: 将版本设置为 1.17.0.dev0

  • #23009: ENH: sparse: 提高从 DIA 到 CSR 格式的转换效率

  • #23012: BENCH: 针对备选数组后端的 asv 基准测试

  • #23015: DOC: scipy.signal.ShortTimeFFT.k_max: 修复切片索引

  • #23016: MAINT: 提高最低 NumPy 版本要求

  • #23019: BUG: interpolate.Akima1DInterpolator: 相同的重新排列……

  • #23020: ENH: interpolate.BSpline: 添加数组 API 标准接口

  • #23023: DEP: stats: 移除 find_repeats

  • #23026: DEV: 移除 --parallel,转而依靠 spin--jobs……

  • #23028: MAINT: 创建 _lib._array_api_override 以解决循环……

  • #23034: DEP: linalg.interpolative: 移除 seed 和 rand

  • #23039: TYP: 修复并改进 linalg._decomp_lu_cython 存根

  • #23041: DOC/DEV: 更新针对 spin 的开发者文档

  • #23043: DEP: linalg: 移除 kron

  • #23045: DEP: interpolate.interpnd: 移除来自私有模块的附带导入

  • #23050: DEV: 添加 spin notesspin authors 命令

  • #23052: ENH: interpolate: 基于 BSpline 的 make_ 函数的数组 API 支持

  • #23057: ENH: 通过缓存加速 array_namespace

  • #23058: CI: 清理自由线程任务,使用已发布的 Cython/Pythran

  • #23059: MAINT: 从 _factorialx_array_exact 中移除 NaN 处理

  • #23060: DOC: 修正 meson-distutils 中的一个脚注

  • #23062: DEV: 协助调试 Fortran 模块的自由线程构建

  • #23063: DEV: 忽略 pixi-dev-scipystack 目录

  • #23065: ENH: stats.tukey_hsd: 改进 TukeyHSDResult.__str__` 中的数组索引迭代……

  • #23071: ENH: linalg: solve 中的低级批处理支持

  • #23073: TST: linalg: 重构 test_blas

  • #23078: MAINT: smoke-docs: 向……添加 --doctest-only-doctests 标志

  • #23081: DOC: 添加总结各……数组 API 后端能力的表格

  • #23082: TST: linalg: 线程安全的随机数生成器 (rng)

  • #23083: TST: linalg: pytest-run-parallell 导致内存不足

  • #23084: TST: linalg: BLAS ger* 中的竞态条件

  • #23085: TST: signal: 修复不稳定的 TestZpk2Sos

  • #23087: CI: 将预发布和自由线程任务迁移至 CPython 3.14-dev

  • #23089: ENH/DEP: linalg: toeplitz 及相关函数支持批处理

  • #23092: DEV: 解决 spin docs 命令中的问题

  • #23093: DEV: 移除 spin smoke-docs 中重复的 --doctest-collect=api

  • #23094: DOC: linalg: 修复 cdf2rdfkhatri_rao 的概览

  • #23095: DEV: 弃用 python dev.py,改用 spin

  • #23096: CI: 迁移至 cibuildwheel 3.0b4 和 manylinux_2_28

  • #23104: ENH: stats: variation 函数支持 Dask

  • #23105: ENH: stats: pearsonr 支持 Dask 和 JAX

  • #23108: MAINT: 移除……中 *_impl 函数的可选参数

  • #23112: MAINT: 移除 stats.tests.test_stats.py 中重复的测试

  • #23117: BUG: 移除 linalg._decomp_interpolative 中的 cdef 导出

  • #23118: TYP: 泛型 signal.ShortTimeFFT 类型

  • #23121: BUG: sparse.linalg.LaplacianNd: 周期性特征向量

  • #23123: TYP: 禁用 NumPy 已弃用的 mypy 插件

  • #23125: MAINT: 将引入的 _lib.decorators 模块更新至 v5.2.1

  • #23129: DOC: special.roots_jacobi: 在文档字符串中添加示例

  • #23130: DEV: spin: 将 --setup-args 的简写改为 -S 以……

  • #23138: MAINT: sparse: 从 _spbase 中移除 Python 2 残留

  • #23140: TST: 修复缺失的异常

  • #23143: TST: 对 xp 测试运行 pytest-run-parallel

  • #23149: TST: ndimage.vectorized_filter: 在测试中添加缺失的断言

  • #23151: CI: 在 GitHub Actions 上使用 4 核

  • #23152: TST: io: 将内存峰值占用降低 9 倍

  • #23153: TST: optimize: 限制 pytest-run-parallel 的内存占用

  • #23173: ENH/DOC: signal.hilbert: 重构以避免额外的缩放数组……

  • #23175: MAINT: 升级 array-api-compat;加速 array-namespace

  • #23176: BUG: spin bench 忽略了 --quick 参数

  • #23181: DOC: spatial: 刚体变换文档清理

  • #23190: BUG/BENCH: 从 spin bench 中移除无条件的 --quick……

  • #23193: ENH: spatial: 优化 RigidTransform 的性能

  • #23194: MAINT: 改进 RigidTransform.from_rotation 的错误类型

  • #23198: ENH: spatial.transform.Rotation: 重构为纯 Python 类……

  • #23201: DOC : 移除 medfilt 函数中过时的注释

  • #23202: DEP: spatial: 对余弦和相关性函数的复数输入抛出错误

  • #23205: TST: stats.ttest_ind: 移除对已弃用/已移除参数 permutations 的测试

  • #23207: CI: 在数组 API 测试中始终设置 Python

  • #23210: DEP: spatial.distance: 移除 kulczynski1 和 sokalmichener 度量

  • #23212: DEP: signal: 移除对对象数组和长双精度 (longdouble) 的支持……

  • #23213: MAINT: 正向移植 1.16.0 发布说明

  • #23218: ENH: sparse: 为 1d、2d 和 nD 添加 COO 索引支持

  • #23223: MAINT: 将 _test_fortran.f 移植为 test_fortran.py 中的 Python 函数

  • #23224: MAINT: _lib: 移除旧的/不需要的代码

  • #23232: DOC: 修复 1.12.0-notes.rst 中的拼写错误

  • #23233: ENH: 在 make_splrep 中实现对 bc_type="periodic" 的支持……

  • #23234: TYP: 泛型 interpolate 类型

  • #23243: DEP: special: 移除已弃用的函数

  • #23244: TYP: 泛型 optimize 类型

  • #23247: ENH/DOC: signal.hilbert2: 重构以避免额外的缩放数组……

  • #23249: ENH: spatial.transform.Rotation: 添加数组 API 后端

  • #23253: BUG: interpolate.RegularGridInterpolator: 修复线性插值……

  • #23254: DOC: special: LaTeX 清理

  • #23255: MAINT: spatial._plotutils: 移除 matplotlib 1 代码

  • #23256: MAINT: 移除 _lib._threadsafety

  • #23257: DOC: 将孤立模块添加到 toctree

  • #23258: MAINT: 不依赖 decorator 进行 sparse 测试

  • #23259: ENH: stats: Logistic 分布

  • #23260: MAINT: 移除 _lib.decorator

  • #23262: TST: sparse.linalg: 提高 funm_multiply_krylov 的覆盖率

  • #23264: TST: test_axis_nan_policy: 遇非预期异常时跳过

  • #23265: TST: signal: 为多维数组添加 zpk2tf 测试

  • #23267: MAINT: sparse: 移动 _validate_indices_asindices……

  • #23271: DOC: interpolate.make_interp_spline: 修复细微的格式错误……

  • #23273: DOC: interpolate.make_splprep: 修复维度顺序

  • #23274: MAINT:sparse.linalg: ARPACK 重命名为 Arnaud 及其项目结构……

  • #23275: TST: 停止使用 suppress_warnings 和 assert_warns

  • #23286: TST: signal: 数组 API 转换后的测试清理

  • #23287: MAINT: differentiate: 添加 xp_capabilities

  • #23288: MAINT: optimize: 为函数标记 xp_capabilities

  • #23289: DOC: 添加指向 Golub 和 Van Loan 著作《Matrix Computations》的链接

  • #23290: TST: differentiate: 为 jacobian 使用正确的 xp_capabilities

  • #23291: BENCH: sparse: 为稀疏数组参数化基准测试并……

  • #23294: TST: 更好的线程不安全标记并重新启用 pytest-run-parallel……

  • #23298: BUG: spatial.transform.Rotation.from_quat: 修复 dtype 推断……

  • #23300: DOC: development_workflow: 修复 SciPy 提交准则链接

  • #23304: TST: optimize: 加速 test__basinhopping

  • #23305: TST: linalg: 使 test_expm_multiply 兼容 pytest-run-parallel

  • #23306: TST: 自由线程性能微调

  • #23307: TST: 自由线程:更多局部随机数生成器 (RNG)

  • #23311: MAINT/TST: 在 POSIX 上始终使用 forkserver 模式的多进程

  • #23313: BLD: 支持 Windows 上 flang/clang-cl 的构建警告

  • #23317: BUG: sparse.linalg: 修复 Windows 上的 arpack 复数数组问题

  • #23319: TST: io.wavfile: 为 SeekEmulatingReader.seek 添加测试

  • #23320: BUG:DOC: sparse.linalg: 修复更多 arnaud bug 并添加 C 代码文档

  • #23324: BUG: stats: 避免在 Python 以 -OO 运行时构建文档字符串

  • #23325: DOC: interpolate/RBF: 调整文档字符串示例及维度

  • #23326: DEV: 从 .gitignore 中移除一个非生成文件

  • #23327: DOC/BUG: 修复一些动态修改的文档字符串。

  • #23331: TST: 从 pytestmark 读取 @xp_capabilities

  • #23340: DEP/MAINT: sparse: 更改 ‘diags_array’ 的默认 dtype 行为……

  • #23341: BUG: signal: zpk2tf: 支持对多维数组的 array-api-strict

  • #23343: DOC: 修复琐碎的拼写错误

  • #23346: DOC: 修正文档字符串中 PPoly.c 的维度

  • #23349: BENCH, TST: 不依赖 hypothesis 的基准测试

  • #23350: BUG: linalg: 修复 solve(..., assume_a='pos', lower=False)

  • #23354: DEV: 在 spin lint 中全面使用 sys.executable

  • #23357: ENH, MAINT: 为 solve 和 inv 添加 assume_a="diagonal"

  • #23359: DOC: 为 show_config() 添加示例

  • #23360: DOC: io: 为警告和错误添加文档字符串

  • #23362: MAINT: linalg.{inv, solve}: 改进批处理的错误报告……

  • #23366: DOC: 澄清 is_valid_dm 不检查三角不等式

  • #23368: TST: linalg: 为 test_orth_memory_efficiency 小幅上调容差

  • #23370: ENH: spatial: 为……添加抑制万向节锁 (gimbal lock) 警告的能力

  • #23374: DOC: 修正了 NearestNDInterpolator 的文档字符串

  • #23375: ENH: 添加 NdBSpline.derivative 方法

  • #23381: MAINT: stats: 对所有公共函数应用 xp_capabilities 装饰器

  • #23388: DOC: 修复数组 API 支持表

  • #23389: MAINT: cluster.hierarchy: 将 set_link_color_palette 标记为超出……

  • #23392: MAINT: datasets: 将函数标记为超出数组 API 范围……

  • #23393: DOC: 移除手动维护的数组 API 支持列表

  • #23394: DOC: stats.rv_continuous.ppf/isf: 记录惯例说明

  • #23399: ENH: 添加 Accelerate ILP64 支持及 CI 任务

  • #23401: DOC: 正向移植 1.16.1 发布说明

  • #23404: DOC: special: 修复 *_all 函数的输出形状

  • #23405: MAINT:BLD:_lib: 从……中移除已弃用的 Python TLS 回退代码

  • #23406: DOC: stats.false_discovery_control: 添加输入不需要……的说明

  • #23410: MAINT: integrate: 为公共函数添加 xp_capabilities

  • #23415: MAINT: ndimage: 为公共……中的函数添加 xp_capabilities

  • #23416: DOC: 为 scipy.stats.kendalltau 添加复杂度说明

  • #23420: MAINT: 解除 special-linalg 与 linalg-sparse 之间的导入依赖

  • #23421: DX: 不要对 cython 构建输出进行 lint 检查

  • #23422: DOC: special: 为 ellipeinc 添加示例并修正文档字符串……

  • #23424: ENH: spatial: 优化 Rotation 的性能

  • #23425: ENH: spatial.transform.RigidTransform: 添加数组 API 后端

  • #23426: ENH: spatial.geometric_slerp: 允许外推

  • #23427: DOC: stats.chatterjeexi: 说明如何处理 x 中的结 (ties)

  • #23432: DOC: interpolate.RBFInterpolator: 修复拼写错误

  • #23434: CI: 修复 linux_blas.yml 任务中的跳过条件

  • #23439: DOC: special: 为 loggamma 添加一些简单示例。

  • #23443: BUG: stats.qmc: 避免 sobol 在请求……时陷入无限循环

  • #23453: MAINT: 支持 ruff 0.12

  • #23454: ENH, MAINT: 更简单的 calculate_areas()

  • #23456: DOC: 更新 Jupyter 项目治理链接

  • #23463: DOC: sparse.kronsum: 添加示例

  • #23465: BUG: sparse: nD 稀疏 save_npz 和 load_npz

  • #23466: DOC: 移除一条备注中的样板文字

  • #23467: ENH: spatial.transform.Rotation: 支持广播

  • #23468: DOC: optimize.shgo: 修正 minimize_every_iter 的描述

  • #23470: DOC: 更新一个关于 numba 支持的链接

  • #23473: DOC: special.hankel1: 添加示例并移除旧的文档字符串副本

  • #23476: DEP: signal.lombscargle: 弃用 precenter 参数

  • #23479: DOC: 更新过时的 lazy_xp_function 引用

  • #23483: ENH: signal.abcd_normalize: 重构、改进文档字符串并使其……

  • #23486: DOC: special: 移除重复的文档字符串

  • #23489: DOC: 明确 nnls 最小化的是平方 2-范数(关闭 #22979)

  • #23491: DOC: signal.detrend: 明确 overwrite_data 的行为

  • #23492: DOC: 移除 help(integrate) 的输出

  • #23494: ENH: integrate.quad: 若上下限相等则直接返回

  • #23496: DOC: special: 添加了指向数学函数数字图书馆 (DLMF) 的引用

  • #23497: ENH: integrate.romb: 数组 API 支持

  • #23498: TST: 补充 integrate.quad 上下限……时的测试

  • #23499: ENH: 更新 boost 至 1.89

  • #23501: ENH: integrate.cumulative_trapezoid: 添加数组 API 支持

  • #23502: DOC: 在文档字符串的数组 API 支持部分添加标题

  • #23504: BUG: stats: trapezoid.fit 不收敛

  • #23507: ENH: 为 linalg.orthogonal_procrustes……添加数组 API 支持

  • #23511: DOC: interpolate: Ndbspline 导数方法列表

  • #23512: MAINT: 移除未使用的 cdflib 代码

  • #23513: ENH: integrate.cumulative_simpson: 添加数组 API 支持

  • #23518: ENH/BUG: signal.get_window: 重构并允许 '_periodic' 和……

  • #23520: BUG: shgo 篡改了用户提供的字典

  • #23521: BUG: shgo 应为 fun/jac/hess 接受 args

  • #23523: MAINT: 使用 reshape 而非直接设置……的 shape 属性

  • #23524: MAINT: 使用 reshape 而非直接设置……的 shape 属性

  • #23526: MAINT: 使用 reshape 而非直接设置……的 shape 属性

  • #23528: CI: 切换至 windows-2025 [wheel 构建]

  • #23531: ENH:MAINT: sparse.linalg: 用 C 语言重写 PROPACK

  • #23534: ENH: sparse: 添加 swapaxes, permute_dims, expand_dims……等函数

  • #23535: BUG: special: 修复被颠倒的上溢和下溢错误消息。

  • #23536: DOC: 将数学符号转换为 Latex 以保持格式一致

  • #23537: ENH: 添加两个与广义调和数相关的私有 ufunc。

  • #23538: MAINT: differential_evolution,polish 接受一个可调用对象

  • #23547: linalg.solve: 将 “sym”/”her” 求解器移至 C 语言实现

  • #23557: BUG: 修复 levene 和 fligner 在使用 trimmed……时测试结果不正确的问题

  • #23558: DOC: special.modfresnelm 文档字符串方程式修正

  • #23562: DOC: 修复 fligner 文档字符串中的重复和失效链接

  • #23565: DOC/DEV: 更新针对 spin install 的可编辑安装指南

  • #23566: MAINT: 使用 np.view 而非直接设置 dtype

  • #23569: ENH: interpolate.FloaterHormannInterpolator: 添加 axis 参数

  • #23572: DOC: 修复 API 参考文档中的一些拼写错误

  • #23573: MAINT: slsqp 回调函数接受 intermediate_result

  • #23574: ENH: linalg.fiedler: 添加原生批处理支持和数组 API 支持

  • #23575: MAINT: 使用 boost master 分支

  • #23579: ENH: interpolate.AAA: 添加对角线缩放以改善条件数

  • #23584: ENH: 将 special.chdtriv 迁移至 boost

  • #23585: MAINT: 移除由各种装饰器添加到文档字符串中的空行

  • #23586: MAINT: 升级 array-api-extra 至 v0.9.0

  • #23588: MAINT: 使用 jit 测试 spatial.transform.Rotation.__iter__

  • #23590: ENH: linalg.block_diag: 添加数组 API 支持

  • #23591: DOC: 移除拼写错误

  • #23592: MAINT: special: 用……替换不推荐使用的断言函数

  • #23598: DOC: 修复 API 参考文档中的格式问题

  • #23599: DOC: stats.f_oneway: 将 versionadded 改为 1.16.0

  • #23600: MAINT: 修复……中更多的内存管理和错误处理问题

  • #23601: DOC: 正向移植 1.16.2 发布说明

  • #23606: MAINT: signal: 简化 cheb2ap 公式

  • #23607: BUG: signal.lfilter: 为无效……提供更有意义的错误消息

  • #23609: BUG: signal.deconvolve: 为无效……提供更有意义的错误消息

  • #23610: TYP: 更多泛型 integrate 类型

  • #23614: TST: 为 NumPy 警告更改提供垫片 (shim)

  • #23616: BUG: ndimage: 修复内存分配失败的处理。

  • #23618: BUG: sparse.csgraph.yen: 校验源点和汇点以避免段错误……

  • #23620: MAINT: io: 改进 spmatrix 参数处理及描述……

  • #23621: DOC/BUG: signal.firwin: 改进文档

  • #23623: DOC: stats.levy_stable: 改进

  • #23625: ENH: sparse: 添加 DOK 更新方法及测试

  • #23626: BUG:sparse: 允许通过稀疏容器设置单元素值

  • #23627: DOC: spatial: Rotation.random: 在文档字符串中提及分布

  • #23629: CI: 使用 asv<0.6.5 以避开该版本的问题 - 修复……

  • #23630: DEV: 从子模块中移除 shallow

  • #23632: MAINT: spatial.transform.Rotation: from_euler/from_davenport……

  • #23633: MAINT/TST: stats: 放宽一项测试容差。

  • #23636: TST: stats: 再次针对 marray 后端进行测试

  • #23638: CI: 适配 gpu-ci.yml 至新的 Pixi 工作区

  • #23645: MAINT:optimize: 修复 MINPACK 中缺失的指针解引用

  • #23646: CI: 修复由于新版 click 发布导致的 spin 损坏问题

  • #23647: CI: 修复由于新版 click 发布导致的 spin 损坏(跟进)

  • #23649: CI: 对 array_api.ymllint.yml 使用 Pixi

  • #23650: DOC: 更新 scipy.optimize.root 中的一个参考链接

  • #23653: MAINT: 修复 spatial.transform.RigidTransform xp 后端注释

  • #23654: CI: 对 macos.yml 使用 Pixi

  • #23655: ENH: stats.truncpareto: 允许负指数

  • #23658: CI: Pixi: 使用 no-pin 策略并重构环境

  • #23659: MAINT: signal: 去除 _swapaxes 辅助函数的重复

  • #23661: DOC: 改进连续分布描述中的格式

  • #23662: ENH: signal: 将 Savitzky-Golay 滤波器转换为数组 API

  • #23666: DOC/DEV: 记录 scipy.signal 在数组 API 方面的注意事项。

  • #23667: ENH: integrate.qmc_quad: 添加数组 API 支持

  • #23668: MAINT: signal: 收紧对象数组的变通处理

  • #23669: DOC: linalg: 记录批处理支持

  • #23671: DOC: 在 CSS 中更新稳定版切换按钮样式

  • #23674: MAINT: 修复空白字符测试

  • #23675: ENH: spatial.transform.RigidTransform: 支持广播

  • #23676: BUG: 修复 #23644: sparse: csc_array.setdiag() 导致索引……

  • #23677: ENH: sparse: 添加 nD kron 稀疏构建

  • #23679: MAINT/STY: spatial._kdtree: 修复……默认值的类型

  • #23680: MAINT: linalg.hankel: 警告不要改变多维数组的行为……

  • #23683: MAINT: sparse: 避免最近自由线程下 test_matrix_io.py……的问题

  • #23688: MAINT: 从允许的符号中移除 'o'(希腊字母 omicron)。

  • #23690: DOC: spatial.transform.Rotation: 更新文档

  • #23692: MAINT: stats.pmean: 强制要求 p 为有限值

  • #23693: ENH: stats.mode: 添加数组 API 支持

  • #23694: DOC: 修正 scipy.sparse.linalg 中细微的格式问题

  • #23695: DOC: spatial.transform.RigidTransform: 更新文档

  • #23696: TST: special: 避开 mpmath 测试中极慢的边缘情况

  • #23697: DEV: 改进关于调试构建的 spin build --help

  • #23699: DOC: stats.sigmaclip: 结果可能不符合直觉特性

  • #23702: ENH: stats.lmoment: 添加数组 API 支持

  • #23705: MAINT: stats.rv_discrete.ppf/isf: 修复数组参数的行为……

  • #23706: MAINT: stats.multivariate_t.logpdf/pdf: 修复无限自由度特殊……

  • #23709: ENH: stats.alexandergovern: 添加数组 API 支持

  • #23713: TST: macos-15-intel

  • #23714: DOC: 修正 factorialk 参数文档中的拼写错误

  • #23716: TST: stats.Binomial.logcdf: 提高尾部精度

  • #23717: ENH: 将 special.pdtrik 迁移至 boost

  • #23718: ENH: spatial: 实现 RigidTransform.mean()

  • #23719: DOC: 细微拼写错误

  • #23721: TST: test_as_euler_symmetric_axes 容差上调

  • #23724: DOC: 修复 scipy.linalg.polar u 的文档字符串。

  • #23726: 修复拼写错误 (coefficent -> coefficient)

  • #23727: MAINT: 统一 spatial.[c]KDTree 方法的参数默认值……

  • #23729: BUG: spatial: 修复 ndim > 1 时 Rotation 均值的形状

  • #23733: ENH: stats.logser: 实现 sf 方法

  • #23735: CI: 静默 pyparsing 3.3.0a1 的弃用警告

  • #23739: 维护:stats:移除对 np.random.seed 的使用

  • #23740: 修复文档中将 Riccati 误拼为 Ricatti 的拼写错误

  • #23741: 文档:signal.hilbert:示例中使用瞬时频率

  • #23743: Cygwin 插值测试预期失败 (xfail)

  • #23744: 增强:stats.bootstrap:支持 Array API

  • #23745: 文档:stats.beta:记录 3 参数和 4 参数 MLE 的问题

  • #23746: 增强:为 RBFInterpolator 添加 Array API 支持

  • #23752: 文档:在 ndimage 教程中将一段话从代码移至 markdown

  • #23753: 维护:interpolate:在 make\_ 函数中使用 xp-capabilities

  • #23755: 修复:interpolate:如果所有权重均为零,则优雅地报错

  • #23758: 增强:使用 xsf 的不完全函数实现 gdtrixgdtria

  • #23759: 增强:interpolate:使 NdBSpline 和 RGI 兼容 Array API

  • #23764: 文档:special:统一修正型贝塞尔函数阶数并修复 Hankel…

  • #23765: 测试:signal:仅在函数中隔离替代后端的使用…

  • #23767: 修复:signal:修复 test_closest_STFT_dual_window_roundtrip

  • #23769: 文档:special._specfun.eulerb:修复 cython 文档字符串

  • #23770: 维护:清理一些过时的 CPython C API 惯用法

  • #23771: 修复:odr:防止显式模型且 job=1 时出现段错误 (#23763)

  • #23772: 增强:stats.permutation_test:添加 Array API 支持

  • #23773: 文档/开发者体验:记录在 spin ipython 和 spin python 中 -- 的用法

  • #23775: 增强:stats.power:添加 Array API 支持

  • #23779: 增强:stats.false_discovery_control:添加 Array API 支持

  • #23780: 增强:interpolate.RegularGridInterpolator:从中移除零…

  • #23782: 增强:通过不使用稳定排序来加速分位数计算

  • #23788: 测试:一些测试容差的上调

  • #23789: 文档:改进 scipy.optimize 模块的格式

  • #23792: 持续集成:在 Windows 作业中使用 Pixi

  • #23795: 维护:stats.iqr:为 Array API 转换做准备

  • #23796: 测试:进一步上调测试容差以适应 Accelerate

  • #23797: 增强:sparse:在适当的位置为 astype() 添加 copy=False 参数…

  • #23802: 基准测试:为 scipy.stats.quantile 添加简单基准测试

  • #23803: 增强:stats.sigmaclip:添加 Array API 支持

  • #23804: 文档:将数学叙述转换为 LaTeX 格式 [仅限文档]

  • #23807: 增强:stats.yeojohnson_llf:添加 Array API 支持

  • #23808: 文档:删除两个对无用文件的引用

  • #23809: 增强:stats.median_abs_deviation:添加 Array API 支持

  • #23810: 增强:stats.brunnermunzel:添加 Array API 支持

  • #23812: 文档:修复拼写错误

  • #23816: 文档:special.diric:“Dirichlet function” 改为 “Dirichlet…

  • #23819: 增强:stats.cramervonmises_2samp:向量化统计量和渐近计算…

  • #23822: 增强:stats.kruskal:向量化实现

  • #23823: 维护:interpolate:将旧版函数标记为不属于 Array API 范围…

  • #23824: 文档:special.mathieu_odd_coef:“even” 改为 “odd”

  • #23828: 增强:spatial.transform.Rotation 为 Rotation.mean 添加 axis 参数

  • #23831: 文档:修正几处拼写错误和缩进

  • #23834: 增强:stats.friedmanchisquare:简化并向量化实现

  • #23835: 文档:stats.quantile:明确广播行为

  • #23837: 增强:stats.mood:向量化实现

  • #23838: 测试:special:更新一些 Mathieu 函数的测试。

  • #23840: 增强:stats.levene:向量化实现

  • #23841: 构建:提升 wheel 构建镜像版本

  • #23843: 增强:stats.ansari:向量化实现

  • #23844: 开发:将 Pixi 工作区移动到仓库根目录

  • #23845: 文档:修正 scipy.stats.kstatvar 中 var(k2) 的分母

  • #23846: 文档:删除参考文献中一个无效的 URL

  • #23847: 增强:stats.fligner:向量化实现

  • #23849: 增强:stats.chatterjeexi:添加 Array API 支持

  • #23850: 文档:改进有向豪斯多夫距离 (Hausdorff distance) 的文档

  • #23851: 增强:stats.spearmanrho:兼容 Array API 的 spearmanr 替代函数

  • #23853: 文档:spin:对 python 和 ipython 命令的帮助文本进行润色。

  • #23855: 测试:stats.multiscale_graph_correlation:更新参考值

  • #23856: 测试:sparse.linalg.tfqmr:避免因平台相关而导致的失败…

  • #23858: 文档:使 DOI 可点击

  • #23861: 文档:修正拼写错误:an 1d -> a 1d

  • #23862: 增强:stats.kruskal:添加 Array API 支持

  • #23863: 增强:special:为 _gen_harmonic 添加双精度类型处理...

  • #23865: 维护/测试:stats.yeojohnson_llf/boxcox_llf:修复/测试 nan_policy/keepdims…

  • #23866: 文档:为 scipy.spatial.KDTree 添加参考论文

  • #23869: 增强:spatial.transform.Rotation:为 random 及其它函数添加 shape 参数…

  • #23870: 增强:stats.mannwhitneyu:添加 Array API 支持

  • #23871: 文档:stats:修复 boxcox 文档字符串中的一些数学标记。

  • #23873: 文档:将 scipy.stats.moyal 的参考文献更新为新 URL

  • #23874: 测试:spatial.transform.Rotation:修复 Rotation.random 测试

  • #23875: 增强:spatial.transform.RigidTransform:为以下项实现 shape

  • #23876: 文档:在 fractional_matrix_power 的参考论文中添加 DOI…

  • #23877: 维护/持续集成:使用 dtach 强制执行模块化

  • #23880: 测试:interpolate.AAA:上调测试容差

  • #23881: 增强:stats.epps_singleton_2samp:向量化实现

  • #23883: 文档:前向移植 1.16.3 版本说明

  • #23887: 文档:修正代码注释中的语法问题

  • #23889: 增强:stats.levene:添加 Array API 支持

  • #23890: 文档/测试:stats.quantile:记录并测试 JAX 支持

  • #23891: 增强:stats.iqr:添加 Array API 支持

  • #23893: 维护:stats.epps_singleton_2samp:输入中的 NaNs/Infs -> NaNs…

  • #23895: 修复:linalg:修复 MKL ILP64 符号错误命名

  • #23897: 文档:sparse:为三个新函数的文档字符串添加示例章节

  • #23898: 增强:stats.wilcoxon:添加 Array API 支持

  • #23899: 增强:stats.friedmanchisquare:添加 Array API 支持

  • #23903: 测试:signal:标记失败的测试以疏通持续集成流水线

  • #23904: 基准测试:integrate:在持续集成中跳过极慢 (xslow) 的基准测试

  • #23905: 持续集成:在 Intel oneAPI 工作流中释放磁盘空间

  • #23911: 测试:stats:避免修改共享的 self.u

  • #23912: 增强:stats.fligner:添加 Array API 支持

  • #23914: 增强:integrate:用 C 语言重写 LSODA

  • #23915: 修复:special:修复 eval_{legendre, 中的收敛判据…

  • #23917: 文档:special:椭球调和函数并非拉梅函数 (Lame)

  • #23920: 开发:更新 CODEOWNERS

  • #23921: 修复:signal:确保各处滤波器函数的 dtype 一致…

  • #23922: 修复:optimize:为 py314 添加关于 inspect.signature 的包装器…

  • #23928: 增强:stats.cramervonmises_2samp:添加 Array API 支持

  • #23929: 增强:stats.epps_singleton_2samp:添加 Array API 支持

  • #23930: 增强:stats._xp_searchsorted:私有向量化 searchsorted

  • #23933: 增强:spatial.transform:为 RigidTransform.mean 添加 axis 参数

  • #23934: 文档:spatial:RigidTransform 文档微调

  • #23936: 构建/持续集成:添加 ASAN 抑制和持续集成作业

  • #23937: 测试:spatial.transform.RigidTransform:添加多维拼接…

  • #23940: 修复:sparse.csgraph:移除相对导入以适配 Cython 3.2

  • #23941: 增强:stats.quantile:添加对频数权重的支持

  • #23942: 文档:修正 “scipy.sparse.random_array” 的 “shape” 类型

  • #23948: 文档:stats.cumfreq:修正图表的分箱边缘

  • #23952: 维护:stats:消除来自…的 “unused function” 构建噪声

  • #23954: 基准测试:interpolate:修复 RGI 子类化基准测试

  • #23955: 文档:在 Array API 表中列出类

  • #23956: 维护:为 BSpline 添加 xp-capabilities

  • #23963: 增强:integrate:用 C 语言重写 VODE 和 ZVODE

  • #23964: 增强:stats.ks_1samp:向量化实现

  • #23966: 增强:stats.cramervonmises:向量化并添加 Array API 支持

  • #23970: 增强:stats.ks_1samp:添加 Array API 支持

  • #23971: 增强:stats.ansari:添加 Array API 支持

  • #23974: 增强:stats:更新了正态分布的分步临界值…

  • #23975: 维护:signal:移除 detrend 中一个过时的变通方案

  • #23976: 文档:interpolate.interpn:在示例中添加数值对比

  • #23979: 修复:special:修复 comb(n, 0, repetition=True) 返回 0 的问题…

  • #23981: 增强:stats._xp_searchsorted:简化、边界情况处理及向量化…

  • #23982: 开发:更新 Pixi 工作区名称和描述

  • #23984: 开发:更新 CODEOWNERS

  • #23986: 维护:同步并更新 scipy-openblas 至 0.3.30.0.8

  • #23987: 持续集成:减少 GitHub Actions 中的缓存使用

  • #23988: 持续集成:为 setup-pixi 添加 environments 参数以记录依赖关系

  • #23993: 构建/开发:在 Windows 上强制使用 openblas

  • #23994: 文档/构建:澄清 RHEL 中 yum 的用法

  • #24003: 维护:stats:重新启用 qmc 中关于 “unused function” 的警告…

  • #24004: 持续集成:在自由线程作业中使用 numpy 稳定版

  • #24006: 维护:移除 optimize.differential_evolution 中的一个循环引用

  • #24007: 测试:optimize.least_squares:减少进程数和线程数…

  • #24008: 修复:修复特殊函数中与解释器崩溃相关的…

  • #24012: 测试:optimize.minimize:通过以下方式使 trust-constr 测试线程安全…

  • #24013: 修复:确保 _fitpack_repro._validate_inputs 中的输入为 C 连续的…

  • #24016: 持续集成:每 2 天在 main 分支运行缓存密集型的 OneAPI 作业以进行优化…

  • #24017: 修复:special.assoc_legendre_p:更新 xsf 以修复 z=-1,

  • #24023: 测试:integrate.qmc_quad:容差上调

  • #24024: 增强/测试:signal:为 scipy.signal 添加 xp_capabilities

  • #24025: 文档:stats:为 Cramer von Mises 函数添加方程式

  • #24028: 维护:integrate:初始化变量以消除编译器警告

  • #24029: 增强:stats.mood:添加 Array API 支持

  • #24030: 增强:stats.anderson:添加 method 参数

  • #24031: 增强:stats.anderson_ksamp:添加 variant 参数

  • #24033: 弃用:弃用 scipy.odr

  • #24036: 持续集成:每 2 天在 main 分支运行 Windows OneAPI 作业以预取缓存

  • #24039: 文档/测试:fft:使用 xp_capabilities 标记 Array API 覆盖范围

  • #24040: 文档:在 README 中添加 LFX Insights 徽章

  • #24044: 文档:optimize.minimize:修复 trust-exactsubproblem_maxiter 文档…

  • #24045: 维护:signal:移除零散的 np.testing 断言

  • #24047: 测试:stats.t:为矩测试 (moment test) 添加容差

  • #24048: 开发:从 dtach 切换到 tach

  • #24049: 维护:针对大规模情况加速 xp_promotexp_result_type

  • #24050: 开发:从工作区移除未使用的 build-mkl 任务

  • #24053: 修复:signal:修复一个 GetWindow 测试

  • #24056: 增强:spatial:为以下项分离出 from_matrix 正交化过程…

  • #24057: 维护:修复来自 pytest-run-parallel 的弃用警告

  • #24059: 持续集成:撤回预发布版 NumPy,并从 np2 发布版恢复隔离…

  • #24061: 维护:修复 nnls 文档中的拼写错误

  • #24063: 测试:linalg/solve:重新启用并修复 “pos def” 求解测试

  • #24067: 开发:添加 test-coverage 和 test-xslow 任务

  • #24068: 开发:tach:使用 respect_gitignore = "if_git_repo"

  • #24070: 维护:interpolate/RBF:在 pythran 中使用固定宽度整数

  • #24071: 开发:添加 bench 任务

  • #24076: 修复:对于 NdBSpline 中超出范围的导数阶数返回零...

  • #24077: 维护:锁定 Pixi 版本以修复持续集成

  • #24080: 弃用:signal.lombscargle:弃用位置参数,并对 precenter=False 发出警告

  • #24083: 增强:stats.f_oneway:添加 Array API 支持

  • #24085: 文档:linalg:编辑文档说明:我们不再导入 numpy linalg…

  • #24092: 增强:spatial.transform:为 Rotation.from_matrix 添加 assume_valid 参数…

  • #24094: 测试:fft:为所有使用 uarray 的函数设置 allow_dask_compute

  • #24095: 文档:differential_evolution - 修复自定义策略示例中的拼写错误

  • #24097: 增强:stats:在 stats.multivariate_t 中添加边缘函数

  • #24098: 测试:linalg:取消跳过一个测试

  • #24100: 文档:SciPy 1.17.0 版本说明

  • #24106: 修复:interpolate:修复 _deBoor_D 导数中 h[m] -> h[n] 的拼写错误…

  • #24107: 增强:linalg/solve:将三对角求解切片迭代移出…

  • #24111: 构建/开发:修复 Windows 构建

  • #24113: 文档:signal:将一些旧版函数标记为不属于 Array API 范围…

  • #24118: 维护:1.17.0rc1 的版本锁定/准备

  • #24129: 发布:将 1.17.0rc2 设置为未发布

  • #24132: 文档:更新 mailmap

  • #24133: 修复:integrate:修复找不到模块 ‘scipy.integrate._lsoda’ 的问题

  • #24138: 文档:版本说明:改进 sparse 亮点部分的措辞

  • #24139: 接口:linalg.inv:仅限关键字的 assume_alower

  • #24140: 接口:signal.savgol_coeffs:仅限关键字的 xpdevice

  • #24143: 类型:通用的 signal.LinearTimeInvariant 类型

  • #24145: 修复:sparse:修复 coo_matrix.__setitem__ 签名

  • #24151: 维护:linalg:对零大小的批次抛出异常

  • #24155: 维护:提升 xsf 版本以修复 special.itj0y0 的回退问题

  • #24161: 修复:linalg.interpolative:修复 id_dist Cython 的两个边缘情况…

  • #24174: 撤销:integrate:撤销 LSODA 中的步长更改

  • #24207: 维护:SciPy 1.17.0rc2 的后向移植

  • #24213: 测试:fft:在 fft 更多位置添加 allow_dask_compute=True

  • #24214: 文档:针对 RBFInterpolator 更新 1.17.0 说明

  • #24218: 基准测试、维护:兼容 NumPy 2.4.0 基准测试

  • #24223: 构建:linalg:为 _fblas 设置 link_language: 'fortran'

  • #24239: 维护:提升 array-api-compat 以适配 JAX>=0.8.2

  • #24240: 维护:将 array-api-compat 提升至 1.13 标签

  • #24250: 修复:stats._unuran:修复 va_args 内存损坏错误

  • #24255: 发布:将 1.17.0rc3 设置为未发布

  • #24260: 文档:stats.anderson/anderson_ksamp:改进版本说明

  • #24284: 持续集成:修复 ILP64 作业的构建失败和未锁定的 scipy-openblas 问题…

  • #24304: 文档:在版本说明中澄清 ILP64 支持的注意事项