Skip to main content

Piptegrator

Tools for managing requirements-driven projects

Run piptegrator --help for usage details

Configuration file which contains requirements files (must be in the repo root if present at all): .piptegrator_config

Note: command line options always override corresponding config file options (they do not append to or aggregate with each other).

Running the tools

The main tool is piptegrator

piptegrator --help

Given the configuration file .piptegrator_config (a sample present in this repo), run:

piptegrator --compile --noenvmods

For use without a config file, specify the requirements input files as a comma delimited string, e.g.:

piptegrator --compile --noenvmods --requirements test/requirements.in,test/requirements.tests.in

Error resolution

The most common error flagged is when two requirements files have different versions of a given package. You can see an example of this by running

piptegrator --compile --noenvmods --requirements test-errors/requirements.in,test-errors/requirements.tests.in

This kind of mismatch can be trivial (micro version differences) but the purpose of Piptegrator is to flag these: if you are testing with one version of a library, and deploying with another, unwelcome surprises are possible.

We observe the version mismatches, and can mitigate them by upgrading/downgrading the respective pinned versions accordingly, or duplicating a troublesome requirement from one requirements file to another.

(The test folder has these fixes, and serves as a contrast with the contents of the test-errors folder.)

Updating this package

Clone this repo

On a branch, make the required edits

Ensure you update the version number in piptegrator/__config__.py (pre-release? use rc notation, e.g., 1.2.3rc45)

Building and install the distributable wheel

pip install -U build twine && \
rm -rf dist build *.egg-info ; \
python -m build --wheel && \
ls -al dist && \
unzip -l dist/*.whl && \
pip uninstall -y piptegrator && \
pip install dist/*.whl

Quick test (recompiles test/requirements.in with sample options)

ln -s .piptegrator_config.sample .piptegrator_config  # Or make a copy
piptegrator --compile

Uploading changes (author only)

twine upload --repository piptegrator dist/*

Metadata

Release files for piptegrator 1.5.1

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

Built distribution (wheel)

Table of built distributions (wheels) for piptegrator 1.5.1
File Interpreter ABI Platform Actions
piptegrator-1.5.1-py3-none-any.whl Python 3 none any Details for piptegrator-1.5.1-py3-none-any.whl

Release files / piptegrator-1.5.1-py3-none-any.whl

Download URL piptegrator-1.5.1-py3-none-any.whl
Size 9.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
47945ad82ba1e906f23d7bf466b2c671ccb7f45c9c034cde5e2b07717fd86836
BLAKE2b-256 checksum
How to use checksums
8d3d1d6993e1832eb10694eb3e09eb237a69fb0cf3764966bf026e90f6bef04b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Security for piptegrator 1.5.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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