Andrew Svetlov added the comment: I like to accept both str and bytes if universal_newlines is False and raise explicit exception for bytes if universal_newlines is True.
Looks like universal_newlines for bytes doesn't make sense, also we prefer to use str everywhere. Bytes should be used if it is really byte-stream or if unicode cannot be passed by some limitations of underlying OS etc. There are couple dark corners: 1. What to do if stdin doesn't have `encoding` attribute? Convert to bytes using filesystemencoding? Raise explicit exception? Adding `encode` parameter for .communicate doesn't looks elegant. 2. How .communicate works on Windows? I see completely different implementation of this method for win32. I need some time to investigate before publish proposal to python-dev list. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue15592> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com