Odpowiedzi:
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.
Użyj tego widelca:
https://github.com/dgladkov/pip
Co robi dokładnie to, co chcesz za pomocą tego polecenia:
$ pip list --outdated
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.txt
pip, 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 --prerelease
argument do swojego polecenia.
Pełne ujawnienie: napisałem ten pakiet.
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
...
Podobne do, pip list --outdated
ale aktualizuje requirements.txt
plik:
pur -r requirements.txt
PyPi: https://pypi.python.org/pypi/pur
GitHub: https://github.com/alanhamlett/pip-update-requirements