#!/usr/bin/env just --justfile set dotenv-load := true # interactive menu by default default: @just --choose # outputs list of tasks list: @just --list # apply strict formatting fmt *FLAGS: cargo +nightly fmt --all {{FLAGS}} # run test suite test *FLAGS: cargo nextest run --all-features --workspace {{FLAGS}} # Benchmark codebase with criterion. benchmark *FLAGS: cargo criterion {{FLAGS}} # Run fresh compiled command run *FLAGS: @cargo run -q --release -- {{FLAGS}} # Installs project binary locally install: cargo install --path {{justfile_directory()}} # generate documentation doc: mdbook build # setup dev environment init: echo # installing nightly used by `just fmt` and `cargo udeps` rustup install nightly echo # installing cargo-binstall for faster setup time cargo binstall -V || cargo install cargo-binstall echo # requirements for `just test` cargo binstall cargo-nextest --no-confirm echo # requirements for `just doc` cargo binstall mdbook --no-confirm cargo binstall mdbook-admonish --no-confirm cargo binstall mdbook-mermaid --no-confirm echo # requirements for `just benchmark` cargo binstall cargo-criterion --no-confirm echo # requirements for `just thorough-check` cargo binstall cargo-udeps --no-confirm cargo binstall cargo-audit --no-confirm cargo binstall cargo-upgrades --no-confirm cargo binstall cargo-unused-features --no-confirm