fix: критическая регрессия — вход и регистрация падали с 500 (нет bcrypt-бэкенда)

При переходе Dockerfile.api на pyproject.toml/uv (fd098f9) зависимость
"passlib>=1.7.4" потеряла экстру [bcrypt] — requirements.txt раньше явно
тянул passlib[bcrypt] + отдельно bcrypt==4.0.1. Без бэкенда verify_password/
hash_password падали с passlib.exc.MissingBackendError на каждой попытке
войти или зарегистрироваться.

Добавлена экстра passlib[bcrypt], и bcrypt закреплён на 4.0.1 — свежий
bcrypt 5.0 (резолвился бы по умолчанию) несовместим с passlib 1.7.4:
ломает определение версии (module 'bcrypt' has no attribute '__about__')
и падает на служебном self-test с другой ошибкой про длину пароля.
Проверено напрямую внутри собранного образа: hash_password/verify_password
работают корректно, без обращения к БД.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
jze9
2026-07-17 10:31:59 +05:00
parent 0f13ef5256
commit 485d5128bf
2 changed files with 30 additions and 3 deletions

View File

@@ -21,7 +21,8 @@ dependencies = [
"pg8000>=1.29.0",
"flet>=0.82.2",
"jose>=1.0.0",
"passlib>=1.7.4",
"passlib[bcrypt]>=1.7.4",
"bcrypt==4.0.1",
"python-jose>=3.5.0",
"matplotlib>=3.10.8",
"python-docx>=1.2.0",