Spaces:
Sleeping
Sleeping
| # CrownCode Backend - Linting and Formatting Configuration | |
| [project] | |
| name = "crowncode-backend" | |
| requires-python = ">=3.11" | |
| [tool.black] | |
| line-length = 100 | |
| target-version = ['py311'] | |
| include = '\.pyi?$' | |
| extend-exclude = ''' | |
| /( | |
| # directories | |
| \.eggs | |
| | \.git | |
| | \.hg | |
| | \.mypy_cache | |
| | \.tox | |
| | \.venv | |
| | build | |
| | dist | |
| )/ | |
| ''' | |
| [tool.ruff] | |
| line-length = 100 | |
| target-version = "py311" | |
| select = [ | |
| "E", # pycodestyle errors | |
| "W", # pycodestyle warnings | |
| "F", # pyflakes | |
| "I", # isort | |
| "C", # flake8-comprehensions | |
| "B", # flake8-bugbear | |
| "UP", # pyupgrade | |
| "N", # pep8-naming | |
| "S", # bandit security | |
| "A", # flake8-builtins | |
| "T20", # flake8-print | |
| ] | |
| ignore = [ | |
| "E501", # line too long (handled by black) | |
| "B008", # do not perform function calls in argument defaults | |
| "C901", # too complex | |
| "S101", # use of assert | |
| "T201", # print found (allowed in scripts) | |
| ] | |
| [tool.ruff.per-file-ignores] | |
| "__init__.py" = ["F401"] # unused imports | |
| "tests/*" = ["S101"] # assert allowed in tests | |
| [tool.mypy] | |
| python_version = "3.11" | |
| warn_return_any = true | |
| warn_unused_configs = true | |
| disallow_untyped_defs = true | |
| disallow_incomplete_defs = true | |
| check_untyped_defs = true | |
| no_implicit_optional = true | |
| warn_redundant_casts = true | |
| warn_unused_ignores = true | |
| warn_no_return = true | |
| warn_unreachable = true | |
| strict_equality = true | |
| [[tool.mypy.overrides]] | |
| module = "yt_dlp.*" | |
| ignore_missing_imports = true | |
| [[tool.mypy.overrides]] | |
| module = "httpx.*" | |
| ignore_missing_imports = true | |
| [tool.pytest.ini_options] | |
| minversion = "7.0" | |
| addopts = "-ra -q --strict-markers --cov=app --cov-report=term-missing" | |
| testpaths = [ | |
| "tests", | |
| ] | |
| python_files = "test_*.py" | |
| python_functions = "test_*" | |
| filterwarnings = [ | |
| "ignore::FutureWarning:google", | |
| "ignore::DeprecationWarning:httpx", | |
| "ignore::PendingDeprecationWarning:starlette", | |
| ] | |
| [tool.coverage.run] | |
| source = ["app"] | |
| omit = [ | |
| "*/tests/*", | |
| "*/test_*.py", | |
| ] | |
| [tool.coverage.report] | |
| exclude_lines = [ | |
| "pragma: no cover", | |
| "def __repr__", | |
| "raise AssertionError", | |
| "raise NotImplementedError", | |
| "if __name__ == .__main__.:", | |
| "if TYPE_CHECKING:", | |
| "@abstractmethod", | |
| ] | |