mirror of
https://github.com/PyCQA/flake8.git
synced 2026-03-29 02:26:54 +00:00
166 lines
3.4 KiB
INI
166 lines
3.4 KiB
INI
[tox]
|
|
minversion=2.3.1
|
|
envlist = py27,py35,py36,py37,py38,flake8,linters,docs
|
|
|
|
[testenv]
|
|
deps =
|
|
mock>=2.0.0
|
|
pytest!=3.0.5,!=5.2.3
|
|
coverage
|
|
commands =
|
|
coverage run -m pytest {posargs}
|
|
coverage combine
|
|
coverage report
|
|
# ensure 100% coverage of tests
|
|
coverage report --fail-under 100 --include tests/*
|
|
|
|
[testenv:venv]
|
|
deps =
|
|
.
|
|
commands = {posargs}
|
|
|
|
# Dogfood our current master version
|
|
[testenv:dogfood]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
wheel
|
|
flake8-colors
|
|
commands =
|
|
python setup.py -qq bdist_wheel
|
|
pip install --force-reinstall -U --pre --find-links ./dist/ flake8
|
|
flake8 --version
|
|
flake8 src/flake8/ tests/ setup.py
|
|
|
|
# Linters
|
|
[testenv:flake8]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
flake8
|
|
flake8-bugbear
|
|
flake8-colors
|
|
flake8-docstrings>=1.3.1
|
|
flake8-import-order>=0.9
|
|
flake8-typing-imports>=1.1
|
|
pep8-naming
|
|
commands =
|
|
flake8 src/flake8/ tests/ setup.py
|
|
|
|
[testenv:pylint]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
pyflakes
|
|
pylint!=2.5.0
|
|
commands =
|
|
pylint src/flake8
|
|
|
|
[testenv:doc8]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
sphinx
|
|
doc8
|
|
commands =
|
|
doc8 docs/source/
|
|
|
|
[testenv:pre-commit]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps = pre-commit
|
|
commands =
|
|
pre-commit run --all-files --show-diff-on-failure
|
|
|
|
[testenv:bandit]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
bandit
|
|
commands =
|
|
bandit -r src/flake8/ -c .bandit.yml
|
|
|
|
[testenv:linters]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
{[testenv:flake8]deps}
|
|
{[testenv:pylint]deps}
|
|
{[testenv:doc8]deps}
|
|
{[testenv:readme]deps}
|
|
{[testenv:bandit]deps}
|
|
commands =
|
|
{[testenv:flake8]commands}
|
|
{[testenv:pylint]commands}
|
|
{[testenv:doc8]commands}
|
|
{[testenv:readme]commands}
|
|
{[testenv:bandit]commands}
|
|
|
|
# Documentation
|
|
[testenv:docs]
|
|
basepython = python3
|
|
deps =
|
|
-rdocs/source/requirements.txt
|
|
commands =
|
|
sphinx-build -E -W -c docs/source/ -b html docs/source/ docs/build/html
|
|
sphinx-build -E -W -c docs/source/ -b man docs/source/ docs/build/man
|
|
|
|
[testenv:serve-docs]
|
|
basepython = python3
|
|
skip_install = true
|
|
changedir = docs/build/html
|
|
deps =
|
|
commands =
|
|
python -m http.server {posargs}
|
|
|
|
[testenv:readme]
|
|
basepython = python3
|
|
deps =
|
|
readme_renderer
|
|
commands =
|
|
python setup.py check -r -s
|
|
|
|
# Release tooling
|
|
[testenv:build]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
wheel
|
|
setuptools
|
|
commands =
|
|
python setup.py -q sdist bdist_wheel
|
|
|
|
[testenv:release]
|
|
basepython = python3
|
|
skip_install = true
|
|
deps =
|
|
{[testenv:build]deps}
|
|
twine >= 1.5.0
|
|
commands =
|
|
{[testenv:build]commands}
|
|
twine upload --skip-existing dist/*
|
|
|
|
# Flake8 Configuration
|
|
[flake8]
|
|
# Ignore some flake8-docstrings errors
|
|
# NOTE(sigmavirus24): While we're still using flake8 2.x, this ignore line
|
|
# defaults to selecting all other errors so we do not need select=E,F,W,I,D
|
|
# Once Flake8 3.0 is released and in a good state, we can use both and it will
|
|
# work well \o/
|
|
ignore = D203, W503, E203
|
|
exclude =
|
|
.tox,
|
|
.git,
|
|
__pycache__,
|
|
docs/source/conf.py,
|
|
build,
|
|
dist,
|
|
tests/fixtures/*,
|
|
*.pyc,
|
|
*.egg-info,
|
|
.cache,
|
|
.eggs
|
|
max-complexity = 10
|
|
import-order-style = google
|
|
application-import-names = flake8
|
|
format = ${cyan}%(path)s${reset}:${yellow_bold}%(row)d${reset}:${green_bold}%(col)d${reset}: ${red_bold}%(code)s${reset} %(text)s
|