mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
graph: %BAG-EMERGED-NODE-TYPE filters out origins.
Fixes <http://bugs.gnu.org/22280>.
Reported by Leo Famulari <leo@famulari.name>.
* guix/scripts/graph.scm (%bag-emerged-node-type)[edges]: Mimic
%BAG-NODE-TYPE. This is a followup to 38b92da
.
This commit is contained in:
parent
1ae858f333
commit
f88282af38
2 changed files with 12 additions and 8 deletions
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -171,7 +171,9 @@ (define %bag-emerged-node-type
|
||||||
(description "same as 'bag', but without the bootstrap nodes")
|
(description "same as 'bag', but without the bootstrap nodes")
|
||||||
(identifier bag-node-identifier)
|
(identifier bag-node-identifier)
|
||||||
(label node-full-name)
|
(label node-full-name)
|
||||||
(edges (lift1 bag-node-edges-sans-bootstrap %store-monad))))
|
(edges (lift1 (compose (cut filter package? <>)
|
||||||
|
bag-node-edges-sans-bootstrap)
|
||||||
|
%store-monad))))
|
||||||
|
|
||||||
|
|
||||||
;;;
|
;;;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -89,7 +89,9 @@ (define (edge->tuple source target)
|
||||||
|
|
||||||
(test-assert "bag-emerged DAG"
|
(test-assert "bag-emerged DAG"
|
||||||
(let-values (((backend nodes+edges) (make-recording-backend)))
|
(let-values (((backend nodes+edges) (make-recording-backend)))
|
||||||
(let ((p (dummy-package "p"))
|
(let* ((o (dummy-origin (method (lambda _
|
||||||
|
(text-file "foo" "bar")))))
|
||||||
|
(p (dummy-package "p" (source o)))
|
||||||
(implicit (map (match-lambda
|
(implicit (map (match-lambda
|
||||||
((label package) package))
|
((label package) package))
|
||||||
(standard-packages))))
|
(standard-packages))))
|
||||||
|
@ -98,7 +100,7 @@ (define (edge->tuple source target)
|
||||||
#:node-type %bag-emerged-node-type
|
#:node-type %bag-emerged-node-type
|
||||||
#:backend backend))
|
#:backend backend))
|
||||||
;; We should see exactly P and IMPLICIT, with one edge from P to each
|
;; We should see exactly P and IMPLICIT, with one edge from P to each
|
||||||
;; element of IMPLICIT.
|
;; element of IMPLICIT. O must not appear among NODES.
|
||||||
(let-values (((nodes edges) (nodes+edges)))
|
(let-values (((nodes edges) (nodes+edges)))
|
||||||
(and (equal? (match nodes
|
(and (equal? (match nodes
|
||||||
(((labels names) ...)
|
(((labels names) ...)
|
||||||
|
|
Loading…
Reference in a new issue