[Python-checkins] gh-101578: Fixup NEWS and add What's New entry for new exception APIs (#102157)
erlend-aasland
webhook-mailer at python.org
Thu Feb 23 07:20:02 EST 2023
https://github.com/python/cpython/commit/5b9573eed43c9a43bf0cf54fe012413e08cce34f
commit: 5b9573eed43c9a43bf0cf54fe012413e08cce34f
branch: main
author: Erlend E. Aasland <erlend.aasland at protonmail.com>
committer: erlend-aasland <erlend.aasland at protonmail.com>
date: 2023-02-23T13:19:21+01:00
summary:
gh-101578: Fixup NEWS and add What's New entry for new exception APIs (#102157)
files:
M Doc/whatsnew/3.12.rst
M Misc/NEWS.d/next/C API/2023-02-06-16-14-30.gh-issue-101578.PW5fA9.rst
diff --git a/Doc/whatsnew/3.12.rst b/Doc/whatsnew/3.12.rst
index 909c9102a405..e551c5b4fd06 100644
--- a/Doc/whatsnew/3.12.rst
+++ b/Doc/whatsnew/3.12.rst
@@ -870,6 +870,19 @@ New Features
get a frame variable by its name.
(Contributed by Victor Stinner in :gh:`91248`.)
+* Add :c:func:`PyErr_GetRaisedException` and :c:func:`PyErr_SetRaisedException`
+ for saving and restoring the current exception.
+ These functions return and accept a single exception object,
+ rather than the triple arguments of the now-deprecated
+ :c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore`.
+ This is less error prone and a bit more efficient.
+ (Contributed by Mark Shannon in :gh:`101578`.)
+
+* Add :c:func:`PyException_GetArgs` and :c:func:`PyException_SetArgs`
+ as convenience functions for retrieving and modifying
+ the :attr:`~BaseException.args` passed to the exception's constructor.
+ (Contributed by Mark Shannon in :gh:`101578`.)
+
Porting to Python 3.12
----------------------
@@ -993,6 +1006,11 @@ Deprecated
(Contributed in :gh:`47146` by Petr Viktorin, based on
earlier work by Alexander Belopolsky and Matthias Braun.)
+* :c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore` are deprecated.
+ Use :c:func:`PyErr_GetRaisedException` and
+ :c:func:`PyErr_SetRaisedException` instead.
+ (Contributed by Mark Shannon in :gh:`101578`.)
+
Removed
-------
diff --git a/Misc/NEWS.d/next/C API/2023-02-06-16-14-30.gh-issue-101578.PW5fA9.rst b/Misc/NEWS.d/next/C API/2023-02-06-16-14-30.gh-issue-101578.PW5fA9.rst
index fc694f6e051b..27294a9e5179 100644
--- a/Misc/NEWS.d/next/C API/2023-02-06-16-14-30.gh-issue-101578.PW5fA9.rst
+++ b/Misc/NEWS.d/next/C API/2023-02-06-16-14-30.gh-issue-101578.PW5fA9.rst
@@ -1,13 +1,10 @@
-Add new C-API functions for saving and restoring the current exception:
-``PyErr_GetRaisedException`` and ``PyErr_SetRaisedException``.
-These functions take and return a single exception rather than
-the triple of ``PyErr_Fetch`` and ``PyErr_Restore``.
+Add :c:func:`PyErr_GetRaisedException` and :c:func:`PyErr_SetRaisedException`
+for saving and restoring the current exception.
+These functions return and accept a single exception object,
+rather than the triple arguments of the now-deprecated
+:c:func:`PyErr_Fetch` and :c:func:`PyErr_Restore`.
This is less error prone and a bit more efficient.
-The three arguments forms of saving and restoring the
-current exception: ``PyErr_Fetch`` and ``PyErr_Restore``
-are deprecated.
-
-Also add ``PyException_GetArgs`` and ``PyException_SetArgs``
-as convenience functions to help dealing with
-exceptions in the C API.
+Add :c:func:`PyException_GetArgs` and :c:func:`PyException_SetArgs`
+as convenience functions for retrieving and modifying
+the :attr:`~BaseException.args` passed to the exception's constructor.
More information about the Python-checkins
mailing list