[env]
RUSTC_BOOTSTRAP= "1"
[settings]
experimental = true
idiomatic_version_file_enable_tools = ["rust"]
[tools]
rust = { version = "1.91.1", profile="minimal", components="rustfmt,clippy"}
"aqua:cargo-bins/cargo-binstall" = "1"
"cargo:cargo-sort" = "latest"
"cargo:cargo-nextest" = "latest"
[tasks."deps:update"]
description = "update dependencies, other calls to cargo will be `locked` for faster & reproducible builds"
run = [
"cargo update",
]
[tasks."build"]
run = "cargo --locked build"
wait_for = ["info"]
[tasks."format"]
alias = "fmt"
description = "Format the code and sort dependencies"
run = [
"cargo --locked fmt",
"cargo --locked sort --grouped",
]
[tasks."lint"]
depends = ["lint:*"]
description = "Lint all the code (megalinter + lint_rust)"
wait_for = ["info"]
[tasks."lint:rust"]
run = [
"cargo --locked fmt --all -- --check",
"cargo --locked clippy --workspace --all-features --all-targets --no-deps",
]
[tasks."lint:dependencies"]
description = "check if dependencies are unused, outdated,..."
run = [
]
[tasks."test"]
depends = ["test:unit"]
wait_for = ["info"]
[tasks."test:unit"]
run = [
"cargo --locked nextest run",
]
wait_for = ["lint:*"]
[tasks."test:demoapp"]
run = [
"cargo run -- update --output examples/demo-app/src/icons",
"cd examples/demo-app; cargo build",
]
wait_for = ["info", "test:unit"]
[tasks."ci"]
depends = ["info", "lint", "test"]
description = "set of tasks run by CI"
[tasks.info]
run = [
"mise bin-paths",
"cargo version -v",
]