Core : Spring Boot 3.2.12 (EOL) -> 3.5.14 (Tomcat 10.1.54, Spring 6.2.18, Security 6.5.10, Netty 4.1.132), nimbus-jose-jwt 9.40 -> 10.9.1 (CVE-2025-53864), tink 1.14.1 -> 1.21.0 (protobuf CVE-2024-7254), bcprov 1.78.1 -> 1.84, minio 8.5.11 -> 8.6.0 (okhttp -> okhttp-jvm 5.1.0), commons-lang3 force a 3.20.0 (CVE-2025-48924). Brain : pin explicite starlette>=0.49.1 (CVE-2025-54121, CVE-2025-62727) — fastapi n'exige que >=0.46, le commentaire precedent etait une fausse garantie. Verifie : 507 tests verts + JaCoCo. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
30 lines
1.2 KiB
Plaintext
30 lines
1.2 KiB
Plaintext
fastapi==0.136.*
|
|
# Pin EXPLICITE : fastapi n'exige que starlette>=0.46.0 — sans ce pin, un
|
|
# environnement existant peut garder une starlette vulnérable.
|
|
# >= 0.49.1 : corrige CVE-2025-54121 et CVE-2025-62727.
|
|
starlette>=0.49.1,<1.0
|
|
uvicorn[standard]==0.32.*
|
|
httpx==0.27.*
|
|
pydantic-settings==2.6.*
|
|
# Requis par FastAPI pour les uploads multipart (UploadFile) — import de PDF.
|
|
python-multipart==0.0.*
|
|
|
|
pydantic
|
|
|
|
# Comptage de tokens pour la jauge de contexte (UI chat drawer).
|
|
# L'encodage cl100k_base (GPT-4/3.5) donne une approximation correcte pour
|
|
# la plupart des modeles Llama/Gemma/Mistral (~5-10% d'ecart) — suffisant
|
|
# pour une jauge visuelle.
|
|
tiktoken==0.8.*
|
|
|
|
# Import de PDF de regles (-> GameSystem). Extraction de la couche texte
|
|
# (born-digital) avec repli OCR par page pour les scans.
|
|
# - pymupdf : extraction texte + rasterisation des pages (pas besoin de poppler)
|
|
# - pytesseract + Pillow : OCR Tesseract sur les pages sans couche texte
|
|
# (le binaire tesseract-ocr est installe dans le Dockerfile, langues fra+eng)
|
|
pymupdf==1.24.*
|
|
pytesseract==0.3.*
|
|
# 12.2+ : corrige 6 CVE de parsing d'images (surface critique : pages de PDF
|
|
# uploadés par l'utilisateur rasterisées puis passées à l'OCR).
|
|
Pillow==12.2.*
|