mirror of
https://github.com/python/cpython
synced 2024-10-14 11:03:18 +00:00
gh-92128: Add __class_getitem__
to logging.LoggerAdapter
and logging.StreamHandler
(#92129)
Closes #92128
This commit is contained in:
parent
031397063e
commit
ab616d323d
|
@ -25,6 +25,7 @@
|
|||
|
||||
import sys, os, time, io, re, traceback, warnings, weakref, collections.abc
|
||||
|
||||
from types import GenericAlias
|
||||
from string import Template
|
||||
from string import Formatter as StrFormatter
|
||||
|
||||
|
@ -1145,6 +1146,8 @@ def __repr__(self):
|
|||
name += ' '
|
||||
return '<%s %s(%s)>' % (self.__class__.__name__, name, level)
|
||||
|
||||
__class_getitem__ = classmethod(GenericAlias)
|
||||
|
||||
|
||||
class FileHandler(StreamHandler):
|
||||
"""
|
||||
|
@ -1939,6 +1942,8 @@ def __repr__(self):
|
|||
level = getLevelName(logger.getEffectiveLevel())
|
||||
return '<%s %s (%s)>' % (self.__class__.__name__, logger.name, level)
|
||||
|
||||
__class_getitem__ = classmethod(GenericAlias)
|
||||
|
||||
root = RootLogger(WARNING)
|
||||
Logger.root = root
|
||||
Logger.manager = Manager(Logger.root)
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
from dataclasses import Field
|
||||
from functools import partial, partialmethod, cached_property
|
||||
from graphlib import TopologicalSorter
|
||||
from logging import LoggerAdapter, StreamHandler
|
||||
from mailbox import Mailbox, _PartialFile
|
||||
try:
|
||||
import ctypes
|
||||
|
@ -113,6 +114,7 @@ class BaseTest(unittest.TestCase):
|
|||
MappingProxyType, AsyncGeneratorType,
|
||||
DirEntry,
|
||||
chain,
|
||||
LoggerAdapter, StreamHandler,
|
||||
TemporaryDirectory, SpooledTemporaryFile,
|
||||
Queue, SimpleQueue,
|
||||
_AssertRaisesContext,
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
Add :meth:`~object.__class_getitem__` to :class:`logging.LoggerAdapter` and
|
||||
:class:`logging.StreamHandler`, allowing them to be parameterized at runtime.
|
||||
Patch by Alex Waygood.
|
Loading…
Reference in a new issue