gpt4 book ai didi

python - python : PackagesNotFoundError error when trying to roll back revision

转载 作者:行者123 更新时间:2023-11-28 16:58:18 24 4
gpt4 key购买 nike

出于某种原因,我决定升级 setuptools。当我运行 conda install -c anaconda setuptools 时弹出的所谓的 package plan 如下:

The following packages will be downloaded:

package | build
---------------------------|-----------------
certifi-2019.3.9 | py37_0 155 KB anaconda
pip-19.1.1 | py37_0 1.8 MB anaconda
python-3.7.2 | h8c8aaf0_10 17.7 MB anaconda
setuptools-41.0.1 | py37_0 680 KB anaconda
wheel-0.33.4 | py37_0 57 KB anaconda
wincertstore-0.2 | py37_0 13 KB anaconda
------------------------------------------------------------
Total: 20.4 MB

The following NEW packages will be INSTALLED:

pip anaconda/win-64::pip-19.1.1-py37_0

The following packages will be UPDATED:

certifi 2018.11.29-py36_0 --> 2019.3.9-py37_0
python pkgs/main::python-3.6.4-h6538335_1 --> anaconda::python-3.7.2-h8c8aaf0_10
setuptools pkgs/main::setuptools-38.4.0-py36_0 --> anaconda::setuptools-41.0.1-py37_0
wheel pkgs/main::wheel-0.30.0-py36h6c3ec14_1 --> anaconda::wheel-0.33.4-py37_0

The following packages will be SUPERSEDED by a higher-priority channel:

wincertstore pkgs/main::wincertstore-0.2-py36h7fe5~ --> anaconda::wincertstore-0.2-py37_0

但是升级破坏了我的代码的其他部分,这些部分是真正需要的并且无法更新。因此我决定回滚到以前的状态。 conda list --revisions 的最新修订是:

2019-02-12 15:10:38  (rev 12)
bzip2 {1.0.6 (conda-forge) -> 1.0.6 (anaconda)}
ca-certificates {2018.03.07 -> 2019.1.23 (anaconda)}
certifi {2018.11.29 -> 2018.11.29 (anaconda)}
conda {4.5.12 -> 4.6.2 (anaconda)}
nbconvert {5.3.1 -> 5.4.0 (anaconda)}
openssl {1.1.1a -> 1.1.1 (anaconda)}
snappy {1.1.7 (conda-forge) -> 1.1.7 (anaconda)}
vc {14.1 -> 14.1 (anaconda)}
vs2015_runtime {14.15.26706 -> 15.5.2 (anaconda)}
yaml {0.1.7 (conda-forge) -> 0.1.7 (anaconda)}
zlib {1.2.11 (conda-forge) -> 1.2.11 (anaconda)}
+defusedxml-0.5.0 (anaconda)

2019-05-17 16:52:29 (rev 13)
certifi {2018.11.29 (anaconda) -> 2019.3.9 (anaconda)}
pip {9.0.1 -> 19.1.1 (anaconda)}
python {3.6.4 -> 3.7.2 (anaconda)}
setuptools {38.4.0 -> 41.0.1 (anaconda)}
wheel {0.30.0 -> 0.33.4 (anaconda)}
wincertstore {0.2 -> 0.2 (anaconda)}

现在的问题是,当我执行 conda install --revision 12 时,出现以下错误:

PackagesNotFoundError: The following packages are missing from the target environment:
- anaconda::certifi==2018.11.29=py36_0

请问如何进行回滚?

非常感谢

最佳答案

看来您正在通过以下方式维护您的环境发出一系列 conda install 命令。你可以继续这样做,在命令行上有一个额外的版本规范。但我鼓励您改用这种方法:

创建一个如下所示的 environment.yml 文件。

name: myproject

channels:
- conda-forge

dependencies:
- bzip2 >= 1.0.6
- pip >= 19.1.1
- snappy >= 1.1.7
- zlib >= 1.2.11

根据需要添加其他人。

使用 conda env update 安装包。(使用 which python 你可以看到它们的安装位置。)

这种方法的一个优点是您可以轻松地rm -rf ~/miniconda3/envs/myproject/(或安装它们的任何地方)然后 conda env update 从头开始​​重新安装。这通常可以解决版本问题,或者至少提供了一个提示关于应该放宽哪些版本限制允许一个可行的解决方案。

编辑

我个人喜欢在我的 environment.yml 文件中使用 >= 约束。坚持使用现代版本有利于社区支持当事情出错时,有利于更新速度,因为conda 将只有少数现代版本可供考虑,而不是试图弄清楚例如python2 可能发挥依赖性约束。它帮助我了解更新,然后我重新运行我的自动化单元测试在引入新的部门时进行。

或者,您可以定期存储 == 约束如果需要,将其锁定,例如bzip2 == 1.0.6。如果您还没有这样做,您可以仍然使用例如检查旧快照bzip2 >= 1.0.5并使用全局搜索替换进行编辑,将 >= 更改为 ==。这将设置时间机器上的控件去及时回到一些一致的旧 dep 版本集。如果您的 conda env update 运行显示出一些粗糙的边缘,考虑核对环境并从头开始重新填充它。通常像这样的全新安装会运行得更顺畅。

关于python - python : PackagesNotFoundError error when trying to roll back revision,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56190556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com