aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-02-07 15:42:18 +0100
committerLudovic Courtès <ludo@gnu.org>2019-02-07 15:46:45 +0100
commit024d5275c5cd72c0121b4f70d64c63f859a68f17 (patch)
tree0e8bcf52ec176f4f197f4b5d2bd099af12d6b698
parent9c6124f8297cfffb7c754f109882f8962ba56ef2 (diff)
downloadguix-024d5275c5cd72c0121b4f70d64c63f859a68f17.tar
guix-024d5275c5cd72c0121b4f70d64c63f859a68f17.tar.gz
status: Do not systematically erase the previous line.
After a successful download, we'd erase the download-progress line, and the end result would be two empty lines following the "downloading …" line. Reported by Ricardo Wurmus <rekado@elephly.net> at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33470#27>. * guix/status.scm (print-build-event)[erase-current-line*]: Set to a no-op when PRINT-LOG? is true. Move calls to 'erase-current-line*' to the 'build-succeeded' and 'build-failed' events.
-rw-r--r--guix/status.scm8
1 files changed, 4 insertions, 4 deletions
diff --git a/guix/status.scm b/guix/status.scm
index 984f329964..cd5027ef17 100644
--- a/guix/status.scm
+++ b/guix/status.scm
@@ -498,14 +498,12 @@ addition to build events."
(spin! #f port))))))
(define erase-current-line*
- (if (isatty?* port)
- (lambda (port)
+ (if (and (not print-log?) (isatty?* port))
+ (lambda ()
(erase-current-line port)
(force-output port))
(const #t)))
- (unless print-log?
- (erase-current-line* port)) ;clear the spinner or progress bar
(match event
(('build-started drv . _)
(let ((properties (derivation-properties
@@ -530,6 +528,7 @@ addition to build events."
(format port (info (G_ "building ~a...")) drv))))
(newline port))
(('build-succeeded drv . _)
+ (erase-current-line*) ;erase spinner or progress bar
(when (or print-log? (not (extended-build-trace-supported?)))
(format port (success (G_ "successfully built ~a")) drv)
(newline port))
@@ -542,6 +541,7 @@ addition to build events."
(length ongoing))
(map build-derivation ongoing)))))
(('build-failed drv . _)
+ (erase-current-line*) ;erase spinner or progress bar
(format port (failure (G_ "build of ~a failed")) drv)
(newline port)
(match (derivation-log-file drv)