Process unittest:
Traceback (most recent call last):
File "/home/arcivanov/Documents/src/arcivanov/pybuilder/.pybuilder/plugins/pypy-2.7.13.final.42/site-packages/billiard/process.py", line 297, in _bootstrap
sys.stdin.close()
IOError: [Errno 9] Bad file descriptor: '<fdopen>'
In Python 3 OSError is a super of EnvironmentError, IOError and all other environmental errors.
In Python 2 in general EnvironmentError is a super of IOError, OSError and socket.error (since 2.6)
However, in Python 2 OSError is a sibling of IOError and therefore IOError goes uncaught.
This ensures that OS/IO errors are truly ignored across Python versions and flavors.
In Python 3 OSError is a super of EnvironmentError, IOError and all other environmental errors. In Python 2 in general EnvironmentError is a super of IOError, OSError and socket.error (since 2.6) However, in Python 2 OSError is a sibling of IOError and therefore IOError goes uncaught. This ensures that OS/IO errors are truly ignored across Python versions and flavors.