scripts: add missing regex for dl_cleanup script
authorAnsuel Smith <ansuelsmth@gmail.com>
Mon, 5 Jul 2021 22:56:21 +0000 (00:56 +0200)
committerPaul Spooren <mail@aparcar.org>
Thu, 23 Sep 2021 05:51:44 +0000 (19:51 -1000)
Regex xxx-YYYY-MM-DD-GIT_SHASUM was missing. Add the new regex to improve
and better find outdated package. This also fix a bug where some bug were
incorrectly detected as packagename-yyyy-mm-dd instead of packagename due
to them be parsed by the wrong parser

Example:

    openwrt-keyring-2021-02-20-49283916.tar.xz

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
[added example in commit message]
Signed-off-by: Paul Spooren <mail@aparcar.org>
scripts/dl_cleanup.py

index 1acb0495827b5ff05c4a982a528dc7aa5bd6a59e..83269e68e5fcf9e1ce9d3ee95806fc6f1ab3e4cc 100755 (executable)
@@ -62,6 +62,13 @@ def parseVer_r(match, filepath):
        progversion = (int(match.group(2)) << 64)
        return (progname, progversion)
 
+def parseVer_ymd_GIT_SHASUM(match, filepath):
+       progname = match.group(1)
+       progversion = (int(match.group(2)) << 64) |\
+                     (int(match.group(3)) << 48) |\
+                     (int(match.group(4)) << 32)
+       return (progname, progversion)
+
 def parseVer_ymd(match, filepath):
        progname = match.group(1)
        progversion = (int(match.group(2)) << 64) |\
@@ -90,6 +97,7 @@ extensions = (
 
 versionRegex = (
        (re.compile(r"(.+)[-_](\d+)\.(\d+)\.(\d+)\.(\d+)"), parseVer_1234),     # xxx-1.2.3.4
+       (re.compile(r"(.+)[-_](\d\d\d\d)-?(\d\d)-?(\d\d)-"), parseVer_ymd_GIT_SHASUM),  # xxx-YYYY-MM-DD-GIT_SHASUM
        (re.compile(r"(.+)[-_](\d\d\d\d)-?(\d\d)-?(\d\d)"), parseVer_ymd),      # xxx-YYYY-MM-DD
        (re.compile(r"(.+)[-_]([0-9a-fA-F]{40,40})"), parseVer_GIT),            # xxx-GIT_SHASUM
        (re.compile(r"(.+)[-_](\d+)\.(\d+)\.(\d+)(\w?)"), parseVer_123),        # xxx-1.2.3a