Message324878
The existing re-code solution is being triggered, as the `errors` in this case is 'surrogateescape' with an encoding of 'cp1252'.
Here, pip is using subprocess.Popen() to have Python run setup.py. During execution, a filename, 'taqdir\\\u0634\u0645\u0627\u0631.py', which has characters not encodable in cp1252.
I think that here, Python is not configuring its stdin/stdout/stderr streams correctly when run as a subprocess connected to pipes. Or, at least, subprocess.Popen() isn't passing the right (or enough) information to Python to get itself configured.
There should ultimately be a way to have Python (in a subprocess, on Windows) pass through Unicode untouched to its calling process. I suppose it would mean setting the PYTHONIOENCODING envvar when using subprocess.
After all that, it seems that:
1) pip needs to be changed to support calling Python subprocesses to enable lossless unicode transmission,
2) change the `errors` check in distutils.log to include 'surrogateescape'? (the heart of this issue) |
|
Date |
User |
Action |
Args |
2018-09-09 09:47:56 | jkloth | set | recipients:
+ jkloth, eric.araujo, serhiy.storchaka, dstufft, miss-islington, julien.malard |
2018-09-09 09:47:56 | jkloth | set | messageid: <1536486476.82.0.56676864532.issue34421@psf.upfronthosting.co.za> |
2018-09-09 09:47:56 | jkloth | link | issue34421 messages |
2018-09-09 09:47:56 | jkloth | create | |
|