-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathJustfile
More file actions
58 lines (46 loc) · 1.03 KB
/
Justfile
File metadata and controls
58 lines (46 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# Format, lint, and type-check
check:
cargo fmt --check
cargo clippy --all-targets
cargo check --all-targets
# Auto-format code
fmt:
cargo fmt
# Run unit tests (uses nextest if available)
unit:
@if cargo nextest --version >/dev/null 2>&1; then \
cargo nextest run; \
else \
cargo test; \
fi
# Run all tests
test-all: unit
# Build release binaries
build:
cargo build --release
# Build debug binaries
build-debug:
cargo build
# Generate docs
doc:
cargo doc --no-deps
# Open docs in browser
doc-open:
cargo doc --no-deps --open
# Clean build artifacts
clean:
cargo clean
# Full CI check (format, lint, test)
ci: check unit
# Run Kani formal verification proofs
# NOTE: Kani requires rustup (won't work with distro-packaged Rust)
# Install: cargo install --locked kani-verifier && cargo kani setup
# Alternatively, Kani proofs run automatically in CI via GitHub Actions
kani:
cargo kani
# Run a specific Kani proof by name
kani-proof name:
cargo kani --harness {{name}}
# List available Kani proofs
kani-list:
cargo kani --list