Skip to main content

A command-line utility for listing Python package versions from PyPI

Project description

PPVC (Python Package Version Checker)

PPVC is a simple and efficient command-line utility that queries PyPI (Python Package Index) for available versions of Python packages. It's designed to be fast, reliable, and easy to use.

Features

  • List all available versions of a Python package
  • Get only the latest version of a package
  • Limit the number of versions displayed
  • Simple and intuitive command-line interface
  • Fast response times
  • Error handling for network issues and non-existent packages
  • Beautiful colorized output with formatted tables
  • Version type classification (Final, Pre-release, Post-release)

Installation

You can install PPVC using pip:

pip install ppvc

Usage

Basic Usage

List all available versions of a package:

ppvc requests

Get Latest Version

Show only the latest version of a package:

ppvc requests --latest

Limit Versions

Show only the first N versions:

ppvc django --limit 5

Examples

# List all versions of the requests package
ppvc requests

# Get the latest version of numpy
ppvc numpy --latest

# Check versions of a specific package
ppvc django

# Show only the 10 most recent versions
ppvc flask --limit 10

Command Line Options

  • --help: Show help message
  • --version: Show version information
  • --latest: Show only the latest version
  • --limit N: Limit the number of versions shown to N

Error Handling

PPVC provides clear error messages for common issues:

  • Package not found on PyPI
  • Network connection problems
  • Invalid package names

Requirements

  • Python 3.8 or higher
  • Internet connection to access PyPI
  • packaging>=23.0 (for version parsing)
  • rich>=13.0.0 (for terminal formatting)

Development

Local Development Setup

# Clone the repository
git clone https://github.com/rapidrabbitsoft/ppvc.git
cd ppvc

# Create virtual environment
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -e .

# Test the package
python test_ppvc.py

Building the Package

# Install build tools
pip install build twine

# Build the package
python -m build

# Install locally
pip install dist/*.whl

Publishing to PyPI

This package is configured for automated publishing to PyPI using GitHub Actions. See PUBLISHING.md for detailed instructions.

Quick Publishing Steps

  1. Update version in pyproject.toml and ppvc/ppvc.py
  2. Create a new GitHub release with the version tag
  3. The GitHub Action will automatically build and publish to PyPI

Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a new branch for your feature
  3. Make your changes
  4. Run tests: python test_ppvc.py
  5. Submit a pull request

For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the BSD 2-Clause License - see the LICENSE file for details.

Author

Chris McMichael (python@apprabb.it)

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

ppvc-1.0.0.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

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

ppvc-1.0.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file ppvc-1.0.0.tar.gz.

File metadata

  • Download URL: ppvc-1.0.0.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for ppvc-1.0.0.tar.gz
Algorithm Hash digest
SHA256 76e9c3049f7edeb935219c280ad2200b0fdfa6e839b4b8c591a908b853a9d87b
MD5 25da0ef75ace810ac6c7e6c9a5e790bd
BLAKE2b-256 5ae7cad36ab2074667805d011a25d2427c114ee370d04a753ba2587d7c515359

See more details on using hashes here.

File details

Details for the file ppvc-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ppvc-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for ppvc-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b82af847e919029abf829bae0eb50013b9dfcdbbd1385d0adec7338bff8282e2
MD5 ab76389448eb6cab8abe71047b02f99d
BLAKE2b-256 6a4a3995cbc59d94d495427b508f9dd49d41822e7514ffd6888d42f985a74f28

See more details on using hashes here.

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