Skip to main content

A Library for Quick Dependency-based Computation

Project description

TurboGraph logo

Quick Dependency-based Computation

Pipeline Status Test Coverage License Latest Release PyPI - Version Python Version

📖 Documentation: https://turbograph.docs.cern.ch/master

TurboGraph is a lightweight Python library for defining and computing values based on dependencies.

It builds a directed dependency graph automatically—leveraging either the networkx or igraph backend—to ensure computations run in the correct order.

🚀 Quick Example

TurboGraph infers dependencies from function signatures:

from turbograph import compute

specifications = {
    "a": 2,
    "sum": lambda a, b: a + b,  # "sum" depends on "a" and "b"
}

result = compute(specifications, ["sum"], {"b": 3})
print(result)  # Output: {"sum": 5}

TurboGraph detects that "sum" depends on both "a" and "b" and executes the computations accordingly.

📌 Check out the Quick-Start Guide for more details.

📥 Installation

TurboGraph requires Python ≥ 3.11 and supports NetworkX (≥2.5) and iGraph (≥0.10.0) as graph backends.

# Install with NetworkX backend
pip install "turbograph[networkx]"


# Or with the iGraph backend
pip install "turbograph[igraph]"

📚 For more installation options, check out the Installation Guide or Development Guide.

The TurboGraph logo was created using the following fonts:
Speedway and Speed Solid.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

turbograph-0.5.2-py3-none-any.whl (31.8 kB view details)

Uploaded Python 3

File details

Details for the file turbograph-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: turbograph-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 31.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.3

File hashes

Hashes for turbograph-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f198ce80cd9ac8428a9997a6bf35f76610fa7575658625088b97ad547e12f231
MD5 dcc1ce23c8e16c87c258a06bc814473e
BLAKE2b-256 ec32b8771b72d21f851db2636455e931f05731dc164610ce2f316b8e2e55d86b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page