Files
server-core/pyproject.toml
T
Pine 980a2db6d9 refactor: 平台应用异步四层架构(接口/业务/领域/基础设施)
- 基础设施层 async:SQLAlchemy 异步引擎/会话、33 Repository async 化、models/security/seed 迁入 infrastructure、新增 cache.py(redis.asyncio) 与 oss.py(aioboto3)
- 接口层:routers 迁 api/routers 并全 async,dependencies 迁 api/dependencies(get_db/get_current_user async)
- 依赖:sqlalchemy[asyncio]/aiosqlite/asyncmy/redis/aioboto3;config 异步 URL + Redis/OSS 配置
- 删除废弃:旧同步 db/dependencies/repositories/storage
- 验证:平台 19 路由 + 培训 48 路由全注册;/health /auth/login /auth/me /admin/tasks /notifications 等接口 async 可用
2026-08-23 23:52:58 +08:00

38 lines
859 B
TOML

[project]
name = "pineagents-demo-server"
version = "0.1.0"
description = "云超服核心服务端(FastAPI + SQLite + JWT + RBAC):身份/平台 API + 培训子应用(/api/*),统一对外 opc.pinesound.cn"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"pydantic>=2.7.0",
"sqlalchemy[asyncio]>=2.0.30",
"aiosqlite>=0.20.0",
"asyncmy>=0.2.9",
"redis>=5.0.0",
"aioboto3>=13.0.0",
"pyjwt>=2.8.0",
"httpx>=0.27.0",
"python-multipart>=0.0.12",
]
[dependency-groups]
dev = [
"pytest>=8.0.0",
"httpx>=0.27.0",
"pytest-asyncio>=0.23.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["app"]
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-q"