civodul pushed a commit to branch master
in repository guix.

commit e856177597b5a7f1b75bb4083ad1e0b50323c82e
Author: Ludovic Courtès <[email protected]>
Date:   Tue Apr 16 11:42:18 2019 +0200

    derivations: Reduce 'valid-path?' RPCs in 
'derivation-prerequisites-to-build'.
    
    On a profile with 280 packages, this reduces the number of
    'valid-paths?' RPCs made by 'guix package -nu' from 6K to 500.
    
    * guix/derivations.scm (derivation-prerequisites-to-build)[built?]:
    Memoize 'valid-path?' calls.
---
 guix/derivations.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/guix/derivations.scm b/guix/derivations.scm
index fb2fa17..7a5c3bc 100644
--- a/guix/derivations.scm
+++ b/guix/derivations.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès 
<[email protected]>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès 
<[email protected]>
 ;;; Copyright © 2016, 2017 Mathieu Lirzin <[email protected]>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -344,7 +344,8 @@ OUTPUTS of DRV and not already available in STORE, 
recursively, and the list
 of required store paths that can be substituted.  SUBSTITUTABLE-INFO must be a
 one-argument procedure similar to that returned by 'substitution-oracle'."
   (define built?
-    (cut valid-path? store <>))
+    (mlambda (item)
+      (valid-path? store item)))
 
   (define input-built?
     (compose (cut any built? <>) derivation-input-output-paths))

Reply via email to