aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-01-10 00:39:59 +0100
committerLudovic Courtès <ludo@gnu.org>2015-01-10 00:39:59 +0100
commite9651e39b315035eb9e87888155f8d6e33ef0567 (patch)
tree55f76cd433d53d58130e654ae949977d787ced55 /tests
parent0b6af195fe7476a15e498b24c67f9d8f6080a400 (diff)
downloadgnu-guix-e9651e39b315035eb9e87888155f8d6e33ef0567.tar
gnu-guix-e9651e39b315035eb9e87888155f8d6e33ef0567.tar.gz
derivations: Add 'substitution-oracle' and use it.
This makes 'guix environment PACKAGE' significantly faster when substitutes are enabled. Before that, it would lead to many invocations of 'guix substitute-binary', one per 'derivation-prerequisites-to-build' call. Now, all these are replaced by a single invocation. * guix/derivations.scm (derivation-output-paths, substitution-oracle): New procedures. (derivation-prerequisites-to-build): Replace #:use-substitutes? with #:substitutable?. Remove the local 'derivation-output-paths' and 'substitutable?'. * guix/ui.scm (show-what-to-build): Add 'substitutable?'. Pass it to 'derivation-prerequisites-to-build'. [built-or-substitutable?]: Use it instead of 'has-substitutes?'. * tests/derivations.scm ("derivation-prerequisites-to-build and substitutes"): Use #:substitutable? instead of #:use-substitutes?.
Diffstat (limited to 'tests')
-rw-r--r--tests/derivations.scm3
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/derivations.scm b/tests/derivations.scm
index 25e6f75657..8e592ab6a1 100644
--- a/tests/derivations.scm
+++ b/tests/derivations.scm
@@ -589,7 +589,8 @@
(derivation-prerequisites-to-build store drv))
((build* download*)
(derivation-prerequisites-to-build store drv
- #:use-substitutes? #f)))
+ #:substitutable?
+ (const #f))))
(and (null? build)
(equal? download (list output))
(null? download*)