How-to guides

Procedures for exercising hyrum against a charms directory: installing the tool and its host prerequisites, running the full fleet and narrowing it to the charms you care about, patching a dependency to a development branch or alternative source, triaging the results table to decide what action to take, and keeping the charms directory from filling the disk.

Running hyrum

Install hyrum

Install hyrum from PyPI with uv or run it in the repository’s workshop, plus the host build packages needed for a clean fleet signal.

Run against the charm list

Use hyrum get-charms to populate the charms directory, then run across many charms.

Filter a run

Use --repo, --framework, or --limit to narrow a run to one charm or a subset of the fleet.

Patch ops to a development branch

Use --patch to test a pre-release ops against your charm fleet.

Patch a non-ops dependency

Use --patch to point any other package at a PyPI pin, a git source, or a local checkout.

Reading and curating results

Triage a run

Investigate a result with --verbose, --log-dir, and hyrum show, and tell a real regression from host noise.

Compare two runs

Save a baseline and use hyrum compare to see which charms your change broke.

Suppress known results

Use hyrum.toml to exclude repositories from a run.

Reclaim disk space

Use hyrum clean to remove the build artefacts a run leaves behind, keeping the checkouts.