tools/lint.sh
Ref: Size: 593 B History
#!/bin/sh
# An explicit file list prevents hidden worktree paths and vendored deps
# from changing which files the linter sees.
set -eu
ROOT=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
cd "$ROOT"
sh tools/fetch-zlint.sh
files=$(mktemp "${TMPDIR:-/tmp}/mux-lint.XXXXXX")
trap 'rm -f "$files"' EXIT
trap 'exit 130' INT
trap 'exit 143' TERM
find src test tools -type f -name '*.zig' -print > "$files"
printf '%s\n' build.zig >> "$files"
LC_ALL=C sort -o "$files" "$files"
[ -s "$files" ] || { echo 'lint: no Zig files found' >&2; exit 1; }
deps/zlint/zlint --stdin --deny-warnings < "$files"