Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-oslo.log for openSUSE:Factory 
checked in at 2024-06-05 17:41:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-oslo.log (Old)
 and      /work/SRC/openSUSE:Factory/.python-oslo.log.new.24587 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-oslo.log"

Wed Jun  5 17:41:55 2024 rev:27 rq:1178602 version:6.0.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-oslo.log/python-oslo.log.changes  
2024-05-03 19:45:51.555707785 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-oslo.log.new.24587/python-oslo.log.changes   
    2024-06-05 17:42:31.266369662 +0200
@@ -1,0 +2,17 @@
+Tue Jun  4 20:02:08 UTC 2024 - cloud-de...@suse.de
+
+- update to version 6.0.0
+  - reno: Update master for unmaintained/victoria
+  - Apply eventlet workaround only once
+  - Imported Translations from Zanata
+  - Validate rate_limit_except_level by choices
+  - Remove unused pyinotify
+  - Fix broken reference to rate_limit_except_level
+  - Remove old excludes
+  - Fix eventlet detection
+  - Deprecate watch_log_file
+  - Update master for stable/2024.1
+  - Remove fallback for old oslo.context
+  - Remove implementation for watch_log_file
+
+-------------------------------------------------------------------

Old:
----
  oslo.log-5.5.1.tar.gz

New:
----
  oslo.log-6.0.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-oslo.log.spec ++++++
--- /var/tmp/diff_new_pack.dUpkxp/_old  2024-06-05 17:42:32.086399526 +0200
+++ /var/tmp/diff_new_pack.dUpkxp/_new  2024-06-05 17:42:32.086399526 +0200
@@ -17,13 +17,13 @@
 
 
 Name:           python-oslo.log
-Version:        5.5.1
+Version:        6.0.0
 Release:        0
 Summary:        OpenStack log library
 License:        Apache-2.0
 Group:          Development/Languages/Python
 URL:            https://docs.openstack.org/oslo.log
-Source0:        
https://files.pythonhosted.org/packages/source/o/oslo.log/oslo.log-5.5.1.tar.gz
+Source0:        
https://files.pythonhosted.org/packages/source/o/oslo.log/oslo.log-6.0.0.tar.gz
 BuildRequires:  fdupes
 BuildRequires:  openstack-macros
 BuildRequires:  python3-eventlet
@@ -35,7 +35,6 @@
 BuildRequires:  python3-oslo.utils >= 3.36.0
 BuildRequires:  python3-oslotest
 BuildRequires:  python3-pbr >= 3.1.1
-BuildRequires:  python3-pyinotify
 BuildRequires:  python3-python-dateutil >= 2.7.0
 BuildRequires:  python3-stestr
 BuildRequires:  python3-testtools
@@ -55,7 +54,6 @@
 Requires:       python3-oslo.i18n >= 3.20.0
 Requires:       python3-oslo.serialization >= 2.25.0
 Requires:       python3-oslo.utils >= 3.36.0
-Requires:       python3-pyinotify
 Requires:       python3-python-dateutil >= 2.7.0
 Requires:       python3-systemd
 %if 0%{?suse_version}
@@ -78,14 +76,14 @@
 Documentation for the oslo.log library.
 
 %prep
-%autosetup -p1 -n oslo.log-5.5.1
+%autosetup -p1 -n oslo.log-6.0.0
 %py_req_cleanup
 
 %build
 %{py3_build}
 
 # generate html docs
-PYTHONPATH=. PBR_VERSION=5.5.1 %sphinx_build -b html doc/source doc/build/html
+PYTHONPATH=. PBR_VERSION=6.0.0 %sphinx_build -b html doc/source doc/build/html
 rm -rf doc/build/html/.{doctrees,buildinfo}
 
 %install

