This code works as expected in python <3.4 (printing 'ok' then an error), but only gives an error in python3.4.
``` import os read_fd, write_fd = os.openpty() os.write(write_fd, b'ok\n') os.close(write_fd) read_file = os.fdopen(read_fd, 'rb', 0) print("read: %r" % read_file.read()) print("read: %r" % read_file.read()) ``` This is due to the fix for issue21090 <http://bugs.python.org/issue21090>, which aimed to un-silence errors which previously went unheard. The fix is for me, as a user, to write a loop that uses os.read and interpretes EIO as EOF. This is what I had hoped file.read() would do for me, however, and what it used to do in previous pythons.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com