Martin Panter added the comment:
IMO adding a Popen(errors=...) parameter would be a new feature for 3.6+ only.
Also, the patch does not take the error handler into account when encoding and
decoding multiple PIPEs in communicate().
I think it would be better to fix this bug in Lib/distutils/_msvccompiler.py
only. The equivalent bug fix would look like:
out = subprocess.check_output(
...,
stderr=subprocess.STDOUT,
# No universal_newlines!
)
...
out = io.TextIOWrapper(io.BytesIO(out), errors="surrogateescape").read()
Or maybe a simpler version is sufficient: (I’m not familiar enough with the use
case or Windows to say.)
out = out.decode("ascii", "surrogateescape")
----------
nosy: +martin.panter
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue27048>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com