SciPy 1.14.0 发行说明#
SciPy 1.14.0 是 3 个月辛勤工作的结晶。它包含许多新功能、大量错误修复、改进的测试覆盖率和更好的文档。此版本中有一些弃用项和 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 的 wheel,从而为许多线性代数操作带来了显著的性能提升。
scipy.optimize.minimize中添加了一个新方法cobyqa- 这是一个 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。scipy.optimize.minimize中添加了一个新方法cobyqa- 这是一个 COBYQA(通过二次逼近进行约束优化)的接口,COBYQA 是一种无导数优化求解器,旨在取代 COBYLA,由香港理工大学应用数学系开发。scipy.optimize.approx_fprime现在具有线性空间复杂度。
scipy.signal 改进#
scipy.signal.minimum_phase有一个新的参数half,允许提供一个与线性相位 FIR 滤波器系数长度相同且具有相同幅度谱的滤波器。
scipy.sparse 改进#
稀疏数组现在支持 COO、DOK 和 CSR 格式的 1D 形状。这些是我们目前打算支持 1D 形状的所有格式。其他稀疏数组格式对于 1D 输入将引发异常。
稀疏数组方法 min/nanmin/argmin 及其 max 对应方法现在返回 1D 数组。min/nanmin 的结果仍为 COO 格式的稀疏数组,而 argmin 的结果为稠密
np.ndarray。迭代
csr_array或csc_array会产生 1D (CSC) 数组。稀疏矩阵和数组对象改进了它们的
repr和str输出。添加了一个特殊情况来处理
dia_array乘以标量的情况,这避免了可能耗时的向 CSR 格式的转换。添加了
scipy.sparse.csgraph.yen,允许在有向或无向图上使用 Yen 的 K-短路径算法。DIA 格式稀疏数组和矩阵之间的加法现在更快。
scipy.sparse.linalg.spsolve_triangular现在在许多情况下比以前快一个数量级以上。
scipy.spatial 改进#
Rotation支持一种可选的“标量优先(scalar-first)”四元数分量排序约定。它可以通过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可用于模拟假设检验相对于指定备选方案的功效(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 维数组上沿轴执行计算时速度更快。
数组 API 标准支持#
在 SciPy 的最新版本中,已向现有的子包添加了对 NumPy 以外的数组库的实验性支持。请考虑通过设置环境变量 SCIPY_ARRAY_API=1 并提供 PyTorch、JAX 或 CuPy 数组作为数组参数来测试这些功能。
截至 1.14.0,已支持:
scipy.special: (部分函数)scipy.stats: (部分函数)
弃用功能#
scipy.stats.gstd、scipy.stats.chisquare和scipy.stats.power_divergence已弃用对掩码数组(masked array)输入的支持。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}已弃用将exact=True与非整数N和/或k结合使用的支持。
向后不兼容的更改#
当输入样本太小时(例如大小为零),许多
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.kendalltaulinalg.pinvintegrate.simpsonlinalg.{eigh,eigvalsh}special.combsignal.{firls, firwin, firwin2, remez}
其他变更#
SciPy 现在使用 C17 作为构建的 C 标准,而不是 C99。C++ 标准保持为 C++17。
现在支持 macOS 13.3 中获得重大升级的 macOS Accelerate。这显著提高了线性代数操作的性能,并缩减了二进制 wheel 的体积。
交叉编译应该更加顺畅,不再需要 QEMU 或类似程序来运行交叉解释器。
SciPy 的几个部分已添加了对 JAX 后端的实验性数组 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` 接受 2D 数组
#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/BUG: 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: stats.nct.pdf 与 MATLAB 相比行为不一致……
#19586: BUG: scipy.signal.group_delay 对于复系数不正确
#19598: BUG: `scipy.sparse.linalg.svds` 对于大型稀疏矩阵的错误……
#19649: ENH: as_quat() 和 from_quat() 似乎反转了 x,y,z,w 与……
#19734: 来自 HiGHS 的构建警告
#19872: BUG: 当……时,sp.stats.wilcoxon 中 p 值计算错误
#19905: DEP: 从私有化模块中移除弃用的导入
#19921: ENH: 将 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 固定版本破坏了最近的文档构建
#20324: MAINT, BUG (?): pearsonr 统计量返回类型更改
#20357: BUG: 1.12 版本中 griddata 函数的内存使用
#20358: TST, MAINT: TestGroupDelay::test_singular 在……时失败
#20377: ENH: sparse: 更新 str 以更好地处理 1D(和 2D)
#20378: ENH: sparse: 更新 repr 以更好地处理 1D(也许还有 2D)
#20385: MAINT: special 版本 hex 清理
#20386: BUG: scipy.stats.kstest 从 scipy 1.12 开始返回 NaN
#20388: DOC: 版本切换器在移动端未垂直居中
#20394: BUG: iirpeak/iirnotch/iircomb 滤波器中不必要的计算……
#20399: BUG: scipy.special.logsumexp 对零大小的……引发 ValueError
#20419: BUG: nightly: .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 的每夜版 wheel 构建失败
#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` 对于 `list` 类型的 `integrality` 失败……
#20587: BLD: 来自 `scipy/special/special/gamma.h` 的警告
#20598: ENH: special: 添加 wright_bessel 的对数
#20603: DOC: 记录从邮件列表切换到 Discourse 的情况
#20614: DOC: dual_annealing 优化器未将边界传递给最小化器……
#20618: BUG: 使用 method=’trust-constr’ 且具有相等性的 scipy ‘minimize’……
#20620: DOC: 对 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: `zsh: abort python` 在空数组上调用 `scipy.linalg.sqrtm` 后……
#20911: TST: TestEig.test_singular 使用通用 BLAS 时容差失败……
#20921: DOC: stats: `*Result` 类的文档字符串错误
#20938: TST: SciPy 1.14.0rc1 在 linux-{aarch64,ppc64le} 上的容差违规
#20943: TST: SciPy 1.14.0rc1 在 windows 上的测试失败
1.14.0 的拉取请求#
#13534: ENH: 为 HessianUpdateStrategy 添加更多初始化方法
#15321: ENH: fft: 添加 `prev_fast_len` 以补充 `next_fast_len`
#17348: BUG: integrate: 使 `select_initial_step` 能够意识到积分……
#17924: ENH: sparse.linalg: 加速 `spsolve_triangular`
#18926: ENH: 移动 symiirorder1/2, cspline2d, qspline2d 和 spline_filter……
#19561: ENH: stats.power: 添加模拟假设检验功效的函数
#19627: FIX: 为复系数传递函数正确计算 group_delay
#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: ENH: special: 修复 `boxcox` 中的过早溢出
#20079: ENH: io: 读写大小 > 4GB 的 wav 文件
#20085: ENH: 数组类型:添加 JAX 支持
#20089: ENH: 将复值 hyp2f1 翻译为 C++ 并进行改进
#20127: ENH/TST: 重构 refguide-check,第 3 次
#20137: ENH: 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: optimize: const 限定 Cython 数组参数
#20269: REL: 将版本设置为 1.14.0dev0
#20273: MAINT/DEV: 强制执行最低 `ruff` 版本
#20275: MAINT/DEV: 向 `dev.py lint` 添加自动修复
#20278: DEP: integrate: 移除 simps,trapz,cumtrapz
#20281: BUG: optimize: 修正 `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: pinvh 使用 SYEV 而非 SYEVR
#20298: DOC: linalg: 提到 eigenvalues_only=True/False 可能会改变……
#20304: ENH: interpolate: 允许 Akima 外推
#20310: MAINT: 将 jupyterlite-sphinx 固定在 >=0.13.1
#20315: DOC: 添加关于如何调试线性代数相关问题的文档
#20317: MAINT/DEV: 将 `skip_if_array_api` 重命名为 `skip_xp_backends`
#20320: ENH: special 中的通用 ufunc
#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: 修复 optimize 中使用 const view 的 Cythonize 错误
#20342: TST: linalg: 撤销 QZ 和 DARE 的 xfail
#363: BLD: linalg: 修复 .pyf.src 文件的重新构建依赖关系
#20354: MAINT: 为 wheel 解除 pytest 版本锁定
#20355: TST: signal: 提高新 `signal.group_delay` 测试的容差
#20356: BLD: 在 pyproject.toml 中为 numpy 更新 numpy 构建依赖……
#20367: STY: 始终 `import numpy as np`
#20373: MAINT: 放弃对 Python 3.9 和 NumPy 1.22.x 的支持
#20380: MAINT: 向前移植 1.13.0 发行说明
#20382: MAINT: lint: 强制使用 `numpy as np` 别名
#20384: ENH:special: 重新用 C 语言重写 cdflib
#20390: MAINT: 将整个 cephes 翻译成 C++
#20393: MAINT/BLD: 移除 `stats._boost` 并添加分布相关的……
#20397: ENH: 支持 Rotation 中四元数分量的标量优先顺序
#20403: ENH: special: 为 amos 添加 ufunc
#20404: BUG: interpolate: 修复 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: 测试 cimporting Cython API
#20424: MAINT:special: 为 cdflib 添加许可证并移除旧的 pxd 文件
#20425: MAINT: 修复 README 中的 DOI 可见性徽章
#20426: DOC: 添加关于如何使用 gdb 调试 linalg 问题的提示
#20427: DOC: 加速一些示例
#20438: ENH: 将 `sph_harm` 从 Cython 翻译为 C++,添加 `sph_harm_all`……
#20441: BLD: 安装 cython_special.pxd
#20443: MAINT: sparse: 更新 EfficiencyWarning 消息以反映数组/矩阵
#20445: ENH: sparse: 特殊处理 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: 将测试标记为 slow/xslow
#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: sparse: 为数组类引发错误,记录/测试旧的……
#20494: BUG: _qmc.py::_random_oa_lhs 产生相关的样本
#20495: BUG: 从 SciPy.optimize 的 ValueError 中移除关键字参数
#20497: DEP: interpolate: 用存根替换 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: 修复遗留警告框(admonition)样式
#423: BLD: 为 macOS 14+ 提供 Accelerate wheel
#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 错误的上带宽值
#20536: CI: 检查 Python.h 是否在文件中首先被包含
#20538: TST: _lib: 移除缺少的 `stacklevel` 的冗余测试
#20541: ENH: stats.skew: 添加数组 API 支持
#20542: BLD: Accelerate 构建不应定义 `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 关键字参数并……
#20568: DOC: 更改 approx_fprime doctest
#20572: MAINT: 在 `scipy/_build_utils` 中引入 Tempita
#20575: TST: stats.skew: 适当地将 assert_equal 改为 xp_assert_equal
#20577: DEV: 向 pre-commit-hook 添加 Unicode 检查
#20578: DEP: signal: 移除 firwin* 中的 nyq / Hz 关键字参数并切换到……
#20582: MAINT: optimize.isotonic_regression: 移除不必要的副本
#20583: TST: stats.rv_continuous.fit: 调整 fit XSLOW/XFAIL/skip 集合
#20585: CI/BLD: 构建时使用 scipy-openblas wheel
#20588: DEP: special: 从 special.comb 移除 legacy 关键字参数并切换……
#20590: 还原 “ENH: 在 `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: integrate: 移除对弃用和遗留函数的引用
#20619: ENH: spatial: 序列化对 QHull 的并发调用
#20621: TYP: 为 `scipy/_lib/_array_api.py` 添加类型注解
#20625: TST: 为 xp_assert_close 添加依赖于 dtype 的默认 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 添加数组 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: 移除 special 中未使用的变量
#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: 对 test__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: ENH/BLD: 为 `tests` 添加安装标签
#20715: ENH: stats.kurtosistest: 添加数组 API 支持
#20716: DEP: integrate.quad_vec: 弃用 `quadrature=”trapz”`
#20722: ENH: sparse: 加速 DIA 格式的 `_add_sparse`
#20726: DOC: stats.{circmean, circvar, circstd}: 提高准确性/清晰度
#20730: BUG: special: 修复 `cephes/polevl.h` 中 `ratevl` 的算法错误
#20732: BUG: interpolate: 不要在错误的边界条件下发生段错误
#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: optimize: 为 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: 在有结(ties)的情况下使 `method=’exact’` 对称
#20769: MAINT: stats: 移动 `multiscale_graphcorr` 测试以节省时间
#20770: MAINT: optimize: 移除 `ScalarFunction` 中的循环引用
#20775: MAINT: 正向移植 1.13.1 版本发布说明
#20777: ENH: stats: 正态性检验的端到端 array-API 支持
#20778: DOC: signal: `detrend` 函数的文档改进
#20780: DEP: special.comb: 弃用非整数输入的 `exact=True` 参数
#20781: TST: stats: 移除调用 _get_pvalue 时 array_namespace 的开销
#20782: ENH: stats: 带有卡方的 NHSTs 的端到端 array-API 支持…
#20784: DOC: SciPy 1.14.0 版本发布说明
#20787: DOC: interpolate: 在 interp2d 过渡中提及默认类型…
#20788: ENH: optimize: 通过减少开销提高 `cobyqa` 性能…
#20789: DEP: stats.linregress: 弃用单参数用法
#20790: BUG: special: 移除冗余的 `Py_Initialize`
#20791: TST: optimize: 修复 `_bracket_minimum` 失败的测试
#20792: BUG: sparse: 修复 axis 0/1 之间的 argmin/max 形状差异,以及…
#20795: MAINT: 修复 Cython 中关于 `noexcept` 和 `except *` 的警告…
#20796: BLD: optimize: 静默来自 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: integrate: 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: sparse: 1.14.0 版本发布说明新增内容
#20839: REL: 设置 1.14.0rc2 为未发布状态
#20841: DOC: 添加 cobyqa 网站引用
#20851: DOC: 添加 cobyqa 网站引用 (#20841)
#20858: MAINT: `stats.bootstrap`: 发出关于广播的 `FutureWarning`
#20870: BLD: 通过移除原始库测试 delocate 是否正常工作 [轮子构建]
#20881: DOC: 邮件列表改为论坛
#20890: DOC: 以等宽字体编写 API 参考标题
#20909: DEP: special.perm: 弃用非整数的 `N` 和 `k` 以及…
#20914: TST: linalg: 调高 `TestEig::test_singular` 中的容差
#20919: BLD: optimize: 为静态 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`: 更新具有 array API 支持的 1.14 函数…
#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`: 解决 main 分支中新的 mypy 投诉