Files
WAFER/Justfile
T
Oleksandr Kozachuk 4980648982
CI / check (push) Has been cancelled
feat(bench): SwiftForth sf64 lane in cross-engine performance report
sf64 discovery + stdin runner (no -e flag; input lines truncate at
~256 chars, so one statement per line), ucounter-based µs timing —
same wrapper shape as gforth utime. New sf64 + WAFER/sf columns,
informational only (no regression limit). Justfile: bench-compare
target; CARGO_PROFILE_RELEASE_STRIP=none for Darwin 27 dlopen bug.
2026-08-04 17:07:47 +02:00

70 lines
1.4 KiB
Makefile

default:
just --list
# Build everything
build:
cargo build --workspace
# Run all tests
test:
cargo test --workspace
# Run Forth 2012 compliance tests
compliance:
cargo test --test compliance -- --nocapture
# Run clippy lints
clippy:
cargo clippy --workspace -- -D warnings
# Check formatting (Rust + Markdown)
fmt:
cargo fmt --all --check
dprint check
# Format code (Rust + Markdown)
fmt-fix:
cargo fmt --all
dprint fmt
# Run the REPL
repl:
cargo run -p wafer
# Run a Forth file
run file:
cargo run -p wafer -- {{file}}
# Run benchmarks
bench:
cargo bench --workspace
# Run optimization benchmark report
bench-opts:
cargo test -p wafer-core --test benchmark_report -- --nocapture --ignored
# Cross-engine performance report: WAFER vs gforth vs SwiftForth (sf64)
bench-compare:
CARGO_PROFILE_RELEASE_STRIP=none cargo test -p wafer-core --release --test comparison -- --nocapture --ignored performance_report
# Check dependency licenses and advisories
deny:
cargo deny check
# Detect unused dependencies
machete:
cargo machete --skip-target-dir
# Full CI check (what CI runs)
ci: fmt clippy deny test
# Check compilation without running
check:
cargo check --workspace
# Install bat syntax highlighting for WAFER / Forth
install-syntax:
mkdir -p ~/.config/bat/syntaxes
cp tools/editor-support/bat/WAFER.sublime-syntax ~/.config/bat/syntaxes/
bat cache --build