[Python-checkins] cpython (3.5): Issue #28485: Check for negative workers even without ProcessPoolExecutor

martin.panter python-checkins at python.org
Fri Nov 4 22:23:43 EDT 2016


https://hg.python.org/cpython/rev/532b0b9f41e0
changeset: 104912:532b0b9f41e0
branch: 3.5
parent: 104909:1390bde4b768
user: Martin Panter <vadmium+py at gmail.com>
date: Sat Nov 05 01:11:36 2016 +0000
summary:
 Issue #28485: Check for negative workers even without ProcessPoolExecutor
This matches the documentation, and passes the test suite when multithreading
is disabled.
files:
 Lib/compileall.py | 6 +++---
 Misc/NEWS | 4 ++++
 2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/Lib/compileall.py b/Lib/compileall.py
--- a/Lib/compileall.py
+++ b/Lib/compileall.py
@@ -66,13 +66,13 @@
 optimize: optimization level or -1 for level of the interpreter
 workers: maximum number of parallel workers
 """
+ if workers is not None and workers < 0:
+ raise ValueError('workers must be greater or equal to 0')
+
 files = _walk_dir(dir, quiet=quiet, maxlevels=maxlevels,
 ddir=ddir)
 success = 1
 if workers is not None and workers != 1 and ProcessPoolExecutor is not None:
- if workers < 0:
- raise ValueError('workers must be greater or equal to 0')
-
 workers = workers or None
 with ProcessPoolExecutor(max_workers=workers) as executor:
 results = executor.map(partial(compile_file,
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -113,6 +113,10 @@
 Library
 -------
 
+- Issue #28485: Always raise ValueError for negative
+ compileall.compile_dir(workers=...) parameter, even when multithreading is
+ unavailable.
+
 - Issue #28387: Fixed possible crash in _io.TextIOWrapper deallocator when
 the garbage collector is invoked in other thread. Based on patch by
 Sebastian Cufre.
-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /