@@ -341,6 +341,15 @@ asyncio
341341-------
342342
343343On Windows, the default event loop is now :class: `~asyncio.ProactorEventLoop `.
344+ (Contributed by Victor Stinner in :issue: `34687 `.)
345+
346+ :class: `~asyncio.ProactorEventLoop ` now also supports UDP.
347+ (Contributed by Adam Meily and Andrew Svetlov in :issue: `29883 `.)
348+
349+ :class: `~asyncio.ProactorEventLoop ` can now be interrupted by
350+ :exc: `KeyboardInterrupt ` ("CTRL+C").
351+ (Contributed by Vladimir Matveev in :issue: `23057 `.)
352+
344353
345354builtins
346355--------
@@ -672,6 +681,7 @@ how "unraisable exceptions" are handled. It is called when an exception has
672681occurred but there is no way for Python to handle it. For example, when a
673682destructor raises an exception or during garbage collection
674683(:func: `gc.collect `).
684+ (Contributed by Victor Stinner in :issue: `36829 `.)
675685
676686
677687tarfile
@@ -740,7 +750,7 @@ unicodedata
740750unittest
741751--------
742752
743- * XXX Added :class: `AsyncMock ` to support an asynchronous version of :class: `Mock `.
753+ * Added :class: `AsyncMock ` to support an asynchronous version of :class: `Mock `.
744754 Appropriate new assert functions for testing have been added as well.
745755 (Contributed by Lisa Roach in :issue: `26467 `).
746756
@@ -801,6 +811,8 @@ Optimizations
801811 are not set;
802812 * the *executable * path contains a directory.
803813
814+ (Contributed by Joannah Nanjekye and Victor Stinner in :issue: `35537 `.)
815+
804816* :func: `shutil.copyfile `, :func: `shutil.copy `, :func: `shutil.copy2 `,
805817 :func: `shutil.copytree ` and :func: `shutil.move ` use platform-specific
806818 "fast-copy" syscalls on Linux and macOS in order to copy the file
@@ -1006,10 +1018,12 @@ The following features and APIs have been removed from Python 3.8:
10061018
10071019* The function :func: `platform.popen ` has been removed, it was deprecated since
10081020 Python 3.3: use :func: `os.popen ` instead.
1021+ (Contributed by Victor Stinner in :issue: `35345 `.)
10091022
10101023* The function :func: `time.clock ` has been removed, it was deprecated since Python
10111024 3.3: use :func: `time.perf_counter ` or :func: `time.process_time ` instead, depending
10121025 on your requirements, to have a well defined behavior.
1026+ (Contributed by Matthias Bussonnier in :issue: `36895 `.)
10131027
10141028* The ``pyvenv `` script has been removed in favor of ``python3.8 -m venv ``
10151029 to help eliminate confusion as to what Python interpreter the ``pyvenv ``
@@ -1100,12 +1114,14 @@ Changes in the Python API
11001114 Emulation, Popen constructor using :func: `os.posix_spawn ` no longer raise an
11011115 exception on errors like missing program, but the child process fails with a
11021116 non-zero :attr: `~Popen.returncode `.
1117+ (Contributed by Joannah Nanjekye and Victor Stinner in :issue: `35537 `.)
11031118
11041119* The :meth: `imap.IMAP4.logout ` method no longer ignores silently arbitrary
11051120 exceptions.
11061121
11071122* The function :func: `platform.popen ` has been removed, it was deprecated since
11081123 Python 3.3: use :func: `os.popen ` instead.
1124+ (Contributed by Victor Stinner in :issue: `35345 `.)
11091125
11101126* The :func: `statistics.mode ` function no longer raises an exception
11111127 when given multimodal data. Instead, it returns the first mode
@@ -1232,6 +1248,7 @@ Changes in the C API
12321248 ``RTLD_LOCAL ``, it was already not possible to load C extensions which
12331249 were not linked to ``libpython ``, like C extensions of the standard
12341250 library built by the ``*shared* `` section of ``Modules/Setup ``.
1251+ (Contributed by Victor Stinner in :issue: `21536 `.)
12351252
12361253* Use of ``# `` variants of formats in parsing or building value (e.g.
12371254 :c:func: `PyArg_ParseTuple `, :c:func: `Py_BuildValue `, :c:func: `PyObject_CallFunction `,
0 commit comments