使用setup.py的extras_require中定义的使用要求

时间:2018-11-30 19:01:49

标签: python heroku setup.py

我有一个图书馆,有一个演示网站。该库的setup.py如下所示:

setup(
    ...
    install_requires=[
        ...
    ],
    extras_require={
        "test": [
            ...
        ],
        "demo": [
            ...
        ]
    },
    ...
)

我在Heroku上运行演示。我如何告诉heroku做pip install -e .[demo]

我对the docs的阅读颇有收获。我添加了requirements.txt

# heroku needs this
-e .[demo]

但是也许有更好的方法?我旨在解决此问题,而无需创建requirements.txt文件。

1 个答案:

答案 0 :(得分:0)

我不了解extras_require,但是如果您的问题是要适应平台的要求,则可以尝试以下操作:

首先找到一种检查setup.py内部是否在Heroku上运行的方法,请参阅this SO question

然后您可以使用this strategy使install_requires的{​​{1}}变量适应Heroku上需要的变量。