[tox] isolated_build = true envlist = py310, py311, py312, lint skipsdist = true [testenv] description = Run pytest test suite allowlist_externals = poetry commands = poetry install --quiet poetry run pytest [testenv:lint] description = Run linting and formatting checks with Flake8, isort, and Black deps = flake8 isort black commands = poetry run flake8 . poetry run isort --check --diff . poetry run black --check --diff . [flake8] max-line-length = 119 extend-ignore = W503, E203, E701 exclude = .git, .github, build, dist, docs, venv, .venv, env, .env, .idea, .vscode, .tox max-complexity = 15 per-file-ignores = __init__.py:F401 [gh-actions] python = 3.10: py310, lint 3.11: py310 3.12: py312