| [config] |
| min_version = "0.35.0" |
| |
| [env] |
| CI_CARGO_TEST_FLAGS = { value = "--locked -- --nocapture", condition = { env_true = [ |
| "CARGO_MAKE_CI", |
| ] } } |
| CARGO_MAKE_CARGO_ALL_FEATURES = { source = "${CARGO_MAKE_RUST_CHANNEL}", default_value = "--features=std,serde,num-traits,bytemuck,zerocopy", mapping = { "nightly" = "--all-features" } } |
| CARGO_MAKE_CLIPPY_ARGS = { value = "${CARGO_MAKE_CLIPPY_ALL_FEATURES_WARN}", condition = { env_true = [ |
| "CARGO_MAKE_CI", |
| ] } } |
| |
| # Override for CI flag additions |
| [tasks.test] |
| args = [ |
| "test", |
| "@@remove-empty(CARGO_MAKE_CARGO_VERBOSE_FLAGS)", |
| "@@split(CARGO_MAKE_CARGO_BUILD_TEST_FLAGS, )", |
| "@@split(CI_CARGO_TEST_FLAGS, )", |
| ] |
| |
| # Let clippy run on non-nightly CI |
| [tasks.clippy-ci-flow] |
| condition = { env_set = ["CARGO_MAKE_RUN_CLIPPY"] } |
| |
| # Let format check run on non-nightly CI |
| [tasks.check-format-ci-flow] |
| condition = { env_set = ["CARGO_MAKE_RUN_CHECK_FORMAT"] } |
| |
| [tasks.check-docs] |
| description = "Checks docs for errors." |
| category = "Documentation" |
| install_crate = false |
| env = { RUSTDOCFLAGS = "-D warnings" } |
| command = "cargo" |
| args = [ |
| "doc", |
| "--workspace", |
| "--no-deps", |
| "@@remove-empty(CARGO_MAKE_CARGO_VERBOSE_FLAGS)", |
| "${CARGO_MAKE_CARGO_ALL_FEATURES}", |
| ] |
| |
| # Build & Test with no features enabled |
| [tasks.post-ci-flow] |
| run_task = [{ name = ["check-docs", "build-no-std", "test-no-std"] }] |
| |
| [tasks.build-no-std] |
| description = "Build without any features" |
| category = "Build" |
| env = { CARGO_MAKE_CARGO_BUILD_TEST_FLAGS = "--no-default-features" } |
| run_task = "build" |
| |
| [tasks.test-no-std] |
| description = "Run tests without any features" |
| category = "Test" |
| env = { CARGO_MAKE_CARGO_BUILD_TEST_FLAGS = "--no-default-features" } |
| run_task = "test" |