Side-by-side output can show a difference while uutils diff exits 0.
On Linux x86_64, with GNU diffutils 3.12 and the uutils build at e4f12ad:
repo=$PWD
work=$(mktemp -d)
cd "$work"
: > a
printf 'a\n' > b
LC_ALL=C TZ=UTC diff -y a b
printf 'GNU status: %s\n' "$?"
LC_ALL=C TZ=UTC "$repo/target/release/diffutils" diff -y a b
printf 'uutils status: %s\n' "$?"
Both commands print the same added line and nothing on stderr. GNU exits 1, while uutils exits 0. A caller checking the exit status therefore treats the files as equal.
Side-by-side output can show a difference while uutils
diffexits 0.On Linux x86_64, with GNU diffutils 3.12 and the uutils build at
e4f12ad:Both commands print the same added line and nothing on stderr. GNU exits 1, while uutils exits 0. A caller checking the exit status therefore treats the files as equal.