Skip to main content

LittleHorse is a high-performance microservice orchestration engine that allows developers to build scalable, maintainable, and observable applications

Project description

LittleHorse Python SDK

For documentation on how to use this library, please go to the LittleHorse website.

For examples go to the examples folder.

Dependencies

  • Install python.
  • Install pipx: brew install pipx
  • Install poetry: pipx install poetry
  • Install poetry shell plugin: poetry self add poetry-plugin-shell

Initialize

poetry install

Protobuf Compilation

../local-dev/compile-proto.sh

Run tests

poetry shell
python -m unittest discover -v

Validate Indentations

poetry run ruff check .

Validate types

poetry run mypy .

Useful Commands

Set python version:

poetry env use python3.9

Worker shutdown on Windows

littlehorse.start(...) installs shutdown hooks for SIGTERM and SIGINT. On runtimes that do not support asyncio signal handlers (for example, Windows event loops), the SDK falls back to signal.signal(...) when available. If a signal cannot be registered in the current runtime/thread, startup still continues and workers can be stopped by calling worker.stop().

Types Map

Task arguments type reference:

VariableType.JSON_OBJ: dict[str, Any]
VariableType.JSON_ARR: list[Any]
VariableType.DOUBLE:   float
VariableType.BOOL:     bool
VariableType.STR:      str
VariableType.INT:      int
VariableType.BYTES:    bytes

Python Code Formatter

poetry shell
black . 

Project details


Download files

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

Source Distribution

littlehorse_client-1.1.0.tar.gz (101.4 kB view details)

Uploaded Source

Built Distribution

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

littlehorse_client-1.1.0-py3-none-any.whl (132.3 kB view details)

Uploaded Python 3

File details

Details for the file littlehorse_client-1.1.0.tar.gz.

File metadata

  • Download URL: littlehorse_client-1.1.0.tar.gz
  • Upload date:
  • Size: 101.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for littlehorse_client-1.1.0.tar.gz
Algorithm Hash digest
SHA256 c1cfdf1e63a03ce1d2dc8687bbb33d0e1e4d18738d9060f1229d51495cb8902b
MD5 91e9829a8e0b341efdad04ee293fd403
BLAKE2b-256 e850539593001525bbcf367e962a1475c805d98350fbd9a616ab33b15605f847

See more details on using hashes here.

File details

Details for the file littlehorse_client-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for littlehorse_client-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c5228abc30a804b68ac229166f8e675b88f510e125358a1fefa3559aa520544b
MD5 e903e0c158820142aa0b9923283c5f23
BLAKE2b-256 b549571c1ecf909827664d08207e8c884da909611bf2404f4930a88335cac593

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