Metadata-Version: 2.1
Name: tox-pypi-filter
Version: 0.14
Summary: Implement a --pypi-filter option for tox
Author-email: Thomas Robitaille <thomas.robitaille@gmail.com>, Stuart Mumford <stuart@cadair.com>
License: BSD-2-Clause
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-File: LICENSE

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 <https://github.com/tox-dev/tox/issues/534>`_ 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
<https://www.python.org/dev/peps/pep-0440/#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
<https://github.com/tox-dev/tox-conda>`_.
