#!/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
import sys
import apt_pkg
-import daklib.queue
-import daklib.utils
+from daklib.changes import Changes
+from daklib import utils
################################################################################
################################################################################
def main():
- Cnf = daklib.utils.get_conf()
+ 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 = daklib.queue.Upload(Cnf)
for arg in sys.argv[1:]:
- arg = daklib.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", "adv id" ]:
- if changes.has_key(i):
- print " %s: %s" % (i.capitalize(), changes[i])
- del changes[i]
- print
- if changes:
- daklib.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:
- daklib.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]:
- daklib.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]:
- daklib.utils.warn("dsc_files[%s] still has following unrecognised keys: %s" % (file, dsc_files[file].keys()))
+ arg = utils.validate_changes_file_arg(arg,require_changes=-1)
+ k = Changes()
+ k.load_dot_dak(arg)
+ print arg
+ print k
################################################################################
if __name__ == '__main__':
main()
-