[Python-Dev] Help preventing SIGPIPE/SIG_DFL anti-pattern.

Alfred Perlstein alfred at freebsd.org
Sun Jul 1 00:00:33 EDT 2018

On 6/30/18 4:20 PM, Greg Ewing wrote:
> Alfred Perlstein wrote:
>> I am asking if there's a way we can discourage the use of 
>> "signal(SIGPIPE, SIG_DFL)" unless the user really understands what 
>> they are doing.
> Maybe there's some way that SIGPIPEs on stdout could be handled
> differently by default, so that they exit silently instead of
> producing an ugly message. That would remove the source of pain
> that's leading people to do this.
Thank you Greg, I can poke around into this, it would be a bit of a 
challenge as the descriptor which causes BrokenPipeError does not appear 
to be stored within the exception so differentiating it from other 
exceptions might be a bit tricky.

I will look into this in the coming weeks.  Any tips on accomplishing 
this?  I was thinking of encoding the fd responsible for causing the 
error into the exception somehow and then checking to see if it was 
stdout, then not reporting on it.


More information about the Python-Dev mailing list