Похоже, что все ваши требования общедоступны (на PyPI), и вам не нужны их конкретные версии, достаточно «достаточно новые». В 2016 году, когда вы можете рассчитывать на то, что у всех будет последняя версия pip
, делать действительно нечего. Если вы просто pip install .
из исходного каталога или pip install git+https://url/to/package
или что-то подобное, он просто вытащит последние версии зависимостей из сети. Тот факт, что вашего пакета нет в PyPI, не помешает pip найти там свои зависимости.
Или, если вы хотите хранить их все локально, вы можете настроить локальный индекс PyPI. Хотя в таком случае, вероятно, было бы проще отправить ваш пакет в тот же локальный индекс и установить его оттуда.
Если вам нужно что-то более сложное, файл требований может позаботиться об этом. это для вас.
В частности, если вам нужно распространить пакет среди других людей в вашей организации, у которых может не быть настроен локальный индекс вашей группы, или по какой-то причине вы не можете настроить локальный индекс в первую очередь, вы можете поместить все необходимая информация в файле требований или, если это более уместно, в командной строке, используемой для установки вашего пакета (что даже работает, если вы застряли с easy_install
или древними версиями pip
).
Подробная информация содержится в документации, и в этой записи в блоге это очень хорошо объясняется, но короткая версия такова:
Если у вас есть локальный индекс PyPI, укажите --extra-index-url=http://my.server/path/to/my/pypi/
.
Если у вас есть HTTP-сервер, на который вы можете сбрасывать пакеты, и вы можете включить на своем сервере опцию «автоматического индексирования содержимого каталога», просто укажите --find-links=http://my.server/path/to/my/packages/
.
Если вы хотите использовать локальные файлы (или совместное использование файлов SMB/AFP/и т. д.), создайте простой HTML-файл, содержащий только ссылки на все локальные пакеты, и укажите --find-links=file:///path/to/my/index.html
.
Опять же, они могут идти в командной строке «чтобы установить этот пакет, запустите это» (или скрипт установки curl | sh
), но обычно вы просто хотите поместить их в файл требований. Если это так, обязательно используйте только одно значение для каждой опции (например, если вы хотите добавить два дополнительных индекса, добавьте два параметра --extra-index-url
) и поместите каждое из них на отдельной строке.
Файл требований также позволяет вам указать конкретные версии каждого пакета, чтобы вы могли быть уверены, что люди развертывают тот же код, который вы разработали и протестировали, что часто бывает полезно в подобных ситуациях.
person
abarnert
schedule
13.11.2012