++++++ oslo.log-5.5.1.tar.gz -> oslo.log-6.0.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/ChangeLog new/oslo.log-6.0.0/ChangeLog
--- old/oslo.log-5.5.1/ChangeLog        2024-04-02 09:48:27.000000000 +0200
+++ new/oslo.log-6.0.0/ChangeLog        2024-05-23 10:14:42.000000000 +0200
@@ -1,12 +1,21 @@
 CHANGES
 =======
 
-5.5.1
+6.0.0
 -----
 
+* Remove unused pyinotify
+* Remove old excludes
+* Remove implementation for watch\_log\_file
+* Apply eventlet workaround only once
+* Deprecate watch\_log\_file
+* Remove fallback for old oslo.context
+* Fix broken reference to rate\_limit\_except\_level
+* Validate rate\_limit\_except\_level by choices
+* Imported Translations from Zanata
 * Fix eventlet detection
-* Update TOX\_CONSTRAINTS\_FILE for stable/2024.1
-* Update .gitreview for stable/2024.1
+* Update master for stable/2024.1
+* reno: Update master for unmaintained/victoria
 
 5.5.0
 -----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/PKG-INFO new/oslo.log-6.0.0/PKG-INFO
--- old/oslo.log-5.5.1/PKG-INFO 2024-04-02 09:48:27.967316000 +0200
+++ new/oslo.log-6.0.0/PKG-INFO 2024-05-23 10:14:42.467394000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: oslo.log
-Version: 5.5.1
+Version: 6.0.0
 Summary: oslo.log library
 Home-page: https://docs.openstack.org/oslo.log/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/doc/requirements.txt 
new/oslo.log-6.0.0/doc/requirements.txt
--- old/oslo.log-5.5.1/doc/requirements.txt     2024-04-02 09:48:05.000000000 
+0200
+++ new/oslo.log-6.0.0/doc/requirements.txt     2024-05-23 10:14:12.000000000 
+0200
@@ -1,8 +1,4 @@
-# The order of packages is significant, because pip processes them in the order
-# of appearance. Changing the order has an impact on the overall integration
-# process, which may cause wedges in the gate later.
-
-sphinx>=2.0.0,!=2.1.0 # BSD
+sphinx>=2.0.0 # BSD
 openstackdocstheme>=2.2.1 # Apache-2.0
 reno>=3.1.0 # Apache-2.0
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/doc/source/reference/watchers.rst 
new/oslo.log-6.0.0/doc/source/reference/watchers.rst
--- old/oslo.log-5.5.1/doc/source/reference/watchers.rst        2024-04-02 
09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/doc/source/reference/watchers.rst        1970-01-01 
01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-==================
- oslo_log.watchers
-==================
-
-.. automodule:: oslo_log.watchers
-   :members:
-   :undoc-members:
-   :show-inheritance:
-
-.. seealso::
-
-   :ref:`using`
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo.log.egg-info/PKG-INFO 
new/oslo.log-6.0.0/oslo.log.egg-info/PKG-INFO
--- old/oslo.log-5.5.1/oslo.log.egg-info/PKG-INFO       2024-04-02 
09:48:27.000000000 +0200
+++ new/oslo.log-6.0.0/oslo.log.egg-info/PKG-INFO       2024-05-23 
10:14:42.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: oslo.log
-Version: 5.5.1
+Version: 6.0.0
 Summary: oslo.log library
 Home-page: https://docs.openstack.org/oslo.log/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo.log.egg-info/SOURCES.txt 
new/oslo.log-6.0.0/oslo.log.egg-info/SOURCES.txt
--- old/oslo.log-5.5.1/oslo.log.egg-info/SOURCES.txt    2024-04-02 
09:48:27.000000000 +0200
+++ new/oslo.log-6.0.0/oslo.log.egg-info/SOURCES.txt    2024-05-23 
10:14:42.000000000 +0200
@@ -33,7 +33,6 @@
 doc/source/reference/index.rst
 doc/source/reference/log.rst
 doc/source/reference/versionutils.rst
-doc/source/reference/watchers.rst
 doc/source/user/examples.rst
 doc/source/user/guidelines.rst
 doc/source/user/history.rst
