An easy tool for upgrading all of your packages while not breaking dependencies
Project description
pip-upgrade 🎉
The purpose of pip-upgrade is to be a simple yet robust and reliable tool for upgrading all of your packages while not breaking dependencies.
Installation
pip install pip-upgrade-tool
or
pip install git+https://github.com/realiti4/pip-upgrade.git@master --upgrade
Usage
Just run pip-upgrade
in your terminal while virtualenv is active.
$ pip-upgrade
Checking outdated packages...
These packages will be upgraded: ['colorama', 'isort']
Continue? (y/n): y
...
All packages are up to date! 🎉
Tip: You can use -e
to exclude some packages and continue in Continue? (y/n):
after seeing which packages are going to be upgraded. This is super useful for packages like gohlke's Numpy+mkl for example. -r
to repeat the previous excluded packages. It'll show if there is a saved repeatable action.
These packages will be upgraded: ['hypothesis', 'Pillow', 'pytest', 'setuptools']
(-r, --repeat : -e pytest)
Continue? (y/n or -e/-r/--help): -e pytest hypothesis
You can also exclude packages beforehand. Use -e
or --exclude
. The tool won't upgrade dependency breaking packages already, this is extra for packages that you want to keep it at a version. You can also add packages to config file for this to persist until you remove. This combined with pip-upgrade -y
that accepts and skips user prompt can be used for automated environments.
$ pip-upgrade -e numpy pandas
Options
pip-upgrade -e
Exclude packages you don't want to upgrade. Can take multiple or single value.pip-upgrade -y
Accept all upgrades and skip user prompt.pip-upgrade --clean
Clear pip's cache.pip-upgrade --local
By default locally installed editable packages (installed withpip install -e .
) won't be upgraded. Use this option to upgrade everything.pip-upgrade --novenv
By default the tool won't work if virtualenv is not active. Use this if you want use it globally and pass the assertion error.pip-upgrade --reset-config
Reset config file located in~/.pipupgrade.ini
to it's default.
Permanent Configuration
When pip-upgrade
is run for the first time, it will create a file in the user's home directory named .pipupgrade.ini
. This file can be manually edited by the user for permanent configuration options. The configuration file current consists of two options under the conf
section, exclude
and novenv
. novenv
is false by default, but if set to true, the pip-upgrade
command will not require you to be in a virtualenv, which is the same function as the --novenv
argument. The second option, exclude
, will take the same values as the --exclude
argument, but these excluded packages will persist forever until removed.
Contributing
Any contribution is appreciated, please feel free to send pull requests.
TODO / known issues
- Feature - Update directly from Gohlke's packages
- Feature - Revert to previous point
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pip-upgrade-tool-0.7.4.tar.gz
.
File metadata
- Download URL: pip-upgrade-tool-0.7.4.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40b8ee2d66f9e222fffa594d2ad6b71e4f755e675a25166ad503ef358409ed65 |
|
MD5 | c6b550440a5782a10e2adf8956f1943c |
|
BLAKE2b-256 | b398dce51116aa7f82c5b4fe0c2f25e173071c824deb23b87e3f7bc17984271a |
File details
Details for the file pip_upgrade_tool-0.7.4-py3-none-any.whl
.
File metadata
- Download URL: pip_upgrade_tool-0.7.4-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a9d049c0c0e615906c1ced181bbe05e1f7f011975cc690c3ff76474871be62c |
|
MD5 | 063b119ae792c2d2661ab7c6556ed80b |
|
BLAKE2b-256 | dc95295ef3e1f8eddbdd0baa28fc9bb635a6f45339ccd7a96a79d04bcf72a06c |