diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2016-12-31 11:40:11 (GMT) |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2016-12-31 11:40:11 (GMT) |
commit | d489ac91020efcf7b76a9fed0a44891c334ba67e (patch) | |
tree | a0cbc56f0d2f317d39c9182d2e6f94a3ce91e7bb | |
parent | 8e9c42e8e827fd4212639671faec9cf4ff62b6e9 (diff) | |
download | cpython-d489ac91020efcf7b76a9fed0a44891c334ba67e.zip cpython-d489ac91020efcf7b76a9fed0a44891c334ba67e.tar.gz cpython-d489ac91020efcf7b76a9fed0a44891c334ba67e.tar.bz2 |
Closes #28524: added default level for logging.disable().
-rw-r--r-- | Doc/library/logging.rst | 10 | ||||
-rw-r--r-- | Lib/logging/__init__.py | 2 | ||||
-rw-r--r-- | 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 index 6098878..d03cc50 100644 --- a/Doc/library/logging.rst +++ b/Doc/library/logging.rst @@ -1023,7 +1023,7 @@ functions. 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 @@ functions. 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 index 2590d65..d886d35 100644 --- a/Lib/logging/__init__.py +++ b/Lib/logging/__init__.py @@ -1889,7 +1889,7 @@ def log(level, msg, *args, **kwargs): 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 index 08cdd7f..7c5d1fd 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -3473,6 +3473,11 @@ class ModuleLevelMiscTest(BaseTest): 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', |