Issue #18071: Extension module builds on OS X could fail with TypeError
if Xcode command line tools were not installed.
diff --git a/Lib/_osx_support.py b/Lib/_osx_support.py
index 79dbdc9..195561a 100644
--- a/Lib/_osx_support.py
+++ b/Lib/_osx_support.py
@@ -53,7 +53,7 @@
def _read_output(commandstring):
- """Output from succesful command execution or None"""
+ """Output from successful command execution or None"""
# Similar to os.popen(commandstring, "r").read(),
# but without actually using os.popen because that
# function is not usable during python bootstrap.
@@ -68,7 +68,7 @@
with contextlib.closing(fp) as fp:
cmd = "%s 2>/dev/null >'%s'" % (commandstring, fp.name)
- return fp.read().decode('utf-8').strip() if not os.system(cmd) else None
+ return fp.read().strip() if not os.system(cmd) else None
def _find_build_tool(toolname):
diff --git a/Misc/NEWS b/Misc/NEWS
index 2519380..ee5c8f0 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -74,6 +74,9 @@
the default for linking if LDSHARED is not also overriden. This restores
Distutils behavior introduced in 2.7.3 and inadvertently dropped in 2.7.4.
+- Issue #18071: C extension module builds on OS X could fail with TypeError
+ if the Xcode command line tools were not installed.
+
- Issue #18113: Fixed a refcount leak in the curses.panel module's
set_userptr() method. Reported by Atsuo Ishimoto.