Znajdź przestarzałe / aktualizowalne pakiety pip

103

pip freeze pokazuje mi zainstalowane pakiety, ale jak mogę sprawdzić w pypi, które z nich są nieaktualne?

Xster
źródło

Odpowiedzi:

159

Od wersji 1.3 pip zawiera nowe polecenie:

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

Zobacz ten post, aby uzyskać więcej informacji.

Danilo Bargen
źródło
7

Użyj tego widelca:

https://github.com/dgladkov/pip

Co robi dokładnie to, co chcesz za pomocą tego polecenia:

$ pip list --outdated
Douglas Soares de Andrade
źródło
lol, dzięki dsa. Oboje już wcześniej komentowaliśmy widelec :)
Xster,
5

Rzecz w tym, że nigdy nie aktualizuję wszystkich pakietów . Aktualizuję tylko to, czego potrzebuję, ponieważ projekt może się zepsuć .

Ponieważ nie było łatwego sposobu na aktualizację pakietu po pakiecie i aktualizację pliku wymagania.txt, napisałem ten program do aktualizacji requirements.txtpip, który również aktualizuje wersje w twoim pliku dla wybranych pakietów (lub wszystkich pakietów).

Instalacja

pip install pip-upgrader

Stosowanie

Aktywuj virtualenv (ważne, ponieważ zainstaluje również nowe wersje uaktualnionych pakietów w bieżącym virtualenv).

cd do katalogu projektu, a następnie uruchom:

pip-upgrade

Zaawansowane użycie

Jeśli wymagania są umieszczone w niestandardowej lokalizacji, prześlij je jako argumenty:

pip-upgrade path/to/requirements.txt

Jeśli już wiesz, jaki pakiet chcesz zaktualizować, po prostu wyślij je jako argumenty:

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

Jeśli musisz zaktualizować wersję do wersji wstępnej / późniejszej, dodaj --prereleaseargument do swojego polecenia.

Pełne ujawnienie: napisałem ten pakiet.

Simion Agavriloaei
źródło
1

Być może narzędzia pip dostępne na stronie https://github.com/nvie/pip-tools mogą pomóc Ci osiągnąć to, czego chcesz?

Przykład z pliku 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
...
Martin Thorsen Ranang
źródło
1
Wygląda na to, że ten pakiet został przeniesiony na github.com/jgonggrijp/pip-review
Droplet