[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: keep spinning even without new line
From: |
Ricardo Wurmus |
Subject: |
Re: keep spinning even without new line |
Date: |
Sun, 30 Dec 2018 01:21:07 +0100 |
User-agent: |
mu4e 1.0; emacs 26.1 |
Ricardo Wurmus <address@hidden> writes:
> Hi Guix,
>
> when using “guix package -i” the build log lines are replaced with a
> spinner character. In some cases, the build log does not produce new
> lines for a long time, so that the spinner appears to be stuck.
>
> What do you think of advancing the spinner even when the build log is
> not verbose enough to trigger the display of the next character? How
> can this be accomplished?
One way to accomplish this is to generate periodic “(build-log
heartbeat)” events, so that “print-build-event” in (guix status) only
needs to advance the spinner when the last event was a build-log event.
Currently, events are produced only by “build-event-output-port”, which
generates them when processing build trace strings sent by the daemon.
I don’t really want to change the daemon to intersperse the actual build
output with heartbeat traces, so maybe a timer should generate these
events in “build-event-output-port” or even earlier in “process-stderr”.
“process-stderr” is probably too low-level, and there’s a chance that
injecting output there would corrupt the output sent by the daemon.
Any better ideas?
--
Ricardo