* [PATCH] knotty: Allow displaying of status when no tasks are active
@ 2012-09-27 22:06 Richard Purdie
2012-09-27 23:06 ` [PATCH v2] " Richard Purdie
0 siblings, 1 reply; 2+ messages in thread
From: Richard Purdie @ 2012-09-27 22:06 UTC (permalink / raw)
To: bitbake-devel
The console can appear to hang when no tasks are executing even if bitbake
is iterating through a large number of tasks behind the scenes.
This patch tweaks the footer code to display a status even when no tasks
are active to give the user better feedback about what is happening.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py
index d81ad5d..1ec24d4 100644
--- a/bitbake/lib/bb/ui/knotty.py
+++ b/bitbake/lib/bb/ui/knotty.py
@@ -183,11 +183,11 @@ class TerminalFilter(object):
activetasks = self.helper.running_tasks
failedtasks = self.helper.failed_tasks
runningpids = self.helper.running_pids
- if self.footer_present and (self.lastpids == runningpids):
+ if self.footer_present and (self.lastcount == self.helper.tasknumber_current):
return
if self.footer_present:
self.clearFooter()
- if not activetasks:
+ if not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total:
return
tasks = []
for t in runningpids:
@@ -195,6 +195,8 @@ class TerminalFilter(object):
if self.main.shutdown:
content = "Waiting for %s running tasks to finish:" % len(activetasks)
+ elif not len(activetasks):
+ content = "No currently running tasks (%s of %s)" % (self.helper.tasknumber_current, self.helper.tasknumber_total)
else:
content = "Currently %s running tasks (%s of %s):" % (len(activetasks), self.helper.tasknumber_current, self.helper.tasknumber_total)
print content
@@ -204,7 +206,7 @@ class TerminalFilter(object):
print content
lines = lines + 1 + int(len(content) / (self.columns + 1))
self.footer_present = lines
- self.lastpids = runningpids[:]
+ self.lastcount = self.helper.tasknumber_current
def finish(self):
if self.stdinbackup:
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH v2] knotty: Allow displaying of status when no tasks are active
2012-09-27 22:06 [PATCH] knotty: Allow displaying of status when no tasks are active Richard Purdie
@ 2012-09-27 23:06 ` Richard Purdie
0 siblings, 0 replies; 2+ messages in thread
From: Richard Purdie @ 2012-09-27 23:06 UTC (permalink / raw)
To: bitbake-devel
From f44c74bd864ca183590dbb2931fe3033c908ea16 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 27 Sep 2012 21:56:02 +0000
Subject: knotty: Allow displaying of status when no tasks are active
The console can appear to hang when no tasks are executing even if bitbake
is iterating through a large number of tasks behind the scenes.
This patch tweaks the footer code to display a status even when no tasks
are active to give the user better feedback about what is happening.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py
index d81ad5d..3799018 100644
--- a/bitbake/lib/bb/ui/knotty.py
+++ b/bitbake/lib/bb/ui/knotty.py
@@ -183,11 +183,11 @@ class TerminalFilter(object):
activetasks = self.helper.running_tasks
failedtasks = self.helper.failed_tasks
runningpids = self.helper.running_pids
- if self.footer_present and (self.lastpids == runningpids):
+ if self.footer_present and (self.lastcount == self.helper.tasknumber_current) and (self.lastpids == runningpids):
return
if self.footer_present:
self.clearFooter()
- if not activetasks:
+ if not self.helper.tasknumber_total or self.helper.tasknumber_current == self.helper.tasknumber_total:
return
tasks = []
for t in runningpids:
@@ -195,6 +195,8 @@ class TerminalFilter(object):
if self.main.shutdown:
content = "Waiting for %s running tasks to finish:" % len(activetasks)
+ elif not len(activetasks):
+ content = "No currently running tasks (%s of %s)" % (self.helper.tasknumber_current, self.helper.tasknumber_total)
else:
content = "Currently %s running tasks (%s of %s):" % (len(activetasks), self.helper.tasknumber_current, self.helper.tasknumber_total)
print content
@@ -205,6 +207,7 @@ class TerminalFilter(object):
lines = lines + 1 + int(len(content) / (self.columns + 1))
self.footer_present = lines
self.lastpids = runningpids[:]
+ self.lastcount = self.helper.tasknumber_current
def finish(self):
if self.stdinbackup:
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-09-27 23:19 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-27 22:06 [PATCH] knotty: Allow displaying of status when no tasks are active Richard Purdie
2012-09-27 23:06 ` [PATCH v2] " Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.