[tox]
envlist = py38-numpy, pypy39, pypy310, py38, py39, py310, py311, py312,
          py38-twisted-latest,
          linters3, sphinx

[gh-actions]
python =
       3.8: py38, py38-numpy, py38-twisted-latest
       3.9: py39, linters3, sphinx
       3.10: py310
       3.11: py311
       3.12: py312
       pypy3.9: pypy39
       pypy3.10: pypy310

[testenv]
commands =
    {envpython} setup.py --version
    pip install .[test]
    pip list
    {envpython} -m pytest -n 2

## No Twisted ##
[testenv:py38-numpy]
basepython = python3.8
deps = numpy
       dask[bag]

[testenv:py311]
basepython = python3.11
deps = cffi
       dask[bag]
       dask[distributed]
       dask[pandas]
       pandas

[testenv:py38]
basepython = python3.8
deps = cffi
       pyinstaller

[testenv:py39]
basepython = python3.9
deps =

[testenv:py38-twisted-latest]
basepython = python3.8
deps = Twisted

[testenv:pypy3]
basepython = pypy3
deps = 

# Other validation:
[testenv:linters3]
deps = pyflakes
       black
       flake8
basepython = python3.9
commands =
         pyflakes eliot
         black --check --target-version=py38 eliot

[testenv:sphinx]
deps = sphinx
       sphinx_rtd_theme
basepython = python3.9
commands =
    sphinx-build -b html docs/source/ docs/_build/html
