From 38253bf138c4bff3862e32b29de5b52c3ddfe283 Mon Sep 17 00:00:00 2001 From: Alec Robertson Date: Mon, 23 Feb 2026 10:28:41 -0800 Subject: [PATCH 1/2] Declare global levels explicitly. --- adafruit_logging.py | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/adafruit_logging.py b/adafruit_logging.py index 0b135aa..8e389eb 100644 --- a/adafruit_logging.py +++ b/adafruit_logging.py @@ -100,18 +100,24 @@ def write(self, buf: str) -> int: # The level module-global variables get created when loaded +CRITICAL: int = 50 +FATAL = CRITICAL +ERROR: int = 40 +WARNING: int = 30 +WARN = WARNING +INFO: int = 20 +DEBUG: int = 10 +NOTSET: int = 0 + LEVELS = [ - (00, "NOTSET"), - (10, "DEBUG"), - (20, "INFO"), - (30, "WARNING"), - (40, "ERROR"), - (50, "CRITICAL"), + (NOTSET, "NOTSET"), + (DEBUG, "DEBUG"), + (INFO, "INFO"), + (WARNING, "WARNING"), + (ERROR, "ERROR"), + (CRITICAL, "CRITICAL"), ] -for __value, __name in LEVELS: - globals()[__name] = __value - def _level_for(value: int) -> str: """Convert a numeric level to the most appropriate name. From 6c4f1d9781b871276bba331d88006e0758be6a98 Mon Sep 17 00:00:00 2001 From: Alec Robertson Date: Tue, 24 Feb 2026 09:23:33 -0800 Subject: [PATCH 2/2] Fix some type issues. --- adafruit_logging.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/adafruit_logging.py b/adafruit_logging.py index 8e389eb..301dabc 100644 --- a/adafruit_logging.py +++ b/adafruit_logging.py @@ -170,7 +170,7 @@ def __init__( datefmt: Optional[str] = None, style: str = "%", validate: bool = True, - defaults: Dict = None, + defaults=None, ): self.fmt = fmt self.datefmt = datefmt @@ -269,7 +269,7 @@ class StreamHandler(Handler): terminator = "\n" - def __init__(self, stream: Optional[WriteableStream] = None) -> None: + def __init__(self, stream: WriteableStream | None = None) -> None: super().__init__() if stream is None: stream = sys.stderr @@ -399,7 +399,7 @@ def doRollover(self) -> None: # Reopen the file. self.stream = open(self._LogFileName, mode=self._WriteMode) - def GetLogSize(self) -> int: + def GetLogSize(self) -> int | None: """Check the size of the log file.""" try: self.stream.flush() # We need to call this or the file size is always zero. @@ -417,8 +417,10 @@ def emit(self, record: LogRecord) -> None: :param record: The record (message object) to be logged """ + logsize: int | None = self.GetLogSize() if ( - (self.GetLogSize() >= self._maxBytes) + (logsize is not None) + and (logsize >= self._maxBytes) and (self._maxBytes > 0) and (self._backupCount > 0) ):