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

Uploaded CPython 3.14Windows x86-64

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

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.9.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.9.0-cp313-cp313-manylinux_2_28_aarch64.whl (18.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.9.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.9.0-cp312-cp312-manylinux_2_28_aarch64.whl (18.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.9.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.9.0-cp311-cp311-manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.9.0-cp311-cp311-macosx_11_0_arm64.whl (16.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.9.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.9.0-cp310-cp310-manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.9.0-cp310-cp310-macosx_11_0_arm64.whl (16.8 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 add8cf1bc0cbabb0a87aa125fc2bd747acb28463d2b170b96d68abc2b0d71acf
MD5 121ee4c79c2773d4243ef2a4a06848ce
BLAKE2b-256 d56c482a422a7a0b4884fdcfb741d54d774d5e4855c6f3c1fd33b9f89c9ff930

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 992ac874a89ea2acc435b700adbcfa9ce18a1376cf5bca6f426f76b18e85f9a2
MD5 0bf2d8cecb4a9dfd6a276ecfa9a688ab
BLAKE2b-256 cb4d530a2fee1e3c7798cdda71420440002737e16790e6f9f58c197de381db00

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 74ef7f8da34a960bf1fc93018724fb621ec4944417c9e90b54d8602a71c283f6
MD5 d7083a1ba6baf7851f59ac81c340b1e1
BLAKE2b-256 253414ba9eed832df023d745d3d8ad2419df17a61a341946b64766e7a9185aa9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3bf428a7c1b7a7f6066dbbafe89a572337a4dde75db39aecb4ae4d0474e8e145
MD5 72eb38b3eb58f642ae7f2ac6d6e228b2
BLAKE2b-256 dfdb5d110fb7ef3c8988760fa3d3bbe7b682297a131087daff1d55f576c65cea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 85151cc047c93d009ad8540e8b765ca8d51813b56bde96d1a1d48255f5a3d93e
MD5 f93e445c334f894e8e208729f030d08b
BLAKE2b-256 9792a7b7711219560192aee28e0f37f0bf94bfe15535d1edb879e82e3e16432f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f2989eb2327d5f941c602a509635aff2d0da19953d8336a828edb864935d5dd
MD5 773ad2b215b1ca83e49dfe610ad0d659
BLAKE2b-256 80d89809fdc3b395c5cbc9030ad518bce29c44605666cab27e20c99e00279f22

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 513654cdc320e8498d255b3e101991d261f53a34e4d3d984e04f8eedd29101bc
MD5 b0d71067d2aa554b75ced8b338e43c5b
BLAKE2b-256 20ff8f585c6d3f1b1ae8e3a0b8ea9c6631e05fb2197ed0c450129251b8cb6ae9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3ec0228aa443988d4a979196ae4232a28192d0ebc79fc633e5a37a13c2a74a27
MD5 1d81de465fe4beadafb85161e94cf0de
BLAKE2b-256 d233667373ff418a3f2f0a498df15db422c656ad9acc5b9c6d770259c43100dd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5ee713a3c41913ca348c0db831ee1b2a420e55f6fbcc740354572ed55f2b6973
MD5 f2199149cb9fb0cbdc512af15b8488f9
BLAKE2b-256 81e764a76416b902260913269b287dcb395c6be6030cc15ac085c182f5c0cf70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0c23bf6824130d7df3a64301c45d2dab2d262e13677d082603c429bd9deccfb7
MD5 5874d9cf931f6047d0d67ebacabd0352
BLAKE2b-256 2f4352c38ae2f9f8a3624d166948d100056fcc17adee105caeeb8539c0fd3eaf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f090bbc8ab34aff3baea2a8e11021ad63d72c98867a49821882ae26ce2bad412
MD5 8d5b96d816325172c900c3f5b8e574b2
BLAKE2b-256 113427eb4d543de61d33683e19b1b0039ddda7498413cb5918a94dc14575c3a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 be674cc3a5f0ca9d0e2e9a452828e1e3e07eb27c1eeb66fa548093775bada342
MD5 72d71649bca67cad864e0a5995a7ea22
BLAKE2b-256 77c910ca0a9b4e2190a412cbe62c0b01954d093b21e4ef886d10b4bf202bce70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 188e1eeab7c2e422ec289a684cce94a224b49217c5fa0c198080b915d7f1c144
MD5 c49b11bf92142512d98556e560e129cb
BLAKE2b-256 4fee33a07c14c2e326e213d66b11eb5e232cbba19d43613c5da6b307afe02fcd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 025b1fa38179b03baaf6e9593ef28272f705853e9c69ccd03abee990cbacf4cd
MD5 3cc8cc3097952bdd61708a104f6c0642
BLAKE2b-256 605c6dce9407265fde130c46722c5a5ddde9c144a983b8ce5c86d34e9295eda4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8d4ea149779a14b1faba5bb0d9f3a7e367c6774b4f2cc0964376fe9b59e4a93f
MD5 cc71dcacd6bfdbeba698d13756296982
BLAKE2b-256 4958e421a72c2ebe66444ffac9fc2f18cafffdc32c216b7561726a94f6bf6112

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5193a3e2fd4e4046eb49e322c9fd97cf8137bc3448711d0df94f433db9d7d935
MD5 e910b4bdbfa075f51285d32620c20eed
BLAKE2b-256 8ca922b859ae7821f10e1eab309c15a3f3cd4fafd191e6162b66af99cb4109ff

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ed66196391d1b69d9eecc143c8b808332637cab21e2a96a42475c6bd013e81e1
MD5 ba26988bd296e9bc03187dd68a02bb25
BLAKE2b-256 3edc538e2639262bce39e496b56508b846c9dc1698255bf5fc35e5c5293fddde

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8c476f7364d478d1b81d426afa449989a441fea6f8e6f24748c1a718b461bb43
MD5 2777045d6ef63fbcf3549c9f29a8e42b
BLAKE2b-256 8cc06b24b88ca0e33ce091a4a09679b63b60122bb9dddeceaa6aad8cdb33bfe8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6257e6bf741a58d14f0fc0dd9cc03b35a57c39d80fe93140e9c12cda874ccbc1
MD5 223e961741be5392a615693af467f8c5
BLAKE2b-256 66ac67290d36d8983e8909226cbf76eb2008ff55c7a4ab9502ad5fc9669cd724

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.9.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 94aa29380fb9de23d2e71067f588a51870a84492478e5909c91a9b3b4ee7de2f
MD5 271f1e1dae12f863e34e0e8741c0672b
BLAKE2b-256 691d5e2d1270fdc15bd16d6bebf8f76d725837df95e4a5cf47e1debc62ff93d6

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