@@ -64,7 +63,6 @@
 oslo_log/rate_limit.py
 oslo_log/version.py
 oslo_log/versionutils.py
-oslo_log/watchers.py
 oslo_log/cmds/__init__.py
 oslo_log/cmds/convert_json.py
 oslo_log/fixture/__init__.py
@@ -93,6 +91,7 @@
 releasenotes/notes/add-reno-e4fedb11ece56f1e.yaml
 
releasenotes/notes/add-system_scope-to-logging_user_identity_format-0581ce5070740375.yaml
 releasenotes/notes/always-add-error-text-715022964364ffa0.yaml
+releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
 releasenotes/notes/deprecate-windows-support-75e6ac72310d5e72.yaml
 releasenotes/notes/drop-python27-support-0fe4909a5468feb3.yaml
 releasenotes/notes/info-logging-7b7be9fc7a95aebc.yaml
@@ -113,6 +112,7 @@
 releasenotes/notes/windows-eventlog-2beb0a6010e342eb.yaml
 releasenotes/source/2023.1.rst
 releasenotes/source/2023.2.rst
+releasenotes/source/2024.1.rst
 releasenotes/source/conf.py
 releasenotes/source/index.rst
 releasenotes/source/liberty.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo.log.egg-info/pbr.json 
new/oslo.log-6.0.0/oslo.log.egg-info/pbr.json
--- old/oslo.log-5.5.1/oslo.log.egg-info/pbr.json       2024-04-02 
09:48:27.000000000 +0200
+++ new/oslo.log-6.0.0/oslo.log.egg-info/pbr.json       2024-05-23 
10:14:42.000000000 +0200
@@ -1 +1 @@
-{"git_version": "a6c4f8a", "is_release": true}
\ No newline at end of file
+{"git_version": "f05a852", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo.log.egg-info/requires.txt 
new/oslo.log-6.0.0/oslo.log.egg-info/requires.txt
--- old/oslo.log-5.5.1/oslo.log.egg-info/requires.txt   2024-04-02 
09:48:27.000000000 +0200
+++ new/oslo.log-6.0.0/oslo.log.egg-info/requires.txt   2024-05-23 
10:14:42.000000000 +0200
@@ -1,4 +1,3 @@
-debtcollector>=1.19.0
 oslo.config>=5.2.0
 oslo.context>=2.21.0
 oslo.i18n>=3.20.0
@@ -7,9 +6,6 @@
 pbr>=3.1.1
 python-dateutil>=2.7.0
 
-[:(sys_platform!='win32' and sys_platform!='darwin' and 
sys_platform!='sunos5')]
-pyinotify>=0.9.6
-
 [fixtures]
 fixtures>=3.0.0
 
@@ -18,7 +14,7 @@
 
 [test]
 coverage>=4.5.1
-eventlet!=0.32.0,>=0.30.1
+eventlet>=0.30.1
 fixtures>=3.0.0
 oslotest>=3.3.0
 stestr>=2.0.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo_log/_options.py 
new/oslo.log-6.0.0/oslo_log/_options.py
--- old/oslo.log-5.5.1/oslo_log/_options.py     2024-04-02 09:48:05.000000000 
+0200
+++ new/oslo.log-6.0.0/oslo_log/_options.py     2024-05-23 10:14:12.000000000 
+0200
@@ -74,6 +74,10 @@
                     + _IGNORE_MESSAGE),
     cfg.BoolOpt('watch-log-file',
                 default=False,
+                deprecated_for_removal=True,
+                deprecated_reason=('This function is known to have bene '
+                                   'broken for long time, and depends on '
+                                   'the unmaintained library'),
                 help='Uses logging handler designed to watch file '
                      'system. When log file is moved or removed this handler '
                      'will open a new log file with specified path '
@@ -203,8 +207,8 @@
                     'rate_limit_interval.'),
     cfg.StrOpt('rate_limit_except_level',
                default='CRITICAL',
-               help='Log level name used by rate limiting: CRITICAL, ERROR, '
-                    'INFO, WARNING, DEBUG or empty string. Logs with level '
+               choices=['CRITICAL', 'ERROR', 'INFO', 'WARNING', 'DEBUG', ''],
+               help='Log level name used by rate limiting. Logs with level '
                     'greater or equal to rate_limit_except_level are not '
                     'filtered. An empty string means that all levels are '
                     'filtered.'),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo_log/formatters.py 
