X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=andrea;h=351c93747639f0bd65fce2f6cf3f67e7e55ca7ed;hb=965f23a17180491622c2e4bc43f53433682973b4;hp=618188a2f487a3c36e385a19a8df5bb60ee3bd28;hpb=d5a9e3cc689fa3e4a499807aab7a37dc66e900da;p=dak.git diff --git a/andrea b/andrea index 618188a2..351c9374 100755 --- a/andrea +++ b/andrea @@ -1,8 +1,8 @@ #!/usr/bin/env python # Check for fixable discrepancies between stable and unstable -# Copyright (C) 2000 James Troup -# $Id: andrea,v 1.1 2001-02-12 03:29:52 troup Exp $ +# Copyright (C) 2000, 2001 James Troup +# $Id: andrea,v 1.3 2001-03-20 00:28:11 troup Exp $ # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -21,8 +21,8 @@ ################################################################################ -import pg, sys -import utils, db_access +import pg, string, sys; +import utils, db_access; import apt_pkg; ################################################################################ @@ -46,7 +46,7 @@ def main (): apt_pkg.ParseCommandLine(Cnf,Arguments,sys.argv); - projectB = pg.connect('projectb', 'localhost'); + projectB = pg.connect(Cnf["DB::Name"], Cnf["DB::Host"], int(Cnf["DB::Port"])); db_access.init(Cnf, projectB); src_suite = "stable"; @@ -69,10 +69,11 @@ def main (): continue; arch_id = db_access.get_architecture_id(arch); q = projectB.query(""" -SELECT b_src.package, b_src.version AS stable_version - FROM binaries b_src, bin_associations ba, override o +SELECT b_src.package, b_src.version, a.arch_string + FROM binaries b_src, bin_associations ba, override o, architecture a WHERE ba.bin = b_src.id AND ba.suite = %s AND b_src.architecture = %s - AND o.package = b_src.package AND o.suite = %s AND o.type != %s AND NOT EXISTS + AND a.id = b_src.architecture AND o.package = b_src.package + AND o.suite = %s AND o.type != %s AND NOT EXISTS (SELECT b_dst.id FROM bin_associations ba2, binaries b_dst WHERE ba2.bin = b_dst.id AND b_dst.package = b_src.package AND (b_dst.architecture = %s OR b_dst.architecture = %s) @@ -81,11 +82,8 @@ SELECT b_src.package, b_src.version AS stable_version WHERE ba3.bin = b2.id AND ba3.suite = %s AND b2.package = b_dst.package)) ORDER BY b_src.package;""" % (src_suite_id, arch_id, dst_suite_id, dsc_type_id, arch_id, arch_all_id, dst_suite_id, dst_suite_id)); - print - print arch - print "======" - print q - + for i in q.getresult(): + print string.join(i, ' '); #######################################################################################