SciPy 1.14.0 发布说明#
SciPy 1.14.0 是三个月辛勤工作的结晶。它包含了许多新功能、大量的错误修复、改进的测试覆盖率和更好的文档。此版本中有一些弃用和API更改,如下文所述。我们鼓励所有用户升级到此版本,因为有许多错误修复和优化。在升级之前,我们建议用户检查他们的代码是否使用了已弃用的SciPy功能(为此,请使用 python -Wd
运行您的代码并检查 DeprecationWarning
)。我们的开发重点现在将转移到1.14.x分支上的错误修复版本,以及在主分支上添加新功能。
此版本需要 Python 3.10+ 和 NumPy 1.23.5 或更高版本。
要在 PyPy 上运行,需要 PyPy3 6.0+。
此版本的亮点#
SciPy 现在支持 macOS 13.3 中引入的新 Accelerate 库,并且针对 macOS >=14 构建了使用 Accelerate 的 wheels,从而显著提升了许多线性代数操作的性能。
新增了一个方法
cobyqa
到scipy.optimize.minimize
- 这是一个用于 COBYQA (约束优化通过二次近似) 的接口,COBYQA 是一个无导数优化求解器,旨在取代 COBYLA,由香港理工大学应用数学系开发。scipy.sparse.linalg.spsolve_triangular
在许多情况下现在比以前快了一个数量级以上。
新功能#
scipy.fft
改进#
新增了一个函数
scipy.fft.prev_fast_len
。该函数找到小于目标长度的最大FFT基数组合。在FFT之前丢弃最少样本时非常有用。
scipy.io
改进#
wavfile
现在支持读取和写入 RF64 格式的wav
文件,允许处理大于 4 GB 的文件。
scipy.constants
改进#
已添加对数组 API 标准的实验性支持。
scipy.interpolate
改进#
scipy.interpolate.Akima1DInterpolator
现在通过extrapolate
参数支持外推。
scipy.optimize
改进#
scipy.optimize.HessianUpdateStrategy
现在也接受init_scale
的方形数组。新增了一个方法
cobyqa
到scipy.optimize.minimize
- 这是一个用于 COBYQA (约束优化通过二次近似) 的接口,COBYQA 是一个无导数优化求解器,旨在取代 COBYLA,由香港理工大学应用数学系开发。scipy.optimize.differential_evolution
中有一些性能改进。scipy.optimize.approx_fprime
现在具有线性空间复杂度。
scipy.signal
改进#
scipy.signal.minimum_phase
新增了一个参数half
,允许提供一个与线性相位FIR滤波器系数长度相同且具有相同幅度谱的滤波器。
scipy.sparse
改进#
稀疏数组现在支持 COO、DOK 和 CSR 格式中的 1D 形状。这些是我们目前打算支持 1D 形状的所有格式。其他稀疏数组格式对 1D 输入引发异常。
稀疏数组方法 min/nanmin/argmin 及其最大值类似方法现在返回一维数组。结果对于 min/nanmin 仍然是 COO 格式的稀疏数组,对于 argmin 则是密集的
np.ndarray
。迭代
csr_array
或csc_array
会生成一维(CSC)数组。稀疏矩阵和数组对象改进了它们的
repr
和str
输出。已添加一个特殊情况来处理将
dia_array
乘以标量,这避免了可能昂贵的转换为 CSR 格式的操作。scipy.sparse.csgraph.yen
已添加,允许在有向或无向图上使用 Yen 的 K 最短路径算法。DIA 格式稀疏数组和矩阵之间的加法现在更快了。
scipy.sparse.linalg.spsolve_triangular
在许多情况下现在比以前快了一个数量级以上。
scipy.spatial
改进#
Rotation
支持四元数分量排序的替代“标量优先”约定。可以通过from_quat
和as_quat
方法的关键字参数scalar_first
来使用。对
Rotation
对象的反转进行了一些性能改进。
scipy.special
改进#
添加了
scipy.special.log_wright_bessel
,用于计算 Wright 贝塞尔函数的对数。在
scipy.special.hyp2f1
计算中的相对误差已显著改善。通过防止过早溢出,改进了
boxcox
、inv_boxcox
、boxcox1p
和inv_boxcox1p
的行为。
scipy.stats
改进#
一个新的函数
scipy.stats.power
可以用于模拟关于指定备择假设的假设检验的效力。Irwin-Hall(又称均匀和)分布已添加为
scipy.stats.irwinhall
。scipy.stats.mannwhitneyu
的精确 p 值计算速度更快,且使用更少的内存。scipy.stats.pearsonr
现在接受 n 维数组,并沿指定的axis
计算统计量。scipy.stats.kstat
,scipy.stats.kstatvar
, 和scipy.stats.bartlett
在沿大型 n-D 数组的轴进行计算时速度更快。
数组 API 标准支持#
实验性 支持非 NumPy 的数组库已添加到 SciPy 的最新版本中的现有子包中。请通过设置环境变量 SCIPY_ARRAY_API=1
并提供 PyTorch、JAX 或 CuPy 数组作为数组参数来测试这些功能。
自 1.14.0 版本起,开始支持
scipy.special
: (选择函数)scipy.stats
: (选择函数)
已弃用的功能#
scipy.stats.gstd
,scipy.stats.chisquare
, 和scipy.stats.power_divergence
已弃用对掩码数组输入的支持。scipy.stats.linregress
已弃用支持在单个参数中指定两个样本;x
和y
应作为单独的参数提供。对于
scipy.sparse.dok_array
和scipy.sparse.dok_matrix
的conjtransp
方法已被弃用,并将在 SciPy 1.16.0 中移除。在
scipy.integrate.quad_vec
中的选项quadrature="trapz"
已被弃用,取而代之的是quadrature="trapezoid"
,并将在 SciPy 1.16.0 中移除。scipy.special.{comb,perm}
已弃用对非整数N
和/或k
与exact=True
一起使用的支持。
向后不兼容的更改#
许多
scipy.stats
函数现在在输入样本过小时(例如零大小)会产生一个标准化的警告信息。以前,这些函数可能会引发错误,发出一个或多个信息较少的警告,或者不发出警告。在大多数情况下,返回的结果保持不变;在几乎所有情况下,正确的结果是NaN
。
过期的弃用#
正在努力完成长期存在的弃用。以下之前已弃用的功能受到影响:
已移除几个先前弃用的稀疏数组方法:
asfptype
、getrow
、getcol
、get_shape
、getmaxprint
、set_shape
、getnnz
和getformat
。此外,.A
和.H
属性也被移除。scipy.integrate.{simps,trapz,cumtrapz}
已被simpson
、trapezoid
和cumulative_trapezoid
取代。scipy.sparse.linalg.{bcg,bicstab,cg,cgs,gcrotmk,mres,lgmres,minres,qmr,tfqmr}
的tol
参数已被移除,取而代之的是rtol
。此外,这些函数的atol
默认值已更改为0.0
。scipy.sparse.linalg.gmres
中的restrt
参数已被移除,取而代之的是restart
。scipy.stats.kendalltau
的initial_lexsort
参数已被移除。scipy.linalg.pinv
的cond
和rcond
参数已被移除。scipy.integrate.simpson
的even
参数已被移除。scipy.linalg.{eigh,eigvalsh}
中的turbo
和eigvals
参数已被移除。scipy.special.comb
的legacy
参数已被移除。signal.{firls, firwin, firwin2, remez}
的hz
/nyq
参数已被移除。那些不属于公共接口但通过已弃用的子模块可访问的对象已被移除。
float128
、float96
和对象数组现在在scipy.signal.medfilt
和scipy.signal.order_filter
中会引发错误。scipy.interpolate.interp2d
已被替换为一个空存根(未来将完全移除)。随着函数签名的更改(例如,移除已弃用的关键字),我们已弃用受影响函数的关键字参数的位置使用,这现在将引发错误。受影响的函数有:
sparse.linalg.{bicg, bicgstab, cg, cgs, gcrotmk, gmres, lgmres, minres, qmr, tfqmr}
stats.kendalltau
linalg.pinv
integrate.simpson
linalg.{eigh,eigvalsh}
special.comb
signal.{firls, firwin, firwin2, remez}
其他更改#
SciPy 现在使用 C17 作为构建的 C 标准,而不是 C99。C++ 标准仍然是 C++17。
macOS Accelerate 在 macOS 13.3 中得到了重大升级,现在已得到支持。这使得线性代数操作的性能显著提升,同时生成的二进制轮文件也更小。
交叉编译应该会更加顺畅,不再需要使用 QEMU 或类似工具来运行交叉解释器。
JAX 后端已添加了对 SciPy 几个部分的实验性数组 API 支持。
1.14.0 版本关闭的问题#
#5369: fsolve & root 函数调用计数不正确
#7203: vtk 与 scipy.interpolate(以及 mvpoly.rbf)不兼容
#8056: cho_factor 和 cho_solve 不支持 (0,0)-形状的矩阵
#8083: 当 c-a-b 为整数时,special.hyp2f1 返回错误值…
#8510: ValueError: 创建 intent(cache|hide)|optional 数组失败–…
#8848: `integrate.solve_ivp` 尝试以非常…
#8856: LinearNDInterpolator 不是线程安全的
#9198: `solve_ivp` RK45 可以在比…更晚的时间点评估函数
#9307: 功能请求:使 `scipy.stats.pearsonr` 接受二维数组
#9459: BUG: linalg: lu 和分解不支持 (0, 1) 或 (0,…)
#12515: scipy.linalg.pinvh 给出了错误的结果
#14244: ValueError: 在调用 DGESDD 时,参数编号 10 出现非法值…
#14389: `linalg.inv` 对形状为 (0, 0) 的数组失败
#14806: ENH: 添加 Irwin-Hall(均匀和)和 Bates(均匀均值)…
#15722: DEP: special.comb: 对非整数弃用 `exact=True`
#16131: BUG: spsolve_triangular 比 spsolve 慢得多
#16583: 将 `stats._boost` 中的扩展合并为一个
#16748: 所有 `cython_*` API 都没有使用 Cython 的测试
#16926: 测试/错误: test_solvers::test_solve_discrete_are 中的容差违规
#17084: ENH: 导出 detrend() 中移除的组件
#17341: BUG: `solve_ivp` 在请求的区间外进行评估…
#17559: ENH: _mannwhitneyu.py 精确计算 MWU 统计量可能…
#17658: linalg 中对空矩阵的支持不一致
#19322: BUG: `rv_discrete.expect` 在重复位置时失败
#19348: BUG: 与MATLAB相比,stats.nct.pdf 的行为不一致…
#19586: BUG: scipy.signal.group_delay 对于复系数不正确
#19598: BUG: 对于大型稀疏矩阵,`scipy.sparse.linalg.svds` 存在错误…
#19649: ENH: as_quat() 和 from_quat() 似乎是反向的 x,y,z,w vs…
#19734: 来自HiGHS的构建警告
#19872: BUG: 在 sp.stats.wilcoxon 计算 p 值时出现错误…
#19905: DEP: 从私有化模块中移除已弃用的导入
#19918: 增强:将COBYQA添加到`scipy.optimize`?
#19921: BUG: BenchGlobal 与 BenchLeastSquares 相比输出不一致…
#19964: MAINT:BLD:special:重构 _ufuncs 和 cython_special 机制
#20124: BUG: stats.skewnorm.ppf 在中等…情况下返回错误值
#20128: BUG: `csr_array(int())` 错误
#20208: BUG: 由于 `invalid value encountered in _beta_ppf` 导致的测试失败…
#20247: ENH: Akima1DInterpolator 外推
#20256: MAINT, BLD: MacOS ARM 静态库的符号可见性警告…
#20277: jupyterlite-sphinx 集成后文档构建非常嘈杂
#20296: CI: jupyterlite-shpinx pin 破坏了最近的文档构建
#20324: MAINT, BUG (?): pearsonr 统计量返回类型变化
#20357: BUG: 版本 1.12 中 griddata 函数的内存使用问题
#20358: TST, MAINT: TestGroupDelay::test_singular 对…的失败
#20377: ENH: 稀疏: 更新 str dunder 以更好地处理 1D (和 2D)
#20378: ENH: sparse: 更新 repr dunder 以处理 1D(并可能更好地处理 2D)
#20385: MAINT: 特殊版本十六进制清理
#20386: BUG: 从 scipy 1.12 开始,scipy.stats.kstest 返回 NaN
#20388: 文档: 版本切换器在移动设备上未垂直居中
#20394: BUG: iirpeak/iirnotch/iircomb 滤波器中不必要的计算…
#20399: BUG: scipy.special.logsumexp 对零大小的…引发 ValueError
#20419: BUG: 夜间构建: .special.jv 现在将 float32 输入提升为 float64
#20434: BUG: 稀疏 dia_array 在乘法后变为 csr
#20455: BUG: signal.iirfilter: 整数输入时溢出
#20458: MAINT: 与版本更新相关的更多潜在清理
#20461: DOC: 对发布过程文档的一些可能更改
#20466: BUG: scipy.linalg.bandwidth 返回了错误的上带宽
#20470: BUG: `TestNNLS.test_nnls_inner_loop_case1` 在 MKL 下失败
#20486: DEP: 弃用并移除与冒犯性语言相关的“trapz”的剩余使用
#20488: BUG: 当给定无效边界时,`_minimize_neldermead` 引发…
#20492: DOC: linalg.solve_discrete_lyapunov: 失效的引用链接
#20502: BUG: special.hyp2f1: 本地测试失败
#20509: DOC: 澄清 `sparse.csgraph.dijkstra` 在 `directed=False` 时的行为
#20523: CI/BLD: macOS x86_64 的夜间轮构建失败
#20535: BUG: generate_f2py 模块被错误的解释器调用
#20540: BUG: pytest scipy/linalg/tests/test_extending.py 在 Cython 环境下失败…
#20551: DOC/DEV: 明确记录哪些代码有活跃的上游仓库
#20562: BUG: _bracket_minimum 中的默认括号选择无效。
#20564: TST: stats 数组 API 在 test_skew_constant_value[torch] 测试中失败…
#20584: BUG: `optimize.linprog` 在 `integrality` 为 `list` 类型时失败…
#20587: BLD: 来自 `scipy/special/special/gamma.h` 的警告
#20598: ENH: special: 添加 wright_bessel 的对数
#20603: DOC: 从邮件列表切换到论坛的文档
#20614: DOC: 双重退火优化器没有将边界传递给最小化器…
#20618: BUG: 使用 method=’trust-constr’ 的 scipy ‘minimize’ 在等式…时出现问题
#20620: 文档: 对interp2d过渡指南的改进建议
#20641: BUG: stats: 两个新的 XSLOW 测试失败
#20661: MAINT, TST: test_axis_nan_policy_decorated_positional_args 中的失败…
#20662: DOC: cont2discrete() 引发的错误消息中缺少空白
#20674: DOC: signal.ellipap 参考文献中作者名字的拼写错误
#20683: DOC: signal.iirdesign 引发的 ValueError 中的拼写错误
#20691: ENH: 重新引入 Apple Accelerate 支持
#20697: BUG: special: `cephes/polevl.h` 中的 `ratevl` 算法错误
#20755: BUG: stats: 两个新的测试失败
#20768: BUG: optimize.minimize: `lbfgs` 中的垃圾回收
#20783: BUG: 在 PyPy3.10 7.3.16 上构建失败: `error: ‘Py_Initialize’…
#20797: BUG: special.hyp1f1: 对复数参数的处理有误
#20802: MAINT, TST: pytest-fail-slow 和本地并发运行/变异性
#20840: BUG: scipy 中的第一个共享库无法被 MSVC 使用
#20850: DOC: stats.bootstrap: 改进多维文档…
#20852: BUG: 库未加载: @rpath/libgfortran.5.dylib 用于 scipy…
#20860: BUG/BLD: scipy-1.13.1 无法使用 msvc 构建
#20901: BUG: 在空…上执行`scipy.linalg.sqrtm`后出现`zsh: abort python`
#20911: TST: TestEig.test_singular 在通用 BLAS 下失败容差…
#20921: DOC: stats: `*Result` 类的文档字符串错误
#20938: TST: 在 linux-{aarch64,ppc64le} 上使用 SciPy 1.14.0rc1 时的容差违规
#20943: TST: 在 Windows 上使用 SciPy 1.14.0rc1 的测试失败
1.14.0 的拉取请求#
#13534: ENH: 为 HessianUpdateStrategy 添加更多初始化方法
#15321: ENH: fft: 添加 `prev_fast_len` 以补充 `next_fast_len`
#17348: BUG: 积分: 使 `select_initial_step` 感知积分…
#17924: ENH: sparse.linalg: 加速 `spsolve_triangular`
#18926: ENH: 移动 symiirorder1/2, cspline2d, qspline2d 和 spline_filter…
#19561: ENH: stats.power: 添加函数以模拟假设检验的效力
#19627: 修复: 正确计算复系数传递函数的群延迟
#19673: DEP: signal: 使用 medfilt 和 order_filter 时引发错误…
#19706: ENH: 为 minimum_phase 添加 half=True 关键字参数
#19816: BLD: 为 macOS 13.3+ 添加 Accelerate 支持
#19900: MAINT/TST: fft: 移除 xp 后端跳过,测试 `fftfreq` `device`
#19904: MAINT: 从私有模块中移除偶然导入
#19923: ENH: stats.mannwhitneyu: 替换精确 p 值计算
#19954: MAINT: 将 wright_bessel 函数翻译为 C++
#19960: DOC: 为 `scipy.interpolate.spalde` 添加示例
#19994: ENH: 将 cobyqa 添加到 scipy.optimize 中。
#20073: 增强:特殊函数:修复`boxcox`中的过早溢出
#20079: ENH: io: 读取和写入大小超过4GB的wav文件
#20085: ENH: 数组类型: 添加 JAX 支持
#20089: ENH: 将复数值的 hyp2f1 翻译为 C++ 并进行改进
#20127: ENH/TST: 重构 refguide-check,第三次尝试
#20137: 增强: stats.pearsonr: 添加对 `axis` 参数的支持
#20187: ENH: sparse.csgraph: Yen K-最短路径
#20199: DOC/DEV/MAINT: 更新核心开发者指南
#20202: DOC: 重新组织 stats 用户指南部分的内容
#20255: TST: linalg: 重新启用 gges[float32] 测试
#20257: BUG: 防止 `openblas_support.py` 中的文件描述符泄漏…
#20260: ENH: 开始重构 ufunc 机制
#20265: ENH: 优化: 常量限定 Cython 数组参数
#20269: REL: 设置版本为 1.14.0dev0
#20273: MAINT/DEV: 强制使用最低版本的 `ruff`
#20275: 维护/开发: 为 `dev.py lint` 添加自动修复功能
#20278: DEP: 整合: 移除 simps, trapz, cumtrapz
#20281: BUG: 优化: 修正 `nfev` 值
#20283: DEP: sparse: 弃用 dok_array/matrix 的 conjtransp() 方法…
#20284: ENH: stats.pearsonr: 添加数组 API 支持
#20289: DOC: 固定 Jupyterlite Sphinx 以避免嘈杂的文档构建
#20292: ENH: stats.moment: 添加数组 API 支持
#20295: BUG: linalg: 支持空数组
#20297: BUG: linalg: 使用 SYEV 而不是 SYEVR 进行 pinvh
#20298: DOC: linalg: 提到 eigenvalues_only=True/False 可能会改变…
#20304: ENH: 插值: 允许Akima外推
#20310: MAINT: 将 jupyterlite-sphinx 固定在 >=0.13.1
#20315: DOC: 添加关于如何调试线性代数相关问题的文档
#20317: MAINT/DEV: 将 `skip_if_array_api` 重命名为 `skip_xp_backends`
#20320: ENH: 在 special 中使用广义 ufuncs
#20321: BUG: 修复 scipy.special 的 seterr, geterr, errstate
#20325: MAINT: 提高 ndimage.binary_erosion 的性能
#20326: MAINT: 替换 np.prod 的使用
#20328: DOC: 修正 odds_ratio 中的小拼写错误
#20329: MAINT: 更新 `array_api_compat` 至 v1.5.1
#20331: MAINT: 修复优化模块中Cythonize的const视图错误
#20335: TST: linalg: 撤销 QZ 和 DARE 的 xfails
#20342: BLD: linalg: 修复 .pyf.src 文件的重建依赖
#20354: MAINT: 解除对轮子的 pytest 固定
#20355: TST: signal: 提高新 `signal.group_delay` 测试的容差
#20356: BLD: 更新 pyproject.toml 中 numpy 的构建依赖项…
#20367: STY: 始终 `import numpy as np`
#20373: MAINT: 放弃 Python 3.9 和 NumPy 1.22.x
#20380: MAINT: 前向移植 1.13.0 发布说明
#20382: MAINT: 代码风格: 强制使用 `numpy as np` 别名
#20384: ENH:special: 用 C 语言重写 cdflib
#20390: MAINT: 将 cephes 的全部内容翻译成 C++
#20393: MAINT/BLD: 移除 `stats._boost` 并添加与分布相关的内容…
#20397: ENH: 支持四元数组件的标量优先顺序在 Rotation 中
#20403: ENH: special: 为amos添加ufuncs
#20404: BUG: 插值: 修复2个类的高内存使用问题
#20405: BUG: 修复 Amos 和 Cephes yv 中的一对错误,这些错误掩盖了每个…
#20413: MAINT: 使用 npyrandom 代替静态库
#20416: ENH: optimize._chandrupatla: 允许在…处有无限函数值
#20417: ENH: 使 cython_special 成为实际代码,而非自动生成
#20418: BUG: signal: 修正 `iir{peak,notch,comb}` 滤波器增益
#20420: DOC: stats: 加速非常慢的 `bootstrap` 示例
#20421: 为amos函数添加了float32重载
#20422: TST: 测试 Cython API 的 cimport
#20424: MAINT:special: 为 cdflib 添加许可证并删除旧的 pxd 文件
#20425: MAINT: 修复 README 中的 DOI 可见性徽章
#20426: DOC: 添加如何使用 gdb 调试 linalg 问题的提示
#20427: DOC: 加速一些示例
#20438: 增强:将 `sph_harm` 从 Cython 翻译为 C++,添加 `sph_harm_all`…
#20441: BLD: 安装 cython_special.pxd
#20443: MAINT: sparse: 更新 EfficiencyWarning 消息以反映数组/矩阵
#20445: 增强: 稀疏: 特殊情况 DIA * 标量
#20446: MAINT: 移除重复的单词拼写错误
#20450: BLD: 避免在meson.build文件中设置环境变量
#20453: DOC: special: 为 pdtrc, pdtri, pdtrik 添加示例
#20454: DOC: 更新工具链路线图 (1/N)
#20456: BUG: signal.iirfilter: 避免整数溢出
#20457: ENH: 添加 `scipy.special._ufuncs._iv_ratio`
#20460: DOC: 移除多余的CSS颜色和设置
#20462: DOC: 更新README,添加新论坛链接
#20463: MAINT: 重构特殊函数ufunc生成并整合…
#20465: MAINT: special: 修复未使用变量的编译器警告
#20467: MAINT: stats._contains_nan: 修复当 -inf 和 inf 在…时的错误
#20468: TST: stats: 标记测试为慢/超慢
#20469: MAINT/CI: 从 refguide-check 中移除 doctesting
#20477: BLD: 确保所有静态库使用隐藏的可见性
#20478: CI/MAINT: 将最低要求的编译器版本提高到 GCC…
#20480: CI: 失败缓慢测试
#20481: ENH: stats: 添加 Irwin-Hall 分布
#20482: CI: 标准化作业名称
#20483: ENH: special: 将 `sph_bessel` 翻译为 C++,重构 `cyl_bessel`
#20487: TST: 调整其他非常慢的测试
#20490: BUG: 稀疏: 对数组类引发错误, 文档/测试旧…
#20494: BUG: _qmc.py::_random_oa_lhs 生成相关样本
#20495: BUG: 从 SciPy.optimize 中的 ValueError 中移除关键字参数
#20497: DEP: 插值: 用存根替换 interp2d
#20498: DEP: 将稀疏方法切换为仅限关键字参数;移除 tol/restrt 关键字参数
#20499: DEP: 执行稀疏数组 API 弃用
#20500: DOC: 更新 `Scipy.linalg._solvers.py` 中的失效引用链接:…
#20501: MAINT: optimize._chandrupatla: 减少 xatol
#20503: MAINT: spatial: 修复 `query_ball_point` 的类型注解
#20508: DOC: 修复遗留的警告样式
#20510: BLD: 加速 macOS 14+ 的轮子
#20511: BUG: 修复在 SciPy.special.logsumexp 中对零大小数组引发 ValueError 的问题
#20515: BLD: 默认使用 C17 而非 C99
#20522: TST: 在某些 macOS 构建上跳过或修复一些失败的测试
#20526: BLD: 将 Clang/LLVM 的最低版本从 14.0 调整为 12.0
#20529: MAINT: 移除重复的 “is” 拼写错误
#20534: BUG: 修复了 scipy.linalg.bandwidth 中 upper_band 值不正确的问题
#20536: CI: 检查Python.h是否首先包含在文件中
#20538: TST: _lib: 移除对缺失`stacklevel`的多余测试
#20541: ENH: stats.skew: 添加数组API支持
#20542: BLD: 加速构建不应定义 `NO_APPEND_FORTRAN`
#20545: ENH: stats.ttest_1samp: 添加数组API支持
#20546: DOC: 使用更准确和包容的代词
#20547: DOC: stats.linregress: 拆分 stats/mstats 文档
#20548: TST: 跳过可编辑安装的 Cython 测试
#20550: DEP: stats: 将 kendalltau 切换为仅关键字参数,移除 initial_lexsort…
#20554: DEP: integrate: 将 simpson 切换为仅关键字参数,移除 even 关键字参数
#20556: DOC: 发布流程更新
#20559: DOC/DEV: 添加关于供应商代码的核心开发页面
#20560: DEP: linalg: 从 linalg.{eigh,eigvalsh} 中移除 turbo / eigvals 关键字参数…
#20563: BUG: 修复 _bracket_minimum 中的无效默认括号选择
#20565: DEP: linalg: 从 linalg.pinv 和… 中移除 cond / rcond kwargs
#20568: DOC: 更改 approx_fprime 的 doctest
#20572: MAINT: 在 `scipy/_build_utils` 中引入 Tempita
#20575: TST: stats.skew: 根据需要将 assert_equal 替换为 xp_assert_equal
#20577: DEV: 在预提交钩子中添加unicode检查
#20578: DEP: signal: 在 firwin* 中移除 nyq / Hz kwargs 并切换到…
#20582: MAINT: optimize.isotonic_regression: 移除不必要的拷贝
#20583: TST: stats.rv_continuous.fit: 调整 fit XSLOW/XFAIL/skip 集合
#20585: CI/BLD: 构建时使用 scipy-openblas 轮子
#20588: DEP: special: 从 special.comb 中移除遗留的 kwarg 并切换…
#20590: 回退“增强:在`linprog`中使用`highspy`”
#20593: ENH: constants: 添加数组 API 支持
#20595: ENH: `stats.circ___`: 添加数组API支持
#20597: ENH: stats.skewtest: 添加数组API支持
#20600: TYP: 将支持的 Mypy 版本从 1.0.0 更新到 1.10.0
#20604: ENH: stats.monte_carlo_test: 添加数组 API 支持
#20612: BLD: 修复非默认解释器的使用,改进 f2py 处理
#20615: ENH: stats: 为 burr12 实现 _isf
#20616: DOC: 整合: 移除对已弃用和遗留函数的引用
#20619: ENH: spatial: 序列化对 QHull 的并发调用
#20621: TYP: 为 `scipy/_lib/_array_api.py` 添加类型注解
#20625: TST: 为 xp_assert_close 添加依赖于数据类型的默认 rtol
#20627: MAINT: special: 在 kolmogorov.h 中删除未使用的 function_calls 变量
#20628: TST: integrate.tanhsinh: 使测试用例 XSLOW
#20630: ENH: optimize._jacobian: 使用 _differentiate 来计算精确的…
#20631: ENH: stats.sem: 添加数组API支持
#20634: ENH: stats: 为 kstat/kstatvar 添加 array-API 支持
#20637: MAINT: 修复 `datasets._fetchers` 模块中的损坏链接
#20640: TST: 调整新的数组 API 测试,慢速测试
#20642: TST: stats.ttest_1samp: 修复 xslow 测试
#20643: MAINT:更新boost以修复`skewnorm.ppf`
#20645: ENH: optimize.approx_fprime: 避免二次内存使用
#20646: ENH: special: 添加 `log_wright_bessel`
#20647: ENH: stats.variation: 添加数组API支持
#20649: MAINT: sparse: 重新格式化稀疏数组的 str 和 repr,修正…
#20651: ENH: stats.kstat/kstatvar: 添加对 `axis` 的原生支持
#20656: ENH: 对 spatial.transform.Rotation 方法进行微优化
#20657: MAINT: 移除未使用的变量在特殊
#20658: ENH: stats.kurtosis: 添加数组 API 支持
#20663: MAINT: stats.kruskal: 修复 SCIPY_ARRAY_API=1 下的无参数行为
#20664: 修复 cont2discrete 中的拼写错误
#20665: trust-constr 在出现错误信息时使错误来源更清晰…
#20667: ENH: stats.describe: 添加数组 API 支持
#20673: ENH: stats.entropy, special.{entr, rel_entr}: 添加数组 API 支持
#20675: DOC: 修正了 signal.ellipap 中的拼写错误
#20676: MAINT: 澄清 dual_annealing-minimizer_kwargs 文档字符串。关闭…
#20677: TST: 测试__differential_evolution 的速度优化
#20679: MAINT: special.wright_bessel: 添加关于参考文本的注释
#20684: MAINT: 修复 signal.iirdesign 中缺失的空白,保持间距一致性…
#20685: MAINT: 为 elementwise 添加对无效初始括号的优雅处理…
#20689: ENH: optimize._chandrupatla: 添加数组 API 支持
#20694: MAINT: stats: 使减少函数发出一致的警告…
#20696: MAINT: stats.gstd: 返回结果而不是引发错误
#20698: DEV/BLD: 为 `dev.py build` 添加 –with-accelerate 标志
#20705: MAINT: 添加缺失的空白
#20711: MAINT: numpy 清理版本升级: 修复问题 #20458
#20712: 增强/构建: 为 `tests` 添加安装标签
#20715: ENH: stats.kurtosistest: 添加数组 API 支持
#20716: DEP: integrate.quad_vec: 弃用 `quadrature=”trapz”`
#20722: 增强: 稀疏: 加速 DIA 格式的 `_add_sparse`
#20726: DOC: stats.{circmean, circvar, circstd}: 提高准确性/清晰度
#20730: BUG: special: 修复 `cephes/polevl.h` 中 `ratevl` 的算法错误
#20732: BUG: 插值: 在错误的边界条件下不要段错误
#20734: BUG: stats.ttest_1samp: 修复 `keepdims` 的使用
#20736: ENH: stats.normaltest/jarque_bera: 添加数组API支持
#20737: TST, MAINT: 运行优化数组API测试并修复 `chandrupatla`
#20738: DOC: sparse.csgraph.dijkstra: 为 `directed=False` 添加警告…
#20741: MAINT: 优化: 为 COBYQA 添加另一个 fail_slow 异常
#20744: MAINT: 在CI中使用PyTorch 2.3,修复CuPy故障,增加更多类型注解…
#20745: BUG: 修复 cephes hyperg.h 中的括号错误
#20746: DOC: stats: 更新 kstat/kstatvar 的公式以反映…
#20748: TST: 提高容差以解决本地的 `test_axis_nan_policy`…
#20750: ENH: 对differential_evolution的一些微优化
#20751: ENH: stats.bartlett: 添加原生 `axis` 和数组 API 支持
#20753: ENH: stats.chisquare/power_divergence: 添加数组 API 支持
#20756: TST: stats: 重构正态性测试的测试
#20764: TST: stats.fit: 解决 xslow 测试失败问题
#20765: MAINT: stats.wilcoxon: 使 `method=’exact’` 在有平局时对称
#20769: MAINT: stats: 将 `multiscale_graphcorr` 测试移至节省时间
#20770: MAINT: 优化: 移除 `ScalarFunction` 中的循环引用
#20775: MAINT: 向前移植 1.13.1 发布说明
#20777: ENH: stats: 为正态性测试提供端到端的数组API支持
#20778: DOC: signal: `detrend` 函数的文档改进
#20780: DEP: special.comb: 对非整数输入弃用 `exact=True`
#20781: TST: stats: 移除在调用 _get_pvalue 时 array_namespace 的开销
#20782: ENH: stats: 为卡方检验添加端到端数组API支持…
#20784: DOC: SciPy 1.14.0 发布说明
#20787: DOC: 插值: 在interp2d过渡中提及默认种类…
#20788: ENH: optimize: 通过减少开销提升 `cobyqa` 性能…
#20789: DEP: stats.linregress: 弃用单参数使用
#20790: BUG: special: 移除冗余的 `Py_Initialize`
#20791: TST: 优化: 修复`_bracket_minimum`的失败测试
#20792: BUG: 稀疏: 修复 axis 0/1 之间 argmin/max 形状差异。并且…
#20795: MAINT: 修复Cython中关于`noexcept`和`except *`的警告…
#20796: BLD: 优化: 静默来自HiGHS的构建警告
#20798: MAINT: special: 修复 numpy 初始化,避免构建警告
#20799: DOC: ndimage: 改进灰度形态学文档字符串
#20804: MAINT: 从 pyproject.toml 中移除 pytest-fail-slow
#20805: BUG: special: 恢复函数 cchg() 中缺失的代码行。
#20807: TST: stats.nbinom: 调整 cdf-ppf 往返测试
#20812: DOC: 扩展“构建可重现的二进制文件”页面
#20815: DOC: 整合: odeint 用户函数不得修改 y。
#20819: REV: 回退gh-17924中意外的`cobyqa`更新
#20820: BLD: 修复来自 ``scipy/special/special/gamma.h`` 的警告
#20828: DEP: 弃用 `stats.trapezoid` 分布的 trapz 别名
#20831: MAINT: 版本固定/准备 1.14.0rc1
#20838: DOC: 稀疏: 1.14.0 版本发布说明补充
#20839: REL: 设置 1.14.0rc2 未发布
#20841: DOC: 添加 cobyqa 网站引用
#20851: DOC: 添加 cobyqa 网站参考 (#20841)
#20858: MAINT: `stats.bootstrap`: 发出关于广播的`FutureWarning`
#20870: BLD: 通过移除原始库测试 delocate 的工作 [wheel 构建]
#20881: DOC: 邮件列表到论坛
#20890: DOC: 以等宽字体书写API参考标题
#20909: DEP: special.perm: 弃用非整数的 `N` 和 `k` 并…
#20914: TST: linalg: 在 `TestEig::test_singular` 中提高容差
#20919: BLD: 优化: 对静态 HiGHS 库使用隐藏可见性
#20920: MAINT: special: 通过使用 `new` 和 `delete` 修复 msvc 构建…
#20923: DOC: 更新doctests以满足scipy-doctests==1.2.0
#20927: MAINT: 适应 scipy-doctests 的变化
#20933: MAINT: 1.14.0rc2 回传
#20936: DOC: `array_api.rst`: 更新 1.14 函数与数组 API…
#20937: BUG/BLD: special: 确保 `sf_error_state` 中的符号共享…
#20945: TST: 解决在 linux-{aarch64,ppc64le} 上使用 SciPy 1.14.0rc1 时的容差违规问题
#20952: TST: 放宽 test_x0_working 中的容差以通过替代方案…
#20953: TST: 稍微放宽 test_krandinit 中的容差以通过…
#20961: TST: 强化 test_nnls_inner_loop_case1 测试
#20970: REL: 设置 1.14.0 rc3 未发布
#20973: TST:sparse.linalg: 由于对数值的敏感性,跳过测试…
#20979: STY: `_lib._util`: 解决主分支中新出现的mypy警告