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

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.6.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.6.0-cp314-cp314-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.6.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.6.0-cp313-cp313-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.6.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.6.0-cp312-cp312-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.6.0-cp311-cp311-manylinux_2_28_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.6.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.6.0-cp310-cp310-manylinux_2_28_aarch64.whl (17.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.6.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.6.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 a76f13b9b2a8eecae6592c57398bc4cd6b8a5a05c2b97e360196daf7ab491724
MD5 0036a232c5a450d2ed6defa9fd9288e8
BLAKE2b-256 e0364b1735f0c65247082256c5387a32c61c21e96ebb986bf05efa7d02392daa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1fcb39c047032f002e7be4a09df3233c70c745a5c0cc05eca4d04d0b69e73fb4
MD5 7e889c6818d36b5a9bd2ea952f5a6efd
BLAKE2b-256 75c92c2e4b9bd4d9cd1f1cbdddd72acee1aa8c45fd0a875dba0a4af153ddfded

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 3d8ea5643134e8cdc74a113b78d4aa5bd8312ccb0ccfa0feae67c0f8ca06c380
MD5 27e4841f0c7282c79bd880426de99c73
BLAKE2b-256 8d979bcbb6296e05471650a9d7deb25cc8aa9236f6aa2b4c4ac56c31f68deed4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 302e233b78eddb564ce2fedb6312e59bb8abd08911bee857e0f92cff5cb489a7
MD5 a46d99d2ad5dec01ba587adeb81762c0
BLAKE2b-256 f3c0156b5468ec7850029a293320528fd3a6ed2e7941ba01509e38e867068fb1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 834e5ea9c267dc3e26318d457f7a069189f63d3bbb36833d73623c9703071bdb
MD5 354bcfd30be59c5af26682a851da7f8a
BLAKE2b-256 bb0851cab72ed412992f582ff2fc6e6c033e4907fd2c18a098c29760e381b2c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6c607927070ad70f1134cf4e9fea7acc05e65d0a4f6b2227aa8e589918880bde
MD5 25bff4a847ff6bba0eaf000ec53da7bc
BLAKE2b-256 ba852402675815d6c75c84d98e8ed077106512b49dd22f769a16aa3fce56fcee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6c493ec02d670782a746ebfe4b3e73ec3c40381380c889d8ac5bd71437087d6c
MD5 4485dd2c28012ffdb6a7598c63e4b0ef
BLAKE2b-256 c9e55ebe56a57c4d64a22f0dce3cef94ada9f164a92d6d6192b8ec90e5b87b39

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4993a4ed3a92821957875807da5743e1f65aa3a43d4fe556b5631b0208e0d319
MD5 7c12745986cadb8e97149d2f5474b7d6
BLAKE2b-256 6a463176add08e9caa873cfd8a6f55d8ebcdaba2015281fa1823280423267c45

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 2661bd0773b7cdd710b4704fe62e2efec6ae5d42a3a756bf6382e52c40efe13a
MD5 7cb6cde0740c0fa0f95eabaf198a88e6
BLAKE2b-256 a5054b035ffe07c6a76d0ab7c188ad427e29034cc1059bb63819c7cc5537c1ae

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4691cf89c3336f8b40d87b7252354ce43b1f09dd42c89e4a9ca788780d7c630c
MD5 6da83a30d38c0be0a4e59419433b0e96
BLAKE2b-256 1077f8bf627209b3f3db4c21b70f0384121eea6ca28b30d2d44c53dc9ea16318

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 15a8861070820c510a9ca136bdf8bffb87b85330665e23ef5e4cf127273877f2
MD5 6f6546bb01a255ff2f96c14c17208a45
BLAKE2b-256 5c4572603478d807b99ef66b1dac0dcaac06527ac2e3f71e5c5659fc24aa3330

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b383944d86c198fbd67c1e2a8096b92f9ced8596a794720231f83108fb49a3ee
MD5 8ff4fa33a6651637bba1eb88be2c36cd
BLAKE2b-256 d00585a742c1e9aa9e414fe9e7c7cf0ed30543ecd60be611da4ab1dabc0f12e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 5fedd4a98f4b5caa53a0215f59d13ac15306c33f2d15fcebff7d2f9c951c289a
MD5 453159ae4616f61de948faf969f1cabf
BLAKE2b-256 55f9af938de74cac98876c59696f5e0b5de1055591e3f32d622efbe8dd06f7f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 316788c34f2577c3cad234de541ff2a2f81368902c1e9b4afaa13ddc4e37e01c
MD5 a9bb1e560f1b3b63d7480b6176c9c340
BLAKE2b-256 f10d214daac27abd39d36776ba157fe31ff122c1a67864f5b26655e955da841d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 725e856d3fe8fea0c885497581a6452267883956704d553809e5e2069d655593
MD5 eb0b713234f33863950b19661e59ccba
BLAKE2b-256 f5e5bfd327678d4cf5e36c14093923cf8e124620c2b097eb390d1c3a4afa0216

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59e83920f1cd5ed733838d9c035b7f18ec5e793ef10cc5c7e3d305c0c8bec8d0
MD5 bdcf3b0a1bfadef099c1aaa22147121e
BLAKE2b-256 04de7f98061eca1239653f3f23d76bbff091b7a1b69213d733e62432820a2656

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 99c385fd90d5ccf9fd7fddafe894314bfad26ce5f5ad92876e0ed8da9202856b
MD5 707dd66ff9f3b4987d69cecc67f9efa8
BLAKE2b-256 2cb13f2119ff2cb7cf9a0e5ae6a93a396744319dc10cd006a377076825e6edcb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 29aabbc09cb5c928cc046d6bc8f5f4a62b20b26f7b4a37ce6e78ad5db6c4fefc
MD5 ad328dd4ccbb1457aa65e4a9d4faf7b0
BLAKE2b-256 d6dd20f5da4e9ca19f994fb4974d1e72caf4dd9b9a8f1076593bc8e1cd01fe53

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f6c9f3e70c76541f65ac8ab4fa0e3eab7bd1c3b8f31cbaab00d312f61af780d2
MD5 41f9b5cdd59e4657d90ef262b653b356
BLAKE2b-256 3a74e13d32779d25e8a08519d9bf7c69eecf3924f91e17badc7d6c2139bb98a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.6.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 332fa5f4e2ba4f034b89a918f52f7206ab65c8dd167406b09410b537dae448cb
MD5 b9abd10eaacb4b360bd3ab63794fc1d4
BLAKE2b-256 5e296b8c3b422d38b63337a5298f3ba72ba2e81524989065b68539070aaf51c4

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