Metadata-Version: 2.4
Name: pytest-rxdist
Version: 0.0.1
Classifier: Development Status :: 1 - Planning
Classifier: Framework :: Pytest
Classifier: Programming Language :: Python
Classifier: Programming Language :: Rust
Summary: Rust-accelerated next-generation execution engine for pytest (planned).
Keywords: pytest,xdist,parallel,rust
Author: RXDist contributors
License: MIT
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM

# pytest-rxdist

**rxdist** is a planned drop-in replacement for `pytest-xdist`, aiming to make large pytest suites run significantly faster via a Rust-powered execution core, smarter scheduling, and faster inter-process communication (IPC).

The Python package name is **`pytest-rxdist`** (import as `pytest_rxdist`).

## Status

This repository currently contains **planning and roadmap docs**. Implementation work has not started yet.

## What it aims to improve (vs `pytest-xdist`)

- **Scheduling efficiency**: predictive scheduling using historical runtimes to reduce idle workers
- **Lower overhead**: a Rust core to orchestrate workers efficiently
- **Faster IPC**: move beyond Python pickle toward binary / zero-copy options
- **Worker reuse**: “warm” workers with cached imports (and carefully controlled caching)
- **Scales up**: from laptop parallelism to multi-machine distributed execution

## Planned CLI

```bash
pytest -p pytest_rxdist -n auto
pytest --rxdist-scheduler=smart
pytest --rxdist-profile=on
```

## Docs

- **Roadmap**: `ROADMAP.md`
- **Planning docs**
  - `planning/pytest_rust_runner_plan.md`
  - `planning/rxdist_full_idea_doc.md`

## Repository notes

- `planning/` is intentionally ignored (see `.gitignore`) so you can iterate on internal notes without committing them.


