From 8ebee6e6debda5b64c9424930446b7039eaea60b Mon Sep 17 00:00:00 2001 From: David Francos Date: Thu, 17 Sep 2020 00:51:46 +0200 Subject: [PATCH 1/3] fix: #396 Kodi's LOGNOTICE loglevel is deprecated KODI recenly deprecated LOGNOTICE (as per https://github.com/xbmc/xbmc/pull/18346) and announced that LOGINFO should be used instead. LOGINFO has been available since kodi matrix's migration to spdlog in april 2020. --- jellyfin_kodi/helper/loghandler.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jellyfin_kodi/helper/loghandler.py b/jellyfin_kodi/helper/loghandler.py index 97842584..86200632 100644 --- a/jellyfin_kodi/helper/loghandler.py +++ b/jellyfin_kodi/helper/loghandler.py @@ -61,7 +61,7 @@ class LogHandler(logging.StreamHandler): for token in self.sensitive['Token']: string = string.replace(token or "{token}", "{jellyfin-token}") - xbmc.log(string, level=xbmc.LOGNOTICE) + xbmc.log(string, level=xbmc.LOGINFO) @classmethod def _get_log_level(cls, level): From cf1ee30e1832ec620ddc250372ebad276fdf05f1 Mon Sep 17 00:00:00 2001 From: David Francos Date: Thu, 17 Sep 2020 10:29:53 +0200 Subject: [PATCH 2/3] fix: #396 Brough back kodi 18 lognotice compat. Kodi 18 seems to not log LOGINFO messages, this approach uses LOGNOTICE if its available and LOGINFO otherwise, ensuring compatibility without needing to check for kodi versions --- jellyfin_kodi/helper/loghandler.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jellyfin_kodi/helper/loghandler.py b/jellyfin_kodi/helper/loghandler.py index 86200632..a9949f94 100644 --- a/jellyfin_kodi/helper/loghandler.py +++ b/jellyfin_kodi/helper/loghandler.py @@ -61,7 +61,8 @@ class LogHandler(logging.StreamHandler): for token in self.sensitive['Token']: string = string.replace(token or "{token}", "{jellyfin-token}") - xbmc.log(string, level=xbmc.LOGINFO) + xbmc.log(string, level=getattr(xbmc, 'LOGNOTICE', xbmc.LOGINFO)) + @classmethod def _get_log_level(cls, level): From ad941ae483013573a9d8c316423e941fcab32841 Mon Sep 17 00:00:00 2001 From: David Francos Date: Thu, 17 Sep 2020 10:38:22 +0200 Subject: [PATCH 3/3] fix: #396 Using kodi_version to determine loglevel --- jellyfin_kodi/helper/loghandler.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/jellyfin_kodi/helper/loghandler.py b/jellyfin_kodi/helper/loghandler.py index a9949f94..5962cdc9 100644 --- a/jellyfin_kodi/helper/loghandler.py +++ b/jellyfin_kodi/helper/loghandler.py @@ -14,6 +14,7 @@ import database from helper import get_filesystem_encoding from . import settings +from . import kodi_version ################################################################################################## @@ -49,6 +50,11 @@ class LogHandler(logging.StreamHandler): self.mask_info = settings('maskInfo.bool') + if kodi_version() > 18: + self.level = xbmc.LOGINFO + else: + self.level = xbmc.LOGNOTICE + def emit(self, record): if self._get_log_level(record.levelno): @@ -61,7 +67,7 @@ class LogHandler(logging.StreamHandler): for token in self.sensitive['Token']: string = string.replace(token or "{token}", "{jellyfin-token}") - xbmc.log(string, level=getattr(xbmc, 'LOGNOTICE', xbmc.LOGINFO)) + xbmc.log(string, level=self.level) @classmethod