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

Uploaded CPython 3.14Windows x86-64

kailash_enterprise-4.19.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.19.0-cp314-cp314-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.13Windows x86-64

kailash_enterprise-4.19.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.19.0-cp313-cp313-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

kailash_enterprise-4.19.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.19.0-cp312-cp312-manylinux_2_28_aarch64.whl (18.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

kailash_enterprise-4.19.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.19.0-cp311-cp311-manylinux_2_28_aarch64.whl (18.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

kailash_enterprise-4.19.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.19.0-cp310-cp310-manylinux_2_28_aarch64.whl (18.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ ARM64

kailash_enterprise-4.19.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.19.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 c34b1f30a90a009343dafbd317854e6a6a924eeb5e6b81da7b23d34fef0aad8b
MD5 995241e5e8adaed7267f8abdecaca437
BLAKE2b-256 bfac531287692e4b9bd3f4327dea7968cfbd7b1cc9e9b11709be0cfbe365718f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 48454de7938d5fcf4548b04d9d56ea4e4ef87fe9d0274333f3c4c101bccfb458
MD5 828b5f102c2f351abbdb809caf88dc8a
BLAKE2b-256 fa5a3501326f03c15b0f1e60d50b2a24f63107c1c9cd868e54172bb053c7203d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp314-cp314-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 770040d31567d8ccf047f5d05efc80d483dafb52bdf72129d1294553c97277d8
MD5 152a7d419f53385a5d74b1273320f0ef
BLAKE2b-256 09e525e82c587a90388180ed833d9d13b5b7d54ef035a68d4a0e6a20d6dd3524

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 461540a5adf7527099618bbc3ad2d0033dff8fba3ef897cf1176d77e910d1093
MD5 b3aa2f7b9d0e11c203bc3a7327330fb8
BLAKE2b-256 4c75d329d992f8a8cb956fa9960bdb82add4ed3cdd378439c76abdbc92fbaf66

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 794d3e564e0158cf3a25003839e1275ef75a376142719312d1d538ecb95a924a
MD5 7eff70300dd822d293f36e179043e1ae
BLAKE2b-256 451d13af63248c1bbdc09e75b0ab29746ae7ec56247a971e84bb624909695522

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 218cf147532095a88a1cf762352c5e8d73bdeeea03e68a07b2cbdb464e7641dd
MD5 0a984483bdb27a78f55fd5005e05cda4
BLAKE2b-256 3c802448eb136a290b0ff2e76c0e3d8a1e19b5164850c510afaa4e3cc6a2c703

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp313-cp313-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 60f80b66525a5b1548164583b551d6c24b7ae8d3283da4a34d9c05485a1d291f
MD5 82e75f8d20eda2ef01151a5199884c14
BLAKE2b-256 c8d38121404f82dcabd0942054bc345dd242fcfaa3ff3149a7e34ab1b67e4809

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3df2cf338e63ec168368019fdaac488ec5e42189f0d0e73d6878936d54f4ad49
MD5 5efffaf9d7f1eabe8047e4dede16910d
BLAKE2b-256 2947624136626238d51123dd98a115a32c6cbf940fa6ce6c4c15f2041276628d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 15f96ddcadbe12e333fef82b956977dbe20afbaaf9ed57d760b8cf6a1f54c146
MD5 d2bfdf87dc9668b27b128fe9dd6dd5d1
BLAKE2b-256 1e31a9746158dc892fdad6ab975cfeae2c1f18c9af4b280bdf80eb644740c6aa

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8ee5f121cf05a2bd0a8db3ad10a818fd06ee07275e1a422c26e4e7beda73cd4d
MD5 f8c86da88b8206e8084f6f2ccc03d1e1
BLAKE2b-256 6612e00cab3460f9c92abe41a2645328fcce27075a815e468a064d50bdd9df54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp312-cp312-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b6dc8d8aff473ff0864456b593af19f2b467e6abefeb3e883d9fc6a5cbbaeecc
MD5 a8f9a9412c0cd9556c16c731a88b8c99
BLAKE2b-256 c1f5c04892cc952a73e711607d513ee67aeef30422d41c007c64f5b40e91dc54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 523cb70862fd791a1f331fcea625d65982d0f15fddee37077cc281c1119da683
MD5 6038cdb076ab3c250e4046e645679e28
BLAKE2b-256 741c9ee3d1c095656a35cbba86b62e6369af909bf897b972b95dfee067d07bf8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e30f47569512695a878c63a43ed297ddeba701f1db4dbb28be2069fff1001bf9
MD5 702aee3d21377aabefec9981fe31d15c
BLAKE2b-256 e9de99fda70378b8146faab9796b3acf8d4f48c1c0a918bc2dc6bfb00cb2d1c8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f63592ab3fdb30f283c97ec93926a62c0c0f0398be9f8e381c6ba9c6feef1e9
MD5 9ebdebf682b34274491767c07c224d51
BLAKE2b-256 3c02d5b186a6763fd7c58794fb4525c42f13700ccccc6bf32e2cc4a3c52f2246

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp311-cp311-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 480a15c00cdf722fe58e527279488a20bdf8b7806e961b74cee53c7a6e880d9e
MD5 7fc90b15535b390eafe8a0b0d2204ea9
BLAKE2b-256 09428710cc4cca1a731c537476ddbe2878ea7c7558eaa971f49a6cbd7e2f5b32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 afb004bdf48fda3466235331c52d55faa3390dbfd248ce24864912577b494f70
MD5 e2a87a4d507b1855dd6aed90df39ebdc
BLAKE2b-256 66ca4567fe3b9c5c09f7721fa69d19e6aa92bce2944278b41b1918f8988926ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3f9675ed74197ae1a8903a54d3ea6b563e7e383ad17fa3aa9c66a8714192fa1c
MD5 68be09302eb0669a5909dca3d68f76e5
BLAKE2b-256 cc81ceb910beebffbcc8bafd2bb5e13d64fd7e029d28a23cfef624c25cc5eddf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fc1a0dfd242e3498089236f53dfa137d53edda79737c417e95fda3e976609c76
MD5 42cc785d50cb5a9d7c92d4f77a90fe3a
BLAKE2b-256 feb7d3e5874d16adb876960988549ebed153aeb0f5d7bb3a561d9c9165c0880d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp310-cp310-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a6d266aad6270c9ffdc2caa20bd23afb32d642d54cd3743f3e1fe81e2f2f2830
MD5 d3d560e24eb0bd5a088153b494c3799e
BLAKE2b-256 eb023da22773bf2c7912a61c903a3cce648114778e6d21d03fe34ca186074199

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kailash_enterprise-4.19.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a65d82569ac835d9fcf75479ba279c711c74583691bbf4fe0bfa50284b0de643
MD5 5b8ca0fd3e765cd3c5982256e1e47ce9
BLAKE2b-256 7b131d8b7cd4034f9d4e396d76598a167ca29e48644d2b175141253353fbc45d

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