Skip to main content

Kailash Enterprise — high-performance Rust-powered workflow engine, drop-in replacement for kailash

Project description

Kailash Enterprise

High-performance Rust-powered workflow engine — a drop-in replacement for the kailash Python SDK.

Installation

pip install kailash-enterprise

Replaces pip install kailash. Existing code works without changes.

Usage

# Existing kailash code — no changes needed
from kailash.runtime import LocalRuntime
from kailash.workflow.builder import WorkflowBuilder

builder = WorkflowBuilder()
builder.add_node("NoOpNode", "step1")
workflow = builder.build()

runtime = LocalRuntime()
results, run_id = runtime.execute(workflow)

Why Enterprise?

  • 22–261x faster execution via compiled Rust engine
  • 100–300x less memory than the pure Python SDK
  • Same API — zero migration effort
  • Binary-only — source code stays protected

Compatibility

Full backward compatibility with kailash v0.12. The legacy API emits deprecation warnings to guide migration to the new v2 API.

New v2 API:

import kailash

reg = kailash.NodeRegistry()
builder = kailash.WorkflowBuilder()
builder.add_node("NoOpNode", "step1")
workflow = builder.build(reg)

runtime = kailash.Runtime(reg)
result = runtime.execute(workflow)
# result["results"], result["run_id"], result["metadata"]

Domain event bus (kailash.events)

A pluggable publish/subscribe event bus for cross-service domain events, with structured envelopes (correlation/causation tracking, schema version, JSON payload). Distinct from kailash.EventBus (which is the Nexus lifecycle broadcast bus and is unchanged).

from kailash.events import EventBus, DomainEvent

bus = EventBus()
received = []
bus.subscribe("orders", lambda e: received.append(e))

event = DomainEvent(
    "order.created", "orders", "checkout-service", {"order_id": 42}
).with_correlation("44444444-4444-4444-8444-444444444444")
bus.publish(event)

time.sleep(0.05)

Each subscriber receives a dict with the event's fields (id, event_type, topic, actor, schema_version, correlation_id, causation_id, timestamp, payload, metadata).

Choosing an event-bus backend

kailash.events ships two backends. They are not unified — the choice is a deployment-topology decision, not a convenience toggle:

Backend Delivery scope Durability When to use
InMemoryEventBus Same Python process ONLY None Dev / test / single-process. EventBus is an alias for this.
NatsEventBus Cross-process, cross-host At-least-once Multi-process / multi-service production (requires a NATS JetStream broker).

Cross-process divergence is deliberate and silent if mis-chosen: a subscriber registered in one process on InMemoryEventBus will NEVER see events published from a different process — that is a no-delivery, not a degraded delivery. Pick NatsEventBus whenever publisher and subscriber are not the same OS process:

import os
from kailash.events import NatsEventBus, DomainEvent

# URL threaded in explicitly — the binding never reads the environment
# itself. TLS is required by default; allow_plaintext=True is only for a
# localhost test broker.
bus = NatsEventBus(os.environ["KAILASH_NATS_URL"])
bus.subscribe("kailash.events.acme.orders.created", lambda e: ...)
bus.publish(
    DomainEvent("order.created", "kailash.events.acme.orders.created",
                "checkout-service", {"order_id": 42})
)
bus.shutdown()

