summaryrefslogtreecommitdiffstats
path: root/tox.ini
blob: d77a5a880c916acbcf2f5875b14b1b471b9ed49c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Tox (https://tox.testrun.org/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.

[tox]
# deprecation warning: py{27,py2,34,35,36}
envlist=py{27,34,35,36,37,38,39,310,py2,py3}{,-tf}{,-keras}, perf, setup.py
isolated_build=True

[gh-actions]
python=
    2.7: py27
    3.5: py35
    3.6: py36
    3.7: py37
    3.8: py38
    3.9: py39
    3.10: py310
    pypy-2.7: pypy2
    pypy-3.7: pypy3
[gh-actions:env]
PLATFORM=
    ubuntu: tf-keras

[core]
deps=
    pytest
    py3{4,5,6}: pytest<7
    pytest-cov
    pytest-timeout
    py3{7,8,9,10}: pytest-asyncio
    py3{6,7,8,9,10}: ipywidgets
    py3{7,8,9,10}: git+https://github.com/casperdcl/nbval.git@master#egg=nbval
    coverage
    coveralls
    codecov
commands=
    - coveralls
    codecov -X pycov -e TOXENV
    - codacy report -l Python -r coverage.xml --partial

[testenv]
passenv=TOXENV CI GITHUB_* CODECOV_* COVERALLS_* CODACY_* HOME
deps=
    {[core]deps}
    cython
    dask[delayed]
    matplotlib
    numpy
    pandas
    tf: tensorflow!=2.5.0
    !py27-keras: keras
    py27-keras: keras<2.5
    py35-keras: keras<2.7
    py27-tf: protobuf<3.18
    py3{6,7,8,9,10}: rich
commands=
    py3{4,5,6}: pytest --cov=tqdm --cov-report=xml --cov-report=term -k "not perf" -o addopts= -v --tb=short -rxs -W=error --durations=0 --durations-min=0.1
    py3{7,8,9,10}: pytest --cov=tqdm --cov-report= tests_notebook.ipynb --nbval --nbval-current-env -W=ignore --nbval-sanitize-with=setup.cfg
    py3{7,8,9,10}: pytest --cov=tqdm --cov-report=xml --cov-report=term --cov-append -k "not perf"
    {[core]commands}
allowlist_externals=codacy

[testenv:py{27,py2}{,-tf}{,-keras}]
commands=
    pytest --cov=tqdm --cov-report=xml --cov-report=term -k "not perf" -o addopts= -v --tb=short -rxs -W=error --durations=10
    {[core]commands}

# no cython/numpy/pandas
[testenv:py{34,py2,py3}]
deps={[core]deps}

[testenv:perf]
deps=
    pytest
    pytest-timeout
    pytest-asyncio
commands=pytest -k perf

[testenv:setup.py]
deps=
    docutils
    pygments
    py-make>=0.1.0
commands=
    {envpython} setup.py check --restructuredtext --metadata --strict
    {envpython} setup.py make none