<div align="center">
<img src=".github/assets/meme.jpg">
<h1>
pipupgrade
</h1>
<h4>The missing command for <code>pip</code></h4>
</div>
<p align="center">
<a href='https://github.com/achillesrasquinha/pipupgrade/actions?query=workflow:"Continuous Integration"'>
<img src="https://img.shields.io/github/workflow/status/achillesrasquinha/pipupgrade/Continuous Integration?style=flat-square">
</a>
<a href="https://coveralls.io/github/achillesrasquinha/pipupgrade">
<img src="https://img.shields.io/coveralls/github/achillesrasquinha/pipupgrade.svg?style=flat-square">
</a>
<a href="https://pypi.org/project/pipupgrade/">
<img src="https://img.shields.io/pypi/v/pipupgrade.svg?style=flat-square">
</a>
<a href="https://pypi.org/project/pipupgrade/">
<img src="https://img.shields.io/pypi/l/pipupgrade.svg?style=flat-square">
</a>
<a href="https://pypi.org/project/pipupgrade/">
<img src="https://img.shields.io/pypi/pyversions/pipupgrade.svg?style=flat-square">
</a>
<a href="https://hub.docker.com/r/achillesrasquinha/pipupgrade">
<img src="https://img.shields.io/docker/cloud/build/achillesrasquinha/pipupgrade.svg?style=flat-square&logo=docker">
</a>
<a href="https://git.io/boilpy">
<img src="https://img.shields.io/badge/made%20with-boilpy-red.svg?style=flat-square">
</a>
<a href="https://saythanks.io/to/achillesrasquinha">
<img src="https://img.shields.io/badge/Say%20Thanks-🦉-1EAEDB.svg?style=flat-square">
</a>
<a href="https://paypal.me/achillesrasquinha">
<img src="https://img.shields.io/badge/donate-💵-f44336.svg?style=flat-square">
</a>
</p>
<div align="center">
<img src=".github/assets/demo.gif">
</div>
### Table of Contents
* [Features](#Features)
* [Quick Start](#quick-start)
* [Usage](#usage)
* [Basic Usage](#basic-usage)
* [Docker](#docker)
* [Environment Variables](docs/source/envvar.md)
* [FAQ](FAQ.md)
* [License](#license)
### 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](https://github.com/pypa/pipenv) support.
* Detects semantic version to avoid updates that break changes. **Also ensures to avoid
child dependencies that break changes.**
* [View Dependency Graph.](FAQ.md/#how-do-i-view-a-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+](https://github.com/pypa/pip/issues/6158) compatible.
* Automate your Dependencies by installing `pipupgrade` in your CI workflow.
* Zero Dependencies!
### Quick Start
```shell
$ pip install pipupgrade
```
Check out [installation](docs/source/INSTALLATION.md) for more details.
### Usage
#### Basic Usage
* [**`pipupgrade`**](https://git.io/pipupgrade)
*Upgrades all the packages across all detected pip environments.*
* [**`pipupgrade --self`**](https://git.io/pipupgrade)
*Upgrades `pipupgrade`.*
* [**`pipupgrade --format {table,tree,json,yaml}`**](https://git.io/pipupgrade)
*Display packages in the format (defaults to `table`)*
* [**`pipupgrade --pip-path PIP_PATH`**](https://git.io/pipupgrade)
*Upgrades all the packages within the defined pip environment.*
* [**`pipupgrade --check`**](https://git.io/pipupgrade)
*Checks and pretty prints outdated packages (Does not perform upgrades).*
* [**`pipupgrade --upgrade-type {major,minor,patch}`**](https://git.io/pipupgrade)
*Upgrades packages only of the upgrade type (defaults to minor and patch).*
* [**`pipupgrade --latest`**](https://git.io/pipupgrade)
*WARNING: Upgrades all packages (including the ones that break change).*
* [**`pipupgrade --all`**](https://git.io/pipupgrade)
*List all packages.*
* [**`pipupgrade --interactive`**](https://git.io/pipupgrade)
*Prompts confirmation dialog for each package to be upgraded.*
* [**`pipupgrade --requirements REQUIREMENTS`**](https://git.io/pipupgrade)
*Upgrades the requirements file (if required).*
* [**`pipupgrade --pipfile PIPFILE`**](https://git.io/pipupgrade)
*Upgrades the Pipfile and Pipfile.lock file (if required).*
* [**`pipupgrade --project PROJECT`**](https://git.io/pipupgrade)
*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]
[--upgrade-type {major,minor,patch} [{major,minor,patch} ...]]
[-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]
[--ignore-error] [--force] [--no-color] [-V] [-v] [-h]
[packages [packages ...]]
pipupgrade (v VERSION)
UPGRADE ALL THE PIP PACKAGES!
positional arguments:
packages Packages to Upgrade. (default: None)
optional arguments:
--ignore IGNORE Ignore packages to upgrade. (default: None)
--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)
--upgrade-type {major,minor,patch} [{major,minor,patch} ...]
Upgrade Type (default: ['minor', 'patch'])
-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)
--ignore-error Ignore Error in case of upgrade failure. (default: 0)
--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:
* [pur](https://github.com/alanhamlett/pip-update-requirements)
* [pip_upgrade_outdated](https://github.com/defjaf/pip_upgrade_outdated)
* [pipdate](https://github.com/nschloe/pipdate)
* [pip-review](https://github.com/jgonggrijp/pip-review)
* [pip-upgrader](https://github.com/simion/pip-upgrader)
* [pipdeptree](https://github.com/naiquevin/pipdeptree)
### Known Issues
* [I'm stuck at "Checking..." forever.](https://github.com/achillesrasquinha/pipupgrade/issues/30)
### License
This repository has been released under the [MIT License](LICENSE).
---
<div align="center">
Made with ❤️ using <a href="https://git.io/boilpy">boilpy</a>.
</div>
Raw data
{
"_id": null,
"home_page": "https://github.com/achillesrasquinha/pipupgrade",
"name": "pipupgrade",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "pip update upgrade cli command",
"author": "Achilles Rasquinha",
"author_email": "achillesrasquinha@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/f3/b8/13fffa547fce2372fcc25b0e36312b3d6f8becb53fcdaea8c12c38b3465c/pipupgrade-1.12.0.tar.gz",
"platform": "",
"description": "<div align=\"center\">\n <img src=\".github/assets/meme.jpg\">\n <h1>\n pipupgrade\n </h1>\n <h4>The missing command for <code>pip</code></h4>\n</div>\n\n<p align=\"center\">\n <a href='https://github.com/achillesrasquinha/pipupgrade/actions?query=workflow:\"Continuous Integration\"'>\n <img src=\"https://img.shields.io/github/workflow/status/achillesrasquinha/pipupgrade/Continuous Integration?style=flat-square\">\n </a>\n <a href=\"https://coveralls.io/github/achillesrasquinha/pipupgrade\">\n <img src=\"https://img.shields.io/coveralls/github/achillesrasquinha/pipupgrade.svg?style=flat-square\">\n </a>\n <a href=\"https://pypi.org/project/pipupgrade/\">\n\t\t<img src=\"https://img.shields.io/pypi/v/pipupgrade.svg?style=flat-square\">\n\t</a>\n <a href=\"https://pypi.org/project/pipupgrade/\">\n\t\t<img src=\"https://img.shields.io/pypi/l/pipupgrade.svg?style=flat-square\">\n\t</a>\n <a href=\"https://pypi.org/project/pipupgrade/\">\n\t\t<img src=\"https://img.shields.io/pypi/pyversions/pipupgrade.svg?style=flat-square\">\n\t</a>\n <a href=\"https://hub.docker.com/r/achillesrasquinha/pipupgrade\">\n\t\t<img src=\"https://img.shields.io/docker/cloud/build/achillesrasquinha/pipupgrade.svg?style=flat-square&logo=docker\">\n\t</a>\n <a href=\"https://git.io/boilpy\">\n <img src=\"https://img.shields.io/badge/made%20with-boilpy-red.svg?style=flat-square\">\n </a>\n\t<a href=\"https://saythanks.io/to/achillesrasquinha\">\n\t\t<img src=\"https://img.shields.io/badge/Say%20Thanks-\ud83e\udd89-1EAEDB.svg?style=flat-square\">\n\t</a>\n\t<a href=\"https://paypal.me/achillesrasquinha\">\n\t\t<img src=\"https://img.shields.io/badge/donate-\ud83d\udcb5-f44336.svg?style=flat-square\">\n\t</a>\n</p>\n\n<div align=\"center\">\n <img src=\".github/assets/demo.gif\">\n</div>\n\n### Table of Contents\n* [Features](#Features)\n* [Quick Start](#quick-start)\n* [Usage](#usage)\n * [Basic Usage](#basic-usage)\n * [Docker](#docker)\n * [Environment Variables](docs/source/envvar.md)\n* [FAQ](FAQ.md)\n* [License](#license)\n\n### Features\n* Updates system packages and local packages.\n* Discovers packages present within multiple Python Environments.\n* Updates packages mentioned within a `requirements.txt` file (Also pins up-to-date versions if mentioned).\n* Smart `requirements.txt` detector.\n* [Pipfile](https://github.com/pypa/pipenv) support.\n* Detects semantic version to avoid updates that break changes. **Also ensures to avoid\n child dependencies that break changes.**\n* [View Dependency Graph.](FAQ.md/#how-do-i-view-a-dependency-graph)\n* Parallel updates (blazingly fast).\n* Python 2.7+ and Python 3.4+ compatible. Also pip 9+, pip 10+, pip 18+ and [pip 19.0.1+](https://github.com/pypa/pip/issues/6158) compatible.\n* Automate your Dependencies by installing `pipupgrade` in your CI workflow.\n* Zero Dependencies!\n\n### Quick Start\n\n```shell\n$ pip install pipupgrade\n```\n\nCheck out [installation](docs/source/INSTALLATION.md) for more details.\n\n### Usage\n\n#### Basic Usage\n\n* [**`pipupgrade`**](https://git.io/pipupgrade)\n\n *Upgrades all the packages across all detected pip environments.*\n\n* [**`pipupgrade --self`**](https://git.io/pipupgrade)\n\n *Upgrades `pipupgrade`.*\n\n* [**`pipupgrade --format {table,tree,json,yaml}`**](https://git.io/pipupgrade)\n\n *Display packages in the format (defaults to `table`)*\n\n* [**`pipupgrade --pip-path PIP_PATH`**](https://git.io/pipupgrade)\n\n *Upgrades all the packages within the defined pip environment.*\n\n* [**`pipupgrade --check`**](https://git.io/pipupgrade)\n\n *Checks and pretty prints outdated packages (Does not perform upgrades).*\n\n* [**`pipupgrade --upgrade-type {major,minor,patch}`**](https://git.io/pipupgrade)\n\n *Upgrades packages only of the upgrade type (defaults to minor and patch).*\n\n* [**`pipupgrade --latest`**](https://git.io/pipupgrade)\n\n *WARNING: Upgrades all packages (including the ones that break change).*\n\n* [**`pipupgrade --all`**](https://git.io/pipupgrade)\n\n *List all packages.*\n\n* [**`pipupgrade --interactive`**](https://git.io/pipupgrade)\n\n *Prompts confirmation dialog for each package to be upgraded.*\n\n* [**`pipupgrade --requirements REQUIREMENTS`**](https://git.io/pipupgrade)\n\n *Upgrades the requirements file (if required).*\n\n* [**`pipupgrade --pipfile PIPFILE`**](https://git.io/pipupgrade)\n\n *Upgrades the Pipfile and Pipfile.lock file (if required).*\n\n* [**`pipupgrade --project PROJECT`**](https://git.io/pipupgrade)\n\n *Upgrades all the requirements file and/or Pipfile/Pipfile.lock within a project directory.*\n\nThat's basically it! Run the help for more details...\n\n```\n$ pipupgrade --help\nusage: pipupgrade [--pip-path PIP_PATH] [-y] [-c]\n [--upgrade-type {major,minor,patch} [{major,minor,patch} ...]]\n [-l] [-f {table,tree,json,yaml}] [-a] [--pip] [-s]\n [-r REQUIREMENTS] [--pipfile PIPFILE] [-i] [-p PROJECT]\n [--git-username GIT_USERNAME] [--git-email GIT_EMAIL]\n [--pull-request] [--github-access-token GITHUB_ACCESS_TOKEN]\n [--github-reponame GITHUB_REPONAME]\n [--github-username GITHUB_USERNAME]\n [--target-branch TARGET_BRANCH] [-j JOBS] [-u]\n [--no-included-requirements] [--no-cache] [-o OUTPUT]\n [--ignore-error] [--force] [--no-color] [-V] [-v] [-h]\n [packages [packages ...]]\n\npipupgrade (v VERSION)\n\nUPGRADE ALL THE PIP PACKAGES!\n\npositional arguments:\n packages Packages to Upgrade. (default: None)\n\noptional arguments:\n --ignore IGNORE Ignore packages to upgrade. (default: None)\n --pip-path PIP_PATH Path to pip executable to be used. (default: None)\n -y, --yes Confirm for all dialogs. (default: 0)\n -c, --check Perform a dry-run, avoid updating packages. (default:\n 0)\n --upgrade-type {major,minor,patch} [{major,minor,patch} ...]\n Upgrade Type (default: ['minor', 'patch'])\n -l, --latest Update all packages to latest. (default: 0)\n -f {table,tree,json,yaml}, --format {table,tree,json,yaml}\n Display packages format. (default: table)\n -a, --all List all packages. (default: 0)\n --pip Update pip. (default: 0)\n -s, --self Update pipupgrade. (default: False)\n -r REQUIREMENTS, --requirements REQUIREMENTS\n Path(s) to requirements.txt file. (default: None)\n --pipfile PIPFILE Path(s) to Pipfile (default: None)\n -i, --interactive Interactive Mode. (default: 0)\n -p PROJECT, --project PROJECT\n Path(s) to Project (default: None)\n --git-username GIT_USERNAME\n Git Username (default: None)\n --git-email GIT_EMAIL\n Git Email (default: None)\n --pull-request Perform a Pull Request. (default: False)\n --github-access-token GITHUB_ACCESS_TOKEN\n GitHub Access Token (default: None)\n --github-reponame GITHUB_REPONAME\n Target GitHub Repository Name (default: None)\n --github-username GITHUB_USERNAME\n Target GitHub Username (default: None)\n --target-branch TARGET_BRANCH\n Target Branch (default: master)\n -j JOBS, --jobs JOBS Number of Jobs to be used. (default: 4)\n -u, --user Install to the Python user install directory for\n environment variables and user configuration.\n (default: 0)\n --no-included-requirements\n Avoid updating included requirements. (default: 0)\n --no-cache Avoid fetching latest updates from PyPI server.\n (default: 0)\n -o OUTPUT, --output OUTPUT\n Print Output to File. (default: None)\n --ignore-error Ignore Error in case of upgrade failure. (default: 0)\n --force Force search for files within a project. (default: 0)\n --no-color Avoid colored output. (default: 0)\n -V, --verbose Display verbose output. (default: False)\n -v, --version Show pipupgrade's version number and exit.\n -h, --help Show this help message and exit.\n```\n\n### Docker\n\nUsing `pipupgrade`'s Docker Image to generate a Pull Request can be done as follows:\n\n```\n$ docker run \\\n -e \"PIPUPGRADE_GIT_USERNAME=<YOUR_GIT_USERNAME>\" \\\n -e \"PIPUPGRADE_GIT_EMAIL=<YOUR_GIT_EMAIL>\" \\\n -e \"PIPUPGRADE_GITHUB_REPONAME=<YOUR_GIT_REPONAME>\" \\\n -e \"PIPUPGRADE_GITHUB_USERNAME=<YOUR_GIT_USERNAME>\" \\\n --rm \\\n -it \\\n -v $(pwd):/path/to/project \\\n achillesrasquinha/pipupgrade \\\n --project /path/to/project \\\n --pull-request \\\n --force \\\n --yes \\\n --verbose\n```\n\n### Similar Packages\n\n`pipupgrade` attempts to provide an all-in-one solution as compared to the following packages:\n\n* [pur](https://github.com/alanhamlett/pip-update-requirements)\n* [pip_upgrade_outdated](https://github.com/defjaf/pip_upgrade_outdated)\n* [pipdate](https://github.com/nschloe/pipdate)\n* [pip-review](https://github.com/jgonggrijp/pip-review)\n* [pip-upgrader](https://github.com/simion/pip-upgrader)\n* [pipdeptree](https://github.com/naiquevin/pipdeptree)\n\n### Known Issues\n\n* [I'm stuck at \"Checking...\" forever.](https://github.com/achillesrasquinha/pipupgrade/issues/30)\n\n### License\n\nThis repository has been released under the [MIT License](LICENSE).\n\n---\n\n<div align=\"center\">\n Made with \u2764\ufe0f using <a href=\"https://git.io/boilpy\">boilpy</a>.\n</div>\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "UPGRADE ALL THE PIP PACKAGES!",
"version": "1.12.0",
"project_urls": {
"Homepage": "https://github.com/achillesrasquinha/pipupgrade"
},
"split_keywords": [
"pip",
"update",
"upgrade",
"cli",
"command"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8a716659db12bbb8ba15caa0a1936148973d79a0944638eed2769a5a036ed5bf",
"md5": "da06ac69a5f09edffb72d27fd80facdb",
"sha256": "b9dc270d527e6611cf42302daef55db601f4b788002646da77c9dd85068836fc"
},
"downloads": -1,
"filename": "pipupgrade-1.12.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "da06ac69a5f09edffb72d27fd80facdb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 34589,
"upload_time": "2022-02-16T20:49:21",
"upload_time_iso_8601": "2022-02-16T20:49:21.097892Z",
"url": "https://files.pythonhosted.org/packages/8a/71/6659db12bbb8ba15caa0a1936148973d79a0944638eed2769a5a036ed5bf/pipupgrade-1.12.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f3b813fffa547fce2372fcc25b0e36312b3d6f8becb53fcdaea8c12c38b3465c",
"md5": "15104a27034c98470f887b997af0cd2d",
"sha256": "e2320cd2828d872ceed39bbd0e84b920179ef8f004ee2c9bf7e2b766c69f62ee"
},
"downloads": -1,
"filename": "pipupgrade-1.12.0.tar.gz",
"has_sig": false,
"md5_digest": "15104a27034c98470f887b997af0cd2d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 36657,
"upload_time": "2022-02-16T20:49:22",
"upload_time_iso_8601": "2022-02-16T20:49:22.793367Z",
"url": "https://files.pythonhosted.org/packages/f3/b8/13fffa547fce2372fcc25b0e36312b3d6f8becb53fcdaea8c12c38b3465c/pipupgrade-1.12.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-02-16 20:49:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "achillesrasquinha",
"github_project": "pipupgrade",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "pipupgrade"
}