Skip to content

Commit 311deda

Browse files
[3.13] GH-109975: Copyedit 3.13 What's New: Optimizations (GH-123301) (#123308)
Co-authored-by: Adam Turner <[email protected]>
1 parent 391e562 commit 311deda

File tree

1 file changed

+25
-14
lines changed

1 file changed

+25
-14
lines changed

Doc/whatsnew/3.13.rst

+25-14
Original file line numberDiff line numberDiff line change
@@ -487,6 +487,8 @@ but the platform is not yet officially supported.
487487
.. seealso:: :pep:`730`, :pep:`738`
488488

489489

490+
.. _whatsnew313-incremental-gc:
491+
490492
Incremental garbage collection
491493
------------------------------
492494

@@ -1465,24 +1467,33 @@ zipimport
14651467
Optimizations
14661468
=============
14671469

1468-
* :func:`textwrap.indent` is now ~30% faster than before for large input.
1470+
* The new :ref:`incremental garbage collector <whatsnew313-incremental-gc>`
1471+
means that maximum pause times are reduced
1472+
by an order of magnitude or more for larger heaps.
1473+
(Contributed by Mark Shannon in :gh:`108362`.)
1474+
1475+
* Several standard library modules have had
1476+
their import times significantly improved.
1477+
For example, the import time of the :mod:`typing` module
1478+
has been reduced by around a third by removing dependencies
1479+
on :mod:`re` and :mod:`contextlib`.
1480+
Other modules to enjoy import-time speedups include
1481+
:mod:`email.utils`, :mod:`enum`, :mod:`functools`,
1482+
:mod:`importlib.metadata`, and :mod:`threading`.
1483+
(Contributed by Alex Waygood, Shantanu Jain, Adam Turner, Daniel Holla,
1484+
and others in :gh:`109653`.)
1485+
1486+
* :func:`textwrap.indent` is now around 30% faster than before for large input.
14691487
(Contributed by Inada Naoki in :gh:`107369`.)
14701488

1471-
* The :mod:`subprocess` module uses :func:`os.posix_spawn` in more situations
1472-
including the default where ``close_fds=True`` on many modern platforms. This
1473-
should provide a noteworthy performance increase launching processes on
1474-
FreeBSD and Solaris. See the :ref:`subprocess <whatsnew313-subprocess>`
1475-
section above for details.
1489+
* The :mod:`subprocess` module now uses the :func:`~os.posix_spawn` function in
1490+
more situations, including when *close_fds* is ``True`` (the default)
1491+
on many modern platforms.
1492+
This should provide a notable performance increase
1493+
when launching processes on FreeBSD and Solaris.
1494+
See the :ref:`subprocess <whatsnew313-subprocess>` section above for details.
14761495
(Contributed by Jakub Kulik in :gh:`113117`.)
14771496

1478-
* Several standard library modules have had their import times significantly
1479-
improved. For example, the import time of the :mod:`typing` module has been
1480-
reduced by around a third by removing dependencies on :mod:`re` and
1481-
:mod:`contextlib`. Other modules to enjoy import-time speedups include
1482-
:mod:`importlib.metadata`, :mod:`threading`, :mod:`enum`, :mod:`functools`
1483-
and :mod:`email.utils`.
1484-
(Contributed by Alex Waygood, Shantanu Jain, Adam Turner, Daniel Hollas and
1485-
others in :gh:`109653`.)
14861497

14871498
Removed Modules And APIs
14881499
========================

0 commit comments

Comments
 (0)