Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

lumilake

Python SDK for Lumilake server APIs and local deploy helpers. It provides sync and async resource clients for common server surfaces; the CLI remains the complete command surface for operational helpers. The SDK lives inside the lumilake distribution and ships behind the [sdk] extra so basic installs stay slim.

Install

Server-API + filesystem init (small surface; httpx only):

pip install 'lumilake[sdk]'

Add deploy lifecycle (client.deploy.up/down/...). Pulls in [deploy] (Docker SDK, FlowMesh stack helpers); client.deploy.* calls into lumilake_deploy directly:

pip install 'lumilake[sdk,deploy]'

In the workspace:

uv sync --group lint --group test --extra sdk --extra deploy

Without [deploy], every client.deploy.* method except init raises DeployError with an install hint on first call. Server-API resources work in either configuration.

Sync usage

from lumilake import LumilakeClient

with LumilakeClient.from_config() as client:        # reads ~/.lumilake/config.toml
    client.health()
    client.jobs.list()
    client.jobs.submit({"workflow": ...})
    client.deploy.up()

Async usage

from lumilake import AsyncLumilakeClient

async with AsyncLumilakeClient.from_config() as client:
    await client.health()
    await client.jobs.list()
    await client.jobs.submit({"workflow": ...})
    await client.deploy.up()

Constructing either client without .from_config() resolves the server URL in this order: explicit base_url=, LUMILAKE_BASE_URL, then ~/.lumilake/config.toml. .from_config(path=...) reads a specific TOML file directly.

CLI and SDK surfaces

Surface Sync Async
lumilake deploy up writes ~/.lumilake/config.toml -
lumilake info / health client.health() same, await
lumilake deploy {init,up,down,clean,restart,reset,logs,update-flowmesh} client.deploy.<verb>(...) await client.deploy.<verb>(...)
lumilake deploy {doctor,build,status} CLI only CLI only
Job submit/preview/list/list_all/get/progress/result/inputs/artifact/cancel/wait/watch client.jobs.<verb>(...) await client.jobs.<verb>(...)
lumilake worker {list,get} (+ list_all) client.workers.<verb>(...) await client.workers.<verb>(...)
lumilake trace {list,get} (+ list_all) client.traces.<verb>(...) await client.traces.<verb>(...)

Design notes

  • Sync + async parity. One sync class, one async class, and each SDK resource exposes both. Shared base classes (BaseClient / BaseAsyncClient) handle version-prefix, envelope unwrapping, and error-to-exception mapping. Async resources await the same code paths.
  • Two transport modes. Server-API resources speak HTTP (httpx.Client / httpx.AsyncClient). Deploy lifecycle calls lumilake_deploy directly; async dispatches the same Python calls through asyncio.to_thread so the event loop stays responsive across Docker and FlowMesh setup work.
  • Config shared with the CLI. from_config() reads the same ~/.lumilake/config.toml the CLI writes from lumilake deploy up.
  • Never raw docker compose up. Deploy resource always uses the lumilake_deploy machinery — the project rule applies inside the SDK too.
  • Context-manager support. with LumilakeClient(...) as client: (sync) and async with AsyncLumilakeClient(...) as client: close the underlying httpx client cleanly.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lumilake_sdk-0.1.6rc1.tar.gz (27.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lumilake_sdk-0.1.6rc1-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file lumilake_sdk-0.1.6rc1.tar.gz.

File metadata

  • Download URL: lumilake_sdk-0.1.6rc1.tar.gz
  • Upload date:
  • Size: 27.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for lumilake_sdk-0.1.6rc1.tar.gz
Algorithm Hash digest
SHA256 7e11c96bc7a2c33e235fca089cfc8897dab50bf4d36b6f3de93d3eed23218ce8
MD5 1abeeec48e36692f2cd39f5c2a342492
BLAKE2b-256 824080173dd144431c23086e3e8226eb73837c015a08ee2d57eebcbf45d52a44

See more details on using hashes here.

Provenance

The following attestation bundles were made for lumilake_sdk-0.1.6rc1.tar.gz:

Publisher: release.yml on mlsys-io/Lumilake

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file lumilake_sdk-0.1.6rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for lumilake_sdk-0.1.6rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 7087e9f51581f01186a7ce431dab5f4f146f4ee2690b325ebe5563f47c281049
MD5 d2f8e4b7bfdbc2c5ef1c49fb04976c3a
BLAKE2b-256 3bbb4dbb5dd736b1686882a92a5fb40d45bdee6ec97c710cab630afad1595676

See more details on using hashes here.

Provenance

The following attestation bundles were made for lumilake_sdk-0.1.6rc1-py3-none-any.whl:

Publisher: release.yml on mlsys-io/Lumilake

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.6rc1 This release

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page