[project] name = "headquarter-api" version = "0.0.1" description = "Headquarter FastAPI backend" requires-python = ">=3.11" dependencies = [ "fastapi>=0.115.0", "uvicorn[standard]>=0.34.0", "pydantic-settings>=2.8.0", "sqlalchemy[asyncio]>=2.0.0", "asyncpg>=0.30.0", "alembic>=1.15.0", "pyjwt>=2.8.0", "cryptography>=44.0.0", "httpx>=0.28.0", "pyyaml>=6.0", ] [project.optional-dependencies] dev = [ "pytest>=8.3.0", "pytest-asyncio>=0.24.0", "httpx>=0.28.0", "ruff>=0.11.0", "mypy>=1.15.0", "sqlalchemy[mypy]", ] [build-system] requires = ["setuptools>=61.0"] build-backend = "setuptools.build_meta" [tool.setuptools] packages = ["app"] [tool.ruff] line-length = 100 target-version = "py311" exclude = ["alembic/versions"] [tool.ruff.lint] select = ["E", "F", "I", "N", "W", "UP"] [tool.mypy] python_version = "3.11" strict = true warn_return_any = true warn_unused_configs = true exclude = ["alembic/versions"] plugins = ["pydantic.mypy"] [[tool.mypy.overrides]] module = "yaml" ignore_missing_imports = true [tool.pytest.ini_options] asyncio_mode = "auto"