From 3f300c8204a90fdbe3f9cee98b16d880dc5442e7 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Wed, 14 Apr 2021 18:52:27 -0400 Subject: Add support for GNOME 40 Signed-off-by: Matt Turner --- modules/gnome_module.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'modules') diff --git a/modules/gnome_module.py b/modules/gnome_module.py index 7ef3b12..7a2f5ed 100644 --- a/modules/gnome_module.py +++ b/modules/gnome_module.py @@ -28,6 +28,13 @@ name_mapping = { "gnome-themes-standard": "gnome-themes-extra", } +# Turns GNOME versions (40.beta) into the PMS version format (40_beta) +def normalize_version(version: str) -> str: + if version.endswith(('.rc', '.beta', '.alpha')): + i = version.rindex('.') + return f"{version[:i]}_{version[i + 1:]}" + return version + class GNOME: def __init__(self, nextrev=False): options = clioptions_module.Options() @@ -40,7 +47,7 @@ class GNOME: # gnome_release is the major release number the development is leading up to or is part of. E.g, 2.21.5 will turn to 2.22 and 2.22.2 becomes 2.22 # This is used in latest versions list fetching URL construction gnome_release_list = args.release_number.split(".") - if int(gnome_release_list[1]) % 2 != 0: + if int(gnome_release_list[0]) < 40 and int(gnome_release_list[1]) % 2 != 0: gnome_release_list[1] = str(int(gnome_release_list[1]) + 1) self.gnome_release = ".".join(gnome_release_list[:2]) @@ -64,7 +71,7 @@ class GNOME: # Skip invalid lines if len(components) != 4 or len(components[2]) == 0: continue - pkg = package_module.Package(components[1] + "-" + components[2], suite=components[0]) + pkg = package_module.Package(components[1] + "-" + normalize_version(components[2]), suite=components[0]) if (pkg.name and pkg.version): ret.append(pkg) else: @@ -109,7 +116,7 @@ class GNOME: if not latest: print("Warning: couldn't find latest version from within cache.json[3]") continue - latest_pkg = package_module.Package(name + "-" + latest) + latest_pkg = package_module.Package(name + "-" + normalize_version(latest)) if pkg.name and pkg.version: ret.append(latest_pkg) else: -- cgit v1.2.3-65-gdbad