new/oslo.log-6.0.0/oslo_log/formatters.py
--- old/oslo.log-5.5.1/oslo_log/formatters.py   2024-04-02 09:48:05.000000000 
+0200
+++ new/oslo.log-6.0.0/oslo_log/formatters.py   2024-05-23 10:14:12.000000000 
+0200
@@ -11,7 +11,6 @@
 #    under the License.
 
 import datetime
-import debtcollector
 import functools
 import io
 import itertools
@@ -33,13 +32,6 @@
 def _dictify_context(context):
     if getattr(context, 'get_logging_values', None):
         return context.get_logging_values()
-    elif getattr(context, 'to_dict', None):
-        debtcollector.deprecate(
-            'The RequestContext.get_logging_values() '
-            'method should be defined for logging context specific '
-            'information.  The to_dict() method is deprecated '
-            'for oslo.log use.', version='3.8.0', removal_version='5.0.0')
-        return context.to_dict()
     # This dict only style logging format will become deprecated
     # when projects using a dictionary object for context are updated
     elif isinstance(context, dict):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo_log/log.py 
new/oslo.log-6.0.0/oslo_log/log.py
--- old/oslo.log-5.5.1/oslo_log/log.py  2024-04-02 09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/oslo_log/log.py  2024-05-23 10:14:12.000000000 +0200
@@ -70,6 +70,8 @@
     'midnight': 'midnight'
 }
 
+_EVENTLET_FIX_APPLIED = False
+
 
 def _get_log_file_path(conf, binary=None):
     logfile = conf.log_file
