Coverage for src/rhiza_task/__init__.py: 100%
2 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 04:13 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-25 04:13 +0000
1"""The rhiza developer tasks, as a pinned CLI instead of a synced make layer.
3What this replaces, per consumer repository: ``.rhiza/rhiza.mk`` (200 lines) and the ten
4fragments in ``.rhiza/make.d/`` (823 lines), synced at a template tag and excluded,
5shadowed or patched wherever a project disagreed with them. Here they are a dependency
6pin -- ``uvx rhiza-task@1.4.0 test`` -- so there is nothing to copy, nothing to exclude in
7``template.yml``, and nothing to drift.
9Sibling to ``pytest-rhiza``, which did the same for ``.rhiza/tests``.
11Layout:
13* :mod:`rhiza_task.spec` -- the task model: ``Task``, ``Guard``, ``Skip``/``Failed``, and
14 the registry that replaces make's double-colon rules.
15* :mod:`rhiza_task.config` -- six-layer settings resolution, replacing ``?=`` and ``+=``.
16* :mod:`rhiza_task.uv` -- the ways rhiza reaches a tool.
17* :mod:`rhiza_task.runner` -- prerequisite dedup, guard evaluation, outcome bookkeeping.
18* :mod:`rhiza_task.cli` -- the Typer app, generated from the registry.
19* :mod:`rhiza_task.tasks` -- the task modules themselves, loaded by entry point.
20"""
22__all__ = ["__version__"]
24# Kept in step with [project].version by bump-my-version, which needs a [[files]] entry
25# for this file but not for pyproject.toml itself.
26__version__ = "1.4.0"