Temukan paket pip yang usang / dapat diperbarui

103

pip freeze menunjukkan kepada saya paket-paket yang diinstal, tetapi bagaimana cara saya mengecek terhadap pypi paket mana yang sudah usang?

Xster
sumber

Jawaban:

159

Sejak versi 1.3, pip menampilkan perintah baru:

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

Lihat posting ini untuk informasi lebih lanjut.

Danilo Bargen
sumber
7

Gunakan garpu pip ini:

https://github.com/dgladkov/pip

Yang melakukan persis apa yang Anda inginkan menggunakan perintah ini:

$ pip list --outdated
Douglas Soares de Andrade
sumber
lol, terima kasih ya. Kami berdua sudah mengomentari garpu sebelumnya :)
Xster
6

Masalahnya, saya tidak pernah memperbarui semua paket . Saya hanya memutakhirkan apa yang saya butuhkan, karena proyek mungkin rusak .

Karena tidak ada cara mudah untuk memutakhirkan paket per paket, dan memperbarui file requirement.txt, saya menulis pip-upgrader ini yang juga memperbarui versi dalam requirements.txtfile Anda untuk paket yang dipilih (atau semua paket).

Instalasi

pip install pip-upgrader

Pemakaian

Aktifkan virtualenv Anda (penting, karena itu juga akan menginstal versi baru dari paket yang ditingkatkan dalam virtualenv saat ini).

cd ke direktori proyek Anda, kemudian jalankan:

pip-upgrade

Penggunaan tingkat lanjut

Jika persyaratan ditempatkan di lokasi yang tidak standar, kirimkan sebagai argumen:

pip-upgrade path/to/requirements.txt

Jika Anda sudah tahu paket apa yang ingin Anda tingkatkan, cukup kirimkan sebagai argumen:

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

Jika Anda perlu meningkatkan ke versi pra-rilis / pasca-rilis, tambahkan --prereleaseargumen ke perintah Anda.

Pengungkapan penuh: Saya menulis paket ini.

Simion Agavriloaei
sumber
1

Mungkin alat pip, tersedia di https://github.com/nvie/pip-tools , dapat membantu Anda mencapai apa yang Anda inginkan?

Contoh dari 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
sumber
1
Tampaknya paket ini sekarang telah pindah ke github.com/jgonggrijp/pip-review
Droplet