Skip to main content

Blocks of code that are executed in dags

Project description

Connect modular pieces of Python code (“blocks”) into a processing dag pipeline. Blocks are an improvement on libraries; if you have a library, you still need to build an application. Blocks are pieces of an application, you just have to connect them.

See the examples directory in the sier2-tutorial repository for examples.

Description

A block is a self-contained piece of code with input and output parameters. Blocks can be connected to each other using a Dag to create a dag of blocks.

More precisely, output parameters in one block can be connected to input parameters in another block. The connections need not be one-to-one: parameters in multiple blocks can be connected to parameters in a single block; conversely, parameters in a single block can be connected to parameters in multiple blocks.

Block parameters use param, which not only implement triggering and watching of events, but allow parameters to be named and documented.

A typical block implementation looks like this.

from sier2 import Block

class Increment(Block):
    """A block that adds one to the input value."""

    in_int = param.Integer(label='The input', doc='An integer')
    out_int = param.Integer(label='The output', doc='The incremented value')

    def execute(self):
        self.out_int = self.in_int + 1

See the examples in examples (Python scripts) and examples-panel (scripts that use Panel as a UI).

Documentation

To build the documentation from the repository root directory:

docs/make html

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

sier2-1.0.0.tar.gz (29.7 kB view details)

Uploaded Source

Built Distribution

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

sier2-1.0.0-py2.py3-none-any.whl (34.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file sier2-1.0.0.tar.gz.

File metadata

  • Download URL: sier2-1.0.0.tar.gz
  • Upload date:
  • Size: 29.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.12.2 Linux/5.15.180-123.192.amzn2.x86_64

File hashes

Hashes for sier2-1.0.0.tar.gz
Algorithm Hash digest
SHA256 90fec16a49235c163f201af41b86163fd43498243395e60a860067dfd37d6594
MD5 e5fbaebc648a2ea6b385f328a079325a
BLAKE2b-256 36b68ebb0f8b7e1022f0411e57aff0aa2e08561d93d039ce4496bb2726eccdfc

See more details on using hashes here.

File details

Details for the file sier2-1.0.0-py2.py3-none-any.whl.

File metadata

  • Download URL: sier2-1.0.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 34.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.12.2 Linux/5.15.180-123.192.amzn2.x86_64

File hashes

Hashes for sier2-1.0.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 41b2ae27e5cd1a54bd8bec974a05963a89df0a8070948aae7c706549331e58a4
MD5 3f431e7ce13179c5f32a25f46654a89e
BLAKE2b-256 d79c447418eba160366aada6d627f391fa6a4792f0ef29fa245edd187d9ecf31

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