X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=devscripts%2Fgh-pages%2Fupdate-feed.py;h=506a623772e0c2195f6b3692575f5942e84c046c;hb=067aa17edf5a46a8cbc4d6b90864eddf051fa2bc;hp=3b49a56f1637d98e28e81fa937efd96bcac3b334;hpb=317d4edfa896f8752a06d87304b9289a15eb4b1e;p=youtube-dl diff --git a/devscripts/gh-pages/update-feed.py b/devscripts/gh-pages/update-feed.py index 3b49a56f1..506a62377 100755 --- a/devscripts/gh-pages/update-feed.py +++ b/devscripts/gh-pages/update-feed.py @@ -1,4 +1,5 @@ #!/usr/bin/env python3 +from __future__ import unicode_literals import datetime import io @@ -9,6 +10,7 @@ import textwrap atom_template = textwrap.dedent("""\ + youtube-dl releases https://yt-dl.org/feed/youtube-dl-updates-feed @TIMESTAMP@ @@ -19,7 +21,7 @@ entry_template = textwrap.dedent(""" https://yt-dl.org/feed/youtube-dl-updates-feed/youtube-dl-@VERSION@ New version @VERSION@ - +
Downloads available at https://yt-dl.org/downloads/@VERSION@/ @@ -43,7 +45,27 @@ versions.sort() entries = [] for v in versions: - entry = entry_template.replace('@TIMESTAMP@', v.replace('.', '-') + 'T00:00:00Z') + fields = v.split('.') + year, month, day = map(int, fields[:3]) + faked = 0 + patchlevel = 0 + while True: + try: + datetime.date(year, month, day) + except ValueError: + day -= 1 + faked += 1 + assert day > 0 + continue + break + if len(fields) >= 4: + try: + patchlevel = int(fields[3]) + except ValueError: + patchlevel = 1 + timestamp = '%04d-%02d-%02dT00:%02d:%02dZ' % (year, month, day, faked, patchlevel) + + entry = entry_template.replace('@TIMESTAMP@', timestamp) entry = entry.replace('@VERSION@', v) entries.append(entry) @@ -52,4 +74,3 @@ atom_template = atom_template.replace('@ENTRIES@', entries_str) with io.open('update/releases.atom', 'w', encoding='utf-8') as atom_file: atom_file.write(atom_template) -