lucy phipps
5 years ago
committed by
GitHub
2 changed files with 2 additions and 60 deletions
@ -1,57 +0,0 @@ |
|||
From 84fdbc156ed424d030686de350fbfc6c3593263f Mon Sep 17 00:00:00 2001 |
|||
Message-Id: <84fdbc156ed424d030686de350fbfc6c3593263f.1537028533.git.jan.steffens@gmail.com> |
|||
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> |
|||
Date: Sat, 15 Sep 2018 18:22:06 +0200 |
|||
Subject: [PATCH] compileall: Fix ddir when recursing |
|||
|
|||
---
|
|||
Lib/compileall.py | 14 +++++++++----- |
|||
1 file changed, 9 insertions(+), 5 deletions(-) |
|||
|
|||
diff --git a/Lib/compileall.py b/Lib/compileall.py
|
|||
index 72592126d7..70e246fd96 100644
|
|||
--- a/Lib/compileall.py
|
|||
+++ b/Lib/compileall.py
|
|||
@@ -45,12 +45,16 @@ def _walk_dir(dir, ddir=None, maxlevels=10, quiet=0):
|
|||
else: |
|||
dfile = None |
|||
if not os.path.isdir(fullname): |
|||
- yield fullname
|
|||
+ yield fullname, ddir
|
|||
elif (maxlevels > 0 and name != os.curdir and name != os.pardir and |
|||
os.path.isdir(fullname) and not os.path.islink(fullname)): |
|||
yield from _walk_dir(fullname, ddir=dfile, |
|||
maxlevels=maxlevels - 1, quiet=quiet) |
|||
|
|||
+def _compile_one(file_ddir, *args, **kwargs):
|
|||
+ file, ddir = file_ddir
|
|||
+ return compile_file(file, ddir, *args, **kwargs)
|
|||
+
|
|||
def compile_dir(dir, maxlevels=10, ddir=None, force=False, rx=None, |
|||
quiet=0, legacy=False, optimize=-1, workers=1, |
|||
invalidation_mode=py_compile.PycInvalidationMode.TIMESTAMP): |
|||
@@ -79,17 +83,17 @@ def compile_dir(dir, maxlevels=10, ddir=None, force=False, rx=None,
|
|||
if workers is not None and workers != 1 and ProcessPoolExecutor is not None: |
|||
workers = workers or None |
|||
with ProcessPoolExecutor(max_workers=workers) as executor: |
|||
- results = executor.map(partial(compile_file,
|
|||
- ddir=ddir, force=force,
|
|||
+ results = executor.map(partial(_compile_one,
|
|||
+ force=force,
|
|||
rx=rx, quiet=quiet, |
|||
legacy=legacy, |
|||
optimize=optimize, |
|||
invalidation_mode=invalidation_mode), |
|||
files) |
|||
success = min(results, default=True) |
|||
else: |
|||
- for file in files:
|
|||
- if not compile_file(file, ddir, force, rx, quiet,
|
|||
+ for file_ddir in files:
|
|||
+ if not _compile_one(file_ddir, force, rx, quiet,
|
|||
legacy, optimize, invalidation_mode): |
|||
success = False |
|||
return success |
|||
--
|
|||
2.18.0 |
|||
|
Loading…
Reference in new issue