是否可以检查 conda .yaml 文件的 OS 兼容性?

Is it possible to check the OS compatibility of a conda .yaml file?

给定一个 .yaml 文件,例如

channels:
- conda-forge
- bioconda
- rdonnelly
- defaults

dependencies:
#Python
- python
- jupyter_core
- leidenalg
- glpk
- gseapy
- pandas
- scipy

#R
- r-corrplot
- rstudio=1.2.502

是否可以自动检查是否有任何(以及哪些)依赖项与当前 OS 不兼容?我经常在 Windows、OSX 和 Linux 之间从 OS 跳到 OS,所以能够移植环境对我来说很重要。

自动?不,不是针对该目的的内置 CLI 选项。但是可以解析出所有包名(例如,通过 grep/awk/sed),然后用 conda search 检查每个包名。在 Anaconda 云存储库中检查特定于平台的分支的技巧是对要验证的任何平台使用 subdir 键。例如,

conda search 'leidenalg[subdir=osx-64]'

将检查您当前频道上的软件包是否存在 OS X 版本。如果只想严格检查 YAML 中的频道,请包含以下参数:

-c conda-forge -c bioconda -c rdonnelly -c defaults --override-channels 

到命令。