Yanıtlar:
1.3 sürümünden beri, pip yeni bir komut içeriyor:
$ pip list --outdated
requests (Current: 1.1.0 Latest: 1.2.0)
Daha fazla bilgi için bu yazıya bakın .
Bu pip çatal kullanın:
https://github.com/dgladkov/pip
Bu komutu kullanarak tam olarak ne istediğinizi yapar:
$ pip list --outdated
Sorun şu ki, hiçbir zaman tüm paketleri yükseltmem . Sadece ihtiyacım olanı yükseltirim çünkü proje bozulabilir .
Paket tarafından paket yükseltme ve requirements.txt dosyasını güncellemek için kolay bir yolu olmadığı için, ben yazdım pip-Güncelleyicisine da içinde sürümlerini güncelleyen requirements.txt
dosyası seçilen paketler (veya tüm paketler) için.
Kurulum
pip install pip-upgrader
kullanım
Virtualenv'inizi aktif hale getirin (önemli, çünkü yükseltilmiş paketlerin yeni sürümlerini mevcut virtualenv'e de yükler).
cd
Proje dizininize ekleyin, sonra çalıştırın:
pip-upgrade
Gelişmiş kullanım
Gereksinimler standart olmayan bir yere yerleştirilirse, bunları argüman olarak gönderin:
pip-upgrade path/to/requirements.txt
Hangi paketi yükseltmek istediğinizi zaten biliyorsanız, onları bağımsız değişken olarak gönderin:
pip-upgrade -p django -p celery -p dateutil
Sürüm öncesi / sürüm sürümüne yükseltme yapmanız gerekiyorsa --prerelease
, komutunuza argüman ekleyin .
Tam açıklama: Bu paketi yazdım.
Belki de https://github.com/nvie/pip-tools adresinde bulunan pip araçları, istediğinizi elde etmenize yardımcı olabilir?
README'den bir örnek:
$ 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
...
pip list --outdated
Bir requirements.txt
dosyaya benzer ancak günceller :
pur -r requirements.txt
PyPi: https://pypi.python.org/pypi/pur
GitHub: https://github.com/alanhamlett/pip-update-requirements