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

crates/tasker-py/
├── 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.8-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.8-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.8-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tasker_py-0.1.8-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7b42f1019a54abd85e49d07016c88f40a7fa98f8554e1b39be7d1370cf610abc
MD5 d41f082171e5c51c4a2c6cec06b31484
BLAKE2b-256 b43f8f8b1ce51049f71eaf6deccd2fd761380c53866b9de41a2f209e88d3ccfe

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasker_py-0.1.8-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.8-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tasker_py-0.1.8-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 af3b040dcb581ac35b64f1424512c1fa96ff6c53ff54361967443ab811c4890a
MD5 93ee9aaef02e39840f57166fea73e50b
BLAKE2b-256 8a6f22e2cdb9cdf57136d497b6dc39759f77bb7bbf8dc0572880f214317671fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for tasker_py-0.1.8-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