summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@redhat.com>2019-06-03 14:28:01 (GMT)
committerGitHub <noreply@github.com>2019-06-03 14:28:01 (GMT)
commit01ae897efddb31f622999abf4479b2f0fd2f37ff (patch)
tree4881d7fb82cee2fdbb4057a43fb6595e666ac58b /Doc/whatsnew
parent395420e2a35937fa9777fc3c8b0086629db95e27 (diff)
downloadcpython-01ae897efddb31f622999abf4479b2f0fd2f37ff.zip
cpython-01ae897efddb31f622999abf4479b2f0fd2f37ff.tar.gz
cpython-01ae897efddb31f622999abf4479b2f0fd2f37ff.tar.bz2
Add credits to What's New in Python 3.8 (GH-13776)
* Credit myself and others. * Complete asyncio changes.
Diffstat (limited to 'Doc/whatsnew')
-rw-r--r--Doc/whatsnew/3.8.rst19
1 files changed, 18 insertions, 1 deletions
diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst
index da97a72..f060f4b 100644
--- a/Doc/whatsnew/3.8.rst
+++ b/Doc/whatsnew/3.8.rst
@@ -341,6 +341,15 @@ asyncio
-------
On Windows, the default event loop is now :class:`~asyncio.ProactorEventLoop`.
+(Contributed by Victor Stinner in :issue:`34687`.)
+
+:class:`~asyncio.ProactorEventLoop` now also supports UDP.
+(Contributed by Adam Meily and Andrew Svetlov in :issue:`29883`.)
+
+:class:`~asyncio.ProactorEventLoop` can now be interrupted by
+:exc:`KeyboardInterrupt` ("CTRL+C").
+(Contributed by Vladimir Matveev in :issue:`23057`.)
+
builtins
--------
@@ -672,6 +681,7 @@ how "unraisable exceptions" are handled. It is called when an exception has
occurred but there is no way for Python to handle it. For example, when a
destructor raises an exception or during garbage collection
(:func:`gc.collect`).
+(Contributed by Victor Stinner in :issue:`36829`.)
tarfile
@@ -740,7 +750,7 @@ unicodedata
unittest
--------
-* XXX Added :class:`AsyncMock` to support an asynchronous version of :class:`Mock`.
+* Added :class:`AsyncMock` to support an asynchronous version of :class:`Mock`.
Appropriate new assert functions for testing have been added as well.
(Contributed by Lisa Roach in :issue:`26467`).
@@ -801,6 +811,8 @@ Optimizations
are not set;
* the *executable* path contains a directory.
+ (Contributed by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)
+
* :func:`shutil.copyfile`, :func:`shutil.copy`, :func:`shutil.copy2`,
:func:`shutil.copytree` and :func:`shutil.move` use platform-specific
"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:
* The function :func:`platform.popen` has been removed, it was deprecated since
Python 3.3: use :func:`os.popen` instead.
+ (Contributed by Victor Stinner in :issue:`35345`.)
* The function :func:`time.clock` has been removed, it was deprecated since Python
3.3: use :func:`time.perf_counter` or :func:`time.process_time` instead, depending
on your requirements, to have a well defined behavior.
+ (Contributed by Matthias Bussonnier in :issue:`36895`.)
* The ``pyvenv`` script has been removed in favor of ``python3.8 -m venv``
to help eliminate confusion as to what Python interpreter the ``pyvenv``
@@ -1100,12 +1114,14 @@ Changes in the Python API
Emulation, Popen constructor using :func:`os.posix_spawn` no longer raise an
exception on errors like missing program, but the child process fails with a
non-zero :attr:`~Popen.returncode`.
+ (Contributed by Joannah Nanjekye and Victor Stinner in :issue:`35537`.)
* The :meth:`imap.IMAP4.logout` method no longer ignores silently arbitrary
exceptions.
* The function :func:`platform.popen` has been removed, it was deprecated since
Python 3.3: use :func:`os.popen` instead.
+ (Contributed by Victor Stinner in :issue:`35345`.)
* The :func:`statistics.mode` function no longer raises an exception
when given multimodal data. Instead, it returns the first mode
@@ -1232,6 +1248,7 @@ Changes in the C API
``RTLD_LOCAL``, it was already not possible to load C extensions which
were not linked to ``libpython``, like C extensions of the standard
library built by the ``*shared*`` section of ``Modules/Setup``.
+ (Contributed by Victor Stinner in :issue:`21536`.)
* Use of ``#`` variants of formats in parsing or building value (e.g.
:c:func:`PyArg_ParseTuple`, :c:func:`Py_BuildValue`, :c:func:`PyObject_CallFunction`,