PineXQ ProCon Framework
Computations in DC-Cloud are done by Workers running inside a ProcessingContainer, or short "ProCon", which is also the name of the framework. ProCon provides an unobtrusive wrapper around function definitions without introducing new semantics, allowing for a clean definition of the computational task, while handling all cloud-related communication and data-management transparently in the background. This removes the code and configuration required from the function implementation.
Installation
To install the package use the pip command, to either install from a package feed:
pip install pinexq-procon
Creating a container
To publish a function in a container it has to be a method of a class inheriting from the Step class.
from pinexq.procon.step import Step # import package
class MyStepCollection(Step): # define the container class
def calculate_square(self, x: float) -> float: # define a step function
"""Calculate the square of x
:param x: a float number
:returns: the square of x
"""
return x ** 2
# More step functions can go in the same class
if __name__ == '__main__': # add script guard
MyStepCollection() # run the container - this will spawn the cli
It is mandatory to annotate the types of parameters and return value. Docstrings are optional, but highly recommended.
The documentation has a detailed section about implementing processing-steps.
Running a Step-function locally
The Python file with the container is itself a cli-tool.
You get a list of all available commands with the --help parameter.
python ./my_step_file.py --help
With the run option you can call a function in the container directly and the result is written to the console.
python ./my_step_file.py run --function calculate_square --parameters "{'x': 5}"
25
You can find full list of available commands in the cli documentation. All possible parameters and environment variables are listed here.
Metadata
Release files for pinexq-procon 2.8.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pinexq_procon-2.8.3-py3-none-any.whl | Python 3 | none | any | Details |
Release files / pinexq_procon-2.8.3-py3-none-any.whl
| Download URL | pinexq_procon-2.8.3-py3-none-any.whl |
|---|---|
| Size | 70.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fec114738d0c761b29875e180c3fc86f435bc08994c82e21395c12c7e5baed90
|
|
BLAKE2b-256 checksum How to use checksums |
91e42fa520350fe2c62025e9ac13f78737b62c842a8773b86e43747670333c16
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Security for pinexq-procon 2.8.3
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.