Files
main_backend/pyproject.toml
T
2026-04-27 23:19:04 +03:00

67 lines
1.4 KiB
TOML

[project]
name = "cpv3"
version = "0.1.0"
description = "Coffee Project Backend v3 (FastAPI)"
requires-python = ">=3.11"
dependencies = [
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"sqlalchemy>=2.0.30",
"asyncpg>=0.29.0",
"alembic>=1.13.2",
"pydantic>=2.7.0",
"pydantic-settings>=2.3.0",
"python-multipart>=0.0.9",
"boto3>=1.42.1",
"httpx>=0.27.0",
"PyJWT>=2.8.0",
"passlib[bcrypt]>=1.7.4",
# bcrypt 4.x dropped the __about__ metadata passlib 1.7.x expects; pin to 3.x.
"bcrypt>=3.2.2,<4.0.0",
"python-dotenv>=1.0.1",
"pydub>=0.25.1",
"google-cloud-speech>=2.34.0",
"openai-whisper>=20250625",
"dramatiq[redis]>=1.17.0",
"redis>=5.0.0",
"psycopg2-binary>=2.9.9",
"tiktoken>=0.3.3",
"greenlet>=3.3.0",
]
[dependency-groups]
dev = [
"mypy>=1.19.1",
"ruff>=0.6.0",
"pytest>=8.0.0",
"pytest-asyncio>=0.23.0",
"aiosqlite>=0.20.0",
]
tools = [
"bandit",
"pip-audit",
"schemathesis",
"radon",
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
testpaths = ["tests"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
[tool.ruff]
line-length = 100
[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
where = ["."]
include = ["cpv3*"]
exclude = ["alembic*"]
namespaces = false