about summary refs log tree commit diff
path: root/src/libstore/build.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2017-10-24T13·05+0200
committerEelco Dolstra <edolstra@gmail.com>2017-10-24T13·32+0200
commit3460e4cf007017e89096b4fad083692666b87a20 (patch)
treef095fe9ebbcd1b46ad022fb5b30179f7de3c2dd0 /src/libstore/build.cc
parent96051dd057d46d5953b2fbe3de67269d175306dc (diff)
More progress indicator improvements
In particular, don't show superfluous "fetching path" and "building
path(s)" messages, and show the current round (with --repeat).
Diffstat (limited to 'src/libstore/build.cc')
-rw-r--r--src/libstore/build.cc22
1 files changed, 9 insertions, 13 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index 681879c6aa5f..856d516d2bb3 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -1402,9 +1402,15 @@ void DerivationGoal::tryToBuild()
     bool buildLocally = buildMode != bmNormal || drv->willBuildLocally();
 
     auto started = [&]() {
-        act = std::make_unique<Activity>(*logger, lvlInfo, actBuild,
-            hook ? fmt("building '%s' on '%s'", drvPath, machineName) : fmt("building '%s'", drvPath),
-            Logger::Fields{drvPath, hook ? machineName : ""});
+        auto msg = fmt(
+            buildMode == bmRepair ? "repairing outputs of '%s'" :
+            buildMode == bmCheck ? "checking outputs of '%s'" :
+            nrRounds > 1 ? "building '%s' (round %d/%d)" :
+            "building '%s'", drvPath, curRound, nrRounds);
+        fmt("building '%s'", drvPath);
+        if (hook) msg += fmt(" on '%s'", machineName);
+        act = std::make_unique<Activity>(*logger, lvlInfo, actBuild, msg,
+            Logger::Fields{drvPath, hook ? machineName : "", curRound, nrRounds});
         mcRunningBuilds = std::make_unique<MaintainCount<uint64_t>>(worker.runningBuilds);
         worker.updateProgress();
     };
@@ -1738,14 +1744,6 @@ int childEntry(void * arg)
 
 void DerivationGoal::startBuilder()
 {
-    auto f = format(
-        buildMode == bmRepair ? "repairing path(s) %1%" :
-        buildMode == bmCheck ? "checking path(s) %1%" :
-        nrRounds > 1 ? "building path(s) %1% (round %2%/%3%)" :
-        "building path(s) %1%");
-    f.exceptions(boost::io::all_error_bits ^ boost::io::too_many_args_bit);
-    printInfo(f % showPaths(missingPaths) % curRound % nrRounds);
-
     /* Right platform? */
     if (!drv->canBuildLocally()) {
         throw Error(
@@ -3601,8 +3599,6 @@ void SubstitutionGoal::tryToRun()
         return;
     }
 
-    printInfo(format("fetching path '%1%'...") % storePath);
-
     maintainRunningSubstitutions = std::make_unique<MaintainCount<uint64_t>>(worker.runningSubstitutions);
     worker.updateProgress();