]> git.decadent.org.uk Git - dak.git/blobdiff - dak/decode_dot_dak.py
Fix my very own shiny bug
[dak.git] / dak / decode_dot_dak.py
index 1712e4b63fd98118bd6cafa88f91120eed8af7fe..54b4ca12592aa9b8862c909e08cae3514c459d14 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/env python
 
-# Dump variables from a .dak file to stdout
+""" Dump variables from a .dak file to stdout """
 # Copyright (C) 2001, 2002, 2004, 2006  James Troup <james@nocrew.org>
 
 # This program is free software; you can redistribute it and/or modify
@@ -28,8 +28,8 @@
 
 import sys
 import apt_pkg
-import dak.lib.queue as queue
-import dak.lib.utils as utils
+from daklib.changes import Changes
+from daklib import utils
 
 ################################################################################
 
@@ -46,89 +46,24 @@ def main():
     Cnf = utils.get_conf()
     Arguments = [('h',"help","Decode-Dot-Dak::Options::Help")]
     for i in [ "help" ]:
-       if not Cnf.has_key("Decode-Dot-Dak::Options::%s" % (i)):
-           Cnf["Decode-Dot-Dak::Options::%s" % (i)] = ""
+        if not Cnf.has_key("Decode-Dot-Dak::Options::%s" % (i)):
+            Cnf["Decode-Dot-Dak::Options::%s" % (i)] = ""
 
     apt_pkg.ParseCommandLine(Cnf, Arguments, sys.argv)
 
     Options = Cnf.SubTree("Decode-Dot-Dak::Options")
     if Options["Help"]:
-       usage()
+        usage()
+
 
-    k = queue.Upload(Cnf)
     for arg in sys.argv[1:]:
         arg = utils.validate_changes_file_arg(arg,require_changes=-1)
-        k.pkg.changes_file = arg
-        print "%s:" % (arg)
-       k.init_vars()
-        k.update_vars()
-
-        changes = k.pkg.changes
-        print " Changes:"
-        # Mandatory changes fields
-        for i in [ "source", "version", "maintainer", "urgency", "changedby822",
-                   "changedby2047", "changedbyname", "maintainer822",
-                   "maintainer2047", "maintainername", "maintaineremail",
-                   "fingerprint", "changes" ]:
-            print "  %s: %s" % (i.capitalize(), changes[i])
-            del changes[i]
-        # Mandatory changes lists
-        for i in [ "distribution", "architecture", "closes" ]:
-            print "  %s: %s" % (i.capitalize(), " ".join(changes[i].keys()))
-            del changes[i]
-        # Optional changes fields
-        for i in [ "changed-by", "filecontents", "format" ]:
-            if changes.has_key(i):
-                print "  %s: %s" % (i.capitalize(), changes[i])
-                del changes[i]
-        print
-        if changes:
-            utils.warn("changes still has following unrecognised keys: %s" % (changes.keys()))
-
-        dsc = k.pkg.dsc
-        print " Dsc:"
-        for i in [ "source", "version", "maintainer", "fingerprint", "uploaders",
-                   "bts changelog" ]:
-            if dsc.has_key(i):
-                print "  %s: %s" % (i.capitalize(), dsc[i])
-                del dsc[i]
-        print
-        if dsc:
-            utils.warn("dsc still has following unrecognised keys: %s" % (dsc.keys()))
-
-        files = k.pkg.files
-        print " Files:"
-        for file in files.keys():
-            print "  %s:" % (file)
-            for i in [ "package", "version", "architecture", "type", "size",
-                       "md5sum", "component", "location id", "source package",
-                       "source version", "maintainer", "dbtype", "files id",
-                       "new", "section", "priority", "pool name" ]:
-                if files[file].has_key(i):
-                    print "   %s: %s" % (i.capitalize(), files[file][i])
-                    del files[file][i]
-            if files[file]:
-                utils.warn("files[%s] still has following unrecognised keys: %s" % (file, files[file].keys()))
-        print
-
-        dsc_files = k.pkg.dsc_files
-        print " Dsc Files:"
-        for file in dsc_files.keys():
-            print "  %s:" % (file)
-            # Mandatory fields
-            for i in [ "size", "md5sum" ]:
-                print "   %s: %s" % (i.capitalize(), dsc_files[file][i])
-                del dsc_files[file][i]
-            # Optional fields
-            for i in [ "files id" ]:
-                if dsc_files[file].has_key(i):
-                    print "   %s: %s" % (i.capitalize(), dsc_files[file][i])
-                    del dsc_files[file][i]
-            if dsc_files[file]:
-                utils.warn("dsc_files[%s] still has following unrecognised keys: %s" % (file, dsc_files[file].keys()))
+        k = Changes()
+        k.load_dot_dak(arg)
+        print arg
+        print k
 
 ################################################################################
 
 if __name__ == '__main__':
     main()
-