summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-09-06 15:59:59 +0200
committerLudovic Courtès <ludo@gnu.org>2022-09-06 16:58:12 +0200
commit61b63e7fa73be8828af2b36d196c3676c974e119 (patch)
tree874c38b67d1393026eced487705c537aa985fdba
parent0f2776399ecebb3483c8e870d424d1c3cd7f7f73 (diff)
downloadguix-61b63e7fa73be8828af2b36d196c3676c974e119.tar.gz
import: gnome: Do not require even minor for two-number version strings.
That way, "guix refresh gnome-keyring" will properly return "42.1"
instead of "42.0".

Reported by Maxim Cournoyer.

* guix/import/gnome.scm (latest-gnome-release)[even-minor-version?]:
Tweak for GNOME applications.
-rw-r--r--guix/import/gnome.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/guix/import/gnome.scm b/guix/import/gnome.scm
index 43966c1028..3915f19e84 100644
--- a/guix/import/gnome.scm
+++ b/guix/import/gnome.scm
@@ -62,10 +62,13 @@ not be determined."
 
   (define (even-minor-version? version)
     (match (string-tokenize version %not-dot)
-      (((= string->number major) (= string->number minor) . rest)
+      (((= string->number major) (= string->number minor) micro)
+       ;; This is for things like GLib, with version strings like "2.72.3".
        (and minor (even? minor)))
       (((= string->number major) . _)
-       ;; It should at last start with a digit.
+       ;; GNOME applications have version strings like "42.1" (only two
+       ;; integers) and are not subject to the odd/even policy.  MAJOR should
+       ;; be a valid number though.
        major)))
 
   (define upstream-name