Repository navigation
cargo-cleanme v0.2.9
0.2.9
Scoped proof is the default; out-of-scope blocking was a product defect. The ownership proof now covers the selected scope — the working directory anchor for bare/--known cleanup, the explicit roots for clean ROOT, and the full system for clean --full (which keeps whole-system fail-closed blocking). Discovery and grouping still cover the whole scope, so cross-boundary output claims still force shared output. An unresolvable manifest outside the scope is reported in diagnostics and never blocks; an in-scope manifest Cargo itself refused is reported, never blocking. Only in-scope byte-capable unknowns block, and a scope that proves zero units against any unproven participant fails closed.
Exits are boundary-scoped: 0 when the boundary is fully cleaned, 1 when it is blocked or a unit fails. The never-published --partitioned flag and the result.islands field are removed.
A test with an unstated host premise was failing every CI lane. The tool was never wrong — it refuses a Cargo release it has not qualified, and it does so without invoking a Cargo clean — but the test that drove it asserted one outcome for a branch whose premise it never stated, so it broke the moment the hosted stable moved to a new patch release. The case now derives its expectation from the product's own capability check and asserts a specific outcome per premise, and a new host-independent case pins that a --profile/--package selector reaches Cargo's command line. No product behaviour changed, and no Cargo version was added to the capability allowlist.
Five prebuilt targets are attached — x86-64 and aarch64 for Linux, macOS, and Windows x64 — each with a SHA-256 sidecar, alongside the two installers and a release manifest.
See CHANGELOG.md for the full record. Pre-1.0: read the changelog before upgrading.