diff --git a/logutils-intersphinx.patch b/logutils-intersphinx.patch new file mode 100644 index 0000000..c1d3075 --- /dev/null +++ b/logutils-intersphinx.patch @@ -0,0 +1,20 @@ +From 28565675eea39b1b1def8cd6706b0a9556f7e505 Mon Sep 17 00:00:00 2001 +From: Vinay Sajip +Date: Thu, 15 Jun 2023 16:13:41 +0100 +Subject: [PATCH] Add Read The Docs configuration. + +--- +diff --git a/doc/conf.py b/doc/conf.py +index afdd641..04e02eb 100644 +--- a/doc/conf.py ++++ b/doc/conf.py +@@ -194,6 +194,4 @@ latex_documents = [ + + + # Example configuration for intersphinx: refer to the Python standard library. +-intersphinx_mapping = { +- 'http://docs.python.org/dev': None, +-} ++intersphinx_mapping = {'python': ('http://docs.python.org/', None)} +-- +2.46.0 diff --git a/logutils-pr1-fix-testasserts-py3.12.patch b/logutils-pr1-fix-testasserts-py3.12.patch index 249fd1f..84ece4c 100644 --- a/logutils-pr1-fix-testasserts-py3.12.patch +++ b/logutils-pr1-fix-testasserts-py3.12.patch @@ -52,5 +52,5 @@ index 3aee984..0cf4806 100644 def test_config5_ok(self): self.test_config1_ok(config=self.config5) -- -2.42.0 +2.46.0 diff --git a/python-logutils.changes b/python-logutils.changes index 247fe94..a08efc8 100644 --- a/python-logutils.changes +++ b/python-logutils.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +Tue Sep 10 03:08:22 UTC 2024 - Steve Kowalik + +- Add patch use-logging-lock-directly.patch: + * Use logging._lock as a context manager. +- Switch to autosetup macro. + +------------------------------------------------------------------- +Thu Sep 5 18:08:30 UTC 2024 - Christoph G + +- Add patch logutils-intersphinx.patch to fix compatibility + with recent Sphinx + ------------------------------------------------------------------- Thu Jan 18 19:39:04 UTC 2024 - Ben Greiner diff --git a/python-logutils.spec b/python-logutils.spec index 07a5891..1835be8 100644 --- a/python-logutils.spec +++ b/python-logutils.spec @@ -21,12 +21,15 @@ Version: 0.3.5 Release: 0 Summary: Logging utilities License: BSD-3-Clause -Group: Development/Languages/Python URL: https://logutils.readthedocs.io/ Source: https://files.pythonhosted.org/packages/source/l/logutils/logutils-%{version}.tar.gz Patch0: sphinx4.patch # PATCH-FIX-UPSTREAM logutils-pr1-fix-testasserts-py3.12.patch https://bitbucket.org/vinay.sajip/logutils/pull-requests/1 Patch1: https://bitbucket.org/hugovk/logutils/commits/0a3af211128567c437e68261a02591ffe2682d95/raw#/logutils-pr1-fix-testasserts-py3.12.patch +# PATCH-FIX-UPSTREAM logutils-intersphinx.patch +Patch2: logutils-intersphinx.patch +# PATCH-FIX-OPENSUSE Use logging._lock as a context manager directly +Patch3: use-logging-lock-directly.patch BuildRequires: %{python_module pip} BuildRequires: %{python_module redis} BuildRequires: %{python_module setuptools} @@ -49,7 +52,6 @@ of Python and so are packaged here. %package -n python-logutils-doc Summary: Documentation for %{name} -Group: Documentation/Other Provides: %{python_module logutils-doc = %{version}} %description -n python-logutils-doc @@ -64,8 +66,7 @@ of Python and so are packaged here. This package contains the documentation. %prep -%setup -q -n logutils-%{version} -%autopatch -p1 +%autosetup -p1 -n logutils-%{version} %build %pyproject_wheel diff --git a/use-logging-lock-directly.patch b/use-logging-lock-directly.patch new file mode 100644 index 0000000..8c3ae08 --- /dev/null +++ b/use-logging-lock-directly.patch @@ -0,0 +1,65 @@ +Index: logutils-0.3.5/logutils/dictconfig.py +=================================================================== +--- logutils-0.3.5.orig/logutils/dictconfig.py ++++ logutils-0.3.5/logutils/dictconfig.py +@@ -290,8 +290,7 @@ class DictConfigurator(BaseConfigurator) + raise ValueError("Unsupported version: %s" % config['version']) + incremental = config.pop('incremental', False) + EMPTY_DICT = {} +- logging._acquireLock() +- try: ++ with logging._lock: + if incremental: + handlers = config.get('handlers', EMPTY_DICT) + # incremental handler config only if handler name +@@ -430,8 +429,6 @@ class DictConfigurator(BaseConfigurator) + e = sys.exc_info()[1] + raise ValueError('Unable to configure root ' + 'logger: %s' % e) +- finally: +- logging._releaseLock() + + def configure_formatter(self, config): + """Configure a formatter from a dictionary.""" +Index: logutils-0.3.5/tests/test_dictconfig.py +=================================================================== +--- logutils-0.3.5.orig/tests/test_dictconfig.py ++++ logutils-0.3.5/tests/test_dictconfig.py +@@ -39,8 +39,7 @@ class ConfigDictTest(unittest.TestCase): + self.adapter = LoggerAdapter(l, {}) + + logger_dict = logging.getLogger().manager.loggerDict +- logging._acquireLock() +- try: ++ with logging._lock: + self.saved_handlers = logging._handlers.copy() + self.saved_handler_list = logging._handlerList[:] + self.saved_loggers = logger_dict.copy() +@@ -49,8 +48,6 @@ class ConfigDictTest(unittest.TestCase): + else: + self.saved_level_to_name = logging._levelToName.copy() + self.saved_name_to_level = logging._nameToLevel.copy() +- finally: +- logging._releaseLock() + + self.root_logger = logging.getLogger("") + self.original_logging_level = self.root_logger.getEffectiveLevel() +@@ -58,8 +55,7 @@ class ConfigDictTest(unittest.TestCase): + + def tearDown(self): + self.root_logger.setLevel(self.original_logging_level) +- logging._acquireLock() +- try: ++ with logging._lock: + if hasattr(logging, '_levelNames'): + logging._levelNames.clear() + logging._levelNames.update(self.saved_level_names) +@@ -74,8 +70,6 @@ class ConfigDictTest(unittest.TestCase): + loggerDict = logging.getLogger().manager.loggerDict + loggerDict.clear() + loggerDict.update(self.saved_loggers) +- finally: +- logging._releaseLock() + + message_num = 0 +