X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fchanges.py;h=6b7762681e8febb39b8531363e4261124c7eec79;hb=3fd95d52f5c4a4761a1e332d469c6948e091723c;hp=4ee73fbc6dda26a0c9de771e789f03a8998d4735;hpb=63cfa70f44ac9b08b214b30d80cd39b0295a1cd3;p=dak.git diff --git a/daklib/changes.py b/daklib/changes.py old mode 100755 new mode 100644 index 4ee73fbc..6b776268 --- a/daklib/changes.py +++ b/daklib/changes.py @@ -188,7 +188,7 @@ class Changes(object): self.changes[key]='missing' @session_wrapper - def add_known_changes(self, dirpath, session=None): + def add_known_changes(self, dirpath, in_queue=None, session=None): """add "missing" in fields which we will require for the known_changes table""" cnf = Config() @@ -200,18 +200,20 @@ class Changes(object): multivalues = {} for key in ("distribution", "architecture", "binary"): if isinstance(self.changes[key], dict): - multivalues[key] = ", ".join(self.changes[key].keys()) + multivalues[key] = " ".join(self.changes[key].keys()) else: - multivalues[key] = self.changes[key].keys() + multivalues[key] = self.changes[key] + # TODO: Use ORM session.execute( - """INSERT INTO known_changes - (changesname, seen, source, binaries, architecture, version, + """INSERT INTO changes + (changesname, in_queue, seen, source, binaries, architecture, version, distribution, urgency, maintainer, fingerprint, changedby, date) - VALUES (:changesfile,:filetime,:source,:binary, :architecture, + VALUES (:changesfile,:in_queue,:filetime,:source,:binary, :architecture, :version,:distribution,:urgency,:maintainer,:fingerprint,:changedby,:date)""", { 'changesfile': self.changes_file, 'filetime': filetime, + 'in_queue': in_queue, 'source': self.changes["source"], 'binary': multivalues["binary"], 'architecture': multivalues["architecture"], @@ -223,6 +225,10 @@ class Changes(object): 'changedby': self.changes["changed-by"], 'date': self.changes["date"]} ) + session.commit() + + return session.query(DBChange).filter_by(changesname = self.changes_file).one() + def unknown_files_fields(self, name): return sorted(list( set(self.files[name].keys()) - set(CHANGESFIELDS_FILES)))