diff --git a/Misc/NEWS b/Misc/NEWS index d01a0e1d93d..e9113209cf3 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,11 +12,15 @@ Core and Builtins - Check for NULL result in PyType_FromSpec. +- Issue #11187: Remove bootstrap code (use ASCII) of + PyUnicode_AsEncodedString(), it was replaced by a better fallback (use the + locale encoding) in PyUnicode_EncodeFSDefault(). + Library ------- - Issue #11089: Fix performance issue limiting the use of ConfigParser() - with large config files. + with large config files. - Issue #10276: Fix the results of zlib.crc32() and zlib.adler32() on buffers larger than 4GB. Patch by Nadeem Vawda. diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 456719685d4..069be7b6c63 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -1673,21 +1673,6 @@ PyObject *PyUnicode_AsEncodedString(PyObject *unicode, PyUnicode_GET_SIZE(unicode), errors); } - /* During bootstrap, we may need to find the encodings - package, to load the file system encoding, and require the - file system encoding in order to load the encodings - package. - - Break out of this dependency by assuming that the path to - the encodings module is ASCII-only. XXX could try wcstombs - instead, if the file system encoding is the locale's - encoding. */ - if (Py_FileSystemDefaultEncoding && - strcmp(encoding, Py_FileSystemDefaultEncoding) == 0 && - !PyThreadState_GET()->interp->codecs_initialized) - return PyUnicode_EncodeASCII(PyUnicode_AS_UNICODE(unicode), - PyUnicode_GET_SIZE(unicode), - errors); /* Encode via the codec registry */ v = PyCodec_Encode(unicode, encoding, errors);