Commit 1254b407 authored by Raymond Hettinger's avatar Raymond Hettinger

Rename contextlib.ignored() to contextlib.ignore().

parent a76795bf
...@@ -94,16 +94,16 @@ Functions and classes provided: ...@@ -94,16 +94,16 @@ Functions and classes provided:
without needing to explicitly close ``page``. Even if an error occurs, without needing to explicitly close ``page``. Even if an error occurs,
``page.close()`` will be called when the :keyword:`with` block is exited. ``page.close()`` will be called when the :keyword:`with` block is exited.
.. function:: ignored(*exceptions) .. function:: ignore(*exceptions)
Return a context manager that ignores the specified exceptions if they Return a context manager that ignores the specified exceptions if they
occur in the body of a with-statement. occur in the body of a with-statement.
For example:: For example::
from contextlib import ignored from contextlib import ignore
with ignored(OSError): with ignore(OSError):
os.remove('somefile.tmp') os.remove('somefile.tmp')
This code is equivalent to:: This code is equivalent to::
......
...@@ -5,7 +5,7 @@ from collections import deque ...@@ -5,7 +5,7 @@ from collections import deque
from functools import wraps from functools import wraps
__all__ = ["contextmanager", "closing", "ContextDecorator", "ExitStack", __all__ = ["contextmanager", "closing", "ContextDecorator", "ExitStack",
"ignored", "redirect_stdout"] "ignore", "redirect_stdout"]
class ContextDecorator(object): class ContextDecorator(object):
...@@ -179,10 +179,10 @@ class redirect_stdout: ...@@ -179,10 +179,10 @@ class redirect_stdout:
sys.stdout = self.old_target sys.stdout = self.old_target
@contextmanager @contextmanager
def ignored(*exceptions): def ignore(*exceptions):
"""Context manager to ignore specified exceptions """Context manager to ignore specified exceptions
with ignored(OSError): with ignore(OSError):
os.remove(somefile) os.remove(somefile)
""" """
......
...@@ -632,26 +632,26 @@ class TestExitStack(unittest.TestCase): ...@@ -632,26 +632,26 @@ class TestExitStack(unittest.TestCase):
stack.push(cm) stack.push(cm)
self.assertIs(stack._exit_callbacks[-1], cm) self.assertIs(stack._exit_callbacks[-1], cm)
class TestIgnored(unittest.TestCase): class TestIgnore(unittest.TestCase):
def test_no_exception(self): def test_no_exception(self):
with ignored(ValueError): with ignore(ValueError):
self.assertEqual(pow(2, 5), 32) self.assertEqual(pow(2, 5), 32)
def test_exact_exception(self): def test_exact_exception(self):
with ignored(TypeError): with ignore(TypeError):
len(5) len(5)
def test_multiple_exception_args(self): def test_multiple_exception_args(self):
with ignored(ZeroDivisionError, TypeError): with ignore(ZeroDivisionError, TypeError):
len(5) len(5)
def test_exception_hierarchy(self): def test_exception_hierarchy(self):
with ignored(LookupError): with ignore(LookupError):
'Hello'[50] 'Hello'[50]
class TestRedirectStdout(unittest.TestCase): class TestRedirectStdout(unittest.TestCase):
......
...@@ -1656,8 +1656,8 @@ Library ...@@ -1656,8 +1656,8 @@ Library
- Issue #17385: Fix quadratic behavior in threading.Condition. The FIFO - Issue #17385: Fix quadratic behavior in threading.Condition. The FIFO
queue now uses a deque instead of a list. queue now uses a deque instead of a list.
- Issue #15806: Add contextlib.ignored(). This creates a context manager - Issue #15806: Add contextlib.ignore(). This creates a context manager to
to ignore specified exceptions, replacing the "except Exc: pass" idiom. ignore specified exceptions, replacing the "except SomeException: pass" idiom.
- Issue #14645: The email generator classes now produce output using the - Issue #14645: The email generator classes now produce output using the
specified linesep throughout. Previously if the prolog, epilog, or specified linesep throughout. Previously if the prolog, epilog, or
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment