From a392c3dfdf54fab308b0600119aaa1f2b55e8fd5 Mon Sep 17 00:00:00 2001 From: Luca Falavigna Date: Tue, 4 Jan 2011 17:15:37 +0000 Subject: [PATCH] show-new: query database only when needed Instead of querying database once for every single .changes file, only regenerate html output if not previously available or older. Signed-off-by: Luca Falavigna --- dak/show_new.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/dak/show_new.py b/dak/show_new.py index 6d357134..3bd17264 100755 --- a/dak/show_new.py +++ b/dak/show_new.py @@ -162,6 +162,14 @@ def do_pkg(changes_file): origchanges = os.path.abspath(u.pkg.changes_file) files = u.pkg.files changes = u.pkg.changes + htmlname = changes["source"] + "_" + changes["version"] + ".html" + htmlfile = os.path.join(cnf["Show-New::HTMLPath"], htmlname) + + if os.path.exists(htmlfile): + if os.stat(htmlfile).st_mtime > os.stat(origchanges).st_mtime: + sources.add(htmlname) + session.close() + return for deb_filename, f in files.items(): if deb_filename.endswith(".udeb") or deb_filename.endswith(".deb"): @@ -174,7 +182,6 @@ def do_pkg(changes_file): new, byhand = determine_new(u.pkg.changes_file, u.pkg.changes, files, 0, session) - htmlname = changes["source"] + "_" + changes["version"] + ".html" sources.add(htmlname) # do not generate html output if that source/version already has one. if not os.path.exists(os.path.join(cnf["Show-New::HTMLPath"],htmlname)): -- 2.39.2