如何找到哪个库阻止更新 conda 中的包?
How to find which library prevents updating a package in conda?
我已经设置了几个带有数据科学库的环境,例如 pandas, numpy, matplotlib, scikit-learn, tensorflow etc.
。
但是我无法将某些软件包更新到最新版本。
例如
conda update pandas
会告诉我我有可用的最新版本,但我确定最新版本是 1.+
(我的是 0.25
)
有没有办法查看哪些包阻止特定包更新?
正如 anacondas 文档中所解释的那样,没有真正的方法可以一步完成。您可以一一检查每个包的依赖关系。
这在下面 link 中解释。
https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-pkgs.html#listing-package-dependencies
有一种方法可以使用 drop-in 替换 mamba
。
您所要做的就是提供您要更新到的包的版本,mamba
会告诉您是什么阻止了它的更新。
例如,就我而言,我想将 snakemake
更新到版本 > 7。但是 mamba update snakemake
只给了我 6.15。
所以我运行:mamba install snakemake=7
,结果很有参考价值:
Looking for: ['snakemake=7']
Pinned packages:
- python 3.8.*
- bcbio-gff 0.6.7.*
Encountered problems while solving:
- nothing provides yte >=1.0,<2.0 needed by snakemake-minimal-7.0.0-pyhdfd78af_0
原来我忘了包括 -c conda-forge
,这是 yte
的来源。
我已经设置了几个带有数据科学库的环境,例如 pandas, numpy, matplotlib, scikit-learn, tensorflow etc.
。
但是我无法将某些软件包更新到最新版本。
例如
conda update pandas
会告诉我我有可用的最新版本,但我确定最新版本是 1.+
(我的是 0.25
)
有没有办法查看哪些包阻止特定包更新?
正如 anacondas 文档中所解释的那样,没有真正的方法可以一步完成。您可以一一检查每个包的依赖关系。 这在下面 link 中解释。 https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-pkgs.html#listing-package-dependencies
有一种方法可以使用 drop-in 替换 mamba
。
您所要做的就是提供您要更新到的包的版本,mamba
会告诉您是什么阻止了它的更新。
例如,就我而言,我想将 snakemake
更新到版本 > 7。但是 mamba update snakemake
只给了我 6.15。
所以我运行:mamba install snakemake=7
,结果很有参考价值:
Looking for: ['snakemake=7']
Pinned packages:
- python 3.8.*
- bcbio-gff 0.6.7.*
Encountered problems while solving:
- nothing provides yte >=1.0,<2.0 needed by snakemake-minimal-7.0.0-pyhdfd78af_0
原来我忘了包括 -c conda-forge
,这是 yte
的来源。