如何找到哪个库阻止在conda中更新包



我已经用pandas, numpy, matplotlib, scikit-learn, tensorflow etc.这样的数据科学库建立了几个环境。

但是,我无法将某些软件包更新到最新版本。

例如

conda update pandas

会告诉我我有最新版本,但我确信最新版本是1.+(我的是0.25(

有没有办法查看哪些程序包阻止特定程序包更新?

有一种方法可以使用插入式替换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的来源。

正如anacondas文档中所解释的,没有真正的方法可以一步到位。您可以逐个检查每个包的依赖关系。以下链接对此进行了解释。https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-pkgs.html#listing-包相关性

最新更新