[Top][All Lists]

[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 07:25:02 +0100
User-agent: mu4e 1.0; emacs 26.1

Hi Vagrant,

> On 2018-12-29, Ricardo Wurmus wrote:
>> 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?
> Are you proposing that the spinner spins even when there's no indication
> that anything is actually happening? Or is there some source of
> information other than the build log output?

The build log is all we’ve got.  I do propose to spin even when no new
line has been produced.

> To me, it would make sense that the spinner should stop spinning if the
> build is stuck or just not very active... otherwise, it's not providing
> useful information to the person watching...

It is providing useful information, namely that Guix itself is still
running and not stuck.  It shows that the build is still going on, even
if the build consisted of “sleep 100000” statements :)

Guix eventually aborts the build after a certain amount of silence.
Since the last line that is printed and the timeout all a user of “guix
package -i” sees is a stuck spinner; a user of “guix build” will at
least see the last lines of build output and can guess what this means
for expected delays.

My goal is to provide assurances to the user of “guix package -i” that
Guix is not “stuck”, to remove the doubt that a long uncommunicative
build can bring.  (People who want to know details would increase
verbosity anyway.)  Spinning while Guix is waiting for build output from
the daemon seems like a good way to accomplish that to me.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]