STINNER Victor added the comment:

Martijn Pieters: Sadly, Python 2 I/O are full of bugs in corner cases :-/

First of all, in most cases, Python 2 uses the libc for I/O, but the libc has 
known bugs including segfaults:
https://haypo-notes.readthedocs.io/python.html#bugs-in-the-c-stdio-used-by-the-python-i-o

Python 3 is better to handle EINTR. EINTR should now be "fully supported" in 
Python 3.5 thanks for the PEP 475. I mean in the Python core, I don't expect 
that any third party implement the PEP 475. Hopefully, most third party module 
don't implement syscall wrappers themself, but reuse Python which handles EINTR 
for them.

To come back to Python 2: yeah, we still have to fix issues to make the code 
more robust in corner cases, and enhance error reporting. It seems like fread() 
errors are not checked correctly in some places.

----------
nosy: +haypo

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue1633941>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to