From c0088fb96e4dbc25bc6fc35be93c8a81c526429f Mon Sep 17 00:00:00 2001
From: Iustin Pop <iustin@google.com>
Date: Tue, 21 Oct 2008 15:45:28 +0000
Subject: [PATCH] Improve the mcpu.Processor logging routines
As discussed previously, many of the routinges in cmdlib.py are using
logging functions as a carry-over from 1.2 (when these also showed the
message on stderr/to the user), instead of actually warning the user.
This patch extends the syntax for Processor.LogInfo/LogWarning in order
to be easier to use them.
Reviewed-by: imsnah
---
lib/mcpu.py | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
diff --git a/lib/mcpu.py b/lib/mcpu.py
index a36182658..70816a593 100644
--- a/lib/mcpu.py
+++ b/lib/mcpu.py
@@ -220,19 +220,31 @@ class Processor(object):
logging.debug("Step %d/%d %s", current, total, message)
self._feedback_fn("STEP %d/%d %s" % (current, total, message))
- def LogWarning(self, message, hint=None):
+ def LogWarning(self, message, *args, **kwargs):
"""Log a warning to the logs and the user.
- """
- logging.warning(message)
- self._feedback_fn(" - WARNING: %s" % message)
- if hint:
- self._feedback_fn(" Hint: %s" % hint)
+ The optional keyword argument is 'hint' and can be used to show a
+ hint to the user (presumably related to the warning). If the
+ message is empty, it will not be printed at all, allowing one to
+ show only a hint.
- def LogInfo(self, message):
+ """
+ assert not kwargs or (len(kwargs) == 1 and "hint" in kwargs), \
+ "Invalid keyword arguments for LogWarning (%s)" % str(kwargs)
+ if args:
+ message = message % tuple(args)
+ if message:
+ logging.warning(message)
+ self._feedback_fn(" - WARNING: %s" % message)
+ if "hint" in kwargs:
+ self._feedback_fn(" Hint: %s" % kwargs["hint"])
+
+ def LogInfo(self, message, *args):
"""Log an informational message to the logs and the user.
"""
+ if args:
+ message = message % tuple(args)
logging.info(message)
self._feedback_fn(" - INFO: %s" % message)
--
GitLab