Schedula is a dynamic flow-based programming environment for Python that automatically handles the control flow of programs. It produces a plan that dispatches calls based on a graph of functions, satisfying data dependencies. The library helps to define and execute dataflow execution models, extract sub-models, and can be used to deploy web API services. It is currently at version 1.6.15 and is actively maintained with regular updates.
pip install schedulaVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to define a simple dataflow model using `schedula.Dispatcher`, add functions with data dependencies using the `@sh.add_function` decorator, and then execute the workflow by calling `dispatch` with initial inputs and desired outputs. Schedula automatically determines the execution order based on data dependencies.
Review the documentation for required extras and install them, e.g., `pip install 'schedula[plot]'`.
Install Graphviz from its official website (graphviz.org/download/) and ensure its `bin` directory is added to your system's PATH.
Benchmark your specific use case to determine if concurrent execution provides a performance gain or if a synchronous execution model is more efficient for your workload.