82

pip freeze показывает мне установленные пакеты, но как проверить по pypi, какие из них устарели?

5 ответов5

124

Начиная с версии 1.3, в pip появилась новая команда:

$ pip list --outdated
requests (Current: 1.1.0 Latest: 1.2.0)

Смотрите этот пост для получения дополнительной информации.

6

Используйте эту пип-вилку:

https://github.com/dgladkov/pip

Который делает именно то, что вы хотите, используя эту команду:

$ pip list --outdated
3

Дело в том, что я никогда не обновляю все пакеты. Я обновляю только то, что мне нужно, потому что проект может сломаться.

Потому что не было простым способом для обновления пакета с пакетом, и обновлением файла requirements.txt, я написал этот пип-Upgrader который также обновляет версии в файле requirements.txt для пакетов , выбранных (или всех пакетов).

Монтаж

pip install pip-upgrader

использование

Активируйте вашу virtualenv (важно, потому что он также установит новые версии обновленных пакетов в текущую virtualenv).

cd в каталог проекта, а затем запустить:

pip-upgrade

Расширенное использование

Если требования размещены в нестандартном месте, отправьте их в качестве аргументов:

pip-upgrade path/to/requirements.txt

Если вы уже знаете, какой пакет вы хотите обновить, просто отправьте их в качестве аргументов:

pip-upgrade -p django -p celery -p dateutil

Если вам нужно перейти на версию до и после выпуска, добавьте аргумент --prerelease в свою команду.

Полное раскрытие: я написал этот пакет.

1

Возможно, pip-инструменты, доступные по адресу https://github.com/nvie/pip-tools, могут помочь вам достичь того, чего вы хотите?

Пример из README:

$ pip-review --interactive
requests==0.14.0 available (you have 0.13.2)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit y
...
redis==2.6.2 available (you have 2.4.9)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit n
rq==0.3.2 available (you have 0.3.0)
Upgrade now? [Y]es, [N]o, [A]ll, [Q]uit y
...
0

Подобно pip list --outdated но обновляет файл requirements.txt

pur -r requirements.txt

PyPi: https://pypi.python.org/pypi/pur

GitHub: https://github.com/alanhamlett/pip-update-requirements

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .