Passa: Toolset for Pipfile projects¶
Passa is a toolset for performing tasks in a Pipfile project. It contains several components:
- A resolver designed for performing dependency resolution using a stateful look-forward algorithm to resolve dependencies (backed by ResolveLib).
- Interface to interact with individual requirement specifications inside Pipfile and Pipfile.lock (backed by RequirementsLib).
- A command line interface to invoke the above operations.
Quickstart¶
Passa distributions can be downloaded from Appveyor’s artifacts page, as a ZIP file.
Once downloaded, you can run passa.zip
with the interpreter of the
environment you want to manage:
python passa.zip --help
Use Passa to generate Pipfile.lock from the Pipfile in the current directory:
python passa.zip lock
Add packages to the project:
python passa.zip add pytz requests tqdm
Remove packages from the project:
python passa.zip remove pytz
Generate requirements.txt for the current project:
python passa.zip freeze --target requirements.txt
Distribution Notes¶
Passa is available on PyPI and installable with pip, but it is not recommended for you to do so. Passa is designed to be run inside the Python environment, and, if installed with pip, would contaminate the very environment it wants to manage.
The ZIP distribution is self-sufficient, and use only the interpreter (and the standard library) to run itself, avoiding the contamination.