macOS ships bash 3.2, which has no mapfile, and expanding an empty
array under `set -u` fails before bash 4.4. With rustfmt on PATH the
hook therefore aborted every commit there once `cargo xtask mr
new|fmt|ship` had installed it.
Read `git diff --name-only` with a while-read loop, the way the
context/ check above it already reads its list. Behaviour is unchanged.