[Piuparts-commits] [piuparts] 02/03: make dict stuff py3 compatible

Holger Levsen holger at moszumanska.debian.org
Fri May 1 10:56:44 UTC 2015


This is an automated email from the git hooks/post-receive script.

holger pushed a commit to branch develop
in repository piuparts.

commit 05ea5a4a801c8eaf44e40f209527dc19524c522d
Author: Börni <boerni at gmail.com>
Date:   Tue Apr 28 16:28:51 2015 +0200

    make dict stuff py3 compatible
---
 piuparts-analyze.py       |  3 ++-
 piuparts-report.py        |  2 +-
 piuparts.py               | 28 ++++++++++++++--------------
 piupartslib/conf.py       | 10 +++++-----
 piupartslib/packagesdb.py | 16 ++++++++--------
 piupartslib/pkgsummary.py |  3 ++-
 6 files changed, 32 insertions(+), 30 deletions(-)

diff --git a/piuparts-analyze.py b/piuparts-analyze.py
index 953e9df..8deec7a 100644
--- a/piuparts-analyze.py
+++ b/piuparts-analyze.py
@@ -36,6 +36,7 @@ import os
 import sys
 import re
 import shutil
+import six
 import subprocess
 
 import debianbts
@@ -225,7 +226,7 @@ def report_packages_with_many_logs():
     for failed_log in failed_logs:
         package = package_name(failed_log)
         packages[package] = packages.get(package, []) + [failed_log]
-    for package, failed_logs in packages.iteritems():
+    for package, failed_logs in six.iteritems(packages):
         printed = False
         if len(failed_logs) > 1:
             print("Many failures:")
diff --git a/piuparts-report.py b/piuparts-report.py
index e182a4b..f12d753 100644
--- a/piuparts-report.py
+++ b/piuparts-report.py
@@ -1428,7 +1428,7 @@ class Section:
         os.rename(os.path.join(vdir, log), os.path.join("archive", vdir, log))
 
     def cleanup_removed_packages(self, logs_by_dir):
-        vdirs = logs_by_dir.keys()
+        vdirs = list(logs_by_dir.keys())
         vdirs.remove("reserved")
         for vdir in vdirs:
             for log in sorted(logs_by_dir[vdir]):
diff --git a/piuparts.py b/piuparts.py
index 23dc30d..9143851 100644
--- a/piuparts.py
+++ b/piuparts.py
@@ -1330,21 +1330,21 @@ class Chroot:
         changes = diff_selections(self, selections)
         deps = {}
         nondeps = {}
-        for name, state in changes.iteritems():
+        for name, state in six.iteritems(changes):
             if name in packages:
                 nondeps[name] = state
             else:
                 deps[name] = state
 
