🌿 pipproof v1.0.0 · MIT

Does pip install my-tool @ git+… actually work from a clean environment? One command proves it: fresh venv → install → smoke command → exit code.

The problem

Publishing a Python tool ends with the same manual ritual: create a throwaway virtualenv, pip install the package from its public URL, run its CLI once, and hope you remember the exit code. Four commands, easy to skip — and skipped proofs are how broken installs ship. pipproof makes the proof a single, automatable step.

Install (pip, v1.0+)

pip install pipproof @ git+https://mandrilly.com/git/pipproof.git

Zero dependencies — stdlib only.

Quick start

pipproof "mytool @ git+https://example.com/git/mytool.git" \
  --name mytool --run "mytool --version"
# → pipproof: OK — … | version=1.2.3 | smoke exit=0

pipproof "./my-package-dir" --name mytool --run "python -m mytool --help"
pipproof "pkg>=1.2" --name pkg --run "pkg-cli check" --json

Exit codes

CodeMeaning
0Install succeeded (and smoke command, if given, exited 0).
1Install failed or smoke command failed (error tails kept in the --json report).
2Environment error: venv creation failed, step timeout, or bad arguments.

Options