NumPy 1.16.4 发行说明#
NumPy 1.16.4 版本修复了针对 1.16.3 版本报告的错误,并且还向后移植了 master 的多项增强功能,这些增强功能似乎适合最后一个支持 Python 2.7 的版本系列。 PyPI 上的轮子与 OpenBLAS v0.3.7-dev 链接,这应该可以解决 Skylake 系列 cpu 上的问题。
构建此版本的下游开发人员应使用 Cython >= 0.29.2,如果使用 OpenBLAS,则应使用 OpenBLAS > v0.3.7。支持的Python版本为2.7和3.5-3.7。
新弃用#
C-API 包装数组的可写标志#
当从 C-API 创建数组以包装指向数据的指针时,我们对数据读写性质的唯一指示是writeable
创建期间设置的标志。强制标志可写是危险的。将来将无法将可写标志True
从 python 切换为可写标志。此弃用不应影响许多用户,因为以这种方式创建的数组在实践中非常罕见,并且只能通过 NumPy C-API 获得。
兼容性说明#
随机流的潜在变化#
由于对随机浮点数应用日志时存在错误,当从np.random.beta
、np.random.binomial
、
np.random.laplace
、进行采样时np.random.logistic
,np.random.logseries
或者
np.random.multinomial
如果在底层 MT19937 随机流中生成 0,则流可能会发生变化。有一个1在\(10^{53}\)发生这种情况的可能性,因此任何给定种子的流发生变化的概率非常小。如果在底层生成器中遇到 0,则生成的不正确值( 或np.inf
)np.nan
现在将被丢弃。
变化#
numpy.lib.recfunctions.structured_to_unstructured
不挤压单视场视图#
以前structured_to_unstructured(arr[['a']])
会产生与 不一致的压缩结果。这是偶然的。旧的行为可以通过或更简单地
保留
, 。structured_to_unstructured(arr[['a', b']])
structured_to_unstructured(arr[['a']]).squeeze(axis=-1)
arr['a']
贡献者#
共有 10 人为本次发布做出了贡献。名字带有“+”的人首次贡献了补丁。
查尔斯·哈里斯
埃里克·维塞尔
丹尼斯·佐洛 +
猎人达姆龙 +
李静北 +
凯文·谢泼德
马蒂·皮库斯
尼古拉·索兰佐 +
塞巴斯蒂安·伯格
泰勒·雷迪
合并拉取请求#
此版本总共合并了 16 个拉取请求。
#13392 : BUG: 某些 PyPy 版本缺少 PyStructSequence_InitType2。
#13394:MAINT,DEP:修复已弃用的问题
assertEquals()
#13396:BUG:修复单字段类型上的结构化到非结构化(向后移植)
#13549:BLD:使用 pytest 4.5 让 CI 再次通过
#13552 : TST: 在 conftest.py 中注册标记。
#13559:BUG:删除 arraymultiter_new 中空 kwargs 的 ValueError
#13560:BUG:将 TypeError 添加到 clangfortran 中接受的异常中。
#13561:BUG:处理 descr_to_dtype 中的子数组
#13562:BUG:保护发电机免受日志(0.0)的影响
#13563:BUG:当......时总是从结构化到非结构化返回视图
#13564 : BUG: 检查编译器版本时捕获 stderr
#13565:BUG:longdouble(int)不起作用
#13587 : BUG: distutils/system_info.py 修复丢失的子进程导入 (#13523)
#13620:BUG,DEP:修复没有基数的数组的可写标志设置
#13641:维护:为 1.16.4 版本做好准备。
#13644:BUG:打印 rel-、abs-error 时的特殊情况对象数组