summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2016-11-07 03:35:08 (GMT)
committerSteve Dower <steve.dower@microsoft.com>2016-11-07 03:35:08 (GMT)
commit78057b41591629aa676d8f128da8ec6c65ffaeb5 (patch)
tree21ca0db7ee2806a6ecd87227f20320c2edc31e87
parentf570d0f117e23c2be982c7db910309d52b0496aa (diff)
downloadcpython-78057b41591629aa676d8f128da8ec6c65ffaeb5.zip
cpython-78057b41591629aa676d8f128da8ec6c65ffaeb5.tar.gz
cpython-78057b41591629aa676d8f128da8ec6c65ffaeb5.tar.bz2
Closes #27781: Removes special cases for the experimental aspect of PEP 529
-rw-r--r--Doc/whatsnew/3.6.rst5
-rw-r--r--Lib/test/test_os.py9
-rw-r--r--Misc/NEWS4
-rw-r--r--Objects/unicodeobject.c11
4 files changed, 5 insertions, 24 deletions
diff --git a/Doc/whatsnew/3.6.rst b/Doc/whatsnew/3.6.rst
index 1b94302..8495330 100644
--- a/Doc/whatsnew/3.6.rst
+++ b/Doc/whatsnew/3.6.rst
@@ -355,11 +355,6 @@ correctly encoded. To revert to the previous behaviour, set
See :pep:`529` for more information and discussion of code modifications that
may be required.
-.. note::
-
- This change is considered experimental for 3.6.0 beta releases. The default
- encoding may change before the final release.
-
.. _whatsnew-pep487:
PEP 487: Simpler customization of class creation
diff --git a/Lib/test/test_os.py b/Lib/test/test_os.py
index 638244f..628c61e 100644
--- a/Lib/test/test_os.py
+++ b/Lib/test/test_os.py
@@ -2860,13 +2860,8 @@ class OSErrorTests(unittest.TestCase):
func(name, *func_args)
except OSError as err:
self.assertIs(err.filename, name, str(func))
- except RuntimeError as err:
- if sys.platform != 'win32':
- raise
-
- # issue27781: undecodable bytes currently raise RuntimeError
- # by 3.6.0b4 this will become UnicodeDecodeError or nothing
- self.assertIsInstance(err.__context__, UnicodeDecodeError)
+ except UnicodeDecodeError:
+ pass
else:
self.fail("No exception thrown by {}".format(func))
diff --git a/Misc/NEWS b/Misc/NEWS
index 037a4f6..47acb52 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -3270,7 +3270,7 @@ Library
- Issue #24774: Fix docstring in http.server.test. Patch from Chiu-Hsiang Hsu.
- Issue #21159: Improve message in configparser.InterpolationMissingOptionError.
- Patch from �?ukasz Langa.
+ Patch from Łukasz Langa.
- Issue #20362: Honour TestCase.longMessage correctly in assertRegex.
Patch from Ilia Kurenkov.
@@ -5198,7 +5198,7 @@ Library
Based on patch by Martin Panter.
- Issue #17293: uuid.getnode() now determines MAC address on AIX using netstat.
- Based on patch by Aivars Kalv�?ns.
+ Based on patch by Aivars Kalvāns.
- Issue #22769: Fixed ttk.Treeview.tag_has() when called without arguments.
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 50b21cf..249cf57 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -3843,18 +3843,9 @@ PyUnicode_DecodeFSDefaultAndSize(const char *s, Py_ssize_t size)
cannot only rely on it: check also interp->fscodec_initialized for
subinterpreters. */
if (Py_FileSystemDefaultEncoding && interp->fscodec_initialized) {
- PyObject *res = PyUnicode_Decode(s, size,
+ return PyUnicode_Decode(s, size,
Py_FileSystemDefaultEncoding,
Py_FileSystemDefaultEncodeErrors);
-#ifdef MS_WINDOWS
- if (!res && PyErr_ExceptionMatches(PyExc_UnicodeDecodeError)) {
- _PyErr_FormatFromCause(PyExc_RuntimeError,
- "filesystem path bytes were not correctly encoded with '%s'. "
- "Please report this at http://bugs.python.org/issue27781",
- Py_FileSystemDefaultEncoding);
- }
-#endif
- return res;
}
else {
return PyUnicode_DecodeLocaleAndSize(s, size, Py_FileSystemDefaultEncodeErrors);