[Autotest] making /utils py3 compatible
This will allow unittests to by run in python3, thus allowing other
modules to be tested in py3 when migrating.
BUG=chromium:990593
TEST=Ran a unittest in python3 and it worked, python3 -m py_compile
Change-Id: Idd8bae0c4157cdbd6c58b2497b1938b72a62031f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/2324811
Reviewed-by: Greg Edelston <gredelston@google.com>
Reviewed-by: Congbin Guo <guocb@chromium.org>
Tested-by: Derek Beckett <dbeckett@chromium.org>
Commit-Queue: Derek Beckett <dbeckett@chromium.org>
diff --git a/utils/parallel.py b/utils/parallel.py
index 00b2bf9..6a03abf 100644
--- a/utils/parallel.py
+++ b/utils/parallel.py
@@ -1,4 +1,10 @@
+# Lint as: python2, python3
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
import os, sys
+import six
+from six.moves import range
class ParallelError(Exception):
@@ -31,9 +37,9 @@
functions[fn] = set()
dependents = {}
- for fn, deps in functions.iteritems():
+ for fn, deps in six.iteritems(functions):
dependents[fn] = []
- for fn, deps in functions.iteritems():
+ for fn, deps in six.iteritems(functions):
for dep in deps:
dependents[dep].append(fn)
@@ -55,7 +61,7 @@
def run_until_completion(self):
- for fn, deps in self.functions.iteritems():
+ for fn, deps in six.iteritems(self.functions):
if len(deps) == 0:
self.ready_to_run.append(fn)
@@ -63,7 +69,7 @@
while len(self.pid_map) > 0 or len(self.ready_to_run) > 0:
max_allowed = self.max_procs - len(self.pid_map)
max_able = len(self.ready_to_run)
- for i in xrange(min(max_allowed, max_able)):
+ for i in range(min(max_allowed, max_able)):
self._run(self.ready_to_run.pop())
# Handle one proc that's finished.