n1ro°
RU

Компьютеры · Инструкция

requirements.txt и constraints.txt в pip: в чём разница

Синтаксис похож, но назначение разное: requirements описывает установку, constraints — общие границы resolver.

Редакция N1RO · Проверено

Короткий ответ

`requirements.txt` задаёт, что установить. `constraints.txt` сам по себе пакет не добавляет — он только ограничивает допустимую версию, если пакет понадобился по другим требованиям.

Порядок действий

  1. Поместите прямые зависимости в requirements.txt.
  2. Поместите организационные/version ограничения в constraints.txt.
  3. Устанавливайте `python -m pip install -r requirements.txt -c constraints.txt`.
  4. Проверьте итог в чистом venv.

Перед завершением проверьте

  • Constraint не используется как список 'установить всё'.
  • Ограничения не делают resolver заведомо несовместимым.

Важно

Слишком жёсткие constraints могут привести к ResolutionImpossible.

Что учитывать

Слишком жёсткие constraints могут привести к ResolutionImpossible.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. pip User Guide). Пример и формулировки — редакция N1RO на 2026-09-20.