Skip to main content

Build Status

A functional composition framework that supports:

  1. State - functions which retain state for their next turn of action.
  2. Ambiguity - non deterministic composition with priorities.
  3. Injection of compositions into long pipelines (deep dependency injection).
  4. Non cancerous asyncio support.

pip install computation-graph

To deploy: python setup.py sdist bdist_wheel; twine upload dist/*; rm -rf dist/;

Debugging

We need graphviz to visualize computation graphs:

sudo apt update && apt install graphviz
pip install pygraphviz

Debugging is possible by setting config.DEBUG_SAVE_COMPUTATION_TRACE = True or environment variable CG_DEBUG_SAVE_COMPUTATION_TRACE to true/t/1. This will save a file, on each graph execution, named computation.dot to current working directory.

You can use this file in a graph viewer like gephi. Nodes colored red are part of the 'winning' computation path. Each of these nodes has the attributes 'result' and 'state'. 'result' is the output of the node, and 'state' is the new state of the node.

In gephi you can filter for the nodes participating in calculation of final result by filtering on result != null.

Metadata

Release files for computation-graph 2

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

Source distribution (sdist)

Source distribution for computation-graph 2
File Size Uploaded Provenance Actions
computation-graph-2.tar.gz 12.4 kB Without provenance Details for computation-graph-2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for computation-graph 2
File Interpreter ABI Platform Actions
computation_graph-2-py3-none-any.whl Python 3 none any Details for computation_graph-2-py3-none-any.whl

Total release size: 77.2 kB

Release files / computation-graph-2.tar.gz

Download URL computation-graph-2.tar.gz
Size 12.4 kB
Tags Source
SHA-256 checksum
How to use checksums
68b367879e547934053b83ef9e9da41ec5e6df07d3a717c8d69d6dcccba6cfc0
BLAKE2b-256 checksum
How to use checksums
7e36ad3c671d1023324995a7146c2b4859a279fe2d2d1957ef364769f7958154
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

Release files / computation_graph-2-py3-none-any.whl

Download URL computation_graph-2-py3-none-any.whl
Size 64.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2137c0ecf6fad2432217de641da20c299fd76fbeb83d8d8495af9445ae671d36
BLAKE2b-256 checksum
How to use checksums
13cc0e353bfe25d4944c36170a01490f4f1157d84f6d6d5837107caac1ae8434
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.5

Security for computation-graph 2

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.

Release history Release notifications | RSS feed

This release

2 This release

2 release files No provenance

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