UPGRADE ALL THE PIP PACKAGES!
Project description
pipupgrade
The missing command for pip
Table of Contents
Features
- Updates system packages and local packages.
- Discovers packages present within multiple Python Environments.
- Updates packages mentioned within a
requirements.txt
file (Also pins up-to-date versions if mentioned). - Smart
requirements.txt
detector. - Pipfile support.
- Detects semantic version to avoid updates that break changes. Also ensures to avoid child dependencies that break changes.
- View Dependency Graph.
- Parallel updates (blazingly fast).
- Python 2.7+ and Python 3.4+ compatible. Also pip 9+, pip 10+, pip 18+ and pip 19.0.1+ compatible.
- Automate your Dependencies by installing
pipupgrade
in your CI workflow. - Zero Dependencies!
Installation
$ pip install pipupgrade
Usage
Basic Usage
Upgrades all the packages across all detected pip environments.
Upgrades pipupgrade
.
Display packages in the format (defaults to table
)
Upgrades all the packages within the defined pip environment.
Checks and pretty prints outdated packages (Does not perform upgrades).
WARNING: Upgrades all packages (including the ones that break change).
List all packages.
Prompts confirmation dialog for each package to be upgraded.
Upgrades the requirements file (if required).
Upgrades the Pipfile and Pipfile.lock file (if required).
Upgrades all the requirements file and/or Pipfile/Pipfile.lock within a project directory.
That's basically it! Run the help for more details...
$ pipupgrade --help
usage: pipupgrade [--pip-path PIP_PATH] [-y] [-c] [-l]
[-f {table,tree,json,yaml}] [-a] [--pip] [-s]
[-r REQUIREMENTS] [--pipfile PIPFILE] [-i] [-p PROJECT]
[--git-username GIT_USERNAME] [--git-email GIT_EMAIL]
[--pull-request] [--github-access-token GITHUB_ACCESS_TOKEN]
[--github-reponame GITHUB_REPONAME]
[--github-username GITHUB_USERNAME]
[--target-branch TARGET_BRANCH] [-j JOBS] [-u]
[--no-included-requirements] [--no-cache] [-o OUTPUT]
[--force] [--no-color] [-V] [-v] [-h]
[packages [packages ...]]
pipupgrade (v 1.6.6)
UPGRADE ALL THE PIP PACKAGES!
positional arguments:
packages Packages to Upgrade. (default: None)
optional arguments:
--pip-path PIP_PATH Path to pip executable to be used. (default: None)
-y, --yes Confirm for all dialogs. (default: 0)
-c, --check Perform a dry-run, avoid updating packages. (default:
0)
-l, --latest Update all packages to latest. (default: 0)
-f {table,tree,json,yaml}, --format {table,tree,json,yaml}
Display packages format. (default: table)
-a, --all List all packages. (default: 0)
--pip Update pip. (default: 0)
-s, --self Update pipupgrade. (default: False)
-r REQUIREMENTS, --requirements REQUIREMENTS
Path(s) to requirements.txt file. (default: None)
--pipfile PIPFILE Path(s) to Pipfile (default: None)
-i, --interactive Interactive Mode. (default: 0)
-p PROJECT, --project PROJECT
Path(s) to Project (default: None)
--git-username GIT_USERNAME
Git Username (default: None)
--git-email GIT_EMAIL
Git Email (default: None)
--pull-request Perform a Pull Request. (default: False)
--github-access-token GITHUB_ACCESS_TOKEN
GitHub Access Token (default: None)
--github-reponame GITHUB_REPONAME
Target GitHub Repository Name (default: None)
--github-username GITHUB_USERNAME
Target GitHub Username (default: None)
--target-branch TARGET_BRANCH
Target Branch (default: master)
-j JOBS, --jobs JOBS Number of Jobs to be used. (default: 4)
-u, --user Install to the Python user install directory for
environment variables and user configuration.
(default: 0)
--no-included-requirements
Avoid updating included requirements. (default: 0)
--no-cache Avoid fetching latest updates from PyPI server.
(default: 0)
-o OUTPUT, --output OUTPUT
Print Output to File. (default: None)
--force Force search for files within a project. (default: 0)
--no-color Avoid colored output. (default: 0)
-V, --verbose Display verbose output. (default: False)
-v, --version Show pipupgrade's version number and exit.
-h, --help Show this help message and exit.
Docker
Using pipupgrade
's Docker Image to generate a Pull Request can be done as follows:
$ docker run \
-e "PIPUPGRADE_GIT_USERNAME=<YOUR_GIT_USERNAME>" \
-e "PIPUPGRADE_GIT_EMAIL=<YOUR_GIT_EMAIL>" \
-e "PIPUPGRADE_GITHUB_REPONAME=<YOUR_GIT_REPONAME>" \
-e "PIPUPGRADE_GITHUB_USERNAME=<YOUR_GIT_USERNAME>" \
--rm \
-it \
-v $(pwd):/path/to/project \
achillesrasquinha/pipupgrade \
--project /path/to/project \
--pull-request \
--force \
--yes \
--verbose
Similar Packages
pipupgrade
attempts to provide an all-in-one solution as compared to the following packages:
Known Issues
License
This repository has been released under the MIT License.
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
Hashes for pipupgrade-1.6.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f000eccdf1677be5e467f93aa2d054fe3d39f8e650334701e2a498e385d23c51 |
|
MD5 | 3417fa83bfd4c7e51f58773ce2911cbb |
|
BLAKE2b-256 | 5391727c6a1630adcb6c5a3a31b5b761c27833d3b3251e6704bba2f20f29e3d6 |