从PyPI选择非特定车轮

时间:2015-07-02 14:38:05

标签: python pip pypi python-wheel

我的软件包airship-steamcloud位于PyPI上,我为Windows(32位和64位)和OS X生成三个轮子,并且包含每个平台的所有二进制文件。但是,每当我在运行OS X的计算机上通过pip安装它时,它会下载非特定的轮:

Collecting airship-steamcloud
  Downloading airship_steamcloud-1.4.0-py2.py3-none-any.whl (595kB)
    100% |████████████████████████████████| 598kB 746kB/s 

这是轮子命名的问题吗?

轮子列表可用here。我使用this script生成它们。

1 个答案:

答案 0 :(得分:0)

PEP 425 tags用于暗示安装程序(此处为pip)以确定哪个是最佳的预制车轮使用。 通常:

  

建议安装程序在回退到为较旧的Python版本发布的纯Python版本之前,尝试选择最可用的功能完整的已构建发行版(最特定于安装环境的发行版)。

所以你认为应该首先选择特定于操作系统的这一点是正确的,这通常是PIP的作用。现在,除非您仍然在MacOSX 10.6上有效运行(可能但可疑),any标记可能会被更具体的10.6标记选中,因为此标记不会与更新的版本匹配MacOSX的。

解决这个问题的一种方法是为你支持的每个版本的Mac OSX生成一个轮子(因为10.6个二进制文件可能适用于更新版本的MacOSX,在大多数情况下这些二进制文件都是相同的)。 另一种方法是增强pip和metatada,就像在PEP 514中为Linux做的那样