From 1c5025d54c3a8244fcbe818f96dea49e51054ba6 Mon Sep 17 00:00:00 2001 From: mjfernez Date: Wed, 22 Nov 2023 13:55:19 -0500 Subject: Update to new media directory syntax --- update_latest.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 update_latest.py (limited to 'update_latest.py') diff --git a/update_latest.py b/update_latest.py new file mode 100644 index 0000000..160dc7c --- /dev/null +++ b/update_latest.py @@ -0,0 +1,43 @@ +import os +import subprocess +from time import mktime, ctime +from email.utils import parsedate + +def file_last_modified(path): + git_time = f"git log -n1 --pretty=%aD {path}".split() + try: + mod_time = subprocess.check_output(git_time) + except: + # File is not in the git log, no biggie, just blank the date + return None + + # Git outputs in RFC2822 format + return parsedate(mod_time.decode('ascii').strip()) + +updates = {} +dirs = [x for x in os.listdir() + if os.path.isdir(x) and not x.startswith(".") + ] + +for top in dirs: + for root,_,files in os.walk(top): + for f in files: + if f.endswith(".html") or f.endswith(".txt"): + path = os.path.join(root, f) + t = file_last_modified(path) + if t: + updates[path] = mktime(t) +print("") +print("") +print("

LATEST CHANGES

") +print("") +print("") +print("") + -- cgit v1.2.3