repoverlay 0.1.3

Overlay config files into git repositories without committing them
# Default recipe - list available commands
default:
    @just --list

# Build the project in debug mode
build:
    cargo build

alias b := build

# Build the project in release mode
release:
    cargo build --release

alias r := release

# Run all tests (builds binary first for CLI tests)
test *ARGS:
    cargo build
    cargo test --all-features {{ARGS}}

alias t := test

# Run tests with output shown
test-verbose:
    cargo test -- --nocapture

alias tv := test-verbose

# Run clippy lints
lint:
    cargo clippy --all-targets --all-features -- -D warnings

alias l := lint

# Format code
format:
    cargo fmt

alias fmt := format
alias f := format

# Check formatting without making changes
fmt-check:
    cargo fmt -- --check

alias fc := fmt-check

# Run all checks (format, lint, test)
check: fmt-check lint test

alias c := check

# Clean build artifacts
clean:
    cargo clean

# Install the binary locally
install:
    cargo install --path .

alias i := install

# Run the binary with arguments
run *ARGS:
    cargo run -- {{ARGS}}

# Watch for changes and run tests
watch-test:
    cargo watch -x test

alias wt := watch-test

# Watch for changes and run clippy
watch-lint:
    cargo watch -x clippy

alias wl := watch-lint

# Run all CI checks (test, lint, format check)
ci: test lint fmt-check