[project] name = "blog" version = "0.1.0" description = "Add your description here" readme = "README.md" requires-python = ">=3.13" dependencies = [ "fastapi>=0.136.0", "uvicorn>=0.44.0", "pydantic-settings>=2.7.0", "dishka>=1.0.0", ] [dependency-groups] dev = [ {include-group = "lints"}, {include-group = "tests"}, {include-group = "types"}, {include-group = "docs"}, "pre-commit>=4.5.1", ] tests = [ "httpx>=0.28.1", "pytest>=9.0.3", "pytest-asyncio>=1.3.0", "pytest-cov>=7.1.0", "mimesis>=13.0.0", ] lints = [ "black>=23.7.0", "ruff>=0.15.11", "isort>=8.0.1", ] types = [ "mypy>=1.20.1", ] docs = [ "pydocstyle>=6.3.0", "interrogate>=1.7.0", "mkdocs>=1.6.0", "mkdocstrings[python]>=0.24.0", ] [tool.pytest.ini_options] asyncio_mode = "auto" asyncio_default_fixture_loop_scope = "function" addopts = "--cov=app --cov-report=term --no-cov-on-fail -p no:cacheprovider" pythonpath = "." testpaths = "tests" xfail_strict = true markers = [ "api: API endpoint tests", "unit: Unit tests (isolated, fast)", "integration: Integration tests (DB, external services)", "e2e: End-to-end tests (full workflows)", "slow: Slow running tests (skip in CI by default)", ] # Disable bytecode generation env = ["PYTHONDONTWRITEBYTECODE=1"] [tool.uv] # Disable Python bytecode cache during development # Set PYTHONDONTWRITEBYTECODE=1 in .env or environment