From 3b240b48c4c86aada491cfff2aacae9d0c38ce5d Mon Sep 17 00:00:00 2001 From: allegroai <> Date: Sun, 10 Oct 2021 09:06:07 +0300 Subject: [PATCH] Fix TQDM "line cleanup" not using CR but rather arrow-up escape sequence --- clearml/backend_interface/logger.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/clearml/backend_interface/logger.py b/clearml/backend_interface/logger.py index c4e8de2a..4250e0b5 100644 --- a/clearml/backend_interface/logger.py +++ b/clearml/backend_interface/logger.py @@ -204,7 +204,14 @@ class PrintPatchLogger(object): self._terminal.write(message) do_flush = '\n' in message + # check for CR character do_cr = '\r' in message + # check for "Escape Arrow-Up" character (tqdm's way of clearing a line) + if '\x1b[A' in message: + do_cr = True + # replace it with \r so it is more standard + message = message.replace('\x1b[A', '\r') + self._cur_line += message if not do_flush and do_cr and PrintPatchLogger.cr_flush_period and self._force_lf_flush: