Issue #10859: Make `contextlib.GeneratorContextManager` officially
private by renaming it to `_GeneratorContextManager`.
This commit is contained in:
parent
d97b7b5158
commit
67b212e608
|
@ -17,7 +17,7 @@ class ContextDecorator(object):
|
|||
return inner
|
||||
|
||||
|
||||
class GeneratorContextManager(ContextDecorator):
|
||||
class _GeneratorContextManager(ContextDecorator):
|
||||
"""Helper for @contextmanager decorator."""
|
||||
|
||||
def __init__(self, gen):
|
||||
|
@ -92,7 +92,7 @@ def contextmanager(func):
|
|||
"""
|
||||
@wraps(func)
|
||||
def helper(*args, **kwds):
|
||||
return GeneratorContextManager(func(*args, **kwds))
|
||||
return _GeneratorContextManager(func(*args, **kwds))
|
||||
return helper
|
||||
|
||||
|
||||
|
|
|
@ -9,26 +9,26 @@ __email__ = "mbland at acm dot org"
|
|||
import sys
|
||||
import unittest
|
||||
from collections import deque
|
||||
from contextlib import GeneratorContextManager, contextmanager
|
||||
from contextlib import _GeneratorContextManager, contextmanager
|
||||
from test.support import run_unittest
|
||||
|
||||
|
||||
class MockContextManager(GeneratorContextManager):
|
||||
class MockContextManager(_GeneratorContextManager):
|
||||
def __init__(self, gen):
|
||||
GeneratorContextManager.__init__(self, gen)
|
||||
_GeneratorContextManager.__init__(self, gen)
|
||||
self.enter_called = False
|
||||
self.exit_called = False
|
||||
self.exit_args = None
|
||||
|
||||
def __enter__(self):
|
||||
self.enter_called = True
|
||||
return GeneratorContextManager.__enter__(self)
|
||||
return _GeneratorContextManager.__enter__(self)
|
||||
|
||||
def __exit__(self, type, value, traceback):
|
||||
self.exit_called = True
|
||||
self.exit_args = (type, value, traceback)
|
||||
return GeneratorContextManager.__exit__(self, type,
|
||||
value, traceback)
|
||||
return _GeneratorContextManager.__exit__(self, type,
|
||||
value, traceback)
|
||||
|
||||
|
||||
def mock_contextmanager(func):
|
||||
|
|
|
@ -40,6 +40,9 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #10859: Make ``contextlib.GeneratorContextManager`` officially
|
||||
private by renaming it to ``_GeneratorContextManager``.
|
||||
|
||||
- Issue #10042: Fixed the total_ordering decorator to handle cross-type
|
||||
comparisons that could lead to infinite recursion.
|
||||
|
||||
|
|
Loading…
Reference in New Issue