| [tox] |
| envlist = py34, py35, py36, py37, pypy, pylint |
| skip_missing_interpreters = true |
| |
| [testenv:pylint] |
| deps = |
| git+https://github.com/pycqa/astroid@master |
| isort |
| |
| commands = pylint -rn --rcfile={toxinidir}/pylintrc --load-plugins=pylint.extensions.docparams,pylint.extensions.mccabe {envsitepackagesdir}/pylint |
| |
| |
| [testenv:formatting] |
| basepython = python3 |
| deps = black==18.6b4 |
| commands = black --check --exclude "functional|input|test/extension|test/regrtest_data|test/data" pylint |
| changedir = {toxinidir} |
| |
| [testenv:mypy] |
| basepython = python3 |
| deps = |
| mypy |
| |
| commands = |
| python -m mypy {toxinidir}/pylint/checkers --ignore-missing-imports |
| |
| [testenv] |
| deps = |
| https://github.com/PyCQA/astroid/tarball/master#egg=astroid-master-2.0 |
| coverage |
| isort |
| mccabe |
| pytest |
| pytest-xdist |
| |
| setenv = |
| COVERAGE_FILE = {toxinidir}/.coverage.{envname} |
| |
| commands = |
| python -Wi {envsitepackagesdir}/coverage run -m pytest {envsitepackagesdir}/pylint/test/ {posargs:} |
| |
| ; Transform absolute path to relative path |
| ; for compatibility with coveralls.io and fix 'source not available' error. |
| ; If you can find a cleaner way is welcome |
| python -c "import os;cov_strip_abspath = open(os.environ['COVERAGE_FILE'], 'r').read().replace('.tox' + os.sep + os.path.relpath('{envsitepackagesdir}', '{toxworkdir}') + os.sep, '');open(os.environ['COVERAGE_FILE'], 'w').write(cov_strip_abspath)" |
| changedir = {toxworkdir} |
| |
| |
| [testenv:spelling] |
| deps = |
| https://github.com/PyCQA/astroid/tarball/master#egg=astroid-master-2.0 |
| pytest |
| pytest-xdist |
| pyenchant |
| |
| commands = |
| python -Wi -m pytest {envsitepackagesdir}/pylint/test/ {posargs:} -k unittest_checker_spelling |
| |
| changedir = {toxworkdir} |
| |
| [testenv:coveralls] |
| setenv = |
| COVERAGE_FILE = {toxinidir}/.coverage |
| passenv = |
| * |
| deps = |
| coverage |
| coveralls |
| skip_install = true |
| commands = |
| python {envsitepackagesdir}/coverage combine |
| python {envsitepackagesdir}/coverage report --rcfile={toxinidir}/.coveragerc -m |
| - coveralls --rcfile={toxinidir}/.coveragerc |
| changedir = {toxinidir} |
| |
| [testenv:coverage-erase] |
| setenv = |
| COVERAGE_FILE = {toxinidir}/.coverage |
| deps = |
| coverage |
| skip_install = true |
| commands = |
| python {envsitepackagesdir}/coverage erase |
| changedir = {toxinidir} |
| |
| [testenv:docs] |
| skipsdist = True |
| usedevelop = True |
| changedir = doc/ |
| whitelist_externals = rm |
| deps = |
| sphinx |
| python-docs-theme |
| |
| commands = |
| pip install python_docs_theme |
| rm -f features.rst |
| python ./exts/pylint_features.py |
| rm -f extensions.rst |
| python ./exts/pylint_extensions.py |
| sphinx-build -W -b html -d _build/doctrees . _build/html |