@@ -272,13 +274,16 @@
     Workaround for: https://github.com/eventlet/eventlet/issues/432
     """
 
+    global _EVENTLET_FIX_APPLIED
+
     # If eventlet was not loaded before call to setup assume it's not used.
-    if eventletutils.is_monkey_patched('thread'):
+    if eventletutils.is_monkey_patched('thread') and not _EVENTLET_FIX_APPLIED:
         import eventlet.green.threading
         from oslo_log import pipe_mutex
         logging.threading = eventlet.green.threading
         logging._lock = logging.threading.RLock()
         logging.Handler.createLock = pipe_mutex.pipe_createLock
+        _EVENTLET_FIX_APPLIED = True
 
 
 def setup(conf, product_name, version='unknown', *, fix_eventlet=True):
@@ -372,10 +377,9 @@
     logpath = _get_log_file_path(conf)
     if logpath:
         # On Windows, in-use files cannot be moved or deleted.
-        if conf.watch_log_file and platform.system() == 'Linux':
-            from oslo_log import watchers
-            file_handler = watchers.FastWatchedFileHandler
-            filelog = file_handler(logpath)
+        if conf.watch_log_file:
+            raise RuntimeError('watch_log_file feature was removed because '
+                               'it has been broken for multiple releases.')
         elif conf.log_rotation_type.lower() == "interval":
             file_handler = logging.handlers.TimedRotatingFileHandler
             when = conf.log_rotate_interval_type.lower()
@@ -472,7 +476,7 @@
         from oslo_log import rate_limit
         rate_limit.install_filter(conf.rate_limit_burst,
                                   conf.rate_limit_interval,
-                                  conf.rate_limit_except)
+                                  conf.rate_limit_except_level)
 
 
 _loggers = {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.log-5.5.1/oslo_log/tests/unit/test_formatters.py 
new/oslo.log-6.0.0/oslo_log/tests/unit/test_formatters.py
--- old/oslo.log-5.5.1/oslo_log/tests/unit/test_formatters.py   2024-04-02 
09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/oslo_log/tests/unit/test_formatters.py   2024-05-23 
10:14:12.000000000 +0200
@@ -16,7 +16,6 @@
 
 import logging
 import sys
-from unittest import mock
 
 from oslo_config import cfg
 from oslo_config import fixture as config_fixture
@@ -37,17 +36,6 @@
     return ctxt
 
 
-class AlternativeRequestContext(object):
-
-    def __init__(self, user=None, tenant=None):
-        self.user = user
-        self.tenant = tenant
-
-    def to_dict(self):
-        return {'user': self.user,
-                'tenant': self.tenant}
-
-
 class FormatterTest(test_base.BaseTestCase):
 
     def setUp(self):
@@ -66,29 +54,14 @@
     def test_dictify_context_empty(self):
         self.assertEqual({}, formatters._dictify_context(None))
 
-    @mock.patch("debtcollector.deprecate")
-    def test_dictify_context_with_dict(self, mock_deprecate):
+    def test_dictify_context_with_dict(self):
         d = {"user": "user"}
         self.assertEqual(d, formatters._dictify_context(d))
-        mock_deprecate.assert_not_called()
 
-    @mock.patch("debtcollector.deprecate")
-    def test_dictify_context_with_context(self, mock_deprecate):
+    def test_dictify_context_with_context(self):
         ctxt = _fake_context()
         self.assertEqual(ctxt.get_logging_values(),
                          formatters._dictify_context(ctxt))
-        mock_deprecate.assert_not_called()
-
-    @mock.patch("debtcollector.deprecate")
-    def test_dictify_context_without_get_logging_values(self, mock_deprecate):
-        ctxt = AlternativeRequestContext(user="user", tenant="tenant")
-        d = {"user": "user", "tenant": "tenant"}
-        self.assertEqual(d, formatters._dictify_context(ctxt))
-        mock_deprecate.assert_called_with(
-            'The RequestContext.get_logging_values() '
-            'method should be defined for logging context specific '
-            'information.  The to_dict() method is deprecated '
-            'for oslo.log use.', removal_version='5.0.0', version='3.8.0')
 
 
 # Test for https://bugs.python.org/issue28603
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo_log/tests/unit/test_log.py 
new/oslo.log-6.0.0/oslo_log/tests/unit/test_log.py
--- old/oslo.log-5.5.1/oslo_log/tests/unit/test_log.py  2024-04-02 
09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/oslo_log/tests/unit/test_log.py  2024-05-23 
10:14:12.000000000 +0200
@@ -22,7 +22,6 @@
 import io
 import logging
 import os
-import platform
 import shutil
 import sys
 try:
@@ -154,24 +153,6 @@
         mock_logger = loggers_mock.return_value.logger
         mock_logger.addHandler.assert_any_call(handler_mock.return_value)
 
-    @mock.patch('oslo_log.watchers.FastWatchedFileHandler')
-    @mock.patch('oslo_log.log._get_log_file_path', return_value='test.conf')
-    @mock.patch('platform.system', return_value='Linux')
-    def test_watchlog_on_linux(self, platfotm_mock, path_mock, handler_mock):
-        self.config(watch_log_file=True)
-        log._setup_logging_from_conf(self.CONF, 'test', 'test')
-        handler_mock.assert_called_once_with(path_mock.return_value)
-        self.assertEqual(self.log_handlers[0], handler_mock.return_value)
-
-    @mock.patch('logging.handlers.WatchedFileHandler')
-    @mock.patch('oslo_log.log._get_log_file_path', return_value='test.conf')
-    @mock.patch('platform.system', return_value='Windows')
-    def test_watchlog_on_windows(self, platform_mock, path_mock, handler_mock):
-        self.config(watch_log_file=True)
-        log._setup_logging_from_conf(self.CONF, 'test', 'test')
-        handler_mock.assert_called_once_with(path_mock.return_value)
-        self.assertEqual(self.log_handlers[0], handler_mock.return_value)
-
     @mock.patch('logging.handlers.TimedRotatingFileHandler')
     @mock.patch('oslo_log.log._get_log_file_path', return_value='test.conf')
     def test_timed_rotate_log(self, path_mock, handler_mock):
@@ -1363,54 +1344,6 @@
         self.assertIsNone(self.conf.log_file)
 
 
-@testtools.skipIf(platform.system() != 'Linux',
-                  'pyinotify library works on Linux platform only.')
-class FastWatchedFileHandlerTestCase(BaseTestCase):
-
-    def setUp(self):
-        super(FastWatchedFileHandlerTestCase, self).setUp()
-
-    def _config(self):
-        os_level, log_path = tempfile.mkstemp()
-        log_dir_path = os.path.dirname(log_path)
-        log_file_path = os.path.basename(log_path)
-        self.CONF(['--log-dir', log_dir_path, '--log-file', log_file_path])
-        self.config(use_stderr=False)
-        self.config(watch_log_file=True)
-        log.setup(self.CONF, 'test', 'test')
-        return log_path
-
-    def test_instantiate(self):
-        self._config()
-        logger = log._loggers[None].logger
-        self.assertEqual(1, len(logger.handlers))
-        from oslo_log import watchers
-        self.assertIsInstance(logger.handlers[0],
-                              watchers.FastWatchedFileHandler)
-
-    def test_log(self):
-        log_path = self._config()
-        logger = log._loggers[None].logger
-        text = 'Hello World!'
-        logger.info(text)
-        with open(log_path, 'r') as f:
-            file_content = f.read()
-        self.assertIn(text, file_content)
-
-    def test_move(self):
-        log_path = self._config()
-        os_level_dst, log_path_dst = tempfile.mkstemp()
-        os.rename(log_path, log_path_dst)
-        time.sleep(6)
-        self.assertTrue(os.path.exists(log_path))
-
-    def test_remove(self):
-        log_path = self._config()
-        os.remove(log_path)
-        time.sleep(6)
-        self.assertTrue(os.path.exists(log_path))
-
-
 class MutateTestCase(BaseTestCase):
     def setUp(self):
         super(MutateTestCase, self).setUp()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/oslo_log/watchers.py 
new/oslo.log-6.0.0/oslo_log/watchers.py
--- old/oslo.log-5.5.1/oslo_log/watchers.py     2024-04-02 09:48:05.000000000 
+0200
+++ new/oslo.log-6.0.0/oslo_log/watchers.py     1970-01-01 01:00:00.000000000 
+0100
@@ -1,111 +0,0 @@
-#    Licensed under the Apache License, Version 2.0 (the "License"); you may
-#    not use this file except in compliance with the License. You may obtain
-#    a copy of the License at
-#
-#         http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-#    License for the specific language governing permissions and limitations
-#    under the License.
-
-import errno
-import logging
-import logging.config
-import logging.handlers
-import os
-import pyinotify
-import stat
-import time
-try:
-    import syslog
-except ImportError:
-    syslog = None
-
-"""Linux specific pyinotify based logging handlers"""
-
-
-class _FileKeeper(pyinotify.ProcessEvent):
-    def my_init(self, watched_handler, watched_file):
-        self._watched_handler = watched_handler
-        self._watched_file = watched_file
-
-    def process_default(self, event):
-        if event.name == self._watched_file:
-            self._watched_handler.reopen_file()
-
-
-class _EventletThreadedNotifier(pyinotify.ThreadedNotifier):
-
-    def loop(self):
-        """Eventlet friendly ThreadedNotifier
-
-        EventletFriendlyThreadedNotifier contains additional time.sleep()
-        call insude loop to allow switching to other thread when eventlet
-        is used.
-        It can be used with eventlet and native threads as well.
-        """
-
-        while not self._stop_event.is_set():
-            self.process_events()
-            time.sleep(0)
-            ref_time = time.time()
-            if self.check_events():
-                self._sleep(ref_time)
-                self.read_events()
-
-
-class FastWatchedFileHandler(logging.handlers.WatchedFileHandler, object):
-    """Frequency of reading events.
-
-    Watching thread sleeps max(0, READ_FREQ - (TIMEOUT / 1000)) seconds.
-    """
-    READ_FREQ = 5
-
-    """Poll timeout in milliseconds.
-
-    See https://docs.python.org/2/library/select.html#select.poll.poll""";
-    TIMEOUT = 5
-
-    def __init__(self, logpath, *args, **kwargs):
-        self._log_file = os.path.basename(logpath)
-        self._log_dir = os.path.dirname(logpath)
-        super(FastWatchedFileHandler, self).__init__(logpath, *args, **kwargs)
-        self._watch_file()
-
-    def _watch_file(self):
-        mask = pyinotify.IN_MOVED_FROM | pyinotify.IN_DELETE
-        watch_manager = pyinotify.WatchManager()
-        handler = _FileKeeper(watched_handler=self,
-                              watched_file=self._log_file)
-        notifier = _EventletThreadedNotifier(
-            watch_manager,
-            default_proc_fun=handler,
-            read_freq=FastWatchedFileHandler.READ_FREQ,
-            timeout=FastWatchedFileHandler.TIMEOUT)
-        notifier.daemon = True
-        watch_manager.add_watch(self._log_dir, mask)
-        notifier.start()
-
-    def reopen_file(self):
-        try:
-            # stat the file by path, checking for existence
-            sres = os.stat(self.baseFilename)
-        except OSError as err:
-            if err.errno == errno.ENOENT:
-                sres = None
-            else:
-                raise
-        # compare file system stat with that of our stream file handle
-        if (not sres or
-                sres[stat.ST_DEV] != self.dev or
-                sres[stat.ST_INO] != self.ino):
-            if self.stream is not None:
-                # we have an open file handle, clean it up
-                self.stream.flush()
-                self.stream.close()
-                self.stream = None
-                # open a new file handle and get new stat info from that fd
-                self.stream = self._open()
-                self._statstream()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.log-5.5.1/releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
 
