Latest Results
fix(console): treat a closed pipe as end of output
`biome check | head`, quitting a pager early, or a terminal that goes away
while Biome is still printing all leave Biome writing into a closed pipe. Rust
ignores SIGPIPE, so the write fails with `ErrorKind::BrokenPipe` instead of
killing the process, and `EnvConsole` unwrapped that error. The resulting panic
was then made worse by the panic handler itself, which used `eprintln!` on the
same already-failed stderr: a second panic inside the handler makes Rust abort,
so the report the user was meant to see was replaced by SIGABRT and a core
dump.
Two changes, both narrow:
- `EnvConsole` routes its writes through `ignore_broken_pipe`, which drops a
`BrokenPipe` error and keeps panicking on anything else. A reader that goes
away is an ordinary way to say "that is enough"; any other write error is
still a bug.
- The panic handler writes to stderr with `writeln!` and ignores the result,
instead of `eprintln!` which panics when the write fails. A failure to print
the report must not escalate into an abort.
Covers #11817, where the abort is reported with the recovered panic message
`called Result::unwrap() on an Err value: Os { code: 32, kind: BrokenPipe }`.Mario-Mohar:fix/console-broken-pipe-abort Latest Branches
-7%
dbezrukov/scss-n3-query-unary-values 0%
Mario-Mohar:fix/console-broken-pipe-abort +8%
changbaebang:feat/no-vue-side-effects-in-computed © 2026 CodSpeed Technology