-        deps_to_remove = [name for name, state in deps.iteritems()
+        deps_to_remove = [name for name, state in six.iteritems(deps)
                           if state == "remove"]
-        deps_to_purge = [name for name, state in deps.iteritems()
+        deps_to_purge = [name for name, state in six.iteritems(deps)
                          if state == "purge"]
-        nondeps_to_remove = [name for name, state in nondeps.iteritems()
+        nondeps_to_remove = [name for name, state in six.iteritems(nondeps)
                              if state == "remove"]
-        nondeps_to_purge = [name for name, state in nondeps.iteritems()
+        nondeps_to_purge = [name for name, state in six.iteritems(nondeps)
                             if state == "purge"]
-        deps_to_install = [name for name, state in deps.iteritems()
+        deps_to_install = [name for name, state in six.iteritems(deps)
                            if state == "install"]
 
         self.list_paths_with_symlinks()
@@ -1629,7 +1629,7 @@ class Chroot:
         old_selections = self.get_selections()
         self.run(['apt-get', 'install', '-y', 'logrotate'])
         diff = diff_selections(self, old_selections)
-        return diff.keys()
+        return list(diff.keys())
 
     def check_output_logrotatefiles(self, list):
         """Check if a given list of logrotatefiles has any output. Executes
@@ -2018,17 +2018,17 @@ def diff_meta_data(tree1, tree2):
 
     for pattern in settings.ignored_patterns:
         pat = re.compile(pattern)
-        for name in tree1.keys():
+        for name in list(tree1.keys()):
             m = pat.search(name)
             if m:
                 del tree1[name]
-        for name in tree2.keys():
+        for name in list(tree2.keys()):
             m = pat.search(name)
             if m:
                 del tree2[name]
 
     modified = []
-    for name in tree1.keys()[:]:
+    for name in list(tree1.keys())[:]:
         if name in tree2:
             if objects_are_different(tree1[name], tree2[name]):
                 logging.debug("Modified(uid, gid, mode, size, target): %s %s != %s" %
@@ -2037,8 +2037,8 @@ def diff_meta_data(tree1, tree2):
             del tree1[name]
             del tree2[name]
 
-    removed = [x for x in tree1.iteritems()]
-    new = [x for x in tree2.iteritems()]
+    removed = [x for x in six.iteritems(tree1)]
+    new = [x for x in six.iteritems(tree2)]
 
     # fix for #586793
     # prune rc?.d symlinks renamed by insserv
@@ -2110,13 +2110,13 @@ def diff_selections(chroot, selections):
        set to to restore original selections."""
     changes = {}
     current = chroot.get_selections()
-    for name, value in current.iteritems():
+    for name, value in six.iteritems(current):
         if name not in selections:
             changes[name] = "purge"
         elif selections[name] != current[name] and \
                 selections[name] in ["purge", "install"]:
             changes[name] = selections[name]
-    for name, value in selections.iteritems():
+    for name, value in six.iteritems(selections):
         if name not in current:
             changes[name] = "install"
     return changes
diff --git a/piupartslib/conf.py b/piupartslib/conf.py
index 75be7e6..f5ab09f 100644
--- a/piupartslib/conf.py
+++ b/piupartslib/conf.py
@@ -52,7 +52,7 @@ class Config(six.moves.UserDict):
         six.moves.UserDict.__init__(self)
         self._section = section
         self._defaults_section = defaults_section
-        for key, value in defaults.iteritems():
+        for key, value in six.iteritems(defaults):
             self[key] = value
         self._mandatory = mandatory
 
@@ -61,7 +61,7 @@ class Config(six.moves.UserDict):
         cp.read(filename)
         if not cp.has_section(self._section):
             raise MissingSection(filename, self._section)
-        for key in self.keys():
+        for key in list(self.keys()):
             if cp.has_option(self._section, key):
                 self[key] = cp.get(self._section, key)
             elif self._defaults_section and cp.has_option(self._defaults_section, key):
@@ -113,7 +113,7 @@ class Config(six.moves.UserDict):
         ])
 
         # add mappings for e.g. "oldstable" -> "oldstable"
-        distmap.update(dict([(val, val) for key, val in distmap.iteritems()]))
+        distmap.update(dict([(val, val) for key, val in six.iteritems(distmap)]))
 
         # map e.g. "Debian6" -> "oldstable" where debdist.old(result="fullname")
         # currently returns 'Debian 6.0 "Squeeze"'
@@ -165,12 +165,12 @@ class DistroConfig(six.moves.UserDict):
         cp.read(filename)
         for section in cp.sections():
             self[section] = dict(self._defaults)
-            for key in self._defaults.keys():
+            for key in list(self._defaults.keys()):
                 if cp.has_option(section, key):
                     self[section][key] = cp.get(section, key)
 
     def get(self, section, key=None):
-        if not section in self.keys():
+        if not section in list(self.keys()):
             self[section] = dict(self._defaults, distribution=section)
         if not key is None:
             return self[section][key]
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index ac7727f..dd0cea9 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -391,9 +391,9 @@ class PackagesDB:
             self._packages = {}
             self._virtual_packages = {}
             for pf in self._packages_files:
-                for p in pf.values():
+                for p in list(pf.values()):
                     self._packages[p["Package"]] = p
-            for p in self._packages.values():
+            for p in list(self._packages.values()):
                 for provided in p.provides():
                     if provided != p["Package"]:
                         if provided not in self._virtual_packages:
@@ -542,7 +542,7 @@ class PackagesDB:
             self._in_state[state] = []
         todo = []
 
-        for package_name, package in self._packages.iteritems():
+        for package_name, package in six.iteritems(self._packages):
             state = self._lookup_package_state(package)
             assert state in self._states
             self._package_state[package_name] = state
@@ -585,10 +585,10 @@ class PackagesDB:
         return [x for x in self._states if not x in self._obsolete_states]
 
     def get_error_states(self):
-        return [x for x in self._propagate_error_state.keys() if x in self._states]
+        return [x for x in list(self._propagate_error_state.keys()) if x in self._states]
 
     def get_waiting_states(self):
-        return [x for x in self._propagate_waiting_state.keys() if x in self._states]
+        return [x for x in list(self._propagate_waiting_state.keys()) if x in self._states]
 
     def get_pkg_names_in_state(self, state):
         self._compute_package_states()
@@ -636,11 +636,11 @@ class PackagesDB:
 
     def get_all_packages(self):
         self._find_all_packages()
-        return self._packages.values()
+        return list(self._packages.values())
 
     def get_all_package_names(self):
         self._find_all_packages()
-        return self._packages.keys()
+        return list(self._packages.keys())
 
     def get_control_header(self, package_name, header):
         self._find_all_packages()
@@ -699,7 +699,7 @@ class PackagesDB:
         if not providers:
             return package_state
         states = [self.get_package_state(name, resolve_virtual=False, recurse=recurse) for name in [package_name] + providers]
-        for state in self._good_states + self._propagate_waiting_state.keys() + self._propagate_error_state.keys():
+        for state in self._good_states + list(self._propagate_waiting_state.keys()) + list(self._propagate_error_state.keys()):
             if state in states:
                 return state
         return package_state
diff --git a/piupartslib/pkgsummary.py b/piupartslib/pkgsummary.py
index 6e4ac2d..03d2bf6 100644
--- a/piupartslib/pkgsummary.py
+++ b/piupartslib/pkgsummary.py
@@ -82,6 +82,7 @@
 
 import json
 import datetime
+import six
 from collections import namedtuple, defaultdict
 
 
@@ -117,7 +118,7 @@ flaginfo = {
                           ]),
 }
 
-state2flg = dict([(y, x[0]) for x in flaginfo.iteritems() for y in x[1].states])
+state2flg = dict([(y, x[0]) for x in six.iteritems(flaginfo) for y in x[1].states])
 
 
 def worst_flag(*flags):

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/piuparts/piuparts.git



More information about the Piuparts-commits mailing list