new/oslo.log-6.0.0/releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
--- 
old/oslo.log-5.5.1/releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
        1970-01-01 01:00:00.000000000 +0100
+++ 
new/oslo.log-6.0.0/releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
        2024-05-23 10:14:12.000000000 +0200
@@ -0,0 +1,11 @@
+---
+deprecations:
+  - |
+    The ``watch_log_file`` option has been deprecated and will be removed in
+    a future release.
+
+upgrade:
+  - |
+    Setting ``[DEFAULT] watch_log_file = True`` now raises RuntimeError while
+    configuring logger. The feature has been broken for multiple cycles and
+    depends on pyinotify library which is not maintained now.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/releasenotes/source/2024.1.rst 
new/oslo.log-6.0.0/releasenotes/source/2024.1.rst
--- old/oslo.log-5.5.1/releasenotes/source/2024.1.rst   1970-01-01 
01:00:00.000000000 +0100
+++ new/oslo.log-6.0.0/releasenotes/source/2024.1.rst   2024-05-23 
10:14:12.000000000 +0200
@@ -0,0 +1,6 @@
+===========================
+2024.1 Series Release Notes
+===========================
+
+.. release-notes::
+   :branch: stable/2024.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/releasenotes/source/index.rst 
new/oslo.log-6.0.0/releasenotes/source/index.rst
--- old/oslo.log-5.5.1/releasenotes/source/index.rst    2024-04-02 
09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/releasenotes/source/index.rst    2024-05-23 
10:14:12.000000000 +0200
@@ -6,6 +6,7 @@
    :maxdepth: 1
 
    unreleased
