首页 > 解决方案 > Conda 为通用 PyPI 包构建:我需要为哪些 Python 版本构建?

问题描述

我正在为基于相应 PyPI 包的纯 Python 包创建 conda 构建。

万一重要:PyPI 包是通用的,即它是使用命令生成的,python setup.py sdist bdist_wheel --universal并且适用于 Python 2 和 Python 3。

当我在运行特定 Python 版本(如 2.7)的 conda 环境中构建 conda 时,生成的包文件的文件名中也包含该版本。

我知道我可以使用构建变体为多个 Python 变体构建,例如,我可以为 3.4、3.5 和 3.6 构建。但是我应该这样做并将所有这些包上传到 anacondacloud,还是生成的包是多余的?

(到目前为止,我已经上传了 2.7 和 3.6 的版本,我注意到当我在 Python 3.4 conda 环境中安装时,conda 下载了 Python 3.6。这表明我应该上传所有版本,但另一方面,当我访问我的软件包在 anaconda 云上的网站,那里没有任何内容表明该软件包可用于不同的 Python 版本。如果重要,我希望在那里看到该信息。)

标签: pythonbuildanacondapypi

解决方案


您可以使用meta.yaml 文件部分中的noarch选项。build

build:
  number: 0
  noarch: python
...

这允许您上传一个 conda 包,该包可用于您在该requirements部分中设置为兼容的所有 Python 版本。另请参阅文档


推荐阅读