diff --git a/tox.ini b/tox.ini index e337438e6..6bd931b89 100644 --- a/tox.ini +++ b/tox.ini @@ -1,53 +1,38 @@ [tox] -envlist = py37, py38, py39, coverage, flake8, pylint - -[gh-actions] -python = - 3.7: py37, coverage, flake8, pylint - 3.8: py38, coverage, flake8, pylint - 3.9: py39, coverage, flake8, pylint +envlist = lint, py3{7,8,9}, pypy3, coverage-report +skip_missing_interpreters = true [testenv] deps = - pytest - coverage - -rrequirements.txt -commands = coverage run -m pytest {posargs} + -r requirements.txt + -r test_requirements.txt +; download the latest pip, setuptools and wheel when creating the venv +download = true +commands = + coverage run --parallel-mode -m pytest {posargs} -[testenv:coverage] -deps = coverage +[testenv:lint] +skip_install = true +deps = + -r test_requirements.txt +commands = + black --check --diff . + isort --check-only --diff . + flake8 + +[testenv:coverage-report] skip_install = true commands = + coverage combine + coverage xml coverage report coverage html -[testenv:flake8] -deps = - flake8 -commands = flake8 --count --show-source --statistics - -[testenv:pylint] -deps = - pylint -wont_fix = invalid-name,protected-access,too-many-lines -maybe_someday = fixme,missing-docstring,line-too-long -commands = pylint --disable={[testenv:pylint]wont_fix},{[testenv:pylint]maybe_someday} --ignore=axes_pb2.py Lib/axisregistry - [flake8] -select = E,F,W +select = C, E, F, W, B, B9 +ignore = E203, E266, E501, W503 +max-line-length = 88 +exclude = .git, __pycache__, build, dist, .eggs, .tox, venv, venv*, .venv, .venv* -exclude = -# Exclude the entire build directory: - build -# Exclude these auto-generated files that should not be hand-edited: - Lib/axisregistry/*_pb2.py, -# No need to traverse hidden directories such as .git, .tox - .*, -# Exclude virtual environment directory: - venv*, -# There's no value in checking cache directories - __pycache__, - -max-line-length=100 -ignore = - E126, # continuation line over-indented for hanging indent +[isort] +profile = black \ No newline at end of file