From 7b69069e9aa0047a0dbe8af1a67aa2b355dc68d8 Mon Sep 17 00:00:00 2001 From: Xtreak Date: Wed, 11 Sep 2019 15:12:51 +0100 Subject: bpo-37651: Document CancelledError is now a subclass of BaseException (GH-15950) https://bugs.python.org/issue37651 Automerge-Triggered-By: @1st1 --- Doc/library/asyncio-exceptions.rst | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/Doc/library/asyncio-exceptions.rst b/Doc/library/asyncio-exceptions.rst index e49577a..b1e6ecf 100644 --- a/Doc/library/asyncio-exceptions.rst +++ b/Doc/library/asyncio-exceptions.rst @@ -25,26 +25,9 @@ Exceptions when asyncio Tasks are cancelled. In almost all situations the exception must be re-raised. - .. important:: - - This exception is a subclass of :exc:`Exception`, so it can be - accidentally suppressed by an overly broad ``try..except`` block:: - - try: - await operation - except Exception: - # The cancellation is broken because the *except* block - # suppresses the CancelledError exception. - log.log('an error has occurred') - - Instead, the following pattern should be used:: + .. versionchanged:: 3.8 - try: - await operation - except asyncio.CancelledError: - raise - except Exception: - log.log('an error has occurred') + :exc:`CancelledError` is now a subclass of :class:`BaseException`. .. exception:: InvalidStateError -- cgit v0.12