guix-commits
[Top][All Lists]
Advanced

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

02/03: gnu-maintenance: Replace 'find-packages' with 'find-package' (sin


From: Ludovic Courtès
Subject: 02/03: gnu-maintenance: Replace 'find-packages' with 'find-package' (singular).
Date: Wed, 8 Jun 2016 17:08:35 +0000 (UTC)

civodul pushed a commit to branch master
in repository guix.

commit dc794a723809f0f28e49e4c32e8974b5b9a98ff0
Author: Ludovic Courtès <address@hidden>
Date:   Wed Jun 8 17:59:45 2016 +0200

    gnu-maintenance: Replace 'find-packages' with 'find-package' (singular).
    
    Fixes <http://bugs.gnu.org/23718>.
    Reported by Efraim Flashner <address@hidden>.
    
    * guix/gnu-maintenance.scm (find-packages): Remove.
    (find-package): New procedure.
    * guix/import/gnu.scm (gnu->guix-package): Use 'find-package' instead of
    'find-packages' and adjust accordingly.
---
 guix/gnu-maintenance.scm |   15 +++++++--------
 guix/import/gnu.scm      |   10 +++++-----
 2 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm
index adb62aa..0dd08bf 100644
--- a/guix/gnu-maintenance.scm
+++ b/guix/gnu-maintenance.scm
@@ -48,7 +48,7 @@
             gnu-package-download-url
 
             official-gnu-packages
-            find-packages
+            find-package
             gnu-package?
 
             release-file?
@@ -155,13 +155,12 @@ to fetch the list of GNU packages over HTTP."
          (close-port port)
          lst)))
 
-(define (find-packages regexp)
-  "Find GNU packages which satisfy REGEXP."
-  (let ((name-rx (make-regexp regexp)))
-    (filter (lambda (package)
-              (false-if-exception
-               (regexp-exec name-rx (gnu-package-name package))))
-            (official-gnu-packages))))
+(define (find-package name)
+  "Find GNU package called NAME and return it.  Return #f if it was not
+found."
+  (find (lambda (package)
+          (string=? name (gnu-package-name package)))
+        (official-gnu-packages)))
 
 (define gnu-package?
   (memoize
diff --git a/guix/import/gnu.scm b/guix/import/gnu.scm
index 2cfb46b..bbb1704 100644
--- a/guix/import/gnu.scm
+++ b/guix/import/gnu.scm
@@ -111,13 +111,13 @@ details.)"
   (match (latest-release name)
     ((? upstream-source? release)
      (let ((version (upstream-source-version release)))
-       (match (find-packages (regexp-quote name))
-         ((info . _)
-          (gnu-package->sexp info release #:key-download key-download))
-         (()
+       (match (find-package name)
+         (#f
           (raise (condition
                   (&message
-                   (message "couldn't find meta-data for GNU package"))))))))
+                   (message "couldn't find meta-data for GNU package")))))
+         (info
+          (gnu-package->sexp info release #:key-download key-download)))))
     (_
      (raise (condition
              (&message



reply via email to

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