Skip to content

Releases: IShinji/cito

Release list

cito 0.2.0

Choose a tag to compare

@IShinji IShinji released this 07 Jul 05:38

First public release.

cito is a fast, pytest-compatible test collector and runner written in Rust — it discovers your tests by parsing them (no imports, no interpreter startup) and hands pytest exactly the tests you asked for.

Highlights

  • Collection: home-assistant's 81,251 tests discovered in 0.11 s (pytest: 16.91 s). pandas: 197k tests in 0.26 s.
  • Correctness, differentially tested: node IDs are validated against real pytest on ~40 real-world suites (~640k IDs) — home-assistant, pandas, pytest's own suite, sphinx, pip, botocore, pydantic, ... — plus randomized fuzzing. The compatibility contract and the honest list of known gaps are in the README.
  • Runner: parallel subprocess chunks, --warm in-process workers, a per-project daemon (cito run --daemon, ~0.02 s one-shot), failed-first and changed-first scheduling, --lf, --watch, -k/-m, coverage integration.
  • Zero migration: your tests, fixtures, and plugins are untouched. pip install cito, then cito run. pytest remains the execution engine — and the exit hatch.

Install

pip install cito        # or: uv tool install cito
cito collect            # list tests
cito run                # run them

Pre-1.0 versioning: 0.x minors may change behavior where pytest compatibility requires it; patches are fixes only. 1.0 freezes the CLI and the node-ID contract.