Metadata-Version: 2.1
Name: tox
Version: 3.25.1
Summary: tox is a generic virtualenv management and test command line tool
Home-page: https://tox.readthedocs.io
Author: Holger Krekel, Oliver Bestwalter, Bernát Gábor and others
Maintainer: Bernát Gábor, Oliver Bestwalter, Anthony Sottile, Jürgen Gmach
Maintainer-email: gaborjbernat@gmail.com
License: MIT
Project-URL: Source, https://github.com/tox-dev/tox
Project-URL: Tracker, https://github.com/tox-dev/tox/issues
Project-URL: Changelog, https://tox.readthedocs.io/en/latest/changelog.html
Keywords: virtual,environments,isolated,testing
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: tox
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Utilities
Requires-Python: !=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: filelock (>=3.0.0)
Requires-Dist: packaging (>=14)
Requires-Dist: pluggy (>=0.12.0)
Requires-Dist: py (>=1.4.17)
Requires-Dist: six (>=1.14.0)
Requires-Dist: toml (>=0.9.4)
Requires-Dist: virtualenv (!=20.0.0,!=20.0.1,!=20.0.2,!=20.0.3,!=20.0.4,!=20.0.5,!=20.0.6,!=20.0.7,>=16.0.0)
Requires-Dist: colorama (>=0.4.1) ; platform_system == "Windows"
Requires-Dist: importlib-metadata (>=0.12) ; python_version < "3.8"
Provides-Extra: docs
Requires-Dist: pygments-github-lexers (>=0.0.5) ; extra == 'docs'
Requires-Dist: sphinx (>=2.0.0) ; extra == 'docs'
Requires-Dist: sphinxcontrib-autoprogram (>=0.1.5) ; extra == 'docs'
Requires-Dist: towncrier (>=18.5.0) ; extra == 'docs'
Provides-Extra: testing
Requires-Dist: flaky (>=3.4.0) ; extra == 'testing'
Requires-Dist: freezegun (>=0.3.11) ; extra == 'testing'
Requires-Dist: pytest (>=4.0.0) ; extra == 'testing'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'testing'
Requires-Dist: pytest-mock (>=1.10.0) ; extra == 'testing'
Requires-Dist: pytest-randomly (>=1.0.0) ; extra == 'testing'
Requires-Dist: psutil (>=5.6.1) ; (platform_python_implementation == "cpython") and extra == 'testing'
Requires-Dist: pathlib2 (>=2.3.3) ; (python_version < "3.4") and extra == 'testing'

[![PyPI](https://img.shields.io/pypi/v/tox)](https://pypi.org/project/tox/)
[![Supported Python
versions](https://img.shields.io/pypi/pyversions/tox.svg)](https://pypi.org/project/tox/)
[![check](https://github.com/tox-dev/tox/actions/workflows/check.yml/badge.svg)](https://github.com/tox-dev/tox/actions/workflows/check.yml)
[![Documentation
status](https://readthedocs.org/projects/tox/badge/?version=latest)](https://tox.readthedocs.io/en/latest/?badge=latest)
[![Code style:
black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Downloads](https://pepy.tech/badge/tox/month)](https://pepy.tech/project/tox/)

<a href="https://tox.readthedocs.io">
    <img src="https://raw.githubusercontent.com/tox-dev/tox/master/docs/_static/img/tox.png"
         alt="tox logo"
         height="150px"
         align="right">
</a>

# tox automation project

**Command line driven CI frontend and development task automation tool**

At its core tox provides a convenient way to run arbitrary commands in isolated environments to serve as a single entry
point for build, test and release activities.

tox is highly [configurable](https://tox.readthedocs.io/en/latest/config.html) and
[pluggable](https://tox.readthedocs.io/en/latest/plugins.html).

## Example: run tests with Python 3.7 and Python 3.8

tox is mainly used as a command line tool and needs a `tox.ini` or a `tool.tox` section in `pyproject.toml` containing
the configuration.

To test a simple project that has some tests, here is an example with a `tox.ini` in the root of the project:

```ini
[tox]
envlist = py37,py38

[testenv]
deps = pytest
commands = pytest
```

```console
$ tox

[lots of output from what tox does]
[lots of output from commands that were run]

__________________ summary _________________
  py37: commands succeeded
  py38: commands succeeded
  congratulations :)
```

tox created two `testenvs` - one based on Python 3.7 and one based on Python 3.8, it installed pytest in them and ran the
tests. The report at the end summarizes which `testenvs` have failed and which have succeeded.

**Note:** To learn more about what you can do with tox, have a look at
[the collection of examples in the documentation](https://tox.readthedocs.io/en/latest/examples.html) or
[existing projects using tox](https://github.com/search?l=INI&q=tox.ini+in%3Apath&type=Code).

### How it works

tox creates virtual environments for all configured so-called `testenvs`, it then installs the project and other
necessary dependencies and runs the configured set of commands. See
[system overview](https://tox.readthedocs.io/en/latest/#system-overview) for more details.

<a href="https://tox.readthedocs.io/en/latest/#system-overview">
    <img src="https://raw.githubusercontent.com/tox-dev/tox/master/docs/img/tox_flow.png"
         alt="tox flow"
         width="800px"
         align="center">
</a>

### tox can be used for ...

- creating development environments
- running static code analysis and test tools
- automating package builds
- running tests against the package built by tox
- checking that packages install correctly with different Python versions/interpreters
- unifying Continuous Integration and command line based testing
- building and deploying project documentation
- releasing a package to PyPI or any other platform
- limit: your imagination

### Documentation

Documentation for tox can be found at [Read The Docs](https://tox.readthedocs.org).

### Communication and questions

For the fastest and interactive feedback please join our
[![Discord](https://img.shields.io/discord/802911963368783933?style=flat-square)](https://discord.gg/edtj86wzBX) server.
If you have questions or suggestions you can first check if they have already been answered or discussed on our
[issue tracker](https://github.com/tox-dev/tox/issues?utf8=%E2%9C%93&q=is%3Aissue+sort%3Aupdated-desc+label%3A%22type%3Aquestion+%3Agrey_question%3A%22+).
On [Stack Overflow (tagged with `tox`)](https://stackoverflow.com/questions/tagged/tox).

### Contributing

Contributions are welcome. See [contributing](https://github.com/tox-dev/tox/blob/master/CONTRIBUTING.rst) and our
[Contributor Covenant Code of Conduct](https://github.com/tox-dev/tox/blob/master/CODE_OF_CONDUCT.md).

Currently, the [code](https://github.com/tox-dev/tox) and the [issues](https://github.com/tox-dev/tox/issues) are hosted
on GitHub.

The project is licensed under [MIT](https://github.com/tox-dev/tox/blob/master/LICENSE).
