diff mbox series

[swat-tools,1/2] swattool/review.py: show owner repartition in status bar

Message ID 20260115-status-bar-info-v1-1-1386e29bc87a@bootlin.com
State New
Headers show
Series Status bar improvements | expand

Commit Message

Antonin Godard Jan. 15, 2026, 2:18 p.m. UTC
Show the number of bugs per build owner when there's more than one
owner in the list of builds in the status bar, separated with a "|".

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
---
 swattool/review.py | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/swattool/review.py b/swattool/review.py
index a9af008..16a9b0f 100644
--- a/swattool/review.py
+++ b/swattool/review.py
@@ -191,6 +191,22 @@  class ReviewMenu:  # pylint: disable=too-many-instance-attributes
 
         return [c for c in commands if c != ""]
 
+    def _get_status_bar(self) -> str:
+        status_bar = f"Progress: {self.entry + 1}/{len(self.builds)}"
+
+        owners = set([b.owner for b in self.builds])
+        if len(owners) > 1:
+            status_bar += " |"
+            for owner in owners:
+                count = len([b for b in self.builds if b.owner == owner])
+                if owner is None:
+                    owner = "nobody"
+                status_bar += f" {owner}: {count},"
+            # remove trailing comma
+            status_bar = status_bar[:-1]
+
+        return status_bar
+
     def _show_menu(
         self,
         commands: list[str],
@@ -198,7 +214,7 @@  class ReviewMenu:  # pylint: disable=too-many-instance-attributes
         status_bar: str = "",
     ) -> Optional[str]:
         if not status_bar:
-            status_bar = f"Progress: {self.entry + 1}/{len(self.builds)}"
+            status_bar = self._get_status_bar()
         action_menu = TerminalMenu(
             commands,
             title="Action",