From 3addff87c1f3c686ae528d47cbf6bad1e98032c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 2 Dec 2024 17:33:17 +0100 Subject: [PATCH] =?UTF-8?q?build-system/cargo:=20Simplify=20=E2=80=98crate?= =?UTF-8?q?-closure=E2=80=99.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/build-system/cargo.scm (crate-closure): Remove ‘first?’. Change-Id: Ica1a661eb422a882ae3a1a54819b2dd7d68449de --- guix/build-system/cargo.scm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm index 658a2e525efd7526586f4914a44c392e4ca95d6e..0e9a4b1d235b0b199b0d1444a851455b61dfe9ae 100644 --- a/guix/build-system/cargo.scm +++ b/guix/build-system/cargo.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2021 Ludovic Courtès +;;; Copyright © 2013-2016, 2019, 2021, 2024 Ludovic Courtès ;;; Copyright © 2013 Andreas Enge ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2016 David Craven @@ -227,24 +227,22 @@ do not extract the conventional inputs)." (let loop ((inputs inputs) (result '()) (propagated '()) - (first? #t) (seen vlist-null)) (match inputs (() (if (null? propagated) (reverse result) - (loop (reverse (concatenate propagated)) result '() #f seen))) + (loop (reverse (concatenate propagated)) result '() seen))) (((and input (label (? package? package))) rest ...) - (if (and (not first?) (seen? seen package)) - (loop rest result propagated first? seen) + (if (seen? seen package) + (loop rest result propagated seen) (loop rest (cons input result) (cons (package-cargo-inputs package) propagated) - first? (vhash-consq package package seen)))) ((input rest ...) - (loop rest (cons input result) propagated first? seen))))) + (loop rest (cons input result) propagated seen))))) (define (expand-crate-sources cargo-inputs cargo-development-inputs) "Extract all transitive sources for CARGO-INPUTS and CARGO-DEVELOPMENT-INPUTS