Skip to main content

Add your description here

Project description

Creating a Registry

To create a registry follow the example below:

from typing import Any, Dict, Protocol, Tuple, runtime_checkable

from dynflow import Registry


@runtime_checkable
class BaseComponent(Protocol):
    def run(self, args: Tuple[Any], **kwargs: Dict[str, Any]) -> Any: ...


registry = Registry("ComponentRegistry", BaseComponent)

How to Register Componnets

from file1.py import registry

@registry.register('MyComponent1')
class MyComponent1:
    def run(self, args: Tuple[Any], **kwargs: Dict[str, Any]) -> Any:
        print("Running MyComponent with args:", args, "and kwargs:", kwargs)


@registry.register('MyComponent2')
class MyComponent2:
    def run(self, args: Tuple[Any], **kwargs: Dict[str, Any]) -> Any:
        print("Running MyComponent with args:", args, "and kwargs:", kwargs)        

Config File Examples

  1. JSON Format See config.json for an example of a JSON configuration file.

  2. YAML Format See config.yml for an example of a YAML configuration file.

  3. CFG Format See config.cfg for an example of a CFG configuration file.

For building build Pipeline from list of components use example

How to maintain

  1. Running unit-tests python -m unittest discover -s tests
  2. Removing Cache files pyclean -d jupyter package ruff -v .

Project details


Download files

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

Source Distribution

dynflow-0.1.0.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

dynflow-0.1.0-py3-none-any.whl (3.6 kB view details)

Uploaded Python 3

File details

Details for the file dynflow-0.1.0.tar.gz.

File metadata

  • Download URL: dynflow-0.1.0.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.24

File hashes

Hashes for dynflow-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bed004b73de3bc6812d05bc0b2a993f6cad910127d270e617cc9571366b2c364
MD5 29d67e9481c579dec7610c1c7a0f2ac5
BLAKE2b-256 ac28130dc347ae0f7556e8eaab4261dba8e064b7b393598e53d725a61f70b553

See more details on using hashes here.

File details

Details for the file dynflow-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: dynflow-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.24

File hashes

Hashes for dynflow-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 904eeb8ae0910161609bfcff6ce1987755cb0420d441d3532ca999969730f6c5
MD5 5ea2dee078ef8013802225d3e3c518a6
BLAKE2b-256 e47dff6f3fea5fc79d681382ebc87d05cdb64432756e939f1299fd79366a6799

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