每次我要执行conda update conda
时,都会发生以下情况:
The following packages will be UPDATED:
cryptography 2.4.2-py27hc64555f_0 --> 2.6.1-py27hcfb25f9_0
openssl 1.0.2r-h0c8e037_0 --> 1.1.1b-h0c8e037_1
The following packages will be SUPERSEDED by a higher-priority channel:
jpeg pkgs/main::jpeg-9b-ha175dff_2 --> pkgs/free::jpeg-8d-vc9_2
libtiff pkgs/main::libtiff-4.0.10-h1c3b264_2 --> pkgs/free::libtiff-4.0.6-vc9_2
pyqt pkgs/main::pyqt-5.6.0-py27h6e61f57_6 --> pkgs/free::pyqt-4.10.4-py27_1
qt pkgs/main::qt-5.6.2-vc9hc26998b_12 --> pkgs/free::qt-4.8.7-vc9_6
The following packages will be DOWNGRADED:
spyder 3.3.4-py27_0 --> 3.2.8-py27_0
更新完成后,我就可以运行conda update --all
,它再次更新已被取代并因此降级的版本。我是否可以以某种方式规避该问题并直接执行conda update conda
,而不必再运行conda update --all
就可以得到更新的版本?
答案 0 :(得分:3)
这是兼容性问题。 Anaconda是一组稳定的软件包。当您更新Anaconda时,您将更新到此稳定列表。
但是,当您更新单个程序包时,它们可能会导致与Anaconda发行版的其余部分不兼容,因此认为它们不稳定。这就是为什么当您使用conda update --all
时,它会带您到最新的稳定的Anaconda发行版,该发行版可能会或可能没有您想要的单个软件包的版本。
参见此处:https://github.com/ContinuumIO/anaconda-issues/issues/39
编辑:此行为已更改。现在,它尝试增加所有软件包的版本(主要版本与次要版本之间的Python除外),以使所有软件包之间都不会不兼容。
参见此处:http://continuum.io/blog/advanced-conda-part-1#conda-update-all