cargo-mutants already reads .cargo/mutants.toml, thanks! I'm trying to get Rust tools to agree on where config can live, and opening similar requests with rustfmt, clippy, nextest and cargo-deny. Today a typical repo has:
.cargo/config.toml # cargo
.cargo/mutants.toml # cargo-mutants (default location)
.cargo/deny.toml # cargo-deny (supported alongside deny.toml)
.config/nextest.toml # cargo-nextest (only location)
rustfmt.toml # rustfmt
clippy.toml # clippy
Two additions would let cargo-mutants fit whichever layout a project picks:
- Also read
.config/mutants.toml, checked after .cargo/mutants.toml so the current default keeps priority. nextest only reads .config/, so projects that consolidate there currently need --config for mutants.
- Also read
[workspace.metadata.mutants] (or [package.metadata.mutants] for a single-crate root) from the root Cargo.toml, as the lowest-priority fallback when no config file exists. Several tools (e.g. bacon, typos) already support this, and it lets small projects avoid a separate file entirely.
--config and --no-config would behave as they do now.
cargo-mutants already reads
.cargo/mutants.toml, thanks! I'm trying to get Rust tools to agree on where config can live, and opening similar requests with rustfmt, clippy, nextest and cargo-deny. Today a typical repo has:Two additions would let cargo-mutants fit whichever layout a project picks:
.config/mutants.toml, checked after.cargo/mutants.tomlso the current default keeps priority. nextest only reads.config/, so projects that consolidate there currently need--configfor mutants.[workspace.metadata.mutants](or[package.metadata.mutants]for a single-crate root) from the rootCargo.toml, as the lowest-priority fallback when no config file exists. Several tools (e.g. bacon, typos) already support this, and it lets small projects avoid a separate file entirely.--configand--no-configwould behave as they do now.