1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Excludes for cargo-mutants — equivalent or unreachable mutations.
# Add entries as false positives are discovered.

exclude_re = [
    # Unimplemented stubs. Nothing calls upgrade or remove yet, so replacing
    # the todo!() with Ok(()) cannot be observed. Drop these when either is
    # implemented — the same point the cov-excl markers in assertions.rs go.
    "AssertionType::upgrade",
    "AssertionType::remove",

    # BrewBundle's status and install exist twice, split on
    # #[cfg(target_os = "macos")]. cargo-mutants cannot tell which half is
    # compiled, so it always reports the inactive one as missed.
    "impl AssertionType for BrewBundle<R>>::status",
    "impl AssertionType for BrewBundle<R>>::install",
]

# main.rs is I/O only — argument parsing, println!, and the stdin prompt.
# "Function does nothing" cannot be caught there without capturing stdout, so
# it is excluded here the same way bin/coverage ignores it. Anything with a
# decision in it belongs in a library module instead; report.rs holds the
# wording and the prompt parsing for exactly this reason.
exclude_globs = ["frork-cli/src/main.rs"]