使用conda降级和升级python库

时间:2016-05-11 22:13:55

标签: python conda

我经常使用conda安装python包,有时会涉及降级已安装的软件包。之后,我再次将降级的软件包升级到最新版本。

E.g。

conda install -c conda-forge iris

从1.11.x将numpy降至1.10.4。之后,我conda update numpy返回1.11.x

这样做可以或稍后会导致细微问题吗?

1 个答案:

答案 0 :(得分:2)

TL;博士;

可能不是,因为numpy 1.10 -> 1.11不是一个巨大的飞跃。

推荐方法

我建议不要让conda匹配每个包的正确版本。您可能会得到错误的结果或崩溃。

更长的解释

iris的配方是使用numpy 1.10构建的,所以如果你将numpy强制回1.11,你可能会遇到以下问题:

  • 崩溃:如果针对NumPy编译iris(使用其C Api)
  • 错误的结果:如果iris使用版本之间的numpy API更改
  • python exception :如果iris使用numpy的API,其中的实现在版本之间发生了变化。

我知道最近numpy要求numpy数组的 indices 整数。这打破了一些代码。我不记得哪个版本的numpy做到了。

所有包都是如此,不仅仅是numpy。一些库在发行版之间保持API和/或ABI兼容性,其他库不具备。

总而言之,numpy有一个相当稳定的API。我无法回答它的ABI,因为我不知道。