mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
upstream: Try the generic importers last.
* guix/upstream.scm (%updaters): Ensure the updaters with a name starting by 'generic' appear last in the list. Fixes: <https://issues.guix.gnu.org/73508> Change-Id: I98977f6c925c14303273755b5b4dc36035f78bda
This commit is contained in:
parent
7b6ab9ebe7
commit
119febc275
1 changed files with 21 additions and 9 deletions
|
@ -48,6 +48,7 @@
|
|||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (srfi srfi-71)
|
||||
#:use-module (rnrs bytevectors)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 regex)
|
||||
|
@ -226,15 +227,26 @@ correspond to the same version."
|
|||
(define %updaters
|
||||
;; The list of publically-known updaters, alphabetically sorted.
|
||||
(delay
|
||||
(sort (fold-module-public-variables (lambda (obj result)
|
||||
(if (upstream-updater? obj)
|
||||
(cons obj result)
|
||||
result))
|
||||
'()
|
||||
(importer-modules))
|
||||
(lambda (updater1 updater2)
|
||||
(string<? (symbol->string (upstream-updater-name updater1))
|
||||
(symbol->string (upstream-updater-name updater2)))))))
|
||||
(let* ((updaters
|
||||
(sort (fold-module-public-variables
|
||||
(lambda (obj result)
|
||||
(if (upstream-updater? obj)
|
||||
(cons obj result)
|
||||
result))
|
||||
'()
|
||||
(importer-modules))
|
||||
(lambda (updater1 updater2)
|
||||
(string<?
|
||||
(symbol->string (upstream-updater-name updater1))
|
||||
(symbol->string (upstream-updater-name updater2))))))
|
||||
(generic-updaters rest (partition
|
||||
(compose (cut string-prefix? "generic" <>)
|
||||
symbol->string
|
||||
upstream-updater-name)
|
||||
updaters)))
|
||||
;; Ensure the generic updaters are tried last, as otherwise they could
|
||||
;; return less accurate results.
|
||||
(append rest generic-updaters))))
|
||||
|
||||
;; Tests need to mock this variable so mark it as "non-declarative".
|
||||
(set! %updaters %updaters)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue