cargo-matrix-plus 0.1.1

Run a curated matrix of cargo commands (targets/features) from a YAML config
Documentation
use clap::Parser;

/// `cargo matrix`: run a curated matrix of cargo commands (targets/features) from a YAML config.
#[derive(Parser, Debug)]
#[command(name = "cargo-matrix", bin_name = "cargo-matrix", version, about)]
struct Cli {
    #[command(flatten)]
    args: cargo_matrix::MatrixArgs,
}

fn main() {
    let mut args: Vec<_> = std::env::args().collect();
    if args.get(1).map(String::as_str) == Some("matrix") {
        args.remove(1);
    }
    let cli = Cli::parse_from(args);
    if let Err(e) = cargo_matrix::run(cli.args) {
        eprintln!("Error: {e}");
        std::process::exit(1);
    }
}