https://github.com/python/cpython/commit/a44509ea87021f78a9f769aff2bb3fc212bc8afc
commit: a44509ea87021f78a9f769aff2bb3fc212bc8afc
branch: main
author: Bartosz SÅ‚awecki <[email protected]>
committer: encukou <[email protected]>
date: 2025-12-16T11:15:37+01:00
summary:

gh-139320: Cover exception chaining in the docs of `contextmanager.__exit__` 
(GH-140169)

files:
M Doc/library/stdtypes.rst

diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index a0b78f8053764b..5cfa888706f9b9 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -5475,9 +5475,11 @@ before the statement body is executed and exited when 
the statement ends:
    Returning a true value from this method will cause the :keyword:`with` 
statement
    to suppress the exception and continue execution with the statement 
immediately
    following the :keyword:`!with` statement. Otherwise the exception continues
-   propagating after this method has finished executing. Exceptions that occur
-   during execution of this method will replace any exception that occurred in 
the
-   body of the :keyword:`!with` statement.
+   propagating after this method has finished executing.
+
+   If this method raises an exception while handling an earlier exception from 
the
+   :keyword:`with` block, the new exception is raised, and the original 
exception
+   is stored in its :attr:`~BaseException.__context__` attribute.
 
    The exception passed in should never be reraised explicitly - instead, this
    method should return a false value to indicate that the method completed

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to