Python, requirements.txt
Файл со списком пакетов, необходимых для работы Python-приложения, называют файлом требований, requirements
-файлом или просто реками. Обычно такой файл хранится в корневой директории исходного кода приложения и называется requirements.txt
.
Такой файл можно создать самостоятельно с нуля или, уже в готовом приложении, с помощью команды:
pip freeze > requirements.txt
Для установки пакетов из requirements-файла нужно воспользоваться ключом r
команды pip
:
pip install -r requirements.txt
Кроме названий пакетов и номеров их версий в таких файлах могут (и должны) содержаться следующие полезные штуки.
Комплексные номера версий пакетов
pylint # последняя актуальная версия
pylint == 2.1.3 # конкретная версия
pylint >= 2.1.1 # минимально возможная версия
pylint != 2.1.1 # любая версия кроме указанной
pylint ~= 2.1 # совместимый релиз; в примере последняя версия 2.1.*
Комментарии
# Линтер для Python.
pylint == 2
Ссылки на другие requirements-файлы
Делать инклуды, то есть включения одних requirements-файлов в другие, удобно для разделения пакетов на набор для разработки и продакшена.
Допустим у нас есть requirements.txt
:
flask
numpy
pandas
tensorflow
Для разработки нам нужны пакеты с линтером (pylint) и тестами (pytest). В таком случае можно создать файл requirements-dev.txt
, в который осуществить инклуд основного файла с требованиями:
# Подключение основного файла со списком пакетов.
-r requirements.txt
pylint
pytest
Подробнее о работе с requirements-файлами и pip в целом.