default:
    @just --list

build:
  swift build 2>&1 | xcbeautify

test:
    swift test 2>&1 | xcbeautify

lint:
    swiftlint lint Sources

format:
    swiftformat Sources

# Tag and push a new release: just release 1.0.0
release version:
    #!/usr/bin/env bash
    set -euo pipefail
    if git rev-parse "{{version}}" >/dev/null 2>&1; then
        echo "Error: tag '{{version}}' already exists."
        exit 1
    fi
    sed -i.bak 's/from: "[^"]*"/from: "{{version}}"/' README.md && rm -f README.md.bak
    git add README.md
    git commit -m "release {{version}}"
    git tag "{{version}}"
    git push
    git push origin "{{version}}"
