Дополнительные зависимости в файле требований к протоколам
Как я могу указать необязательные зависимости в файле требований пипа?
Согласно pip документации это возможно, но в документации не объясняется, как это сделать, и я не могу найти никаких примеров в Интернете.
Ответы
Ответ 1
Вместо указания дополнительных зависимостей в том же файле, что и жесткие требования, вы можете создать optional-requirements.txt
и requirements.txt
.
Чтобы экспортировать текущие пакеты среды в текстовый файл, вы можете сделать это:
pip freeze > requirements.txt
При необходимости измените содержимое требования .txt, чтобы точно представлять зависимости проекта. Затем, чтобы установить все пакеты в этом файле, запустите:
pip install -U -r requirements.txt
-U
сообщает pip
обновлять пакеты до последней версии, а -r
сообщает об установке всех пакетов в файле требований .txt.
Ответ 2
В 2015 году PEP-0508 определил способ указания необязательных зависимостей в requirements.txt
:
requests[security]
Это означает, что yourpackage
нуждается в requests
для опции безопасности. Вы можете установить его как:
pip install yourpackage[security]
Ответ 3
Вы неправильно понимаете документацию; это не так ясно, как могло бы быть. Суть в документации заключается в том, что с файлом требований вы можете свободно указать свой полный рекомендуемый рабочий набор пакетов, включая как необходимые, так и дополнительные.
Вы можете добавлять комментарии (строки, начинающиеся С#), чтобы различать людей, но pip не делает различий. У вас также может быть два файла требований, как предлагает Даниэль.