Metadata-Version: 2.4
Name: cauli-worker
Version: 0.1.0
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: System :: Distributed Computing
Requires-Dist: cauli==0.1.0
License-File: LICENSE-APACHE
License-File: LICENSE-MIT
Summary: Prebuilt cauli-worker binary: the Rust runtime that executes cauli tasks
Keywords: task-queue,background-jobs,redis,worker,celery
Home-Page: https://github.com/bilalwork31-cyber/Cauli
Author: the cauli contributors
License: MIT OR Apache-2.0
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/bilalwork31-cyber/Cauli
Project-URL: Issues, https://github.com/bilalwork31-cyber/Cauli/issues
Project-URL: Repository, https://github.com/bilalwork31-cyber/Cauli

# cauli-worker

The Rust worker runtime for [cauli](https://pypi.org/project/cauli/), a background task queue
for Python. One binary embeds CPython (via PyO3) and executes thousands of tasks concurrently
inside a single OS process: async/threaded I/O tasks in-process, CPU-bound tasks on a
`gc.freeze()`d fork-server child pool.

See the repository root `README.md` for the overall pitch and Python-side quickstart, and
`PROTOCOL.md` for the full wire/behavior contract this binary implements. `ARCHITECTURE.md` in
this directory maps the module layout and documents known limitations.

## Build

```bash
cargo build --release --bin cauli-worker
```

## Run

```bash
cauli-worker --app myproj.tasks:app --queues default,emails \
    --redis-url redis://127.0.0.1:6379/0 --cpu-workers 4
```

Requires Redis >= 7.0 and a Python interpreter with the `cauli` package's app module
importable. Run `cauli-worker --help` for the full flag list.

## Test

```bash
cargo test --release --features test-hooks
```

`test-hooks` gates the `CAULI_EXEC_CMD` env override used by the e2e suite to run a
stand-in cpu-child fixture without the real `cauli` Python package; it is compiled out of a
plain `cargo build --release`.

## License

Licensed under either of Apache-2.0 or MIT at your option. See `LICENSE-APACHE` and
`LICENSE-MIT` at the repository root.

