chore: add consistent mise.toml, justfile, and tooling config

This commit is contained in:
swaits committed 2026-04-07 14:41:27 -06:00
1 parent 521707a3c2
commit 06ed2fa449
2 files changed
+47 -35

No files matched your search

+44 -35
View File
@@ -1,60 +1,69 @@
# Default: run all checks set shell := ["bash", "-c"]
default: build default: build
# Run all checks (fmt, clippy, test) [private]
_ensure_tools:
@mise trust --yes . 2>/dev/null; mise install --quiet
# Run the bridge (TUI mode)
run *args: _ensure_tools
cargo run --release -- {{args}}
# Run in headless mode
run-headless *args: _ensure_tools
cargo run --release -- --log-only {{args}}
# Run the config wizard
config: _ensure_tools
cargo run --release -- config
# Run all checks (fmt, clippy, test, audit)
check: fmt-check clippy test audit check: fmt-check clippy test audit
# Format code # Format code
fmt: fmt: _ensure_tools
cargo fmt cargo fmt
# Check formatting without changing files # Check formatting without changing files
fmt-check: fmt-check: _ensure_tools
cargo fmt --check cargo fmt --check
# Lint with clippy (pedantic + nursery) # Lint with clippy
clippy: clippy: _ensure_tools
cargo clippy --all-targets -- -D warnings cargo clippy --all-targets -- -D warnings
# Build release binary
build:
cargo build --release
# Generate docs
doc:
cargo doc --no-deps --open
# Run the bridge (TUI mode)
run *ARGS:
cargo run --release -- {{ARGS}}
# Run in headless mode
run-headless *ARGS:
cargo run --release -- --log-only {{ARGS}}
# Run the config wizard
config:
cargo run --release -- config
# Security + license audit
audit:
cargo deny check
# Run all tests # Run all tests
test: test-unit test-fuzz test-mutants test: test-unit
# Normal unit tests # Normal unit tests
test-unit: test-unit: _ensure_tools
cargo nextest run cargo nextest run
# Mutation testing # Mutation testing
test-mutants *ARGS: test-mutants *args: _ensure_tools
cargo mutants {{ARGS}} cargo mutants {{args}}
# Fuzz a target (requires nightly) # Fuzz a target (requires nightly)
test-fuzz TARGET="fuzz_gossip_frame_decode" DURATION="60": test-fuzz TARGET="fuzz_gossip_frame_decode" DURATION="60": _ensure_tools
cargo +nightly fuzz run {{TARGET}} -- -max_total_time={{DURATION}} cargo +nightly fuzz run {{TARGET}} -- -max_total_time={{DURATION}}
# Security + license audit
audit: _ensure_tools
cargo deny check
# Build release binary
build: _ensure_tools
cargo build --release
# Generate docs
doc: _ensure_tools
cargo doc --no-deps --open
# Check for outdated dependencies
outdated: _ensure_tools
cargo outdated
# Clean build artifacts # Clean build artifacts
clean: clean:
cargo clean cargo clean
+3
View File
@@ -0,0 +1,3 @@
[tools]
rust = "1.94"
just = "latest"