-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Use utf-8 encoding by default for all subprocess communication. #10558
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This seems to mostly be a problem on windows. There is even a PEP out to make this the default: https://www.python.org/dev/peps/pep-0597 Fixes: #10551
This broke Closure compiler (testing on Windows):
See also google/closure-compiler#3556 Commenting out the line |
Hmm, sadly I don't have a windows box right now to try this on, and I also fear that its would depend on the local of the windows box. It looks to me like closure is expecting system-default-encoded files, rather than UTF-8. I imagine that running closure with |
Oh wait.. its not the stdin/stdout of closure but a file on disk... it seems like maybe the stdout of a subprocess was connected to a file file? I'm not sure what compiler stages do this. Is this a fastcomp failure? Fastcomp-only? |
I'm trying to repro this issue but failing. What does |
Also what does |
This is blocking us from tagging a new release, but I'm not sure what we should do here: it seems like we have possible breakage either without this PR or with it. Perhaps the old breakage is less risky, as it may have existed for a long time before discovery, while this breakage was found promptly (and so may be found more times by others)? |
I've tried to reproduce this on windows and failed. I'm happy to revert this but I honestly don't know if #10551 is likely to be common. We did make the switch to python3 two weeks ago now so I would have though more windows users would have reported #10551 if it was common. So yes I guess we revert this since and cut a release, since #10551 seems to have been caused by emsdk and will be happening regardless of whether we release a new emscripten version. |
This seems to mostly be a problem on windows. There is even a PEP
out to make this the default: https://www.python.org/dev/peps/pep-0597
Fixes: #10551