From 1026c43a68e557e287072b3df2bd79b7f0bf9859 Mon Sep 17 00:00:00 2001 From: Dariusz Duda Date: Wed, 23 Apr 2025 13:09:20 +0200 Subject: [PATCH 1/2] chore: add example of logger plus emitter Signed-off-by: Dariusz Duda --- examples.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/examples.py b/examples.py index c432fb85..24371b6f 100755 --- a/examples.py +++ b/examples.py @@ -521,6 +521,21 @@ def example_31(): time.sleep(6) raise CraftError("Error 1\nError 2") +def example_32(): + """Logger affects emitter.""" + logger = logging.getLogger("test") + logger.setLevel(logging.DEBUG) + logger.addHandler(logging.StreamHandler()) + # emit.set_mode(EmitterMode.BRIEF) + + emit.progress("Shorter message") + logger.debug("Message from external logger 1") + emit.progress("Another message") + time.sleep(1) + emit.progress("Interminient message", permanent=True) + logger.debug("Message from external logger 2") + time.sleep(1) + emit.message("Final message") # -- end of test cases From f250fcd03364808b34f00528271078b677d1899b Mon Sep 17 00:00:00 2001 From: Dariusz Duda Date: Tue, 29 Apr 2025 11:27:00 +0200 Subject: [PATCH 2/2] chore: simple reproduction example Signed-off-by: Dariusz Duda --- examples.py | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/examples.py b/examples.py index 24371b6f..43c5cb1a 100755 --- a/examples.py +++ b/examples.py @@ -521,21 +521,27 @@ def example_31(): time.sleep(6) raise CraftError("Error 1\nError 2") + def example_32(): """Logger affects emitter.""" - logger = logging.getLogger("test") + logger = logging.getLogger() + # This doesn't work (streaming_brief=True) + emit.init(EmitterMode.BRIEF, "explorator", "Greetings earthlings", streaming_brief=True) + # This works + # emit.init(EmitterMode.BRIEF, "explorator", "Greetings earthlings") logger.setLevel(logging.DEBUG) - logger.addHandler(logging.StreamHandler()) - # emit.set_mode(EmitterMode.BRIEF) - emit.progress("Shorter message") - logger.debug("Message from external logger 1") - emit.progress("Another message") - time.sleep(1) - emit.progress("Interminient message", permanent=True) - logger.debug("Message from external logger 2") - time.sleep(1) - emit.message("Final message") + # it only fails if following message contains whitespace characters inside string + logger.info("Message from external logger 2") + + # examples of failing cases + # emit.progress("Final\tmessage") + emit.message("Final message\nMultiline") + + # but those would work + # emit.message("Single message") + # emit.progress("Final message\n") + # -- end of test cases @@ -549,7 +555,7 @@ def example_32(): print(f"ERROR: function {name!r} not found") exit() -if int(sys.argv[1]) != 29: +if int(sys.argv[1]) not in (29, 32): emit.init(EmitterMode.BRIEF, "explorator", "Greetings earthlings") try: func(*sys.argv[2:])