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.6-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.6-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.6-cp310-abi3-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for tasker_py-0.1.6-cp310-abi3-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 032641991ace3506985afbebbe27fb674ca5b2abafb1452e289485cb2a44a8f0
MD5 40ae68d5e7e324bb0ed8264dce399099
BLAKE2b-256 a56020ca70bea8ae29d071e85d2e1c2e8046012f9f6b5fa71220972c86a1ba8c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for tasker_py-0.1.6-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b7a3b6922cac7f8a97aeeadb742dd00da4b9876b12f0dd07abfeeb04bf59044c
MD5 33b6513358b7b97574760052a4e485bc
BLAKE2b-256 2d4c566cbe95503ecc790b5aaec06aaf725818497c1a0b6c39d805dd3d0a0a73

See more details on using hashes here.

Provenance

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