+   2024.1
    2023.2
    2023.1
    victoria
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/oslo.log-5.5.1/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po 
new/oslo.log-6.0.0/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po
--- 
old/oslo.log-5.5.1/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po 
    2024-04-02 09:48:05.000000000 +0200
+++ 
new/oslo.log-6.0.0/releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po 
    2024-05-23 10:14:12.000000000 +0200
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: oslo.log\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-05-05 13:36+0000\n"
+"POT-Creation-Date: 2024-03-26 18:32+0000\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -88,6 +88,9 @@
 msgid "5.0.0"
 msgstr "5.0.0"
 
+msgid "5.0.1"
+msgstr "5.0.1"
+
 msgid "5.2.0"
 msgstr "5.2.0"
 
@@ -312,5 +315,12 @@
 "When removing the \"verbose\" option, the default logging level was set to "
 "\"WARNING\" by mistake. Fixed it back to \"INFO\"."
 
+msgid ""
+"`Bug #1983863 <https://bugs.launchpad.net/oslo.log/+bug/1983863>`_: Fixed "
+"logging in eventlet native threads."
+msgstr ""
+"`Bug #1983863 <https://bugs.launchpad.net/oslo.log/+bug/1983863>`_: Fixed "
+"logging in eventlet native threads."
+
 msgid "oslo.log Release Notes"
 msgstr "oslo.log Release Notes"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/releasenotes/source/victoria.rst 
