]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/changes.py
Merge commit 'stew/knownchanges' into merge
[dak.git] / daklib / changes.py
index 12cee457c5f7976d16ac999eb3d57d629dd339b0..1bca6dc15539df16dbf0b58142b79275018446d8 100755 (executable)
@@ -183,14 +183,22 @@ class Changes(object):
             session = DBConn().session()
             privatetrans = True
 
-        session.query(KnownChange).filter(changesfile=self.changes_file).delete()
+        session.delete(get_knownchange(self.changes_file, session))
 
         if privatetrans:
             session.commit()
             session.close()
+
+
+    def mark_missing_fields(self):
+        """add "missing" in fields which we will require for the known_changes table"""
+        for key in ['urgency', 'maintainer', 'fingerprint', 'changedby' ]:
+            if (not self.changes.has_key(key)) or (not self.changes[key]):
+                self.changes[key]='missing'
+
     def add_known_changes(self, queue, session=None):
+        """add "missing" in fields which we will require for the known_changes table"""
         cnf = Config()
-
         if session is None:
             session = DBConn().session()
             privatetrans = True
@@ -199,6 +207,8 @@ class Changes(object):
         changesfile = os.path.join(dirpath, self.changes_file)
         filetime = datetime.datetime.fromtimestamp(os.path.getctime(changesfile))
 
+        self.mark_missing_fields()
+
         session.execute(
             """INSERT INTO known_changes
               (changesname, seen, source, binaries, architecture, version,