83 lines
1.7 KiB
TOML
83 lines
1.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=77", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "presenton-backend"
|
|
version = "0.1.0"
|
|
description = "Add your description here"
|
|
license = "Apache-2.0"
|
|
license-files = ["LICENSE", "NOTICE"]
|
|
requires-python = ">=3.11,<3.12"
|
|
dependencies = [
|
|
"alembic>=1.14.0",
|
|
"aiohttp>=3.12.15",
|
|
"aiomysql>=0.2.0",
|
|
"aiosqlite>=0.21.0",
|
|
"asyncpg>=0.30.0",
|
|
"dirtyjson>=1.0.8",
|
|
"fastapi[standard]>=0.116.1",
|
|
"fastembed-vectorstore>=0.5.2",
|
|
"fastmcp>=2.11.0",
|
|
"greenlet>=3.0.3",
|
|
"google-genai>=1.28.0",
|
|
"mem0ai[nlp]>=0.1.115",
|
|
"nltk>=3.9.1",
|
|
"openai>=1.98.0",
|
|
"pathvalidate>=3.3.1",
|
|
"pdfplumber>=0.11.7",
|
|
"pillow>=12.2.0",
|
|
"psycopg[binary]>=3.2.0",
|
|
"sqlmodel>=0.0.24",
|
|
"llmai==0.2.8",
|
|
"jsonschema>=4.26.0",
|
|
"python-pptx>=1.0.2",
|
|
"fonttools>=4.55.0",
|
|
]
|
|
|
|
[tool.uv]
|
|
index-strategy = "unsafe-best-match"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["."]
|
|
include = [
|
|
"api*",
|
|
"enums*",
|
|
"models*",
|
|
"services*",
|
|
"constants*",
|
|
"utils*",
|
|
"templates*",
|
|
]
|
|
|
|
[tool.pyright]
|
|
typeCheckingMode = "off"
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"pytest>=9.0.3",
|
|
"pytest-cov>=7.1.0",
|
|
]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
|
|
# Line coverage defaults (omit non-runtime / generated paths). Branch coverage doubles
|
|
# the work for marginal signal; optimize for deterministic statement coverage runs.
|
|
[tool.coverage.run]
|
|
branch = false
|
|
relative_files = true
|
|
source = ["."]
|
|
omit = [
|
|
"tests/*",
|
|
"**/.venv/*",
|
|
"**/venv/*",
|
|
"alembic/versions/*",
|
|
"scripts/*",
|
|
]
|
|
|
|
[tool.coverage.report]
|
|
precision = 1
|
|
skip_empty = true
|
|
show_missing = true
|