# <gate> <path>... Literal paths and directories only. git ls-tree does not
# glob: tests/*.sh would match NOTHING and silently fingerprint nothing, so a
# wildcard makes the whole file invalid. The one exception is a LEADING `?`,
# which is not a wildcard: `?clippy.toml` names a path that may be absent and
# whose appearance must re-run the gate. The sign step lists the absent ones
# on one line of its log; a typo shows up there. This file is ASCII-only and
# is itself an input of every gate; editing it re-runs everything once.
#
# The workflow is in every line on purpose: a gate name is only worth the
# command behind it, and that command is defined there.
#
# The cargo gates name `tests` (cargo discovers tests/*.rs by itself, and
# --all-targets / fmt --all read them) and the paths cargo, rustfmt and clippy
# would pick up if they appeared: build.rs, examples, benches, .cargo, the
# tool config files.
ci-fmt .github/workflows/ci.yaml Cargo.toml rust-toolchain.toml src tests ?examples ?benches ?build.rs ?.cargo ?rustfmt.toml ?.rustfmt.toml
ci-clippy .github/workflows/ci.yaml Cargo.toml Cargo.lock rust-toolchain.toml src tests ?examples ?benches ?build.rs ?.cargo ?clippy.toml ?.clippy.toml
ci-shellcheck .github/workflows/ci.yaml verify.sh sign/sign.sh tests scripts ?.shellcheckrc
pre-push-cargo-test .github/workflows/ci.yaml Cargo.toml Cargo.lock rust-toolchain.toml src tests ?examples ?benches ?build.rs ?.cargo
ci-conformance .github/workflows/ci.yaml Cargo.toml Cargo.lock rust-toolchain.toml src Makefile verify.sh sign/sign.sh tests scripts ?build.rs ?.cargo
ci-sign-test .github/workflows/ci.yaml Cargo.toml Cargo.lock rust-toolchain.toml src Makefile verify.sh sign/sign.sh tests scripts ?build.rs ?.cargo