有没有办法告诉pip在不需要时跳过一些setup_requires依赖项?
在我的场景中,我在setup.py中声明pytest-runner为设置依赖项(用于执行测试)。当我尝试安装我的软件包(即:pip install my-package.tar.gz)时,它会下载pytest-runner,或者如果不可用,则安装失败(*)。
在setup.py中,我有:
...
setup_requires=['pytest-runner', 'flake8']
...
我希望告诉setup.py仅在执行测试时使用pytest-runner。这种做法可行吗?
正如@deceze所建议的那样,下面这个声明可以起作用:
setup_requires=['pytest-runner', 'flake8'] if 'test' in sys.argv else []
但我不想在setup.py中添加逻辑。
(*) 环境非常受限,因此下载依赖项是障碍。