]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-109190: Copyedit 3.12 What's New: Sort Other Language Changes (#109836)
authorAdam Turner <9087854+AA-Turner@users.noreply.github.com>
Mon, 25 Sep 2023 14:42:03 +0000 (15:42 +0100)
committerGitHub <noreply@github.com>
Mon, 25 Sep 2023 14:42:03 +0000 (17:42 +0300)
Doc/whatsnew/3.12.rst

index cf0a3f276fd0217422da28e6b1369ff0927cff55..76f1f00dbd34dd78d8256bdfdee79ef5ccb574f8 100644 (file)
@@ -465,45 +465,9 @@ and others in :gh:`103764`.)
 Other Language Changes
 ======================
 
-* Add :ref:`support for the perf profiler <perf_profiling>` through the new
-  environment variable :envvar:`PYTHONPERFSUPPORT`
-  and command-line option :option:`-X perf <-X>`,
-  as well as the new :func:`sys.activate_stack_trampoline`,
-  :func:`sys.deactivate_stack_trampoline`,
-  and :func:`sys.is_stack_trampoline_active` functions.
-  (Design by Pablo Galindo. Contributed by Pablo Galindo and Christian Heimes
-  with contributions from Gregory P. Smith [Google] and Mark Shannon
-  in :gh:`96123`.)
-
-* The extraction methods in :mod:`tarfile`, and :func:`shutil.unpack_archive`,
-  have a new a *filter* argument that allows limiting tar features than may be
-  surprising or dangerous, such as creating files outside the destination
-  directory.
-  See :ref:`tarfile extraction filters <tarfile-extraction-filter>` for details.
-  In Python 3.14, the default will switch to ``'data'``.
-  (Contributed by Petr Viktorin in :pep:`706`.)
-
-* :class:`types.MappingProxyType` instances are now hashable if the underlying
-  mapping is hashable.
-  (Contributed by Serhiy Storchaka in :gh:`87995`.)
-
-* :class:`memoryview` now supports the half-float type (the "e" format code).
-  (Contributed by Donghee Na and Antoine Pitrou in :gh:`90751`.)
-
 * The parser now raises :exc:`SyntaxError` when parsing source code containing
   null bytes. (Contributed by Pablo Galindo in :gh:`96670`.)
 
-* :func:`ast.parse` now raises :exc:`SyntaxError` instead of :exc:`ValueError`
-  when parsing source code containing null bytes. (Contributed by Pablo Galindo
-  in :gh:`96670`.)
-
-* The Garbage Collector now runs only on the eval breaker mechanism of the
-  Python bytecode evaluation loop instead of object allocations. The GC can
-  also run when :c:func:`PyErr_CheckSignals` is called so C extensions that
-  need to run for a long time without executing any Python code also have a
-  chance to execute the GC periodically. (Contributed by Pablo Galindo in
-  :gh:`97922`.)
-
 * A backslash-character pair that is not a valid escape sequence now generates
   a :exc:`SyntaxWarning`, instead of :exc:`DeprecationWarning`.
   For example, ``re.compile("\d+\.\d+")`` now emits a :exc:`SyntaxWarning`
@@ -519,10 +483,6 @@ Other Language Changes
   In a future Python version they will be eventually a :exc:`SyntaxError`.
   (Contributed by Victor Stinner in :gh:`98401`.)
 
-* All builtin and extension callables expecting boolean parameters now accept
-  arguments of any type instead of just :class:`bool` and :class:`int`.
-  (Contributed by Serhiy Storchaka in :gh:`60203`.)
-
 * Variables used in the target part of comprehensions that are not stored to
   can now be used in assignment expressions (``:=``).
   For example, in ``[(b := 1) for a, b.prop in some_iter]``, the assignment to
@@ -530,13 +490,6 @@ Other Language Changes
   part of comprehensions (like ``a``) is still disallowed, as per :pep:`572`.
   (Contributed by Nikita Sobolev in :gh:`100581`.)
 
-* :class:`slice` objects are now hashable, allowing them to be used as dict keys and
-  set items. (Contributed by Will Bradshaw, Furkan Onder, and Raymond Hettinger in :gh:`101264`.)
-
-* :func:`sum` now uses Neumaier summation to improve accuracy and commutativity
-  when summing floats or mixed ints and floats.
-  (Contributed by Raymond Hettinger in :gh:`100425`.)
-
 * Exceptions raised in a class or type's ``__set_name__`` method are no longer
   wrapped by a :exc:`RuntimeError`. Context information is added to the
   exception as a :pep:`678` note. (Contributed by Irit Katriel in :gh:`77757`.)
@@ -546,6 +499,53 @@ Other Language Changes
   :exc:`ExceptionGroup`. Also changed in version 3.11.4. (Contributed by Irit
   Katriel in :gh:`103590`.)
 
+* The Garbage Collector now runs only on the eval breaker mechanism of the
+  Python bytecode evaluation loop instead of object allocations. The GC can
+  also run when :c:func:`PyErr_CheckSignals` is called so C extensions that
+  need to run for a long time without executing any Python code also have a
+  chance to execute the GC periodically. (Contributed by Pablo Galindo in
+  :gh:`97922`.)
+
+* All builtin and extension callables expecting boolean parameters now accept
+  arguments of any type instead of just :class:`bool` and :class:`int`.
+  (Contributed by Serhiy Storchaka in :gh:`60203`.)
+
+* :class:`memoryview` now supports the half-float type (the "e" format code).
+  (Contributed by Donghee Na and Antoine Pitrou in :gh:`90751`.)
+
+* :class:`slice` objects are now hashable, allowing them to be used as dict keys and
+  set items. (Contributed by Will Bradshaw, Furkan Onder, and Raymond Hettinger in :gh:`101264`.)
+
+* :func:`sum` now uses Neumaier summation to improve accuracy and commutativity
+  when summing floats or mixed ints and floats.
+  (Contributed by Raymond Hettinger in :gh:`100425`.)
+
+* :func:`ast.parse` now raises :exc:`SyntaxError` instead of :exc:`ValueError`
+  when parsing source code containing null bytes. (Contributed by Pablo Galindo
+  in :gh:`96670`.)
+
+* The extraction methods in :mod:`tarfile`, and :func:`shutil.unpack_archive`,
+  have a new a *filter* argument that allows limiting tar features than may be
+  surprising or dangerous, such as creating files outside the destination
+  directory.
+  See :ref:`tarfile extraction filters <tarfile-extraction-filter>` for details.
+  In Python 3.14, the default will switch to ``'data'``.
+  (Contributed by Petr Viktorin in :pep:`706`.)
+
+* :class:`types.MappingProxyType` instances are now hashable if the underlying
+  mapping is hashable.
+  (Contributed by Serhiy Storchaka in :gh:`87995`.)
+
+* Add :ref:`support for the perf profiler <perf_profiling>` through the new
+  environment variable :envvar:`PYTHONPERFSUPPORT`
+  and command-line option :option:`-X perf <-X>`,
+  as well as the new :func:`sys.activate_stack_trampoline`,
+  :func:`sys.deactivate_stack_trampoline`,
+  and :func:`sys.is_stack_trampoline_active` functions.
+  (Design by Pablo Galindo. Contributed by Pablo Galindo and Christian Heimes
+  with contributions from Gregory P. Smith [Google] and Mark Shannon
+  in :gh:`96123`.)
+
 
 New Modules
 ===========