+2007-12-24 Joerg Jaspert <joerg@debian.org>
+
+ * Also run lintian on the .dsc file to check the source itself.
+
+ * Fix the direct usage of ar | tar etc to get the copyright file
+ and use dpkg-deb, which is made for this and makes us able to
+ process data.tar.bz2 (or whatever format it will be in the
+ future).
+
2007-12-21 Joerg Jaspert <joerg@debian.org>
* Remove the (now useless) check for a pre-depends on dpkg for
def print_copyright (deb_filename):
package = re_package.sub(r'\1', deb_filename)
- o = os.popen("ar p %s data.tar.gz | tar tzvf - | egrep 'usr(/share)?/doc/[^/]*/copyright' | awk '{ print $6 }' | head -n 1" % (deb_filename))
+ o = os.popen("dpkg-deb -c %s | egrep 'usr(/share)?/doc/[^/]*/copyright' | awk '{print $6}' | head -n 1" % (deb_filename))
copyright = o.read()[:-1]
if copyright == "":
print "WARNING: wrong doc directory (expected %s, got %s)." % (package, doc_directory)
return
- o = os.popen("ar p %s data.tar.gz | tar xzOf - %s" % (deb_filename, copyright))
+ o = os.popen("dpkg-deb --fsys-tarfile %s | tar xvOf - %s" % (deb_filename, copyright))
copyright = o.read()
copyrightmd5 = md5.md5(copyright).hexdigest()
print "---- .dsc file for %s ----" % (dsc_filename)
(dsc) = read_dsc(dsc_filename)
print dsc
+ print "---- lintian check for %s ----" % (dsc_filename)
+ do_command ("lintian --show-overrides --color always", dsc_filename)
def check_deb (deb_filename):
filename = os.path.basename(deb_filename)
# Add the src_uploaders to the DB
if dsc.get("dm-upload-allowed", "no") == "yes":
- uploader_ids = []
+ uploader_ids = [maintainer_id]
if dsc.has_key("uploaders"):
- uploader_ids = [
- daklib.database.get_or_set_maintainer_id( u.strip() )
- for u in dsc["uploaders"].split(",")
- ]
- uploader_ids.append(maintainer_id)
+ for u in dsc["uploaders"].split(","):
+ u = u.replace("'", "\\'")
+ u = u.strip()
+ uploader_ids.append(
+ daklib.database.get_or_set_maintainer_id(u))
for u in uploader_ids:
projectB.query("INSERT INTO src_uploaders (source, maintainer) VALUES (currval('source_id_seq'), %d)" % (u))