1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-19 10:50:24 -04:00

Compute fingerprint only if needed

As per Eelco's review comments

Co-authored-by: Eelco Dolstra <edolstra@gmail.com>
This commit is contained in:
Guillaume Maudoux 2024-04-25 00:44:47 +02:00 committed by GitHub
parent a60a1f09b2
commit 1c4e392c64
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -443,9 +443,8 @@ ref<eval_cache::EvalCache> openEvalCache(
EvalState & state, EvalState & state,
std::shared_ptr<flake::LockedFlake> lockedFlake) std::shared_ptr<flake::LockedFlake> lockedFlake)
{ {
auto fingerprint = lockedFlake->getFingerprint(state.store); auto fingerprint = evalSettings.useEvalCache && evalSettings.pureEval
auto hash = evalSettings.useEvalCache && evalSettings.pureEval ? lockedFlake->getFingerprint(state.store)
? fingerprint
: std::nullopt; : std::nullopt;
auto rootLoader = [&state, lockedFlake]() auto rootLoader = [&state, lockedFlake]()
{ {
@ -472,7 +471,7 @@ ref<eval_cache::EvalCache> openEvalCache(
} }
return search->second; return search->second;
} else { } else {
return make_ref<nix::eval_cache::EvalCache>(hash, state, rootLoader); return make_ref<nix::eval_cache::EvalCache>(std::nullopt, state, rootLoader);
} }
} }