tox-pypi-filter

Implement a --pypi-filter option for tox


License
BSD-2-Clause
Install
pip install tox-pypi-filter==0.14

Documentation

About tox-pypi-filter

About

Tox includes a --force-dep option that can be used to provide version restrictions for dependencies - however, by design this only works with dependencies explicitly listed in the deps section of the tox.ini file (see this issue for a discussion of this).

The tox-pypi-filter plugin works around this by using a proxy PyPI server that filters packages in a way that is independent of tox's implementation.

Installing

To install:

pip install tox-pypi-filter

Using

This plugin provides a --pypi-filter command-line option that takes PEP440 version specifiers separated by semicolons, e.g.:

tox --pypi-filter "numpy==1.14.*;pytest<4" -e py37-test

In this case, if Numpy or PyTest are needed by the tox environment, the versions that will be installed will satisfy the version specification supplied.

Caveats

This plugin will not work properly if you use the -i/--index-url option manually when calling tox. In addition, this will only work with pip-based installs, and will not work with e.g. tox-conda.