mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-01-31 23:06:59 +01:00
download: Restore error reporting.
Normal error reporting was disrupted by the introduction of
Disarchive in commit fbc2a52a32
. In
particular, running 'guix download' would succeed with a partially
downloaded file.
* guix/build/download.scm (disarchive-fetch/any): Return '#f' when
Disarchive cannot be found, the specification cannot be found, or
Disarchive fails due to an error.
This commit is contained in:
parent
0b77d36ad0
commit
7262619d6f
1 changed files with 6 additions and 5 deletions
|
@ -662,14 +662,15 @@ (define (resolve addresses output)
|
||||||
(lambda (disarchive)
|
(lambda (disarchive)
|
||||||
(cons (module-ref disarchive '%disarchive-log-port)
|
(cons (module-ref disarchive '%disarchive-log-port)
|
||||||
(module-ref disarchive 'disarchive-assemble))))
|
(module-ref disarchive 'disarchive-assemble))))
|
||||||
(#f
|
(#f (format #t "could not load Disarchive~%")
|
||||||
(format #t "could not load Disarchive~%"))
|
#f)
|
||||||
((%disarchive-log-port . disarchive-assemble)
|
((%disarchive-log-port . disarchive-assemble)
|
||||||
(match (fetch-specification uris)
|
(match (fetch-specification uris)
|
||||||
(#f
|
(#f (format #t "could not find its Disarchive specification~%")
|
||||||
(format #t "could not find its Disarchive specification~%"))
|
#f)
|
||||||
(spec (parameterize ((%disarchive-log-port (current-output-port)))
|
(spec (parameterize ((%disarchive-log-port (current-output-port)))
|
||||||
(disarchive-assemble spec file #:resolver resolve)))))))
|
(false-if-exception*
|
||||||
|
(disarchive-assemble spec file #:resolver resolve))))))))
|
||||||
|
|
||||||
(define* (url-fetch url file
|
(define* (url-fetch url file
|
||||||
#:key
|
#:key
|
||||||
|
|
Loading…
Reference in a new issue