[project]
name = "gntodo-backend"
version = "0.1.0"
description = "gntodo — персональный менеджер задач: API, MCP (backend)"
requires-python = ">=3.12"
dependencies = [
"fastapi>=0.115",
"uvicorn[standard]>=0.32",
"pydantic-settings>=2.6",
"sqlalchemy>=2.0",
"psycopg[binary]>=3.2",
"alembic>=1.14",
"httpx>=0.24",
"gnexus-gauth",
"itsdangerous>=2.2.0",
"python-multipart>=0.0.32",
]
[dependency-groups]
dev = [
"pytest>=8.0",
"pytest-cov>=5.0",
"ruff>=0.7",
"mypy>=1.13",
]
[tool.uv.sources]
gnexus-gauth = { git = "https://git.gnexus.space/git/root/gnexus-auth-client-py.git" }
[tool.setuptools.packages.find]
where = ["."]
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"
[tool.ruff]
line-length = 100
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "UP", "B"]
[tool.mypy]
python_version = "3.12"
strict = true
# gnexus-gauth (alpha) пока без py.typed — игнорируем до появления стабов
[[tool.mypy.overrides]]
module = "gnexus_gauth.*"
ignore_missing_imports = true