NatsEventBus delivers at-least-once via JetStream durable consumers; subjects MUST live under kailash.events.<tenant>.<domain>.<event> (the broker's stream captures that subtree for tenant-isolated routing).

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 Distributions

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

kailash_enterprise-4.5.0-cp314-cp314-win_amd64.whl (17.9 MB view details)

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.5.0-cp314-cp314-macosx_11_0_arm64.whl (16.6 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

kailash_enterprise-4.5.0-cp313-cp313-win_amd64.whl (17.9 MB view details)

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.5.0-cp313-cp313-macosx_11_0_arm64.whl (16.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

kailash_enterprise-4.5.0-cp312-cp312-win_amd64.whl (17.9 MB view details)

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.5.0-cp312-cp312-macosx_11_0_arm64.whl (16.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

kailash_enterprise-4.5.0-cp311-cp311-win_amd64.whl (18.0 MB view details)

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_x86_64.whl (19.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.5.0-cp311-cp311-macosx_11_0_arm64.whl (16.7 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

kailash_enterprise-4.5.0-cp310-cp310-win_amd64.whl (18.0 MB view details)

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_x86_64.whl (19.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.5.0-cp310-cp310-macosx_11_0_arm64.whl (16.7 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file kailash_enterprise-4.5.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 1893916eefc1d8932695a1e6ba5dee5741acbf503ba06f22a11284c37d1be722
MD5 c52948548904d5b9c81c67bdad37562a
BLAKE2b-256 5981cefce8149eb80a69cccc352a97ced57aa90abb122b03bb7466be88a3637c

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9bbbfd5886b9daed7e908a0e1bdf2a9924c29b23ddb693be5eea25cce676016c
MD5 69478996286f03a067337703c12fd1d3
BLAKE2b-256 7e35db1c9f9378cd0305207f90d928b7d4c831df0cd40173ebeb3da75463c925

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0f6bfd6f99b6ee37201d357f283523f414cc7c073446af1d815f426a8d82eec1
MD5 21d4fdc810f836c1cdcc9342dcdc7de2
BLAKE2b-256 c50ff4ab44cfec38ca31dccb48da66b387c606c16821144d8a7976dd6f2a5fea

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 595bb161cf594a02b0120b7e419a0ce11b086d0c6788e884b6b600a234731940
MD5 ed0c76a86f8f2f1538d5708f363385f7
BLAKE2b-256 dd1b1793f12f31ef13099f97387ad9c3ad4ab71e90f8de0528e569b9884b518c

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8edc1ecf09f668612c40630b17fec5575eccaa4388256241c7c0835baa96d9ad
MD5 4648c9e6b8e874aeb198cbfb54ac9511
BLAKE2b-256 4736a2617e044112069b25aad2ea7c5cf821775235b9c1f97abc71f5c14f094d

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8fba154fccaa06e50e881431ae336c128d160e7607bc9e424aa3c37650293769
MD5 6dac9ede89dd01b79d98ca3427a068a2
BLAKE2b-256 169ea783dcb3e14f8636dda4e4ab1e467e0d6303b5272607a4ff38eaa4323077

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 88b3c868abbec47354344762a3dd7bb33314074a1b47a52225eeb856cec70bcb
MD5 db1431f6cfd432a79ef48afa2897cd99
BLAKE2b-256 98c4effed7818013bd9ed0279989679635de2ca71044731adfc27b3d702480e4

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d2f0ebefcb19d89df38e4613588f5c1f89042cf3256753f2002de0590b84778e
MD5 b5d93e86a081f553bec798c3899f466a
BLAKE2b-256 5d7fc18cd5418e71c059a9f48a06b63218a59070530a5bfc5f9d57cb475f6caa

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e6925d408871b3b31a7dff8a4828ff0b5e684ac56f335733ac77923c9df986bf
MD5 76baeb436f0b3319173f6628d964901f
BLAKE2b-256 92ddf9131b117b5de7a7209903277310809e6602b3b32cd8ec75dba3e52204b1

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eb88cea5eb79763dbf359d010addab723bdef14a0fd9c659753ddb71b992fb7c
MD5 ec2afb608670908eff830f761e035466
BLAKE2b-256 cd9260a88acefcffcb464475c9ff6c590a6de0623d6deecd0f7f547417a8dbfe

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dd8588ccbc6a23cbd389dab34b7e67e5a47b67525bd8b9ecc659ffb0d04d3124
MD5 1ef998e44e8b2d5c824fd6d28455972f
BLAKE2b-256 42642ee3d6cb24483e7cb0f48c955ba3cd9d9520133c5ddf31af75428eb9c098

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fe5ace4d54cdd3b517d7dca44f715efa5fff7dcc975b534aab379b4d98dd5ee5
MD5 0b8845097f5e80653f763fa027fff022
BLAKE2b-256 0a38c1e651a8dc10540d92ea49013c411ca12fc41fc4b4351f087e502b10a380

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 02f502b96435040fff16851b2f9dd2b443772dda64e6e730c8d34b6e12209d0a
MD5 1e7bd2eab67660f0355b540d3362dd69
BLAKE2b-256 2b7503e1256e1af34ebf527c6b4ab227fdab2c88568ef9ba714e662c45725ec9

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4e5991d44ea2453b8ec61c953318f415309b2a7083eafa2135ae9a03f45664b2
MD5 9497cfa9ceddc4cc81810c3a19b0e498
BLAKE2b-256 b74190d234301b64aee7f6eeb3959a3b9e12780644da6713dfdf7467cca52ed1

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3daa1cfcef24dd15aa637b269963213b3cc683f49fbceda28f28da9e11fb4c76
MD5 e3954690780a21d768f99a150636aa1e
BLAKE2b-256 e7d29c7133c3567cf30c9fc25d6c0f7f8366c8ef490edff9427a3dffbce83337

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ce4f7d78cef3f26b1f6f13ff7080214fcd19e28dd473a149eddf435fd90d19fe
MD5 115170def641c69a07344e74b0920b55
BLAKE2b-256 b926225b129a12ce129d26587dbc8f34aba62c3e0144a945efd4deeca3766412

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 98c1dc5350f2c8e7b3ded3a1273136fde00943c24443ca82d02a86137dccc255
MD5 8bfc6f073d8052acb3a5c757d8abca81
BLAKE2b-256 79fd927063df82950c8a53592b48301e548902be77e78e77487fec722e09633c

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ece0dab0a3e376b21470d9c015ef417eab72386b290aa59abf0d0ad7bb4167e4
MD5 71505528354d158fee20f145152d2e73
BLAKE2b-256 2aa8b8d3a8cdecbf37f3e3abad40483ceb0c12961fef41d5dd72624640a875c5

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 afa90fcf78edf2af48e556c733e95ba01c713bb3d6b3aa6ca95188db33817c3c
MD5 ef9eca6e294fa827f0ecd2bc4dc9c81f
BLAKE2b-256 0daae1114098915152166ceee95172d9610a64e1556924a3e384e30963f78cfa

See more details on using hashes here.

File details

Details for the file kailash_enterprise-4.5.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.5.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f7b609ba08c44e8863be45cc5c8bed7181549552d61c19ce221c986144e5fbfd
MD5 598613ca3f46bf1b1668d8ad6d59c817
BLAKE2b-256 611eaa65110ec59e85898144da2a79c1885491105aa2d495b69ff31d997e192f

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