Skip to main content

pip wrapper that auto-updates requirements.txt

Project description

ppam - Python Package Auto Manager

ppam is a CLI wrapper that intercepts pip install commands (when you call pipx or the installed CLI) and automatically ensures a requirements.txt file exists and contains pinned package versions for packages installed during the invocation.

Key features

  • Creates requirements.txt if missing.
  • Adds newly installed packages with exact pinned versions (e.g. requests==2.28.1).
  • Optionally rewrites requirements.txt in a deterministic, sorted manner using pip freeze.
  • Configurable via .ppam.yml or environment variables.
  • Safe: doesn't modify files when run with --no-update and avoids changing project files when running in CI if CI=true.

Design The tool wraps calls to the real pip (via python -m pip ...), then inspects installed packages and updates requirements.txt. It is intentionally independent of pip core so it doesn't change pip's behavior for other tools.

Installation

# from PyPI (once published)
pip install ppam

# or from GitHub for development
pip install git+https://github.com/BeditechInnovation/ppam.git

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

ppam-0.1.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

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

ppam-0.1.0-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file ppam-0.1.0.tar.gz.

File metadata

  • Download URL: ppam-0.1.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for ppam-0.1.0.tar.gz
Algorithm Hash digest
SHA256 97bfad38d9f47f74a013665ea6fb232a503269552d58b363b1cf6eeab08288ac
MD5 f351e45166501377d6c45ed8c7d9733c
BLAKE2b-256 430b0511fddf09b7bdbafcb00f65ba0eb3dfefe06c61220b06ef3ab3385237e5

See more details on using hashes here.

File details

Details for the file ppam-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ppam-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for ppam-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c2ade8bfabc5d68407fd957da30dab7ec76bdf63e71b97c193dca8e244d5f6e9
MD5 dc825084e951221d78799fc6a7471582
BLAKE2b-256 eb3f9c20f5b76466362c39c9a44ae1fbc0f2d4dc011e21a85481f62cf09114f4

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