#11132: pass optimize parameter to recursive call in compileall.compile_dir(). Reviewed by Eric A.

This commit is contained in:
Georg Brandl 2011-02-07 12:36:54 +00:00
parent ca583b66c8
commit 4543846517
4 changed files with 15 additions and 1 deletions

View File

@ -58,7 +58,7 @@ def compile_dir(dir, maxlevels=10, ddir=None, force=False, rx=None,
elif (maxlevels > 0 and name != os.curdir and name != os.pardir and
os.path.isdir(fullname) and not os.path.islink(fullname)):
if not compile_dir(fullname, maxlevels - 1, dfile, force, rx,
quiet, legacy):
quiet, legacy, optimize):
success = 0
return success

View File

@ -24,6 +24,10 @@ class CompileallTests(unittest.TestCase):
self.source_path2 = os.path.join(self.directory, '_test2.py')
self.bc_path2 = imp.cache_from_source(self.source_path2)
shutil.copyfile(self.source_path, self.source_path2)
self.subdirectory = os.path.join(self.directory, '_subdir')
os.mkdir(self.subdirectory)
self.source_path3 = os.path.join(self.subdirectory, '_test3.py')
shutil.copyfile(self.source_path, self.source_path3)
def tearDown(self):
shutil.rmtree(self.directory)
@ -96,6 +100,12 @@ class CompileallTests(unittest.TestCase):
cached = imp.cache_from_source(self.source_path,
debug_override=not optimize)
self.assertTrue(os.path.isfile(cached))
cached2 = imp.cache_from_source(self.source_path2,
debug_override=not optimize)
self.assertTrue(os.path.isfile(cached2))
cached3 = imp.cache_from_source(self.source_path3,
debug_override=not optimize)
self.assertTrue(os.path.isfile(cached3))
class EncodingTest(unittest.TestCase):

View File

@ -843,6 +843,7 @@ James Thomas
Robin Thomas
Jeremy Thurgood
Eric Tiedemann
July Tikhonov
Tracy Tims
Oren Tirosh
Jason Tishler

View File

@ -18,6 +18,9 @@ Core and Builtins
Library
-------
- Issue #11132: Fix passing of "optimize" parameter when recursing
in compileall.compile_dir().
- Issue #11110: Fix a potential decref of a NULL in sqlite3.
- Issue #8275: Fix passing of callback arguments with ctypes under Win64.