заморозка пипса без зависимостей установленных пакетов - PullRequest
19 голосов
/ 05 мая 2011

Когда я делаю pip freeze, я получаю пакеты, которые я явно установил, плюс те пакеты, которые являются зависимостями этих пакетов.

Например:

$ pip install fabric
...
$ pip freeze
Fabric==1.0.1
paramiko==1.7.6
pycrypto==2.3

Хорошо, но тогдаЯ перехожу, чтобы установить этот файл needs.txt в другой среде с pip install. Я получу тот же результат, если удалить последние 2 строки.

Поэтому мой вопрос: как мне создать максимально упрощенные требования.TXT, где не отображаются все вычисляемые зависимости?

Ответы [ 2 ]

19 голосов
/ 16 октября 2016

Теперь есть (отказ от ответственности: я сделал это).

Все, что вам нужно, это установить pip-chill из PyPI и запустить pip-chill из среды Python.

Если вычувствуя себя авантюрным и не желая закреплять версии (или использовать pip-компиляцию), вы можете использовать pip-chill --no-version, и это даст вам минимальные требования для вашей текущей среды.

https://github.com/rbanffy/pip-chill

12 голосов
/ 06 мая 2011

Невозможно создать «максимально упрощенный файл require.txt» с помощью pip - и я не знаю, понадобится ли вам это в этом случае.

Хорошо иметь всепакеты в файле require.txt, потому что вы уверены, какие версии зависимостей работают с вашей средой.

Подумайте об обновлении paramiko и нарушении обратной совместимости: у вас будут проблемы.

...