10

我使用 setuptools 'tests_require' 来指定测试我的包所需的依赖项。

tests_require - http://pythonhosted.org/distribute/setuptools.html#new-and-changed-setup-keywords

我已经开始使用轮式包装了

http://wheel.readthedocs.org/en/latest/

并为我当前的包及其所有依赖项构建一个轮子目录。

pip wheel --wheel-dir=/tmp/wheelhouse .

但是,我还想为任何包 test_require 中列出的所有包构建轮子。

显然,我可以在重复的 test_requirements.txt 文件中明确指定要求:

pip wheel --wheel-dir=/mnt/wheelhouse -r test-requirements.txt

但随后我在测试需求文件和 tests_require 列表中复制了依赖项。我可以将测试需求文件读入tests_require,但这似乎是在滥用需求文件,据我了解,这些文件旨在允许用户控制指定已知可以协同工作的包的环境。

Requirements files - http://www.pip-installer.org/en/latest/cookbook.html
4

1 回答 1

2

不,对此没有明确的支持。最简单的方法是extra在 setup.py 中添加一个:

setup(
    extras_require={
        "test": ["pytest", "your other requirements"],
    },
)

您当然可以重复使用与 for 相同list的内容test_requires,然后您可以pip wheel .[test]并且它将为所有这些制作轮子。

于 2014-04-07T03:38:58.263 回答