Temukan paket yang sudah ketinggalan zaman yang diinstal oleh alat PIP dan perbarui. Terinspirasi oleh Depu (GO). Namun, pkgu mendukung pembaruan penuh dan parsial, yang lebih nyaman dan fleksibel. Ini juga mendukung cross-platform (Windows, Linux, MacOS). ? Untuk mengambil data lebih cepat setelah pertama kalinya (atau tidak perlu menjalankan perintah lagi), saya menggunakan SQLite sebagai cache DB untuk menyimpan data dan dapat dengan cepat membacanya dari DB dan menyajikannya ke konsol.
Namun, hanya Python3.10 dan di atas yang tersedia sekarang.
Pertama, Anda perlu menginstal dependensi.
Jika Anda tidak memiliki alat poetry , silakan instal terlebih dahulu. ?: Instalasi puisi, jika tidak, instal paket secara langsung.
poetry install Dan kemudian, jalankan skrip pkgu.py
python3 pkgu.pypip3 install pkgu Setelah instalasi selesai, file yang dapat dieksekusi pkgu akan ditulis ke Direktori Python Bin dan Anda dapat memasukkan perintah pkgu -h di terminal Anda untuk mempelajari cara menggunakannya.
# Usage
usage: pkgu [-h] [-v] {update,remove} ...
Upgrade and uninstall python package.
options:
-h, --help show this help message and exit
-v, --version Display pkgu version and information
Available commands:
{update,remove} Available commands
update Update python package.
remove remove python package with its dependencies.
# ------ update ------
options:
-h, --help show this help message and exit
-a, --async_upgrade Update the library asynchronously. Default: False
-d CACHE_FOLDER, --cache_folder CACHE_FOLDER
The cache.db file. Default: ~ /.cache/cache.db
-e EXPIRE_TIME, --expire_time EXPIRE_TIME
The expiration time. Default: 43200
--no-cache Whether to use db cache. Default: False
# ------ remove ------
options:
-h, --help show this help message and exit
-l, --list list unused dependencies, but don ' t uninstall them.
-L, --leaves list leaves (packages which are not used by any others).
-y, --yes don ' t ask for confirmation of uninstall deletions.
-f, --freeze list leaves (packages which are not used by any others) in requirements.txt format
- Tidak ada paket yang perlu ditingkatkan.
- Tingkatkan beberapa paket yang sudah kadaluwarsa.
- Perbarui PKG secara sinkron
- Perbarui PKG secara tidak sinkron
Kita dapat melihat bahwa metode async lebih cepat dari metode sinkronisasi sekitar 9 detik (hanya dalam situasi pengujian ini). Jadi sekarang dapat mendukung untuk memperbarui perpustakaan Python secara tidak sinkron. ?
- Dukungan untuk paket pembaruan yang dapat dipilih
- Dukungan untuk menggunakan hasil cache dari file db sqlite.
Ini meningkatkan kedaluwarsa bahwa bagaimana kami mencantumkan paket yang ketinggalan zaman ketika mereka besar untuk dikumpulkan, dan kemudian ada juga bendera CLI --no-cache untuk mengontrol apakah harus menggunakan cache.
- !!! BARU - Dukungan untuk menghapus paket dengan ketergantungannya bersama.