Skip to main content

Python worker for Tasker workflow orchestration

Project description

tasker-py

Python worker bindings for the Tasker workflow orchestration system.

Status

Production ready. Python worker bindings provide full step handler execution via PyO3 FFI.

Installation

From Source (Development)

# Install uv (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Create virtual environment and sync dependencies
uv venv
source .venv/bin/activate
uv sync --dev

# Build and install the Rust extension
uv run maturin develop

From PyPI (when published)

pip install tasker-py

Quick Start

import tasker_core

# Check version
print(tasker_core.version())

# Verify FFI is working
assert tasker_core.health_check()

Development

Prerequisites

  • Python 3.10+
  • Rust 1.70+
  • uv (recommended) or pip

Setup

# Create virtual environment
uv venv
source .venv/bin/activate

# Sync all dependencies (including dev)
uv sync --dev

# Build and install in development mode
uv run maturin develop

# Run tests
uv run pytest

# Run linting
uv run ruff check .
uv run mypy python/

Building Wheels

# Build wheel for current platform
maturin build --release

# Build with all features
maturin build --release --all-features

Project Structure

workers/python/
├── src/                           # Rust FFI source
│   └── lib.rs                     # PyO3 module initialization
├── python/                        # Python source (maturin src layout)
│   └── tasker_core/
│       ├── __init__.py            # Package init, re-exports FFI
│       └── py.typed               # PEP 561 marker
├── tests/                         # pytest tests
│   ├── conftest.py
│   └── test_import.py
├── Cargo.toml                     # Rust crate configuration
├── pyproject.toml                 # Python project configuration
└── README.md

Technology Stack

  • FFI Layer: PyO3
  • Build Tool: maturin
  • Package Manager: uv
  • Testing: pytest
  • Data Models: Pydantic v2 (future phases)
  • Event Bus: pyee (future phases)

License

MIT

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.

tasker_py-0.1.5-cp310-abi3-manylinux_2_34_x86_64.whl (12.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.34+ x86-64

tasker_py-0.1.5-cp310-abi3-macosx_11_0_arm64.whl (11.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

File details

Details for the file tasker_py-0.1.5-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tasker_py-0.1.5-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 5805bbb3af4325659650a9e973cd05e1045052b1ccecfc05a9bea5bb9b1422b1
MD5 e8d776de1d97c3e98ad203a67bbaef79
BLAKE2b-256 da630f09069cf0946a7f9b8e60bf75e207f6c70bd5345be66817bddb1f24d54d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasker_py-0.1.5-cp310-abi3-manylinux_2_34_x86_64.whl:

Publisher: release.yml on tasker-systems/tasker-core

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

File details

Details for the file tasker_py-0.1.5-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tasker_py-0.1.5-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7fdd0d559aa31f7d902e2618cd14ffc32c8b74f6a63fd304a67eb2d5c233a348
MD5 c30794ce9c02a91b94c625a8250e0984
BLAKE2b-256 02624cfb21febdeecf63ba48149230811144485c17d216bdb1c87866a077b4c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasker_py-0.1.5-cp310-abi3-macosx_11_0_arm64.whl:

Publisher: release.yml on tasker-systems/tasker-core

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

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