From fcb9eebf6a0f3ff4d053000561816d91a23c3a14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20M=C3=BCller?= Date: Mon, 20 Jan 2025 11:46:09 +0100 Subject: [PATCH] Make scripts compatible with Python 3.13 --- scripts/pyivastest/IvasBaseClass.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/scripts/pyivastest/IvasBaseClass.py b/scripts/pyivastest/IvasBaseClass.py index c7c734c5c9..75eddb2a8a 100644 --- a/scripts/pyivastest/IvasBaseClass.py +++ b/scripts/pyivastest/IvasBaseClass.py @@ -134,15 +134,25 @@ class IvasLogger(logging.Logger): def getIvasLogger(name=None): + try: + # Python 3.13+ + acquireLock, releaseLock = logging._prepareFork, logging._afterFork + except AttributeError: + # Python <= 3.12 + acquireLock, releaseLock = logging._acquireLock, logging._releaseLock + logging_class = logging.getLoggerClass() - logging._acquireLock() + + acquireLock() + try: logging.setLoggerClass(IvasLogger) logger = logging.getLogger(name) logging.setLoggerClass(logging_class) return logger + finally: - logging._releaseLock() + releaseLock() class IvasBaseClass(object): -- GitLab