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.20.0-cp314-cp314-win_amd64.whl (18.1 MB view details)

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.20.0-cp314-cp314-manylinux_2_28_x86_64.whl (19.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.20.0-cp314-cp314-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.20.0-cp314-cp314-macosx_11_0_arm64.whl (16.9 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

kailash_enterprise-4.20.0-cp313-cp313-win_amd64.whl (18.2 MB view details)

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.20.0-cp313-cp313-manylinux_2_28_x86_64.whl (19.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.20.0-cp313-cp313-manylinux_2_28_aarch64.whl (18.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.20.0-cp313-cp313-macosx_11_0_arm64.whl (16.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

kailash_enterprise-4.20.0-cp312-cp312-win_amd64.whl (18.2 MB view details)

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.20.0-cp312-cp312-manylinux_2_28_x86_64.whl (19.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.20.0-cp312-cp312-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.20.0-cp312-cp312-macosx_11_0_arm64.whl (16.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

kailash_enterprise-4.20.0-cp311-cp311-win_amd64.whl (18.3 MB view details)

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.20.0-cp311-cp311-manylinux_2_28_x86_64.whl (19.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.20.0-cp311-cp311-manylinux_2_28_aarch64.whl (18.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.20.0-cp311-cp311-macosx_11_0_arm64.whl (17.1 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

kailash_enterprise-4.20.0-cp310-cp310-win_amd64.whl (18.3 MB view details)

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.20.0-cp310-cp310-manylinux_2_28_x86_64.whl (19.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.20.0-cp310-cp310-manylinux_2_28_aarch64.whl (18.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.20.0-cp310-cp310-macosx_11_0_arm64.whl (17.1 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 3267fcbd4192efa2d2e112807e8f2e39ddad1012f2b472feef525720c2a9e9e6
MD5 1779ccf895d9af95666a5672b73c0d9c
BLAKE2b-256 54834b01bb52663b1c01b3e1728e061251bcb194b4894f5247560d1546162c2d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7affc731fba8c62224859a50513c67c615104a951dcded6e31c21160af39f209
MD5 a88d748dfa6034b16606be2fc83e4ea0
BLAKE2b-256 a0bce83ebe179723e9ff0522167bb1cf48782120162a05483a2d79a091372496

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 34e423dc73dd9ae6b41f7e44824fa1c01042ac3076247ac77a1e0397eb0062b7
MD5 da320701cb9495f09ad07dd7b0c4139a
BLAKE2b-256 f78223e495d7bc3e767092a8a7d3c770be4ed08416b46677f4fbdf348a197691

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0b21a3928d9c27c4f771a521ff1ca1bde75f137fb6f7f26aae316983bab46a96
MD5 4fb0f26423336fb7893e4805f817fc27
BLAKE2b-256 b66a1080d3b0d48f6ac5d6a61f31477558c1296a487e399782d4cc6f07241f45

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 4ba21a5fe673258069a610b8fb7422289677082bc20e3608f9522f08ae05fc11
MD5 2499a1dd11ebeb07c797ca3e02cfb628
BLAKE2b-256 ce65eeb65c75cb933a0beb08641f261c78545df8662fe7cf63836dea8b94f0c6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1a3d2631d5d37fd158de012edb5410d16b440640e03974862f16009c963e1134
MD5 0f67b32c6f105d99f97411cb23309f0c
BLAKE2b-256 01223f1eda1161219b30ddf71dda4be75d846c471cc1cf6bd2d3f4379366b085

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5bf7bf53f9ee526baa4fd9637e2a73bbbc95e79131cc7b27362970461d3c1cfe
MD5 7d7504488325a433e16ab2dfc7951c14
BLAKE2b-256 fb3549eeae439ebf6fb05400686394ec14392bc16ab9e0791ac0a42b06a76941

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d175a1b5c301c379cc3414994c91c3d8e234f98dc0ea151200bd43e9c24ea199
MD5 0ea7d330d97d710ad951ab4436947c3d
BLAKE2b-256 9f97211f3a6aed12445f6295e5bbcec95bf8e591b0adfc4af7f13664ed2adbb4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dc828e09c08887d3bca9b97648378276ff378d1959aa3ca7e93cb1a88a3f98fc
MD5 d98f1fd98070ec6497413f8876399253
BLAKE2b-256 6d8128f9efce44bf30c5fb39a8587515510f0ce150d45dda7e6cd83e3258c62c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c3d256a86ad3ebe21e253f560aee20e4e9a34f05d5794d39153acca7b8e3341b
MD5 55411563a2e4c00d626567d4ea331711
BLAKE2b-256 84422bb3b03c240363615b5a49814711cf8f89ba8c6935ec446ebe33fdb7e3c5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a82c2abea023b00734cd5ffb2a67ad04febd2b7f887527fc82525bad6aee8d68
MD5 6cea466c123f6ccf707ecf9799ac60ba
BLAKE2b-256 f6b87f4511705914e12b3998ae9becddf11c157639a1613723f8e039539b269d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f426266bf25cb55c4af789f419b192f26c3e7460b1242b8e18dab6dc8986f407
MD5 8faf0b861cf1b94686ef878c5d69232c
BLAKE2b-256 1c5379f9ac653077b5dbd1361b82ff531b4ee186beb37614bdbadd59d7056587

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 18d489cd1b964d89a121ca8bc25fb77b2dbe6414e22313fd14c69d8627b2d962
MD5 85e2d6f64764f2b797f2a34b8a569f70
BLAKE2b-256 785dd761c09a84331090335ef975ac7f42a92649e3e31711fcc4fcd7605f8bd2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c77e5556628b6779edf8f6557b56a2e062a9376a60f80093d7fc0209edd40d74
MD5 ba8d3ee5cc8a5489002788031d0ddf27
BLAKE2b-256 c8b6c187085cefc4983ae1b694d5fcba81e45c6f77f71e6a3466f24847ac078b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 7269bfc29a09c9f3ca6287cc81e579aa7551a22053b2c7664a4a8819b0511ca1
MD5 3a818e319221b3e007871f9dd5be6568
BLAKE2b-256 0edb2a907e2765198cc2e3dd6b4a33c57974a35ae9d45be128642cc44f29acc0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5356a5887e0ecc1f5adebda4abd6b42385d250b1e75c5784eefbd65423a5d780
MD5 bfb4052491de14f28ae99b267d26145d
BLAKE2b-256 acc3229563728ce8c0023dacc8a20af991fdefe1f2988196736df817f94c260c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 bfa72763363a57ec58eadfe1f4cab12b4ff39617fe5e52a81a4ffa62bfe8c6df
MD5 62445f5f9142c10f1804b120af04fb3f
BLAKE2b-256 6e7a9a92a707bfd60593774c1bfde47d796c005e02ef79ba70e97c776aaeefae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 df1a9519ef47bfca080ffd94a24854e6696c01c2df493f21e0ff3245dc20f321
MD5 0bd258b6c5f5fc73faf91d945ab7596c
BLAKE2b-256 fb020d702c0c8a031a1eac3254638090d1edcba2cedc9497951543ff3f0c5e38

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 21e3041ed0426345edd38f5512f9ce17199bc9459a0c629d588173b4e25b8819
MD5 0f13cec529477dd7dc0e48c2dae769f0
BLAKE2b-256 e1c4d6e06b7b640be0aed993a91c4856ce453220798bac4799d9b9a6d598ca47

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.20.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 abadefe8b61f0bc97c5e4d9585304b144a020233743cf31bea30c0df733269f2
MD5 15bc29fe2d807e08d80e1ab6e5bb472f
BLAKE2b-256 b4880cb259c66326890d3827b08c288298f7b812c20797e3f6824e1d7b2e611b

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