Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zehengl/pip-check-updates
A tool to upgrade dependencies to the latest versions
https://github.com/zehengl/pip-check-updates
pip python
Last synced: 1 day ago
JSON representation
A tool to upgrade dependencies to the latest versions
- Host: GitHub
- URL: https://github.com/zehengl/pip-check-updates
- Owner: zehengl
- License: mit
- Created: 2021-08-15T09:05:23.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-12-16T14:25:34.000Z (9 days ago)
- Last Synced: 2024-12-16T15:38:11.001Z (9 days ago)
- Topics: pip, python
- Language: Python
- Homepage: https://pypi.org/project/pip-check-updates/
- Size: 1.83 MB
- Stars: 27
- Watchers: 2
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# pip-check-updates
[![pytest](https://github.com/zehengl/pip-check-updates/actions/workflows/pytest.yml/badge.svg)](https://github.com/zehengl/pip-check-updates/actions/workflows/pytest.yml)
![coding_style](https://img.shields.io/badge/code%20style-black-000000.svg)
![all-contributors](https://img.shields.io/github/all-contributors/zehengl/pip-check-updates)
![PyPI - License](https://img.shields.io/pypi/l/pip-check-updates)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pip-check-updates)
![PyPI - Wheel](https://img.shields.io/pypi/wheel/pip-check-updates)
[![Downloads](https://static.pepy.tech/badge/pip-check-updates)](https://pepy.tech/project/pip-check-updates)
[![GitHub Pages](https://github.com/zehengl/pip-check-updates/actions/workflows/gh-deploy.yml/badge.svg)](https://github.com/zehengl/pip-check-updates/actions/workflows/gh-deploy.yml)A tool to upgrade dependencies to the latest versions, inspired by [npm-check-updates](https://www.npmjs.com/package/npm-check-updates)
## Install
From [PyPi](https://pypi.org/project/pip-check-updates/)
pip install pip-check-updates
From [GitHub](https://github.com/zehengl/pip-check-updates)
pip install git+https://github.com/zehengl/pip-check-updates.git
## Usage
> Depends on where you install `pip-check-updates`, if Python's scripts folder is not in `path`, the `pcu` entry point would not be available.
> However you can replace `pcu` with `python -m pip-check-updates`.Show any new dependencies for the project in the current directory:
> Changes are color coded
>
> - Red = major upgrade
> - Cyan = minor upgrade
> - Green = patch upgrade```terminal
pcu
```Checking dependencies
100%|████████████████████| 6/6 [00:01<00:00, 5.75it/s]In requirements.txt
Django 3.1.13 → 3.2.6
pandas 0.25.3 → 1.3.2
tqdm 4.62.0 → 4.62.1Run pcu requirements.txt -u to upgrade versions in 1 file
Upgrade a project's requirements file:
```terminal
pcu -u
```Upgrading dependencies
100%|████████████████████| 6/6 [00:01<00:00, 5.84it/s]In requirements.txt
Django 3.1.13 → 3.2.6
pandas 0.25.3 → 1.3.2
tqdm 4.62.0 → 4.62.1Run pip install -r requirements.txt to install new versions
Specify requirements file if needed, `-r` option will be recognized as well:
```terminal
pcu requirements-dev.txt
```Checking dependencies
100%|████████████████████| 10/10 [00:01<00:00, 6.05it/s]In requirements.txt
Django 3.1.13 → 3.2.6
pandas 0.25.3 → 1.3.2
tqdm 4.62.0 → 4.62.1In requirements-dev.txt
black 21.6b0 → 21.7b0
pylint 2.9.3 → 2.9.6
pytest 5.4.3 → 6.2.4Run pcu requirements-dev.txt -u to upgrade versions in 2 files
Target version:
```terminal
pcu requirements-dev.txt -t patch
```Checking dependencies
100%|████████████████████| 10/10 [00:02<00:00, 4.73it/s]In requirements.txt
tqdm 4.62.0 → 4.62.1
In requirements-dev.txt
pylint 2.9.3 → 2.9.6
Run pcu requirements-dev.txt -u to upgrade versions in 2 files
Filter by a pattern:
```terminal
pcu requirements-dev.txt -f "py*"
```Checking dependencies
100%|████████████████████| 10/10 [00:01<00:00, 6.01it/s]In requirements-dev.txt
pylint 2.9.3 → 2.9.6
pytest 5.4.3 → 6.2.4Run pcu requirements-dev.txt -u to upgrade versions in 1 file
Work with conda-forge (WIP):
```terminal
pcu environment.yml -u
```Work with Pipenv (WIP):
```terminal
pcu Pipfile
```Include unstable versions:
```terminal
pcu --pre
```Checking dependencies
100%|████████████████████| 6/6 [00:01<00:00, 5.75it/s]In requirements.txt
Django 3.1.13 → 3.2.6.dev
pandas 0.25.3 → 1.3.2.32.dev
tqdm 4.62.0 → 4.62.1.2.devRun pcu requirements.txt -u to upgrade versions in 1 file
Show the helper text:
```terminal
pcu -h
```usage: pcu [-h] [-u] [-f FILTER [FILTER ...]] [-t {latest,newest,greatest,major,minor,patch}] [-x] [-i] [--no_ssl_verify] [--no_recursive] [--ignore_warning] [--show_full_path]
[--no_color] [--ignore_additional_labels] [--init] [--extra EXTRA] [--pre] [--fail_on_update] [--loggable] [-v]
[path]pip-check-updates: A tool to upgrade dependencies to the latest versions, inspired by npm-check-updates.
positional arguments:
path specify path to a requirements fileoptional arguments:
-h, --help show this help message and exit
-u, --upgrade overwrite package file with upgraded versions instead of just outputting to console.
-f FILTER [FILTER ...], --filter FILTER [FILTER ...]
include only package names matching the given strings.
-t {latest,newest,greatest,major,minor,patch}, --target {latest,newest,greatest,major,minor,patch}
target version to upgrade to: latest, newest, greatest, major, minor, patch.
-x, --txt output new requirements file instead of human-readable message.
-i, --interactive enable interactive prompts for each dependency.
--no_ssl_verify disable SSL verification.
--no_recursive disable recursive checking.
--ignore_warning ignore warning.
--show_full_path show full path.
--no_color disable color.
--ignore_additional_labels
ignore additional labels.
--init initialize pcufile.toml.
--extra EXTRA extras to consider when parsing TOML files. Not used with Pipfile.
--pre include unstable versions when checking for updates.
--fail_on_update exit with code 1 if updates are available.
--loggable to be logging friendly.
-v, --version show pip-check-updates version## Credits
- [Icon](https://www.iconfinder.com/icons/171269/refresh_icon) by PixelKit
## Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
Pedro Américo
🐛 💻
Anders Hovmöller
🐛
Jani Tiainen
🐛
Daniel A.A. Pelsmaeker
🐛
Nikolai Røed Kristiansen
🤔 💻
Giovanni Santini
🤔 💻
Pelayo García
💻 🤔
Radu Suciu
🐛 💻
atchisson
🤔 💻
purificant
💻
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!