【问题标题】:pip choosing nonspecific wheel from PyPIpip 从 PyPI 中选择非特定轮子
【发布时间】:2015-09-20 03:48:58
【问题描述】:

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

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

这是轮子命名的问题吗?

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

【问题讨论】:

    标签: python pip pypi python-wheel


    【解决方案1】:

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

    建议安装程序默认尝试选择功能最完整的构建发行版(最特定于安装环境的发行版),然后再回退到为旧 Python 版本发布的纯 Python 版本。

    因此,您认为应该首先选择特定于操作系统的内容是正确的,这通常是 PIP 所做的。现在,除非您仍然有效地在 MacOSX 10.6 上运行(可能但值得怀疑),否则any 标签可能会优先于更具体的 10.6 标签,因为此标签不会与更新版本的 MacOSX 匹配。

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

    【讨论】:

      猜你喜欢
      • 2016-11-18
      • 1970-01-01
      • 2016-02-18
      • 2020-09-20
      • 1970-01-01
      • 2016-09-10
      • 1970-01-01
      • 2016-03-18
      • 2015-12-11
      相关资源
      最近更新 更多