Skip to content
[env]
# Project-specific environment variables
PORT = "8080"
LOG_LEVEL = "info"
ASSET_CACHE_CONTROL = "no-cache"

[tools]
rust = { version = "1.97" }
# nextest is not in the mise registry, so it comes from the cargo backend.
# cargo-binstall makes that backend pull the prebuilt release binary instead of
# compiling nextest from source.
"cargo-binstall" = "latest"
"cargo:cargo-nextest" = "latest"
"cargo:cargo-watch" = "latest"

[tasks.run]
run = 'cargo run'

[tasks.verify]
# `cargo clippy` runs the same analysis `cargo check` does and reuses the same
# dependency artifacts, so running both only re-analyses the workspace crate
# twice for nothing. `--all-targets` extends the lints to the test code.
run = ['cargo fmt --check', 'cargo clippy --all-targets', 'cargo nextest run']

[tasks.test]
run = 'cargo nextest run'

[tasks.fmt]
run = ['cargo fmt', 'cargo clippy --fix --all-targets --allow-dirty']

[tasks.watch]
run = 'cargo watch -w src -w assets -x run'