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

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.16.0-cp314-cp314-manylinux_2_28_x86_64.whl (19.4 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.16.0-cp314-cp314-manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.16.0-cp314-cp314-macosx_11_0_arm64.whl (16.8 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

kailash_enterprise-4.16.0-cp313-cp313-win_amd64.whl (18.1 MB view details)

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.16.0-cp313-cp313-manylinux_2_28_x86_64.whl (19.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.16.0-cp313-cp313-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.16.0-cp313-cp313-macosx_11_0_arm64.whl (16.8 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

kailash_enterprise-4.16.0-cp312-cp312-win_amd64.whl (18.1 MB view details)

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.16.0-cp312-cp312-manylinux_2_28_x86_64.whl (19.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.16.0-cp312-cp312-macosx_11_0_arm64.whl (16.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

kailash_enterprise-4.16.0-cp311-cp311-win_amd64.whl (18.2 MB view details)

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.16.0-cp311-cp311-manylinux_2_28_x86_64.whl (19.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.16.0-cp311-cp311-macosx_11_0_arm64.whl (17.0 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

kailash_enterprise-4.16.0-cp310-cp310-win_amd64.whl (18.2 MB view details)

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.16.0-cp310-cp310-manylinux_2_28_x86_64.whl (19.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.16.0-cp310-cp310-macosx_11_0_arm64.whl (17.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 6b04912b296ef6dd2b86efb43018a7cd10df68a7a71fff3ad123ffd22f9763f1
MD5 dd4ba70aac06a4ad66928aa1f8a5e32d
BLAKE2b-256 177302efbb7af47d71ff5fea456ed9604f2c58da57354bc77ebce6c801e601ea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 44d226cc422f67d5e1e86fd0beba6cc4985f3c932f699c7b4731b689b6fb3eec
MD5 684d7b2cf7923873e4c19e64608b6eba
BLAKE2b-256 57a5851f6516b2b982f14203e7adc0b80d2ffe1ee7ae45fdc6f6111d15ea1616

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f3bb29aaa652944528139eb4d155a7dd9771189786bff96c39e71603756750dd
MD5 866ced970917ef12e4aa0d678d02d803
BLAKE2b-256 12a2ed9ac55ca36ccbca5c0ea54593db8ada00c7a12f4180777069417982d966

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01f714d379af593eb244055d2dfc1bc73293d6784c061fac3c8e4620b6c257e0
MD5 6dbf6c75a2b6e554913d55026fa6b434
BLAKE2b-256 6f3d1f2fb3c312e20c9049636c046cde32dbb0b520ea00bf3c6f116ec290b25f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 a2a6625b733cc791639a79217dc3f8e412c9d81b39827ffef4bc378522c34afe
MD5 021a2f5d5852155772d376000befaa54
BLAKE2b-256 0b0ee31c3444d876f64ef21cd29db9f7579af3f31402c62ed4300de67a8abbe2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6da794eecebf2b1253cbb2dcacff5a9d6845967ae516c60a96e27cef545ad122
MD5 3e789755ac190aac21870f6fe50a18bf
BLAKE2b-256 5481a1225321de00a5d194366556e2ae9d855cd2021ecaefe43c07a42d064cc9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 268f642958af45ab364536e5333f995acb41d11ecfe5f6bf0b31dbeeb9596c81
MD5 0666d4e13541ca2c88c867b0771aabdc
BLAKE2b-256 ff20a805c041d63eeecbf300297d3b862bf15d18d8d3c7505b83c84ada33be63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9ae726da47499f8f1b43f973f91dff3cb92126f387e374af2c3c9295b554b3ac
MD5 27ac9b5cc4989bb0ad2b38a14cb761ee
BLAKE2b-256 ff588207ee199eee39e6aa0961d3ada58ebac437ac995b7db55aeea3548b98bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 02cc35c1f8d599b4f5b593b35cd3ad247f0e3df88ff2fb2f4c5514754853d983
MD5 20693f1bed366d5ff99b237cf4eaa03e
BLAKE2b-256 c36ecbc14b918914ca25e248b206246c634af3f3d2abada8d2566418c3ae59b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 52f76bc573fefb52c86defa6c081c2af0ec34aac156ebc7335acfdc16ac396b1
MD5 dc5e459d52ef1fe65af53e2897e0e8d3
BLAKE2b-256 c8dd62a3e6bb990793867740196552939dc7dd963e95fcdf9ee485a5f5a85132

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 93c9ac2c4506aa364960f07241b98b1849212e0135342b53b49625c8752a9fa0
MD5 5b8273a2741d7f9750709f218c90aed6
BLAKE2b-256 880ab431705f43fbce3bfc3d6ac8040ab57208ac4167eb9a36a4912ad8b22116

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cb5c1eaf15c4cf7e507770f0b504f271b9d8dbfc36cee4e0f605860795c4294c
MD5 c3c03c5fbb31a168811d63a12cc29f76
BLAKE2b-256 0bef3bf161106d4bc08f60dda870cefbac010b2a449a0d5109854e118e87930f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f06ad6ee65ced24e44bcbb4fd47cfa093e94b77d64eb2a0c991516c94106f421
MD5 5121931bdee0c17eeb8c18f1149d970c
BLAKE2b-256 7ce517a825cecf8c93f8088cc74cb03103a6aa1e419fdad26b7e79ec850ebb5e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8fb8a3bd828f15f2a0a7451ab5687871153ec8a9313474d8e4762eaca32037a1
MD5 f9a4b1478596c71d58f437784bc71963
BLAKE2b-256 f214844a4aeee1c4a8592b1c7dcd0bc3def93e9a33c6ce5888157f9da7ec4fd9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 131a6d347c607d69c3d09fcb4f51db90bd808b955adea08670b794a3c8ad7dac
MD5 fafd90f793c97d86784f8d398063cb01
BLAKE2b-256 f871b97967e2a271d348924e2c79437664582028c190761b720f6597950b1a32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d3e8e244aa173e8d14618a039796ca571efe5c586cfc336ec91683e91a3e0d1
MD5 32645728ab38b77a436863a22d4bdfaf
BLAKE2b-256 1419865eef1d247e7f2a67315f91b097939baef7e66e2b1923eaf51812b9e444

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b5ac2eade80fa54ea0a240eae6bb04b7ba679eac82e836c498a8df75fb386f63
MD5 f0e45ddbcc5669b3d49671b2dac65e80
BLAKE2b-256 38038b99122a893f1be535f71b9c6621207502c38a2956ad4ec303706f1de790

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c956d3a247818075ed95142ed51f790ae207204619f5177ef2bf8d49321a4db2
MD5 6b6c208ee39df4a7d6edee273bf771cc
BLAKE2b-256 3d1abcf2c3993a02642167394da61273cde9055a371224b8397954431ab56428

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 abd491f68b0ea689204a934008ba5351743ac082742bdc7b57fc9690a703f8c2
MD5 ef328aaabb96658bd6ec31eab60852e3
BLAKE2b-256 f34f38713a7b50fe99f588eeb614220e7e7e663ae3e7d3f6458b2d8d94813a5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.16.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 16b8d9db05b78b7afe77dfb413864447d77f201975561f35c89af1402744ff43
MD5 1d2abd4447ea7a1f8716f562673f9da1
BLAKE2b-256 1ec67cdc4f64302ea06d5513226aef9831dc0a73a813e355e87e5bbf79d0b692

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