cargo-hack Cargo subcommand to provide various options useful for testing and continuous integration. USAGE: cargo hack [OPTIONS] [SUBCOMMAND] Use -h for short descriptions and --help for more details. OPTIONS: -p, --package ... Package(s) to check. --all Alias for --workspace. --workspace Perform command for all packages in the workspace. --exclude ... Exclude packages from the check. --manifest-path Path to Cargo.toml. --locked Require Cargo.lock is up to date. -F, --features ... Space or comma separated list of features to activate. --each-feature Perform for each feature of the package. This also includes runs with just --no-default-features flag, and default features. When this flag is not used together with --exclude-features (--skip) and --include-features and there are multiple features, this also includes runs with just --all-features flag. --feature-powerset Perform for the feature powerset of the package. This also includes runs with just --no-default-features flag, and default features. When this flag is used together with --depth or namespaced features (-Z namespaced-features) and not used together with --exclude-features (--skip) and --include-features and there are multiple features, this also includes runs with just --all-features flag. --optional-deps [DEPS]... Use optional dependencies as features. If DEPS are not specified, all optional dependencies are considered as features. This flag can only be used together with either --each-feature flag or --feature-powerset flag. --skip ... Alias for --exclude-features. --exclude-features ... Space or comma separated list of features to exclude. To exclude run of default feature, using value `--exclude-features default`. To exclude run of just --no-default-features flag, using --exclude-no-default-features flag. To exclude run of just --all-features flag, using --exclude-all-features flag. This flag can only be used together with either --each-feature flag or --feature-powerset flag. --exclude-no-default-features Exclude run of just --no-default-features flag. This flag can only be used together with either --each-feature flag or --feature-powerset flag. --exclude-all-features Exclude run of just --all-features flag. This flag can only be used together with either --each-feature flag or --feature-powerset flag. --depth Specify a max number of simultaneous feature flags of --feature-powerset. If NUM is set to 1, --feature-powerset is equivalent to --each-feature. This flag can only be used together with --feature-powerset flag. --group-features ... Space or comma separated list of features to group. This treats the specified features as if it were a single feature. To specify multiple groups, use this option multiple times: `--group-features a,b --group-features c,d` This flag can only be used together with --feature-powerset flag. --mutually-exclusive-features ... Space or comma separated list of features to not use together. To specify multiple groups, use this option multiple times: `--mutually-exclusive-features a,b --mutually-exclusive-features c,d` This flag can only be used together with --feature-powerset flag. --at-least-one-of ... Space or comma separated list of features. Skips sets of features that don't enable any of the features listed. To specify multiple groups, use this option multiple times: `--at-least-one-of a,b --at-least-one-of c,d` This flag can only be used together with --feature-powerset flag. --include-features ... Include only the specified features in the feature combinations instead of package features. This flag can only be used together with either --each-feature flag or --feature-powerset flag. --no-dev-deps Perform without dev-dependencies. Note that this flag removes dev-dependencies from real `Cargo.toml` while cargo-hack is running and restores it when finished. --remove-dev-deps Equivalent to --no-dev-deps flag except for does not restore the original `Cargo.toml` after performed. --no-private Perform without `publish = false` crates. --ignore-private Skip to perform on `publish = false` packages. --ignore-unknown-features Skip passing --features flag to `cargo` if that feature does not exist in the package. This flag can be used with --features, --include-features, or --group-features. --rust-version Perform commands on `package.rust-version`. This cannot be used with --version-range. --version-range [START]..[=END] Perform commands on a specified (inclusive) range of Rust versions. If the upper bound of the range is omitted, the latest stable compiler is used as the upper bound. If the lower bound of the range is omitted, the value of the `rust-version` field in `Cargo.toml` is used as the lower bound. Note that ranges are always inclusive ranges. --version-step Specify the version interval of --version-range (default to `1`). This flag can only be used together with --version-range flag. --clean-per-run Remove artifacts for that package before running the command. If used this flag with --workspace, --each-feature, or --feature-powerset, artifacts will be removed before each run. Note that dependencies artifacts will be preserved. --clean-per-version Remove artifacts per Rust version. Note that dependencies artifacts will also be removed. This flag can only be used together with --version-range flag. --keep-going Keep going on failure. --partition Partition runs and execute only its subset according to M/N. --log-group Log grouping: none, github-actions. If this option is not used, the environment will be automatically detected. --print-command-list Print commands without run (Unstable). --no-manifest-path Do not pass --manifest-path option to cargo (Unstable). -v, --verbose Use verbose output. --color Coloring: auto, always, never. This flag will be propagated to cargo. -h, --help Prints help information. -V, --version Prints version information. Some common cargo commands are (see all commands with --list): build Compile the current package check Analyze the current package and report errors, but don't build object files run Run a binary or example of the local package test Run the tests