diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2011-03-11 18:44:10 (GMT) |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2011-03-11 18:44:10 (GMT) |
commit | 3ae81137c8b8dc93ebdf846e1224150012040b75 (patch) | |
tree | 9f0d4b990bb571dc46e133e2350bbf332c0088a6 | |
parent | f4d0af460a279859b75c11500f14d14a1b29ee79 (diff) | |
download | cpython-3ae81137c8b8dc93ebdf846e1224150012040b75.zip cpython-3ae81137c8b8dc93ebdf846e1224150012040b75.tar.gz cpython-3ae81137c8b8dc93ebdf846e1224150012040b75.tar.bz2 |
Reverted bug fixes for #11444 (fc4d045e3170) and #11424 (b9d76846bb1c), which should not have been made in this branch.
-rw-r--r-- | Lib/logging/__init__.py | 3 | ||||
-rw-r--r-- | Lib/logging/config.py | 10 | ||||
-rw-r--r-- | Lib/test/test_logging.py | 113 |
3 files changed, 5 insertions, 121 deletions
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py index a3b3e39..b48bee8 100644 --- a/Lib/logging/__init__.py +++ b/Lib/logging/__init__.py @@ -1513,15 +1513,12 @@ def shutdown(handlerList=_handlerList): #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 index 2881e3f..eb2c248 100644 --- a/Lib/logging/config.py +++ b/Lib/logging/config.py @@ -232,14 +232,14 @@ def _install_loggers(cp, handlers, disable_existing_loggers): 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 index fbbef64..27eeb27 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -558,38 +558,6 @@ class ConfigFileTest(BaseTest): 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 @@ class ConfigFileTest(BaseTest): 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 @@ class ConfigFileTest(BaseTest): 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 |