new/oslo.log-6.0.0/releasenotes/source/victoria.rst
--- old/oslo.log-5.5.1/releasenotes/source/victoria.rst 2024-04-02 
09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/releasenotes/source/victoria.rst 2024-05-23 
10:14:12.000000000 +0200
@@ -3,4 +3,4 @@
 =============================
 
 .. release-notes::
-   :branch: stable/victoria
+   :branch: unmaintained/victoria
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/requirements.txt 
new/oslo.log-6.0.0/requirements.txt
--- old/oslo.log-5.5.1/requirements.txt 2024-04-02 09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/requirements.txt 2024-05-23 10:14:12.000000000 +0200
@@ -4,6 +4,4 @@
 oslo.i18n>=3.20.0 # Apache-2.0
 oslo.utils>=3.36.0 # Apache-2.0
 oslo.serialization>=2.25.0 # Apache-2.0
-debtcollector>=1.19.0 # Apache-2.0
-pyinotify>=0.9.6;sys_platform!='win32' and sys_platform!='darwin' and 
sys_platform!='sunos5' # MIT
 python-dateutil>=2.7.0 # BSD
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/test-requirements.txt 
new/oslo.log-6.0.0/test-requirements.txt
--- old/oslo.log-5.5.1/test-requirements.txt    2024-04-02 09:48:05.000000000 
+0200
+++ new/oslo.log-6.0.0/test-requirements.txt    2024-05-23 10:14:12.000000000 
+0200
@@ -6,4 +6,4 @@
 
 fixtures>=3.0.0 # Apache-2.0/BSD
 
-eventlet>=0.30.1,!=0.32.0 # MIT
+eventlet>=0.30.1 # MIT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.log-5.5.1/tox.ini new/oslo.log-6.0.0/tox.ini
--- old/oslo.log-5.5.1/tox.ini  2024-04-02 09:48:05.000000000 +0200
+++ new/oslo.log-6.0.0/tox.ini  2024-05-23 10:14:12.000000000 +0200
@@ -8,7 +8,7 @@
 allowlist_externals =
   find
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1}
+  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/test-requirements.txt
 commands =
   find . -type f -name "*.pyc" -delete
@@ -27,7 +27,7 @@
 [testenv:docs]
 allowlist_externals = rm
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1}
+  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/doc/requirements.txt
 commands =
   rm -fr doc/build
@@ -36,7 +36,7 @@
 [testenv:releasenotes]
 allowlist_externals = rm
 deps =
-  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/2024.1}
+  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/doc/requirements.txt
 commands =
   rm -rf releasenotes/build

Reply via email to