From fe935e5ac78cf4a4c28caf8e0660338002ff5fef Mon Sep 17 00:00:00 2001 From: Daniel Micay Date: Sat, 15 Jul 2023 13:27:52 -0400 Subject: drop file extension from generate-feed.py --- generate-feed | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ generate-feed.py | 55 ------------------------------------------------------- process-static | 2 +- 3 files changed, 56 insertions(+), 56 deletions(-) create mode 100755 generate-feed delete mode 100755 generate-feed.py diff --git a/generate-feed b/generate-feed new file mode 100755 index 00000000..4641bb9b --- /dev/null +++ b/generate-feed @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 + +from datetime import datetime + +import lxml.html +from lxml import etree + +document = lxml.html.parse("static-tmp/releases.html").getroot() +releases = document.body.cssselect("#changelog article") + +updated = None +entries = [] + +for release in releases: + title = release.attrib["id"] + try: + time = datetime.strptime(title, "%Y%m%d%H").isoformat() + "Z" + except ValueError: + time = datetime.strptime(title, "%Y.%m.%d.%H").isoformat() + "Z" + if updated is None: + updated = time + content = [etree.tostring(e).decode() for e in release.getchildren()[1:]] + entries.append(f""" + + https://grapheneos.org/releases#{title} + + {title} + {time} + {time} + +
+ {"".join(content)} +
+
+
""") + +feed = f""" + + https://grapheneos.org/releases#changelog + + + + https://grapheneos.org/favicon.ico + GrapheneOS changelog + {updated} + + GrapheneOS + contact@grapheneos.org + https://grapheneos.org/ + {"".join(entries)} + +""" + +with open("static-tmp/releases.atom", "w") as f: + f.write(feed) diff --git a/generate-feed.py b/generate-feed.py deleted file mode 100755 index 4641bb9b..00000000 --- a/generate-feed.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env python3 - -from datetime import datetime - -import lxml.html -from lxml import etree - -document = lxml.html.parse("static-tmp/releases.html").getroot() -releases = document.body.cssselect("#changelog article") - -updated = None -entries = [] - -for release in releases: - title = release.attrib["id"] - try: - time = datetime.strptime(title, "%Y%m%d%H").isoformat() + "Z" - except ValueError: - time = datetime.strptime(title, "%Y.%m.%d.%H").isoformat() + "Z" - if updated is None: - updated = time - content = [etree.tostring(e).decode() for e in release.getchildren()[1:]] - entries.append(f""" - - https://grapheneos.org/releases#{title} - - {title} - {time} - {time} - -
- {"".join(content)} -
-
-
""") - -feed = f""" - - https://grapheneos.org/releases#changelog - - - - https://grapheneos.org/favicon.ico - GrapheneOS changelog - {updated} - - GrapheneOS - contact@grapheneos.org - https://grapheneos.org/ - {"".join(entries)} - -""" - -with open("static-tmp/releases.atom", "w") as f: - f.write(feed) diff --git a/process-static b/process-static index 7979c854..cf6355e7 100755 --- a/process-static +++ b/process-static @@ -86,7 +86,7 @@ find static-tmp -name '*.html' -exec html-minifier-terser --collapse-whitespace --remove-redundant-attributes --remove-script-type-attributes \ --remove-style-link-type-attributes --sort-attributes --sort-class-name {} -o {} \; -./generate-feed.py +./generate-feed for file in static-tmp/**/*.@(atom|xml); do xmllint --noblanks "$file" --output "$file" -- cgit v1.3.1