From 00dfff84c66c5c6aa4853684419a92befe55d4b4 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 15 Mar 2022 15:17:49 +0100 Subject: packages: 'modify-inputs' preserves outputs in 'replace' clauses. Fixes . Reported by Gordon Quad . * guix/packages.scm (replace-input): Preserve the outputs of INPUT by default. * tests/packages.scm ("modify-inputs, replace, extra output"): New test. --- tests/packages.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'tests/packages.scm') diff --git a/tests/packages.scm b/tests/packages.scm index 2cb90d3145..710eace6dc 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1982,6 +1982,21 @@ (define (list->set* lst) ((("coreutils" input "out")) input)))) +(test-eq "modify-inputs, replace, extra output" + guile-3.0 + ;; Replace an input; notice that its output is preserved. + ;; See . + (let* ((p1 (dummy-package "p" + (inputs (list `(,coreutils "debug"))))) + (p2 (package + (inherit p1) + (version "1") + (inputs (modify-inputs (package-inputs p1) + (replace "coreutils" guile-3.0)))))) + (match (package-inputs p2) + ((("coreutils" input "debug")) + input)))) + (test-end "packages") ;;; Local Variables: -- cgit v1.2.3