]> git.decadent.org.uk Git - dak.git/commitdiff
Merge remote-tracking branch 'drkranz/quotes' into merge
authorJoerg Jaspert <joerg@debian.org>
Wed, 29 Aug 2012 21:11:10 +0000 (23:11 +0200)
committerJoerg Jaspert <joerg@debian.org>
Wed, 29 Aug 2012 21:11:10 +0000 (23:11 +0200)
* drkranz/quotes:
  IT Crowd

Signed-off-by: Joerg Jaspert <joerg@debian.org>
daklib/archive.py
daklib/textutils.py
tests/test_split_uploaders.py

index 77f400b41a432eed66aa6439b9faea1081a90714..a55bfaba6f17aace3da4bb745691e96c937ff58c 100644 (file)
@@ -361,11 +361,7 @@ class ArchiveTransaction(object):
         # Uploaders are the maintainer and co-maintainers from the Uploaders field
         db_source.uploaders.append(maintainer)
         if 'Uploaders' in control:
-            def split_uploaders(field):
-                import re
-                for u in re.sub(">[ ]*,", ">\t", field).split("\t"):
-                    yield u.strip()
-
+            from daklib.textutils import split_uploaders
             for u in split_uploaders(control['Uploaders']):
                 db_source.uploaders.append(get_or_set_maintainer(u, session))
         session.flush()
@@ -1027,8 +1023,9 @@ class ArchiveUpload(object):
             package, version, archext = parts
             arch, ext = archext.split('.', 1)
 
-            rule = automatic_byhand_packages.get(package)
-            if rule is None:
+            try:
+                rule = automatic_byhand_packages.subtree(package)
+            except KeyError:
                 remaining.append(f)
                 continue
 
@@ -1188,8 +1185,9 @@ class ArchiveUpload(object):
                 source_component_name = guess
                 break
         if source_component_name is None:
-            raise Exception('Could not guess source component.')
-        source_component = self.session.query(Component).filter_by(component_name=source_component_name).one()
+            source_component = self.session.query(Component).order_by(Component.component_id).first()
+        else:
+            source_component = self.session.query(Component).filter_by(component_name=source_component_name).one()
         source_component_func = lambda source: source_component
 
         db_changes = self._install_changes()
index c9cc4ed380e7a6885b109b154b45893d5c046acc..b4646759a81b77dae865bc5e950c727e15778b18 100644 (file)
@@ -113,3 +113,8 @@ def fix_maintainer(maintainer):
     return (rfc822_maint, rfc2047_maint, name, email)
 
 ################################################################################
+
+def split_uploaders(field):
+    import re
+    for u in re.sub(">[ ]*,", ">\t", field).split("\t"):
+        yield u.strip()
index fe6bd91e984d4224a0cfcb37c2d5eca462c9f7cd..51812da03918b650bb57222cfe7b2b90612e5834 100755 (executable)
@@ -2,7 +2,7 @@
 
 from base_test import DakTestCase
 
-from daklib.dbconn import split_uploaders
+from daklib.textutils import split_uploaders
 
 import unittest