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 1

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 1
File Size Uploaded Provenance Actions
computation-graph-1.tar.gz 12.4 kB Without provenance Details for computation-graph-1.tar.gz

Built distribution (wheel)

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

Total release size: 64.5 kB

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

Download URL computation-graph-1.tar.gz
Size 12.4 kB
Tags Source
SHA-256 checksum
How to use checksums
be8393a74886ee1da2a463d11ce5a0fa54514e9beef56e4090a5e9fc82652a33
BLAKE2b-256 checksum
How to use checksums
c2c1589f10152c88d983e05791188edbe1f9569270f3f6b5b8c76ebb78447982
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.2

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

Download URL computation_graph-1-py3-none-any.whl
Size 52.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b92048afb665916d7ffb50957545ae8af87d7720aa858af702053a0225f70def
BLAKE2b-256 checksum
How to use checksums
35be4219b5db87a646c2a8c37be75511be84aae81965cb498bca832a310f0785
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.2

Security for computation-graph 1

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

1 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