Files
api-copp/pyproject.toml
jze9 485d5128bf 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>
2026-07-17 10:31:59 +05:00

54 lines
1.1 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "api-copp"
version = "0.3.0"
description = "API приложение на FastAPI"
readme = "README.md"
requires-python = ">=3.14"
authors = [{name = "Author", email = "author@example.com"}]
keywords = ["api", "fastapi"]
dependencies = [
"fastapi>=0.128.0",
"uvicorn[standard]>=0.40.0",
"pydantic>=2.12.5",
"python-dotenv>=1.2.1",
"redis>=7.1.0",
"sqlalchemy>=2.0.47",
"pg8000>=1.29.0",
"flet>=0.82.2",
"jose>=1.0.0",
"passlib[bcrypt]>=1.7.4",
"bcrypt==4.0.1",
"python-jose>=3.5.0",
"matplotlib>=3.10.8",
"python-docx>=1.2.0",
"python-multipart>=0.0.20",
]
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.0",
"black>=23.0.0",
"ruff>=0.1.0",
]
[project.urls]
Homepage = "https://github.com/user/api-copp"
Documentation = "http://localhost:8000/docs"
[tool.hatch.build.targets.wheel]
packages = ["route"]
[tool.black]
line-length = 100
target-version = ["py314"]
[tool.ruff]
line-length = 100
target-version = "py314"