unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#34228] [PATCH 0/5] Display a progress bar for on-going builds
@ 2019-01-27 22:14 Ludovic Courtès
  2019-01-27 22:26 ` [bug#34228] [PATCH 1/5] status: Record more information about builds Ludovic Courtès
  2019-01-29 11:11 ` bug#34228: [PATCH 0/5] Display a progress bar for on-going builds Ludovic Courtès
  0 siblings, 2 replies; 8+ messages in thread
From: Ludovic Courtès @ 2019-01-27 22:14 UTC (permalink / raw)
  To: 34228

Hello Guix!

Some build tools (CMake, Ninja, GHC, etc.) emit progress reports
like “[ 3/42]”.  This patch series is about making use of them
to display a progress bar for on-going builds on --verbosity=1.

This can be tested for example with ‘ghc-libmpd’, ‘hugin’,
‘libinput’, or with our ‘module-import-compiled.drv’.  With
‘libinput’ and ‘hugin’ you get a second progress bar starting
anew for the tests, but that’s reasonable I think.  Eventually,
we could prefix the progress bar by the name of the build phase.

The completion percentage is kept in <build> records referenced
by the <build-status> record.  Then we simply display it as
needed.  (guix self) will now also emit appropriate progress
reports so that ‘guix pull -v1’ is able to print progress bars.

(I had initially implemented it with <build-status> unchanged
and arranged to do the regexp-matching dance only upon ‘-v1’,
but the implementation turned out to be somewhat ugly and it’s
probably OK to regexp-exec build output lines in general—we
already do it for colorization anyway.)

Feedback welcome!

Ludo’.

Ludovic Courtès (5):
  status: Record more information about builds.
  status: Keep track of build completion as reported by build tools.
  status: Print a progress bar for on-going builds when possible.
  self: Produce progress reports compatible with (guix status).
  pull: Default to verbosity level 1.

 guix/scripts/pull.scm |   2 +-
 guix/self.scm         |  18 +++--
 guix/status.scm       | 157 +++++++++++++++++++++++++++++++++++-------
 tests/status.scm      |  59 ++++++++++++----
 4 files changed, 195 insertions(+), 41 deletions(-)

-- 
2.20.1

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-01-29 11:51 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-27 22:14 [bug#34228] [PATCH 0/5] Display a progress bar for on-going builds Ludovic Courtès
2019-01-27 22:26 ` [bug#34228] [PATCH 1/5] status: Record more information about builds Ludovic Courtès
2019-01-27 22:26   ` [bug#34228] [PATCH 2/5] status: Keep track of build completion as reported by build tools Ludovic Courtès
2019-01-27 22:26   ` [bug#34228] [PATCH 3/5] status: Print a progress bar for on-going builds when possible Ludovic Courtès
2019-01-27 22:26   ` [bug#34228] [PATCH 4/5] self: Produce progress reports compatible with (guix status) Ludovic Courtès
2019-01-27 22:26   ` [bug#34228] [PATCH 5/5] pull: Default to verbosity level 1 Ludovic Courtès
2019-01-29 11:11 ` bug#34228: [PATCH 0/5] Display a progress bar for on-going builds Ludovic Courtès
2019-01-29 11:49   ` [bug#34228] " Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).