X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=jennifer;h=d824914bc472bfb7753bc379acc52daa5327a7b6;hb=50c3a3dfa86c10a3b7eae0f887912605275b518e;hp=6c1aa2c577a4c8da30e918cdda654a7bd58f5112;hpb=58afa1216ab7e85f70adbb62c0a485304b42ae82;p=dak.git diff --git a/jennifer b/jennifer index 6c1aa2c5..d824914b 100755 --- a/jennifer +++ b/jennifer @@ -2,7 +2,7 @@ # Checks Debian packages from Incoming # Copyright (C) 2000, 2001 James Troup -# $Id: jennifer,v 1.7 2002-02-22 02:19:26 troup Exp $ +# $Id: jennifer,v 1.10 2002-03-15 15:51:20 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 @@ -44,7 +44,7 @@ re_is_changes = re.compile (r"(.+?)_(.+?)_(.+?)\.changes$"); ################################################################################ # Globals -jennifer_version = "$Revision: 1.7 $"; +jennifer_version = "$Revision: 1.10 $"; Cnf = None; Options = None; @@ -459,30 +459,12 @@ def check_changes(): changes["chopversion"] = utils.re_no_epoch.sub('', changes["version"]) changes["chopversion2"] = utils.re_no_revision.sub('', changes["chopversion"]) - # Ensure the changes filename matches it's contents. - - base_filename = os.path.basename(filename); - m = re_is_changes.match(base_filename); - # source package name - if m: - file_source = m.group(1); - if changes["source"] != file_source: - reject("package name part of changes filename (%s) does not match source field (%s) in the changes file." % (file_source, changes["source"])); - # source version - file_version = m.group(2); - if changes["chopversion"] != file_version: - reject("version part of changes filename (%s) does not match version field (%s) in the changes file." % (file_version, changes["chopversion"])); - else: - reject("invalid changes filename '%s'." % (filename)); - - # But ... we can't check architecture because there's no - # established policy or practice on how to handle - # multi-architecture uploads. Instead we check what we can and - # reject if there's a changes file of the same name already in one + # Check there isn't already a changes file of the same name in one # of the queue directories. + base_filename = os.path.basename(filename); for dir in [ "Accepted", "Byhand", "Done", "New" ]: if os.path.exists(Cnf["Dir::Queue%sDir" % (dir) ]+'/'+base_filename): - reject("a changes file with the same name exists in the %s directory." % (dir)); + reject("a changes file with the same name already exists in the %s directory." % (dir)); return 1; @@ -876,7 +858,6 @@ def check_timestamps(): time.ctime(ancient_date))); except: reject("%s: timestamp check failed; caught %s" % (filename, sys.exc_type)); - raise; ################################################################################ ################################################################################ @@ -985,10 +966,10 @@ def do_byhand (summary): file_keys = files.keys(); - # Move all the files into the accepted directory + # Move all the files into the byhand directory utils.move (pkg.changes_file, Cnf["Dir::QueueByhandDir"]); for file in file_keys: - utils.move (file, Cnf["Dir::QueueByhandDir"]); + utils.move (file, Cnf["Dir::QueueByhandDir"], perms=0660); # Check for override disparities if not Cnf["Dinstall::Options::No-Mail"]: @@ -1016,7 +997,7 @@ def acknowledge_new (summary): # Move all the files into the accepted directory utils.move (pkg.changes_file, Cnf["Dir::QueueNewDir"]); for file in file_keys: - utils.move (file, Cnf["Dir::QueueNewDir"]); + utils.move (file, Cnf["Dir::QueueNewDir"], perms=0660); if not Options["No-Mail"]: print "Sending new ack.";