Skip to content

Инструменты: зависимости Python через uv вместо pip и requirements.txt - #47

Merged
devAsmodeus merged 1 commit into
mainfrom
claude/modest-bell-3zz7pd
Sep 30, 2026
Merged

devAsmodeus merged 1 commit into
mainfrom
claude/modest-bell-3zz7pd

Conversation

@devAsmodeus

@devAsmodeus devAsmodeus commented Sep 30, 2026 •

Copy link
Copy Markdown
Owner

Что сделано

  • pyproject.toml: зависимости (lxml, pillow, texture2ddecoder) в [project], pytest и ruff в dev-группе, requires-python = ">=3.12", [tool.uv] package = false — tools/ это отдельные скрипты, а не пакет.
  • uv.lock (11 пакетов) и .python-version (3.12) — в git.
  • CI: astral-sh/setup-uv@v7 с кэшем, uv sync --locked, uv run ruff check ., uv run pytest -q. Задача web не менялась.
  • requirements.txt и requirements-dev.txt удалены; команды в README и CONTRIBUTING переведены на uv sync / uv run.
  • tools/fetch_assets.py по-прежнему работает на одной стандартной библиотеке обычным python3, без uv (поправлен только docstring).

Зачем

  • Воспроизводимая сборка ассетов: манифест релиза записывает коммит, но не версии зависимостей; с lock-файлом другой Pillow/libwebp не даст другие байты WebP при пересборке.
  • Версия Python фиксируется файлом .python-version, uv run всегда берёт нужный интерпретатор и окружение.
  • CI быстрее и детерминированнее: кэш uv и установка строго по uv.lock.

Как проверено

  • uv lock → uv sync → uv run ruff check . (чисто) → uv run pytest -q (86 passed) на Python 3.12.3 из .python-version.
  • uv sync --locked и uv lock --check проходят — то, что делает CI.
  • python3 tools/fetch_assets.py --help работает без .venv.
  • В README, CONTRIBUTING, tools/ и .github/ упоминаний pip install и requirements*.txt не осталось.

Зависимости и dev-группа описаны в pyproject.toml и закреплены в uv.lock,
версия Python — в .python-version (3.12). CI ставит окружение через
astral-sh/setup-uv и uv sync --locked, проверки идут через uv run.
requirements.txt и requirements-dev.txt удалены, команды в README,
CONTRIBUTING и CLAUDE.md переведены на uv. tools/fetch_assets.py по-прежнему
работает на одной стандартной библиотеке без uv.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jtfa7eq6Q4LoPMCwGuJory
@devAsmodeus
devAsmodeus marked this pull request as ready for review September 30, 2026 09:08
@devAsmodeus
devAsmodeus merged commit d678672 into main Sep 30, 2026
3 checks passed
@devAsmodeus
devAsmodeus deleted the claude/modest-bell-3zz7pd branch September 30, 2026 09:09
devAsmodeus added a commit that referenced this pull request Sep 30, 2026
#47)

Зависимости и dev-группа описаны в pyproject.toml и закреплены в uv.lock, версия Python — в .python-version (3.12). CI ставит окружение через astral-sh/setup-uv и uv sync --locked, проверки идут через uv run. requirements.txt и requirements-dev.txt удалены, команды в README и CONTRIBUTING переведены на uv. tools/fetch_assets.py по-прежнему работает на одной стандартной библиотеке без uv.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants