diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index d44a222..2f91a02 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -32,7 +32,7 @@ jobs: - name: Install Python dependencies run: | python -m pip install --upgrade pip - pip install -r apps/api/requirements.txt + pip install -r apps/api/requirements-dev.txt pip install -e . - name: Apply migrations to clean PostgreSQL working-directory: apps/api diff --git a/README.md b/README.md index 8e21903..db7cbb4 100644 --- a/README.md +++ b/README.md @@ -159,13 +159,15 @@ Backend и исследовательский парсер: ```bash python3 -m venv .venv -.venv/bin/pip install -r apps/api/requirements.txt +.venv/bin/pip install -r apps/api/requirements-dev.txt .venv/bin/pip install -e . .venv/bin/pytest -q ``` Актуальное число тестов выводит команда `pytest`; набор включает backend, импорт, расчёт активности и исследовательский парсер. +Production-образ API устанавливает только `requirements.txt`; `pytest` подключается отдельно через `requirements-dev.txt` в локальной среде и CI. + Frontend: ```bash diff --git a/apps/api/requirements-dev.txt b/apps/api/requirements-dev.txt new file mode 100644 index 0000000..44dca33 --- /dev/null +++ b/apps/api/requirements-dev.txt @@ -0,0 +1,2 @@ +-r requirements.txt +pytest==8.4.2 diff --git a/apps/api/requirements.txt b/apps/api/requirements.txt index 8ed7559..585feac 100644 --- a/apps/api/requirements.txt +++ b/apps/api/requirements.txt @@ -7,6 +7,5 @@ psycopg[binary]==3.2.10 pydantic-settings==2.10.1 pillow==11.3.0 python-multipart==0.0.20 -pytest==8.4.2 sqlalchemy==2.0.43 uvicorn[standard]==0.35.0 diff --git a/docs/AUDIT_FIXES.md b/docs/AUDIT_FIXES.md index 3494a43..754f3d9 100644 --- a/docs/AUDIT_FIXES.md +++ b/docs/AUDIT_FIXES.md @@ -26,7 +26,8 @@ - [x] Sitemap постоянных страниц с пагинацией, без ограничения активности 72 часами. Последняя успешная версия хранится в памяти процесса; после перезапуска при недоступном API возвращается 503. - [x] Подключить API подсказок алиасов к административному UI: кнопка показывает подтверждённые русские названия; выбор и сохранение остаются отдельными действиями. - [x] Web Dockerfile использует npm ci; инструменты проверки/тестирования перенесены в devDependencies и удаляются перед копированием runtime. Обновлён lock-файл без сети. Сборка Docker-образа остаётся проверкой перед деплоем. -- [ ] Оптимизировать изображения и Python production-зависимости. +- [x] Удалить pytest из Python production-зависимостей; локальная среда и CI используют отдельный requirements-dev.txt (8 сентября 2026). +- [ ] Оптимизировать изображения и проверить необходимость Pillow в runtime. - [ ] Визуальная проверка 320/390/768/1280 px, исправление карточек и пустых состояний. - [ ] Согласовать остальные формулировки README/roadmap с фактическим поведением.