1.5 KiB
1.5 KiB
Управление зависимостями
Формат
Рекомендуемый: requirements.txt
# === Core ===
fastapi==0.115.6
uvicorn[standard]==0.34.0
pydantic==2.10.3
pydantic-settings==2.7.0
# === Database ===
sqlalchemy[asyncio]==2.0.36
aiosqlite==0.20.0 # dev (SQLite)
asyncpg==0.30.0 # prod (PostgreSQL)
alembic==1.14.1
# === Auth ===
python-jose[cryptography]==3.3.0
passlib[bcrypt]==1.7.4
# === AI ===
httpx==0.28.1
pyyaml==6.0.2
# === Tasks (опционально) ===
celery==5.4.0
redis==5.2.1
# === Dev ===
pytest==8.3.4
pytest-asyncio==0.24.0
ruff==0.8.4
Правила обновления
| Тип | Когда | Проверка |
|---|---|---|
| patch | В любой момент (bugfix, security) | CI passes |
| minor | Не чаще 1 раза в спринт | Full regression |
| major | Только с полным регрессом | + migration guide |
Аудит зависимостей
Периодически проверять уязвимости:
pip-audit
safety check
[ASK] Вопросы по зависимостям
requirements.txtилиpyproject.toml? (pyproject.toml — современный стандарт)pipилиpoetry/uv? (uv — быстрее, poetry — управление зависимостями)- Нужна ли заморозка версий (
pip freeze > requirements-lock.txt)? (да, для production)