set dotenv-load export RUST_BACKTRACE := "1" # Perform all verifications (compile, test, lint, etc.) verify: test lint check-msrv just run example.toml # Run the CLI run *args: cargo run -- {{args}} # Watch the source files and run `just verify` when source changes watch: cargo watch --delay 0.1 --clear --why -- just verify # Run the tests test: cargo hack test --tests --feature-powerset cargo test --examples --all-features # Run the static code analysis lint: cargo fmt -- --check cargo hack clippy --each-feature --all-targets # Make sure the MSRV is satisfiable check-msrv: cargo msrv verify # Clean up compilation output clean: rm -rf target rm -f Cargo.lock rm -rf node_modules # Install cargo dev-tools used by the `verify` recipe (requires rustup to be already installed) install-dev-tools: rustup install stable rustup override set stable cargo install cargo-hack cargo-watch cargo-msrv # Install a git hook to run tests before every commits install-git-hooks: echo '#!/usr/bin/env sh' > .git/hooks/pre-push echo 'just verify' >> .git/hooks/pre-push chmod +x .git/hooks/pre-push # Release release *args: verify test $GITHUB_TOKEN test $CARGO_REGISTRY_TOKEN cargo release {{args}}