Use tempfile.TemporaryDirectory in conform/glibcconform.py [committed]
Joseph Myers
joseph@codesourcery.com
Mon Oct 29 18:07:00 GMT 2018
Now that we require Python 3.4 or later, Python code creating
temporary directories can use tempfile.TemporaryDirectory in "with" to
have the directory deleted automatically instead of needing to use
try/finally to handle removing a directory created with
tempfile.mkdtemp. This patch does so in conform/glibcconform.py.
Tested for x86_64. Committed.
2018-10-29 Joseph Myers <joseph@codesourcery.com>
* conform/glibcconform.py: Do not import shutil.
(list_exported_functions): Use tempfile.TemporaryDirectory instead
of mkdtemp.
diff --git a/conform/glibcconform.py b/conform/glibcconform.py
index 31ad4a9f9f..c1db46029d 100644
--- a/conform/glibcconform.py
+++ b/conform/glibcconform.py
@@ -19,7 +19,6 @@
import os.path
import re
-import shutil
import subprocess
import tempfile
@@ -43,11 +42,9 @@ def list_exported_functions(cc, standard, header):
"""
cc_all = '%s -D_ISOMAC %s' % (cc, CFLAGS[standard])
- # tempfile.TemporaryDirectory requires Python 3.2, so use mkdtemp.
- temp_dir = tempfile.mkdtemp()
- c_file_name = os.path.join(temp_dir, 'test.c')
- aux_file_name = os.path.join(temp_dir, 'test.c.aux')
- try:
+ with tempfile.TemporaryDirectory() as temp_dir:
+ c_file_name = os.path.join(temp_dir, 'test.c')
+ aux_file_name = os.path.join(temp_dir, 'test.c.aux')
with open(c_file_name, 'w') as c_file:
c_file.write('#include <%s>\n' % header)
fns = set()
@@ -72,6 +69,4 @@ def list_exported_functions(cc, standard, header):
else:
raise ValueError("couldn't parse -aux-info output: %s"
% line)
- finally:
- shutil.rmtree(temp_dir)
return fns
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list