summaryrefslogtreecommitdiff
path: root/tox.ini
blob: de90c0a7d3309c0ca696126fc432abf534b2990a (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
[tox]
minversion = 3.8.0
envlist =
    py36
    py37
    py38
    py39
ignore_basepython_conflict = True
skip_missing_interpreters = True
skipdist = True

[testenv]
usedevelop = True
deps =
    pytest
    pytest-cov
setenv =
    PYTHONIOENCODING=UTF-8
    PIP_DISABLE_PIP_VERSION_CHECK=1
passenv =
    TWINE_*
whitelist_externals =
    git
commands=
    # pyproject.toml for config and defaults
    python -m pytest {posargs}

[testenv:pkg]
deps =
    build>=0.3.1.post1
    pip>=20.0
    setuptools>=56.2.0
    twine>=3.4.1
    wheel>=0.36.2
commands =
    git clean -xdf dist
    python setup.py check -m -s
    python -m build --wheel --sdist .
    python -m twine check dist/*
usedevelop = false


[testenv:lint]
deps = pre-commit>=1.17.0
commands=
    python -m pre_commit run --color=always {posargs:--all}
setenv =
    PIP_CONSTRAINT=
skip_install = true
usedevelop = false

[testenv:docs]
deps =
    sphinx
commands=
    sphinx-build \
      -a -n -v -W --keep-going \
      -b html --color \
      doc/ "html/"
skip_install = false
usedevelop = false


[testenv:publish]
description = Publish package
envdir = {toxworkdir}/pkg
deps = {[testenv:pkg]deps}
commands =
    {[testenv:pkg]commands}
    twine upload dist/*
usedevelop = false