aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-06-09 11:46:05 +0200
committerLudovic Courtès <ludo@gnu.org>2023-06-09 14:19:14 +0200
commitdf8b3821a80d3cdf9b2244bad743b4cfba765bb9 (patch)
tree05ba44c49e616ddcb53d85040c0cf184730b1777
parent213d3cad6aa9207a86d22cdd31d2e1a978e5f017 (diff)
downloadguix-df8b3821a80d3cdf9b2244bad743b4cfba765bb9.tar
guix-df8b3821a80d3cdf9b2244bad743b4cfba765bb9.tar.gz
import: stackage: Updater resolves inputs lazily.
Fixes the "haskell-stackage" test in 'tests/lint.scm', which started failing with e6223017d95bc615b2648f0798d9a3904d5b5f57 because the extra HTTP GETs induced by the 'haskell-fetch' calls would fail. * guix/import/stackage.scm (latest-lts-release): Call 'hackage-fetch' and its continuation from within 'inputs', which is delayed. Pass it NAME-VERSION instead of HACKAGE-NAME-VERSION.
-rw-r--r--guix/import/stackage.scm7
1 files changed, 4 insertions, 3 deletions
diff --git a/guix/import/stackage.scm b/guix/import/stackage.scm
index f8b2726591..00814c7d46 100644
--- a/guix/import/stackage.scm
+++ b/guix/import/stackage.scm
@@ -158,13 +158,14 @@ PACKAGE or #f if the package is not included in the Stackage LTS release."
(warning (G_ "failed to parse ~a~%")
(hackage-cabal-url hackage-name))
#f)
- (_ (let ((url (hackage-source-url hackage-name version))
- (cabal (eval-cabal (hackage-fetch hackage-name) '())))
+ (_ (let ((url (hackage-source-url hackage-name version)))
(upstream-source
(package (package-name pkg))
(version version)
(urls (list url))
- (inputs (cabal-package-inputs cabal))))))))))
+ (inputs
+ (let ((cabal (eval-cabal (hackage-fetch name-version) '())))
+ (cabal-package-inputs cabal)))))))))))
(define (stackage-lts-package? package)
"Return whether PACKAGE is available on the default Stackage LTS release."