STINNER Victor <victor.stin...@haypocalc.com> added the comment: Oh, I didn't see that the issue was specific to Python2. I updated the issue's title. If I understood correctly, the issue is also specific to Windows.
Do you know if your patch changes the public API? (break the compatibility) -- FYI about Python3: > That's an inventive way of breaking the unicode standard :) It is described in the PEP 383 and it does solve a real and common issue: store a filename that cannot be decoded with the filesystem encoding. The operation is reversible. In Python 3.2, there are os.fsdecode() and os.fsencode() functions. On UNIX/BSD, os.encode(os.fsdecode(x)) is x, if x is a bytes object. The PEP 383 introduces the surrogateescape error handler which does create surrogates on decode, and convert back surrogates to bytes on encode. > Anyway, why would you worry about that? My patch doesn't use > "surrogateescape" so there is no problem. In Python3, filenames are stored as unicode. On UNIX/BSD, if a filename cannot be decode, it is encoded with surrogates. To get a full unicode support in Python3, you have to support surrogates. ---------- title: Unicode Imports -> [Python2] Use utf-8 in the import machinery on Windows to support unicode paths _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue1552880> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com