11"""A centralized logging system for any library
22
3- source code inspired by https://github.com/huggingface/transformers/blob/main/src/transformers/utils/logging.py
3+ source code inspired by https://gist. github.com/DiTo97/9a0377f24236b66134eb96da1ec1693f
44"""
5+
56import logging
67import os
78import sys
@@ -25,16 +26,17 @@ def _set_library_root_logger() -> None:
2526 global _default_handler
2627
2728 with _semaphore :
28- if _default_handler : return
29-
29+ if _default_handler :
30+ return
31+
3032 _default_handler = logging .StreamHandler () # sys.stderr as stream
31-
33+
3234 # https://github.com/pyinstaller/pyinstaller/issues/7334#issuecomment-1357447176
3335 if sys .stderr is None :
3436 sys .stderr = open (os .devnull , "w" )
3537
3638 _default_handler .flush = sys .stderr .flush
37-
39+
3840 library_root_logger = _get_library_root_logger ()
3941 library_root_logger .addHandler (_default_handler )
4042 library_root_logger .setLevel (_default_logging_level )
@@ -74,8 +76,8 @@ def set_verbosity_error() -> None:
7476
7577def set_verbosity_fatal () -> None :
7678 set_verbosity (logging .FATAL )
77-
78-
79+
80+
7981def set_handler (handler : logging .Handler ) -> None :
8082 _set_library_root_logger ()
8183
@@ -86,31 +88,31 @@ def set_handler(handler: logging.Handler) -> None:
8688
8789def set_default_handler () -> None :
8890 set_handler (_default_handler )
89-
90-
91+
92+
9193def unset_handler (handler : logging .Handler ) -> None :
9294 _set_library_root_logger ()
9395
9496 assert handler is not None
9597
9698 _get_library_root_logger ().removeHandler (handler )
97-
98-
99+
100+
99101def unset_default_handler () -> None :
100102 unset_handler (_default_handler )
101103
102104
103105def set_propagation () -> None :
104106 _get_library_root_logger ().propagate = True
105-
106-
107+
108+
107109def unset_propagation () -> None :
108110 _get_library_root_logger ().propagate = False
109-
110-
111+
112+
111113def set_formatting () -> None :
112114 """sets formatting for all handlers bound to the root logger
113-
115+
114116 ```
115117 [levelname|filename|line number] time >> message
116118 ```
@@ -121,17 +123,17 @@ def set_formatting() -> None:
121123
122124 for handler in _get_library_root_logger ().handlers :
123125 handler .setFormatter (formatter )
124-
126+
125127
126128def unset_formatting () -> None :
127129 for handler in _get_library_root_logger ().handlers :
128130 handler .setFormatter (None )
129-
131+
130132
131133@lru_cache (None )
132134def warning_once (self , * args , ** kwargs ):
133135 """emits warning logs with the same message only once"""
134136 self .warning (* args , ** kwargs )
135137
136138
137- logging .Logger .warning_once = warning_once
139+ logging .Logger .warning_once = warning_once
0 commit comments