in crashclouseau/models.py [0:0]
def add_analyzis(data, nodeid, channel, commit=True):
db.session.query(Changeset).filter(Changeset.nodeid == nodeid).update(
{"analyzed": True}
)
if data:
chgs = (
db.session.query(Changeset, File.name)
.select_from(Changeset)
.join(File)
.filter(Changeset.nodeid == nodeid)
)
for chg, name in chgs:
# if the filename is not in data,
# then it means that the file has been deleted
info = data.get(name)
if info:
added = info.get("added")
if added:
chg.added_lines = added
deleted = info.get("deleted")
if deleted:
chg.deleted_lines = deleted
touched = info.get("touched")
if touched:
chg.touched_lines = touched
new = info.get("new")
if new:
chg.isnew = True
db.session.add(chg)
if commit:
db.session.commit()