# requirements.txt — Clover 后端依赖（pinned versions）
# ── Web 框架 ──────────────────────────────────────────
fastapi==0.115.5
uvicorn[standard]==0.32.1
pydantic==2.10.3
pydantic-settings==2.6.1

# ── 数据库 ───────────────────────────────────────────
sqlalchemy==2.0.36
alembic==1.14.0
pymysql==1.1.1
cryptography==44.0.0

# ── MongoDB ──────────────────────────────────────────
motor==3.6.0

# ── Redis + Celery ───────────────────────────────────
redis==5.2.1
celery==5.4.0

# ── JWT + 安全 ───────────────────────────────────────
pyjwt==2.10.1
# passlib 不带 [bcrypt] extra：该 extra 会拉最新 bcrypt(5.x)，覆盖下面的 pin，
# 而 passlib 1.7.4 与 bcrypt 5.x 不兼容（password cannot be longer than 72 bytes）。
# 显式锁 bcrypt 4.0.1。
passlib==1.7.4
bcrypt==4.0.1

# ── HTTP 客户端（AI 调用）────────────────────────────
httpx==0.28.1
aiohttp==3.11.10

# ── 图像处理（去水印）──────────────────────────────
pillow==11.0.0

# ── 工具 ─────────────────────────────────────────────
python-multipart==0.0.19
python-dotenv==1.0.1
