Skip to main content
logo

pip-check-updates

pytest coding_style all-contributors PyPI - License PyPI - Python Version PyPI - Wheel Downloads GitHub Pages

A tool to upgrade dependencies to the latest versions, inspired by npm-check-updates

Install

From PyPi

pip install pip-check-updates

From GitHub

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
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.1

Run pcu requirements.txt -u to upgrade versions in 1 file

Upgrade a project's requirements file:

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.1

Run pip install -r requirements.txt to install new versions

Specify requirements file if needed, -r option will be recognized as well:

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.1

In requirements-dev.txt

black   21.6b0  →  21.7b0
pylint  2.9.3   →  2.9.6
pytest  5.4.3   →  6.2.4

Run pcu requirements-dev.txt -u to upgrade versions in 2 files

Target version:

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:

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.4

Run pcu requirements-dev.txt -u to upgrade versions in 1 file

Work with conda-forge (WIP):

pcu environment.yml -u

Work with Pipenv (WIP):

pcu Pipfile

Include unstable versions:

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.dev

Run pcu requirements.txt -u to upgrade versions in 1 file

Show the helper text:

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 file

optional 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

FYI the equivalent full-name command pip-check-updates may be used as well.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Pedro Américo
Pedro Américo

🐛 💻
Anders Hovmöller
Anders Hovmöller

🐛
Jani Tiainen
Jani Tiainen

🐛
Daniel A.A. Pelsmaeker
Daniel A.A. Pelsmaeker

🐛
Nikolai Røed Kristiansen
Nikolai Røed Kristiansen

🤔 💻
Giovanni Santini
Giovanni Santini

🤔 💻
Pelayo García
Pelayo García

💻 🤔
Radu Suciu
Radu Suciu

🐛 💻
atchisson
atchisson

🤔 💻
purificant
purificant

💻
Pulse-Mind
Pulse-Mind

🤔
Hao Zhang(张浩)
Hao Zhang(张浩)

🤔
Ahmad Wael
Ahmad Wael

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Metadata

Release files for pip-check-updates 0.29.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pip-check-updates 0.29.0
File Size Uploaded
pip_check_updates-0.29.0.tar.gz 52.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pip-check-updates 0.29.0
File Interpreter ABI Platform
pip_check_updates-0.29.0-py3-none-any.whl Python 3 none any Details

Total release size: 67.2 kB

Release files / pip_check_updates-0.29.0.tar.gz

Download URL pip_check_updates-0.29.0.tar.gz
Size 52.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b648ac54c1635096c2c103cedc152d6156d7dbfb07bf32a2f0602556cebbf409
BLAKE2b-256 checksum
How to use checksums
09e1b057efc8b2dcd9f6370ea2e81ebb4e4e3af5fe8bdbcaaefe8bb13d5851ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release files / pip_check_updates-0.29.0-py3-none-any.whl

Download URL pip_check_updates-0.29.0-py3-none-any.whl
Size 14.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
60deadecbccfc60ac425743dfe0fe8d154b9b56b72c20921792db8407ad87e60
BLAKE2b-256 checksum
How to use checksums
1905610a238663a370f1e65ac9c9fc932c759f299c754000c46befce408b6e75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.8

Release history Release notifications | RSS feed

This release

0.29.0 This release

2 release files

0.28.0

2 release files

0.27.0

2 release files

0.26.1

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.0

2 release files

0.19.1

2 release files

0.18.1

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.1

2 release files

0.13.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page