[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[dak/master] misc fixes



Signed-off-by: Mark Hymers <mhy@debian.org>
---
 ChangeLog                |    2 ++
 dak/process_accepted.py  |    2 +-
 dak/process_unchecked.py |    9 +--------
 daklib/utils.py          |   27 +++++++++++++++++----------
 4 files changed, 21 insertions(+), 19 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 2991c5b..4440c87 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2008-08-15  Mark Hymers  <mhy@debian.org>
 
+	* daklib/utils.py: Actually import a module before using it.
+
 	* daklib/utils.py: Actually check we have basedict before trying to
 	use it.
 
diff --git a/dak/process_accepted.py b/dak/process_accepted.py
index a26ce57..5dd72f7 100755
--- a/dak/process_accepted.py
+++ b/dak/process_accepted.py
@@ -276,7 +276,7 @@ def install ():
 
     # Check the hashes are all present: HACK: Can go away once all dak files
     # are known to be newer than the shasum changes
-    utils.ensure_hashes(Upload)
+    utils.ensure_hashes(changes, dsc, files, dsc_files)
 
     # Add the .dsc file to the DB
     for file in files.keys():
diff --git a/dak/process_unchecked.py b/dak/process_unchecked.py
index 9318770..123fd9f 100755
--- a/dak/process_unchecked.py
+++ b/dak/process_unchecked.py
@@ -919,19 +919,12 @@ def check_urgency ():
 ################################################################################
 
 def check_hashes ():
-    # Make sure we recognise the format of the Files: field
-    format = changes.get("format", "0.0").split(".",1)
-    if len(format) == 2:
-        format = int(format[0]), int(format[1])
-    else:
-        format = int(float(format[0])), 0
-
     utils.check_hash(".changes", files, "md5sum", apt_pkg.md5sum)
     utils.check_hash(".dsc", dsc_files, "md5sum", apt_pkg.md5sum)
 
     # This is stupid API, but it'll have to do for now until
     # we actually have proper abstraction
-    for m in utils.ensure_hashes(Upload):
+    for m in utils.ensure_hashes(changes, dsc, files, dsc_files):
         reject(m)
 
 ################################################################################
diff --git a/daklib/utils.py b/daklib/utils.py
index b6b8d4c..511d724 100755
--- a/daklib/utils.py
+++ b/daklib/utils.py
@@ -262,15 +262,22 @@ def check_hash (where, lfiles, key, testfn, basedict = None):
 
 ################################################################################
 
-def ensure_hashes(Upload):
+def ensure_hashes(changes, dsc, files, dsc_files):
+    # Make sure we recognise the format of the Files: field
+    format = changes.get("format", "0.0").split(".",1)
+    if len(format) == 2:
+        format = int(format[0]), int(format[1])
+    else:
+        format = int(float(format[0])), 0
+
     rejmsg = []
-    for x in Upload.changes:
+    for x in changes:
         if x.startswith("checksum-"):
             h = x.split("-",1)[1]
             if h not in dict(known_hashes):
                 rejmsg.append("Unsupported checksum field in .changes" % (h))
 
-    for x in Upload.dsc:
+    for x in dsc:
         if x.startswith("checksum-"):
             h = x.split("-",1)[1]
             if h not in dict(known_hashes):
@@ -281,12 +288,12 @@ def ensure_hashes(Upload):
     # I hate backwards compatibility
     for h,f,v in known_hashes:
         try:
-            fs = build_file_list(Upload.changes, 0, "checksums-%s" % h, h)
+            fs = build_file_list(changes, 0, "checksums-%s" % h, h)
             if format < v:
-                for m in create_hash(fs, h, f, Upload.files):
+                for m in create_hash(fs, h, f, files):
                     rejmsg.append(m)
             else:
-                for m in check_hash(".changes %s" % (h), fs, h, f, Upload.files):
+                for m in check_hash(".changes %s" % (h), fs, h, f, files):
                     rejmsg.append(m)
         except NoFilesFieldError:
             rejmsg.append("No Checksums-%s: field in .changes" % (h))
@@ -295,15 +302,15 @@ def ensure_hashes(Upload):
         except ParseChangesError, line:
             rejmsg.append("parse error for Checksums-%s in .changes, can't grok: %s." % (h, line))
 
-        if "source" not in Upload.changes["architecture"]: continue
+        if "source" not in changes["architecture"]: continue
 
         try:
-            fs = build_file_list(Upload.dsc, 1, "checksums-%s" % h, h)
+            fs = build_file_list(dsc, 1, "checksums-%s" % h, h)
             if format < v:
-                for m in create_hash(fs, h, f, Upload.dsc_files):
+                for m in create_hash(fs, h, f, dsc_files):
                     rejmsg.append(m)
             else:
-                for m in check_hash(".dsc %s" % (h), fs, h, f, Upload.dsc_files):
+                for m in check_hash(".dsc %s" % (h), fs, h, f, dsc_files):
                     rejmsg.append(m)
         except UnknownFormatError, format:
             rejmsg.append("%s: unknown format of .dsc" % (format))
-- 
1.5.6.3


Reply to: