[Python-checkins] (2.6): Reverted bug fixes for #11444 (fc4d045e3170) and #11424 (b9d76846bb1c), which

vinay.sajip python-checkins at python.org
Fri Mar 11 19:49:07 CET 2011


http://hg.python.org/cpython/rev/d6626c9fc28d
changeset:   68377:d6626c9fc28d
branch:      2.6
parent:      68333:fc4d045e3170
user:        Vinay Sajip <vinay_sajip at yahoo.co.uk>
date:        Fri Mar 11 18:44:10 2011 +0000
summary:
  Reverted bug fixes for #11444 (fc4d045e3170) and #11424 (b9d76846bb1c), which should not have been made in this branch.

files:
  Lib/logging/__init__.py
  Lib/logging/config.py
  Lib/test/test_logging.py

diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -1513,15 +1513,12 @@
         #errors might occur, for example, if files are locked
         #we just ignore them if raiseExceptions is not set
         try:
-            h.acquire()
             h.flush()
             h.close()
         except:
             if raiseExceptions:
                 raise
             #else, swallow
-        finally:
-            h.release()
 
 #Let's try and shutdown automatically on application exit...
 try:
diff --git a/Lib/logging/config.py b/Lib/logging/config.py
--- a/Lib/logging/config.py
+++ b/Lib/logging/config.py
@@ -232,14 +232,14 @@
             propagate = 1
         logger = logging.getLogger(qn)
         if qn in existing:
-            i = existing.index(qn) + 1 # start with the entry after qn
+            i = existing.index(qn)
             prefixed = qn + "."
             pflen = len(prefixed)
             num_existing = len(existing)
-            while i < num_existing:
-                if existing[i][:pflen] == prefixed:
-                    child_loggers.append(existing[i])
-                i += 1
+            i = i + 1 # look at the entry after qn
+            while (i < num_existing) and (existing[i][:pflen] == prefixed):
+                child_loggers.append(existing[i])
+                i = i + 1
             existing.remove(qn)
         if "level" in opts:
             level = cp.get(sectname, "level")
diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -558,38 +558,6 @@
     datefmt=
     """
 
-    # config1a moves the handler to the root.
-    config1a = """
-    [loggers]
-    keys=root,parser
-
-    [handlers]
-    keys=hand1
-
-    [formatters]
-    keys=form1
-
-    [logger_root]
-    level=WARNING
-    handlers=hand1
-
-    [logger_parser]
-    level=DEBUG
-    handlers=
-    propagate=1
-    qualname=compiler.parser
-
-    [handler_hand1]
-    class=StreamHandler
-    level=NOTSET
-    formatter=form1
-    args=(sys.stdout,)
-
-    [formatter_form1]
-    format=%(levelname)s ++ %(message)s
-    datefmt=
-    """
-
     # config2 has a subtle configuration error that should be reported
     config2 = config1.replace("sys.stdout", "sys.stbout")
 
@@ -668,44 +636,6 @@
     datefmt=
     """
 
-    # config7 adds a compiler logger.
-    config7 = """
-    [loggers]
-    keys=root,parser,compiler
-
-    [handlers]
-    keys=hand1
-
-    [formatters]
-    keys=form1
-
-    [logger_root]
-    level=WARNING
-    handlers=hand1
-
-    [logger_compiler]
-    level=DEBUG
-    handlers=
-    propagate=1
-    qualname=compiler
-
-    [logger_parser]
-    level=DEBUG
-    handlers=
-    propagate=1
-    qualname=compiler.parser
-
-    [handler_hand1]
-    class=StreamHandler
-    level=NOTSET
-    formatter=form1
-    args=(sys.stdout,)
-
-    [formatter_form1]
-    format=%(levelname)s ++ %(message)s
-    datefmt=
-    """
-
     def apply_config(self, conf):
         try:
             fn = tempfile.mktemp(".ini")
@@ -775,49 +705,6 @@
     def test_config6_ok(self):
         self.test_config1_ok(config=self.config6)
 
-    def test_config7_ok(self):
-        with captured_stdout() as output:
-            self.apply_config(self.config1a)
-            logger = logging.getLogger("compiler.parser")
-            # See issue #11424. compiler-hyphenated sorts
-            # between compiler and compiler.xyz and this
-            # was preventing compiler.xyz from being included
-            # in the child loggers of compiler because of an
-            # overzealous loop termination condition.
-            hyphenated = logging.getLogger('compiler-hyphenated')
-            # All will output a message
-            logger.info(self.next_message())
-            logger.error(self.next_message())
-            hyphenated.critical(self.next_message())
-            self.assert_log_lines([
-                ('INFO', '1'),
-                ('ERROR', '2'),
-                ('CRITICAL', '3'),
-            ], stream=output)
-            # Original logger output is empty.
-            self.assert_log_lines([])
-        with captured_stdout() as output:
-            self.apply_config(self.config7)
-            logger = logging.getLogger("compiler.parser")
-            self.assertFalse(logger.disabled)
-            # Both will output a message
-            logger.info(self.next_message())
-            logger.error(self.next_message())
-            logger = logging.getLogger("compiler.lexer")
-            # Both will output a message
-            logger.info(self.next_message())
-            logger.error(self.next_message())
-            # Will not appear
-            hyphenated.critical(self.next_message())
-            self.assert_log_lines([
-                ('INFO', '4'),
-                ('ERROR', '5'),
-                ('INFO', '6'),
-                ('ERROR', '7'),
-            ], stream=output)
-            # Original logger output is empty.
-            self.assert_log_lines([])
-    
 class LogRecordStreamHandler(StreamRequestHandler):
 
     """Handler for a streaming logging request. It saves the log message in the

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list