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

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.12.1-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.12.1-cp314-cp314-manylinux_2_28_aarch64.whl (18.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.12.1-cp314-cp314-macosx_11_0_arm64.whl (16.7 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

kailash_enterprise-4.12.1-cp313-cp313-win_amd64.whl (18.0 MB view details)

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.12.1-cp313-cp313-manylinux_2_28_x86_64.whl (19.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.12.1-cp313-cp313-manylinux_2_28_aarch64.whl (18.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.12.1-cp313-cp313-macosx_11_0_arm64.whl (16.7 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

kailash_enterprise-4.12.1-cp312-cp312-win_amd64.whl (18.0 MB view details)

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.12.1-cp312-cp312-manylinux_2_28_x86_64.whl (19.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.12.1-cp312-cp312-manylinux_2_28_aarch64.whl (18.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.12.1-cp312-cp312-macosx_11_0_arm64.whl (16.7 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

kailash_enterprise-4.12.1-cp311-cp311-win_amd64.whl (18.1 MB view details)

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.12.1-cp311-cp311-manylinux_2_28_x86_64.whl (19.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.12.1-cp311-cp311-manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.12.1-cp311-cp311-macosx_11_0_arm64.whl (16.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

kailash_enterprise-4.12.1-cp310-cp310-win_amd64.whl (18.1 MB view details)

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.12.1-cp310-cp310-manylinux_2_28_x86_64.whl (19.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

kailash_enterprise-4.12.1-cp310-cp310-manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.12.1-cp310-cp310-macosx_11_0_arm64.whl (16.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 186b9724ecd348184fd9bc53a94048074658e34dbc7dd1ad24aed9f73604d620
MD5 a5c7c17cddb1e2cac12e465ecb857fca
BLAKE2b-256 f90c2d12cfac39d62445b7f9840f49a7ce483a6787b2b0260c0699f9b8e4af15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 158b881ef24d6bde79ebd7699eabf4afdd5a3d510a6462488270b97ec8806764
MD5 cd04890ec73fd2ec990ed63f10354d9e
BLAKE2b-256 d46a898df9a595d878dd116f81a873fc8969e2a9a9abd4d6a43d052b2c4f320a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f1d1506994d370b9f9ead8b095e0ba19ad3fec5df31669281b7a67fcd84bb0f4
MD5 212289c20eb26ee54ca9c7fb5826bfec
BLAKE2b-256 3f86951f2115336c00a8e71138042a865db0e397b9d0e77498e4d0c29cc7d774

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 182602240c101a18a9628f0a7605dba778d602cf3f52a54c0079fa856e939437
MD5 f242744549c711e62492e7986ae20daa
BLAKE2b-256 8f9821158e3f6ad2790e1f0d186c020507d491e381e164e0ea4d72b1f88b3700

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ec47f614577cad75f21a679196c86d4d17907ac1ba9f4cd184662387e79cd887
MD5 0e9028388c9dc56e3547c2e10d24da93
BLAKE2b-256 0edcb0d1fd0fd54574fd4e6c3878b6d7d0475d7d6649f2abdc1e64d7b7edc9fd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6bfe8b1031724157c806f14ef8f10b7e7fe4291abe1fdb2d9e7b225ceff59898
MD5 379f22f379f48eb999404ffb16fa6adb
BLAKE2b-256 52feca4273cdfcf7ff43b50eadf17b5a45992549a20d42444f0029359f3bf8d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 615ba8bc1e80bfeb90624d6b3129d0046446e8935841ceb87adf9e31c8812d8b
MD5 6d5a79cac5a9f6b4d1317625332d3637
BLAKE2b-256 90c04c3a2aea0a1c5504f6ea90d93ac6ad119c662a8ff1890e46882f8b7abadc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ed432300dfb229a4b8b0b8b1de52e47e90b7b1d673316ede1f13ef9d8b10acbf
MD5 8d978164e268ef81627ef74756347b91
BLAKE2b-256 93120322ad3fd52f7051478606e14138a4b36f1ec2ce19c1abc8f9d9875573e0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 28967048b8017dfee08fee710e1dbe64e43860a3ea72c6be2ab673b882cf7290
MD5 e3af34c87a2c1f564f4acbc121228a58
BLAKE2b-256 9ef803228af0f925cde1c46fb4ab4672d8c1a13dde349edfcb057cc221b623d5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a7bbb30725b6dcd5b25e3479b4f1326d23156f24609f7d4ac072cea04d28abce
MD5 d82917ac0063d388018768b8568e2033
BLAKE2b-256 9d59398ac908e8cf2c9c4d42cbd06ebd8d0555da97e1ad891687dd5e667419fc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 2e990fd82e89a31f6e8d068b38a441d8011d330fb33f7769457348eb2ef29e10
MD5 2048af0ea3a9fa28ee7e06e6693887ae
BLAKE2b-256 419456eeabb3a062557b50ae9dedd7cd472f2e18b14170049941a62970c62c5f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 01600c2a6176fd412e089db3beb17830c61f41e5e3e6ca519b8d7d31ec4560b8
MD5 53670acb8b228d5bef56a64eb01f485c
BLAKE2b-256 36896ac2afe8bb43886b320311d86272c44e0ea60be858f2ad162f3297b8f670

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 52eb98c628a9562e91f035198439312cc4257820f2e7751f3e2ba7ed16e9a93b
MD5 16678e2bc95c72bb93739c936b614d44
BLAKE2b-256 0e02e97ee50bbbd611ae2aaf00bd9fad72c48befa811fd78d999a88e10220063

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89d695e0184cc4879bb0c5130138c6e12d8dac2a098b99752d95b5521e4fa1f1
MD5 e0da45079e2a2eb292a00cbf347085c1
BLAKE2b-256 7db497f9f19297f76c9c6a33c711dea18bec8e50bb4a6191f14dc2c861be0619

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 47b70b12d018ebbad45d69094489e6dcea0bc62ccbc0defd688c0293f7f67760
MD5 b2534bea8e41cbcc572253e2d10211e6
BLAKE2b-256 279f6a375ba4d359684af97f2066c30d51d04bd9380b7780c068a652b5767397

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc9a1b54a035c28f25c0260d979aeec281bd143eb7f93210f362b4464835e33c
MD5 b1a544239c692acec68f656ac08adca7
BLAKE2b-256 b3f5f8408e43102023f1648e0b510f326794b60f56be9e247237403de2cb27de

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6742b9fe5bc6b223850a1933bbb5d1a15ecc07ac32af152ba38ed3d42d14655a
MD5 f697dcd852d6641299530ab1193be8a5
BLAKE2b-256 522a12bffd374227366220e327c4c8d2825f4b873d60410f279302ce0415baa2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2c020babe390252c1b18808ef8de5b8549126adfa3830e26c8740f44ce856c5c
MD5 b84698ad7aa3227c9d1c8417501cb7d9
BLAKE2b-256 68e9dba1276f122c77235fb6e26179772e66cee00d5c5c14b93d8fbd7b7e1b9c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e75e65ff3b578a7433ffc3652af5443ed20af12ecb06de52e2928f4195489235
MD5 27266b65bea5641fe784dbff3880f352
BLAKE2b-256 f4f79d627566553ee89bd427c129721b7274ec5cbedbf782d4f5817dc6e152c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.12.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 15f90f94855d3bb7e1584d155304929f611b0ad15eed7ba4e520accdfaa1f6c7
MD5 5ee31f512e700fd97684b9cb60006549
BLAKE2b-256 aeea10be3562983dd1d06fd419c70a489ee70086756083372b82180a8ca940e8

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