guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: import: github: Use prereleases when package has no releases.


From: guix-commits
Subject: 01/02: import: github: Use prereleases when package has no releases.
Date: Mon, 21 Jan 2019 07:35:37 -0500 (EST)

arunisaac pushed a commit to branch master
in repository guix.

commit 6b7ea49bedb6902ee620ec337cb234a34b2ab49b
Author: Arun Isaac <address@hidden>
Date:   Thu Jan 17 01:34:07 2019 +0530

    import: github: Use prereleases when package has no releases.
    
    * guix/import/github.scm (latest-released-version): Use preleases when 
package
    has no releases.
---
 guix/import/github.scm | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/guix/import/github.scm b/guix/import/github.scm
index e17ef0b..c78469d 100644
--- a/guix/import/github.scm
+++ b/guix/import/github.scm
@@ -171,6 +171,9 @@ empty list."
   "Return a string of the newest released version name given a string URL like
 'https://github.com/arq5x/bedtools2/archive/v2.24.0.tar.gz' and the name of
 the package e.g. 'bedtools2'.  Return #f if there is no releases"
+  (define (pre-release? x)
+    (hash-ref x "prerelease"))
+
   (let* ((json (fetch-releases-or-tags url)))
     (if (eq? json #f)
         (if (%github-token)
@@ -181,14 +184,9 @@ API. This may be fixed by using an access token and 
setting the environment
 variable GUIX_GITHUB_TOKEN, for instance one procured from
 https://github.com/settings/tokens";))
         (let loop ((releases
-                    (filter
-                     (lambda (x)
-                       ;; example pre-release:
-                       ;; https://github.com/wwood/OrfM/releases/tag/v0.5.1
-                       ;; or an all-prerelease set
-                       ;; https://github.com/powertab/powertabeditor/releases
-                       (not (hash-ref x "prerelease")))
-                     json)))
+                    (match (remove pre-release? json)
+                      (() json) ; keep everything
+                      (releases releases))))
           (match releases
             (()                                   ;empty release list
              #f)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]