The python process executor.
Pyprexor helps create traceability between your process inputs and process outputs.
Parameter sets are stored in a datastore and pyprexor seamlessly passes the required parameters to your annotated processes (a.k.a python functions).
Process outputs are added to the datastore complete with execution metadata and traceability back to your parameter set.
See example.py for basic usage.
Pyprexor can be installed from PyPI using pip ($ pip install pyprexor
) or your favourite package manager; we like poetry! ($ poetry add pyprexor
)
Dependencies are managed with poetry.
pip install poetry
poetry install
The project is linted with ruff, styled with black and type checked with mypy.
Pyprexor ships with an InMemoryDatastore. This allows parameter sets to be loaded into memory on initialisation. Process data is added to a list in memory and can be read out on command. See the example.py for usage.
A basic wrapper around the MongoDB API is provided in pyprexor_datastore.mongo. It requires that pymongo is installed separately (i.e. pip install mongo
). If running the package from source, you an use :
poetry install --with mongo