[Python-checkins] cpython: Closes #28524: added default level for logging.disable().
vinay.sajip
python-checkins at python.org
Sat Dec 31 06:40:19 EST 2016
https://hg.python.org/cpython/rev/459500606560
changeset: 105905:459500606560
user: Vinay Sajip <vinay_sajip at yahoo.co.uk>
date: Sat Dec 31 11:40:11 2016 +0000
summary:
Closes #28524: added default level for logging.disable().
files:
Doc/library/logging.rst | 10 +++++++++-
Lib/logging/__init__.py | 2 +-
Lib/test/test_logging.py | 5 +++++
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/Doc/library/logging.rst b/Doc/library/logging.rst
--- a/Doc/library/logging.rst
+++ b/Doc/library/logging.rst
@@ -1023,7 +1023,7 @@
handlers being added multiple times to the root logger, which can in turn
lead to multiple messages for the same event.
-.. function:: disable(lvl)
+.. function:: disable(lvl=CRITICAL)
Provides an overriding level *lvl* for all loggers which takes precedence over
the logger's own level. When the need arises to temporarily throttle logging
@@ -1036,6 +1036,14 @@
overriding level, so that logging output again depends on the effective
levels of individual loggers.
+ Note that if you have defined any custom logging level higher than
+ ``CRITICAL`` (this is not recommended), you won't be able to rely on the
+ default value for the *lvl* parameter, but will have to explicitly supply a
+ suitable value.
+
+ .. versionchanged:: 3.7
+ The *lvl* parameter was defaulted to level ``CRITICAL``. See Issue
+ #28524 for more information about this change.
.. function:: addLevelName(lvl, levelName)
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -1889,7 +1889,7 @@
basicConfig()
root.log(level, msg, *args, **kwargs)
-def disable(level):
+def disable(level=CRITICAL):
"""
Disable all logging calls of severity 'level' and below.
"""
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
@@ -3473,6 +3473,11 @@
logging.disable(83)
self.assertEqual(logging.root.manager.disable, 83)
+ # test the default value introduced in 3.7
+ # (Issue #28524)
+ logging.disable()
+ self.assertEqual(logging.root.manager.disable, logging.CRITICAL)
+
def _test_log(self, method, level=None):
called = []
support.patch(self, logging, 'basicConfig',
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list