weblyzard/inscriptis

View on GitHub
tox.ini

Summary

Maintainability
Test Coverage
[tox]
envlist = pytest, pyroma, flake8

# standard unit tests
[testenv:pytest]
deps = pytest ~= 7.4.4
       pytest-cov ~= 4.1.0
       fastapi ~= 0.109.2
       httpx ~= 0.26.0
commands = pytest --cov-config=.coveragerc --cov=inscriptis ./tests

# python packaging best practices
[testenv:pyroma]
deps = pyroma
commands = pyroma .

[testenv:flake8]
deps = flake8 ~= 7.0.0
       dlint ~= 0.14.1
       flake8-bandit ~= 4.1.1
       flake8-blind-except ~= 0.2.1
       flake8-bugbear ~= 24.2.6
       flake8-builtins ~= 2.2.0
       flake8-cognitive-complexity ~= 0.1.0
       flake8-colors ~= 0.1.9
       flake8-comprehensions ~= 3.14.0
       flake8-docstrings ~= 1.7.0
       flake8-eradicate ~= 1.5.0
       flake8-encodings ~= 0.5.1
       flake8-expression-complexity ~= 0.0.11
       flake8-logging-format ~= 0.9.0
       flake8-mutable ~= 1.2.0
       flake8-pie ~= 0.16.0
       flake8-pytest ~= 1.4
       flake8-raise ~= 0.0.5
       flake8-simplify ~= 0.21.0
       flake8-string-format ~= 0.3.0
       flake8-tuple ~= 0.4.1
       flake8-use-pathlib ~= 0.3.0
       flake8-warnings ~= 0.4.1
       pep8-naming ~= 0.13.3

# S104 - do not cleanup XML data prior to processing
# S410 - bind to all IPs is okay in the case of the Web service, since it is
#        aimed for use with docker.
# W503 - replaced with W504
# D102 - missing docstring in public method
# D105 - missing docstring in magic method (e.g., __str__)
# D107 - missing docstring in __init__
# E203, E704 black
commands = flake8 --exclude=".tox, setup.py, tests, venv, docs, benchmarking, build" \
              --show-source \
          --max-line-length=88 \  
          --ignore="DUO107, W503, D107, D105, D102, S104, S410, E203, E708" \
          --max-cognitive-complexity=13

#              --ignore="S104, S410, W503, D107, D105, D102" \
#          --enable-extensions=G \
#          --max-cognitive-complexity=13