uv 0.13.8 ограничил доступ к файлам учётных данных и исправил сборку окружений

uv 0.13.8 ограничил доступ к файлам учётных данных и исправил сборку окружений
Содержание статьи

12 ноября 2026 года вышел uv 0.13.8, обновление инструмента для управления Python-проектами и окружениями. Mentoring.digital разбирает изменения, которые полезно проверить в локальной разработке и CI, прежде чем обновлять общую конфигурацию команды.

Права доступа и ограничения возраста пакетов

В Unix исправлена запись текстовых файлов с учётными данными: доступ к ним ограничивается владельцем. Это относится к конкретному способу хранения секретов, а не означает, что любое окружение после обновления автоматически защищено от всех утечек. Секреты по-прежнему не должны попадать в репозиторий, журнал сборки или образы.

Исправлено применение настроек exclude-newer-package для отдельных индексов. Если команда ограничивает выбор слишком свежих пакетов, полезно проверить именно такую конфигурацию и фактически выбранные версии. Успешная установка без этого сценария не подтверждает работу фильтра.

Что изменилось в окружениях и Python

Параллельные вызовы uvx или uv run --with, которым требуется одно окружение, больше не должны запускать его повторную сборку. В Windows исправлен activate.bat для путей с апострофом. Это отдельная ошибка пути: переносить виртуальное окружение из-за неё без проверки необходимости не требуется.

Добавлена управляемая сборка CPython 3.16.0a2. Обозначение a2 указывает на предварительный выпуск Python. Его появление в менеджере не превращает эту версию интерпретатора в стабильную рекомендацию для рабочего приложения. Возможности выбора wheel-вариантов также перечислены в разделе preview и требуют соответствующего отношения.

Какие проверки включить в обновление

  • Проверить версию uv отдельно на компьютере разработчика и в образе CI.
  • Воспроизвести установку с используемыми индексами и ограничениями возраста пакетов.
  • Проверить создание и запуск окружения на поддерживаемых проектом системах.
  • Просмотреть изменения файла блокировки и диагностические сообщения без вывода секретов.

Обновление инструмента и смену версии Python удобно выполнять отдельными изменениями: так проще понять причину новой ошибки. Практику управления зависимостями и окружениями можно разобрать с наставником по Python на примере своего проекта.

Похожие статьи по данной теме