Skip to main content

A small CLI tool to check and upgrade outdated pip packages.

Project description

py-pkg-updater

A simple command-line tool for checking and upgrading outdated Python packages in your current environment.

py-pkg-updater helps you quickly inspect outdated pip packages, review the current and latest versions, and upgrade selected packages directly from the terminal.


Features

  • Detect outdated packages using pip list --outdated
  • Display outdated packages in a clean terminal table
  • Upgrade all packages or selected packages only
  • Supports both package names and numeric selection
  • Uses Rich for a better terminal interface when available
  • Falls back to plain terminal output if Rich is not installed

Installation

Install from PyPI:

pip install py-pkg-updater

Usage

Run the command inside the Python environment you want to update:

update-packages

The tool will show outdated packages and ask what you want to upgrade.

Example options:

A        upgrade all packages
N        skip upgrading
1,3,5    upgrade selected packages by number
rich,pip upgrade selected packages by name

Example

update-packages

Example output:

Outdated packages

#   Package      Current    Latest
1   pip          24.0       25.1.1
2   rich         13.7.0     13.9.4

Choose packages to upgrade:
A  upgrade all
N  skip upgrading
1,3,5  comma-separated indices or package names

Recommended Use

Use this tool inside an activated virtual environment:

Windows PowerShell

python -m venv venv
.\venv\Scripts\Activate.ps1
pip install py-pkg-updater
update-packages

macOS / Linux

python3 -m venv venv
source venv/bin/activate
pip install py-pkg-updater
update-packages

Why Use a Virtual Environment?

This tool upgrades packages in the Python environment where it is executed.

For safer package management, run it inside a project-specific virtual environment instead of your global Python installation.


Requirements

  • Python 3.9 or newer
  • pip
  • rich

Development

Clone the repository:

git clone https://github.com/YOUR_USERNAME/py-pkg-updater.git
cd py-pkg-updater

Create and activate a virtual environment:

python -m venv venv

Windows:

.\venv\Scripts\Activate.ps1

macOS / Linux:

source venv/bin/activate

Install in editable mode:

pip install -e .

Run locally:

update-packages

Build

Install build tools:

pip install --upgrade build twine

Build the package:

python -m build

This creates distribution files inside the dist/ directory.


Publish

Upload to PyPI:

python -m twine upload dist/*

Project Structure

py-pkg-updater/
├── src/
│   └── update_python_packages/
│       ├── __init__.py
│       └── cli.py
├── pyproject.toml
├── README.md
├── LICENSE
└── dist/

Security Note

Be careful when upgrading many packages at once. Package updates can introduce breaking changes, especially in active projects.

Recommended workflow:

  1. Activate your virtual environment.
  2. Run update-packages.
  3. Upgrade selected packages.
  4. Test your project.
  5. Commit dependency changes if everything works.

License

This project is licensed under the MIT License.


Author

Created by Ali Esmaeilzadeh.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_pkg_updater-0.1.5.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_pkg_updater-0.1.5-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file py_pkg_updater-0.1.5.tar.gz.

File metadata

  • Download URL: py_pkg_updater-0.1.5.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for py_pkg_updater-0.1.5.tar.gz
Algorithm Hash digest
SHA256 8e336e4db2a909d79d17ae0c592377e4b685f45af788ce1f53ddfad4debf0ed2
MD5 88a99457df468e5970643e6b9267fe54
BLAKE2b-256 97ac25175848bad71a49f1cac8964a699375b12788853490242be3b6541389d3

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_pkg_updater-0.1.5.tar.gz:

Publisher: publish-to-pypi.yml on AlonePyWarrior/packages_updator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py_pkg_updater-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: py_pkg_updater-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for py_pkg_updater-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1e5155df2724991131eb559c9c216d3c638757abee73f6ae41921bf75df27502
MD5 8f61811e2ca68244d2954f5974e9a913
BLAKE2b-256 f45786dfddc3c17ee57a4926b866f013025763496fd08ce5aebaae11b7f70f94

See more details on using hashes here.

Provenance

The following attestation bundles were made for py_pkg_updater-0.1.5-py3-none-any.whl:

Publisher: publish-to-pypi.yml on AlonePyWarrior/packages_updator

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page