summary refs log tree commit diff
diff options
context:
space:
mode:
authorzimoun <zimon.toutoune@gmail.com>2021-01-19 16:47:18 +0100
committerLudovic Courtès <ludo@gnu.org>2022-03-07 22:49:28 +0100
commit6bb92098b4d8df2ba0714806c1b1e46cc29c9edc (patch)
tree92c2eba85cb779eb66f6f1143694264d06580be5
parent434925379d1bf18a4d70b146a2fd1837b9c7b46e (diff)
downloadguix-6bb92098b4d8df2ba0714806c1b1e46cc29c9edc.tar.gz
import: hackage: Return multiple values for unknown packages.
Partly fixes <https://bugs.gnu.org/44115>.

* guix/import/hackage.scm (hackage->guix-package): Return 'values'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--guix/import/hackage.scm12
1 files changed, 8 insertions, 4 deletions
diff --git a/guix/import/hackage.scm b/guix/import/hackage.scm
index b94f4169d4..75def99574 100644
--- a/guix/import/hackage.scm
+++ b/guix/import/hackage.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
 ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
 ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
+;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -337,10 +338,13 @@ respectively."
                 (if port
                     (read-cabal-and-hash port)
                     (hackage-fetch-and-hash package-name))))
-    (and=> cabal-meta (compose (cut hackage-module->sexp <> cabal-hash
-                                    #:include-test-dependencies?
-                                    include-test-dependencies?)
-                               (cut eval-cabal <> cabal-environment)))))
+    (if cabal-meta
+        ((compose (cut hackage-module->sexp <> cabal-hash
+                       #:include-test-dependencies?
+                       include-test-dependencies?)
+                  (cut eval-cabal <> cabal-environment))
+         cabal-meta)
+        (values #f '()))))
 
 (define hackage->guix-package/m                   ;memoized variant
   (memoize hackage->guix-package))