Skip to content

Commit

Permalink
gh-84559: gh-103134: Whats new 3.14 entries for multiprocessing. (GH-…
Browse files Browse the repository at this point in the history
  • Loading branch information
gpshead authored Nov 11, 2024
1 parent 6e25eb1 commit 4f3253a
Showing 1 changed file with 25 additions and 8 deletions.
33 changes: 25 additions & 8 deletions Doc/whatsnew/3.14.rst
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,12 @@ concurrent.futures
same process) to Python code. This is separate from the proposed API
in :pep:`734`.
(Contributed by Eric Snow in :gh:`124548`.)
* The default ``ProcessPoolExecutor`` start method (see
:ref:`multiprocessing-start-methods`) changed from *fork* to *forkserver* on
platforms other than macOS & Windows. If you require the threading
incompatible *fork* start method you must explicitly request it by
supplying a *mp_context* to :class:`concurrent.futures.ProcessPoolExecutor`.
(Contributed by Gregory P. Smith in :gh:`84559`.)

ctypes
------
Expand Down Expand Up @@ -357,6 +363,25 @@ json
(Contributed by Trey Hunner in :gh:`122873`.)


multiprocessing
---------------

* The default start method (see :ref:`multiprocessing-start-methods`) changed
from *fork* to *forkserver* on platforms other than macOS & Windows where
it was already *spawn*. If you require the threading incompatible *fork*
start method you must explicitly request it using a context from
:func:`multiprocessing.get_context` (preferred) or change the default via
:func:`multiprocessing.set_start_method`.
(Contributed by Gregory P. Smith in :gh:`84559`.)
* The :ref:`multiprocessing proxy objects <multiprocessing-proxy_objects>`
for *list* and *dict* types gain previously overlooked missing methods:

* :meth:`!clear` and :meth:`!copy` for proxies of :class:`list`.
* :meth:`~dict.fromkeys`, ``reversed(d)``, ``d | {}``, ``{} | d``,
``d |= {'b': 2}`` for proxies of :class:`dict`.

(Contributed by Roy Hyunjin Han for :gh:`103134`)

operator
--------

Expand Down Expand Up @@ -511,14 +536,6 @@ Deprecated
as a single positional argument.
(Contributed by Serhiy Storchaka in :gh:`109218`.)

* :mod:`multiprocessing` and :mod:`concurrent.futures`:
The default start method (see :ref:`multiprocessing-start-methods`) changed
away from *fork* to *forkserver* on platforms where it was not already
*spawn* (Windows & macOS). If you require the threading incompatible *fork*
start method you must explicitly specify it when using :mod:`multiprocessing`
or :mod:`concurrent.futures` APIs.
(Contributed by Gregory P. Smith in :gh:`84559`.)

* :mod:`os`:
:term:`Soft deprecate <soft deprecated>` :func:`os.popen` and
:func:`os.spawn* <os.spawnl>` functions. They should no longer be used to
Expand Down

0 comments on commit 4f3253a

Please sign in to comment.