mirror of
https://github.com/python/cpython.git
synced 2025-07-24 03:35:53 +00:00
Closes #16521: Improved error handling for basicConfig(), added tests for same.
This commit is contained in:
parent
bf6ecf92fa
commit
d27e05d734
2 changed files with 168 additions and 9 deletions
|
@ -1674,22 +1674,25 @@ def basicConfig(**kwargs):
|
|||
_acquireLock()
|
||||
try:
|
||||
if len(root.handlers) == 0:
|
||||
filename = kwargs.get("filename")
|
||||
filename = kwargs.pop("filename", None)
|
||||
if filename:
|
||||
mode = kwargs.get("filemode", 'a')
|
||||
mode = kwargs.pop("filemode", 'a')
|
||||
hdlr = FileHandler(filename, mode)
|
||||
else:
|
||||
stream = kwargs.get("stream")
|
||||
stream = kwargs.pop("stream", None)
|
||||
hdlr = StreamHandler(stream)
|
||||
fs = kwargs.get("format", BASIC_FORMAT)
|
||||
dfs = kwargs.get("datefmt", None)
|
||||
style = kwargs.get("style", '%')
|
||||
fs = kwargs.pop("format", BASIC_FORMAT)
|
||||
dfs = kwargs.pop("datefmt", None)
|
||||
style = kwargs.pop("style", '%')
|
||||
fmt = Formatter(fs, dfs, style)
|
||||
hdlr.setFormatter(fmt)
|
||||
root.addHandler(hdlr)
|
||||
level = kwargs.get("level")
|
||||
level = kwargs.pop("level", None)
|
||||
if level is not None:
|
||||
root.setLevel(level)
|
||||
if kwargs:
|
||||
s = ', '.join(kwargs.keys())
|
||||
raise ValueError('Unexpected in keyword arguments: %s' % s)
|
||||
finally:
|
||||
_releaseLock()
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue