哪些pip命令将安装setup.py的setup_requires和tests_require中定义的依赖项?

suc*_*awk 5 python pip setuptools setup.py

我知道这pip install .将安装install_requires中定义的依赖项,但是哪些pip命令将安装setuptools.setup的setup_requires和tests_require中定义的依赖项?

简单的setup.py:

import setuptools

setuptools.setup(
    name="my_app",
    version="0.1.0",
    url="http://me.com",
    install_requires=['openpyxl'],
    setup_requires=['pytest-runner'],
    tests_require=['lxml'],
    classifiers=[
        # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers
        'Development Status :: 2 - Pre-Alpha',
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3.6',
    ],
)
Run Code Online (Sandbox Code Playgroud)

我使用virtualenvwrapper的mktmpenv创建了一个新的临时virtualenv,然后执行以下命令:

$ pip list --format=columns
Package    Version
---------- -------
pip        9.0.1
setuptools 36.2.7
wheel      0.29.0

$ pip install .
Processing ...
Collecting openpyxl (from my-app==0.1.0)
Collecting jdcal (from openpyxl->my-app==0.1.0)
Collecting et-xmlfile (from openpyxl->my-app==0.1.0)
Building wheels for collected packages: my-app
  Running setup.py bdist_wheel for my-app: started
  Running setup.py bdist_wheel for my-app: finished with status 'done'
  Stored in directory: C:\Users\nahawk\AppData\Local\pip\Cache\wheels\49\e2\8d\340d2b19ba48f1a84011f0e649fe957c19efaf34500f0edada
Successfully built my-app
Installing collected packages: jdcal, et-xmlfile, openpyxl, my-app
Successfully installed et-xmlfile-1.0.1 jdcal-1.3 my-app-0.1.0 openpyxl-2.4.8

$ pip list --format=columns
Package    Version
---------- -------
et-xmlfile 1.0.1
jdcal      1.3
my-app     0.1.0
openpyxl   2.4.8
pip        9.0.1
setuptools 36.2.7
wheel      0.29.0
(tmp-60bebb2a3e1151e0) /c/Users/nahawk/code/coke/nsr/nsr-automated-deployment master
Run Code Online (Sandbox Code Playgroud)

请注意,未安装在tests_require中定义的lxml和在setup_requires中定义的pytest-runner。那么,如何使用pip安装它们?(显然,我不是在寻找pip install lxml pytest-runner