]> git.decadent.org.uk Git - dak.git/blobdiff - dak/override_disparity.py
And also catch double-sign-edit-failure-sign-whatever files
[dak.git] / dak / override_disparity.py
index 383766ef4ae61ad2fc12904da710b359138f41d6..3ec6ff1f96d20832cf6a549e5fa3abb3efbb39f5 100755 (executable)
@@ -82,14 +82,12 @@ def main():
     depends = {}
     session = DBConn().session()
     suite = Options['suite']
-    components = cnf.ValueList('Suite::%s::Components' % suite)
+    components = get_component_names(session)
     arches = set([x.arch_string for x in get_suite_architectures(suite)])
     arches -= set(['source', 'all'])
     for arch in arches:
         for component in components:
-            temp_filename = utils.get_packages_from_ftp(cnf['Dir::Root'], suite, component, arch)
-            packages_file = utils.open_file(temp_filename)
-            Packages = apt_pkg.ParseTagFile(packages_file)
+            Packages = utils.get_packages_from_ftp(cnf['Dir::Root'], suite, component, arch)
             while Packages.Step():
                 package = Packages.Section.Find('Package')
                 dep_list = Packages.Section.Find('Depends')
@@ -101,7 +99,6 @@ def main():
                             if not depends.has_key(package):
                                 depends[package] = set()
                             depends[package].add(i[0])
-            os.unlink(temp_filename)
 
     priorities = {}
     query = """SELECT DISTINCT o.package, p.level, p.priority, m.name
@@ -115,7 +112,6 @@ def main():
                AND ba.suite = s.id
                AND p.level <> 0""" % suite
     packages = session.execute(query)
-    session.commit()
 
     out = {}
     if Options.has_key('file'):
@@ -132,13 +128,13 @@ def main():
                          if not out.has_key(d):
                              out[d] = {}
                          out[d]['priority'] = priorities[d][1]
-                         out[d]['maintainer'] = priorities[d][2]
+                         out[d]['maintainer'] = unicode(priorities[d][2], 'utf-8')
                          out[d]['priority'] = priorities[d][1]
                          priorities[d][3] = False
                      if not out[d].has_key('dependency'):
                          out[d]['dependency'] = {}
                      out[d]['dependency'][p] = priorities[p][1]
-    yaml.dump(out, outfile, default_flow_style=False)
+    yaml.safe_dump(out, outfile, default_flow_style=False)
     if Options.has_key('file'):
         outfile.close()