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.

Credits

The TurboGraph logo was created using the following fonts

The multi-versioning approach for this documentation was largely inspired by the implementation in this repository, which is licensed under the Apache-2.0 license. I sincerely appreciate the author for sharing their work!

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.6.1-py3-none-any.whl (35.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for turbograph-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d2282028ebfc8f9dce735e74e897445205b40939008a702868762cbd849df0cc
MD5 53abc00d4ff6500635b14501d003b512
BLAKE2b-256 35d8892524999eef3d4e3dc08eba3f965e5fae82d57d9ba524a72179261b384b

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