Files
Mathjk a9b112b6fe Exit quietly on broken pipe in auxiliary output paths
The main output path has exited with status 0 on EPIPE since #232, but
auxiliary outputs still used println!/print!/io::stdout().flush().unwrap()
and panicked (exit code 101) when the reader of a piped stdout went away
early, e.g. 'bat --completion bash | head -n0'.

Route them through the existing convention instead: write!/writeln! to
io::stdout() and '?' so that Error::Io(BrokenPipe) reaches
default_error_handler, which exits with status 0. This covers
--completion, --config-file, --diagnostic (bugreport's print() becomes
format() + writeln!), --generate-config-file, the 'cache' subcommand
progress messages, the OSC title sequence of --set-terminal-title, and
the 'built without feature' notices.

Closes #4034
2026-10-02 02:23:08 +08:00
..
2026-06-26 20:27:49 +02:00
2022-09-04 14:28:44 +02:00
2026-05-06 10:58:02 +02:00
2026-04-20 14:25:49 +02:00
2025-07-15 16:36:58 -07:00
2024-08-18 10:05:37 +02:00
2023-03-03 13:20:03 +01:00
2026-07-01 07:54:51 +02:00
2026-03-03 05:18:49 +02:00