lint: 'source' check no longer complains about unavailable mirrors.
Fixes a regression introduced in
50fc2384fe
.
Previously, 'guix lint -c source coreutils' would complain if one of the
mirrors was unavailable. This is no longer the case.
* guix/lint.scm (check-source)[warnings-for-uris]: Use 'filter-map'.
Remove 'append-map' call.
Use 'append-map' here so that we can meaningfull compare the length or
URIS and that of WARNINGS.
Use '=' to compare lengths.
master
parent
571f6e7f4f
commit
848ae71ea7
|
@ -742,21 +742,21 @@ descriptions maintained upstream."
|
|||
"Emit a warning if PACKAGE has an invalid 'source' field, or if that
|
||||
'source' is not reachable."
|
||||
(define (warnings-for-uris uris)
|
||||
(filter lint-warning?
|
||||
(map
|
||||
(lambda (uri)
|
||||
(validate-uri uri package 'source))
|
||||
(append-map (cut maybe-expand-mirrors <> %mirrors)
|
||||
uris))))
|
||||
(filter-map (lambda (uri)
|
||||
(match (validate-uri uri package 'source)
|
||||
(#t #f)
|
||||
((? lint-warning? warning) warning)))
|
||||
uris))
|
||||
|
||||
(let ((origin (package-source package)))
|
||||
(if (and origin
|
||||
(eqv? (origin-method origin) url-fetch))
|
||||
(let* ((uris (map string->uri (origin-uris origin)))
|
||||
(let* ((uris (append-map (cut maybe-expand-mirrors <> %mirrors)
|
||||
(map string->uri (origin-uris origin))))
|
||||
(warnings (warnings-for-uris uris)))
|
||||
|
||||
;; Just make sure that at least one of the URIs is valid.
|
||||
(if (eq? (length uris) (length warnings))
|
||||
(if (= (length uris) (length warnings))
|
||||
;; When everything fails, report all of WARNINGS, otherwise don't
|
||||
;; report anything.
|
||||
;;
|
||||
|
|
Reference in New Issue