pip wheel条件依赖

yor*_*rjo 5 python pip python-wheel

在开发用于开发python软件包的virtualenv的过程中,我经常使用“ pip wheel”发行。生成包装所需的所有车轮档案。我通过在setuptools extras_require参数中列出条件依赖项来开始使用它们。是否可以生成特定条件依赖项的车轮档案?

不支持类似“ pip wheel“。[conditional_feature]”的内容。(至少在python-2.7上)请注意,我可以使用以下命令在virtualenv中安装这些依赖项:pip install -e“。[conditional_feature]”

Phi*_*nne 3

请参阅我的答案此脚本,它可以帮助您使用多个需求文件和使用其中之一的条件,通过不同的方法来准确地完成此操作。

更新

另请注意,使用最新版本(2017)的 pypa 三重奏(pip、setuptools、wheel),您现在可以直接使用条件要求。下面是一个使用 extra_requires在不同操作系统上安装不同版本的 lxml 的示例:

extras_require={
        ':platform_system == "Windows"': ['lxml == 3.6.0'],
        ':platform_system == "Linux"': ['lxml == 3.6.4'],
        ':platform_system == "Darwin"': ['lxml == 3.6.4'],

},
Run Code Online (Sandbox Code Playgroud)

当然,您可以使用更复杂的表达式做更多的事情。