Files
MABEA/backend/pyproject.toml
T
patrickandClaude Sonnet 5 8f9bd57c5b
CI / backend-tests (push) Failing after 35s
CI-Bugfixes aus erstem echten Testlauf: bcrypt-Pin, pytest-asyncio Loop-Scope
1. passlib 1.7.4 liest bcrypt.__about__.__version__, das bcrypt>=4.1 entfernt hat -
   führte zu irreführendem "password cannot be longer than 72 bytes". Fix: bcrypt<4.1 pinnen.
2. Globaler async engine in conftest.py + pytest-asyncios default function-scoped Event-Loop
   führte zu "Task ... attached to a different loop" bei asyncpg. Fix: session-weiter
   Loop-Scope für Fixtures und Tests.

Erster echter CI-Lauf (Host-Runner ohne Docker) kam bis zum pytest-Schritt durch,
beide Fehler dort aufgedeckt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L85hmKbvX7Cqkq47KnQhFt
2026-09-03 23:24:40 +02:00

36 lines
1.0 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[project]
name = "mabea-backend"
version = "0.1.0"
description = "MABEA Digitales Materialmanagement Rettungsdienst/KatS, Backend (Sprint 0)"
requires-python = ">=3.11"
dependencies = [
"fastapi>=0.115,<0.116",
"uvicorn[standard]>=0.32,<0.33",
"sqlalchemy>=2.0,<2.1",
"asyncpg>=0.30,<0.31",
"alembic>=1.13,<1.14",
"pydantic-settings>=2.6,<2.7",
"passlib[bcrypt]>=1.7,<1.8",
# passlib 1.7.4 liest bcrypt.__about__.__version__, das ab bcrypt 4.1 entfernt wurde
# (Fund im ersten echten CI-Lauf: "password cannot be longer than 72 bytes" ist eine
# irreführende Folgefehlermeldung, echte Ursache ist die AttributeError beim Backend-Check).
"bcrypt>=4.0,<4.1",
"pyjwt>=2.9,<2.10",
"python-multipart>=0.0.12,<0.1",
]
[project.optional-dependencies]
dev = [
"pytest>=8.3,<8.4",
"pytest-asyncio>=0.24,<0.25",
"pytest-cov>=5.0,<6.0",
"httpx>=0.27,<0.28",
]
[build-system]
requires = ["setuptools>=68"]
build-backend = "setuptools.build_meta"
[tool.setuptools.packages.find]
include = ["app*"]