Commit 0ac5f28b authored by Yury Selivanov's avatar Yury Selivanov

whatsnew/3.5: Reformat PEP 475 to render in less space; add "ugly" ex in 465

parent 40301c04
...@@ -48,7 +48,6 @@ ...@@ -48,7 +48,6 @@
when researching a change. when researching a change.
This article explains the new features in Python 3.5, compared to 3.4. This article explains the new features in Python 3.5, compared to 3.4.
For full details, see the :source:`Misc/NEWS` file. For full details, see the :source:`Misc/NEWS` file.
.. note:: .. note::
...@@ -148,24 +147,9 @@ Windows improvements: ...@@ -148,24 +147,9 @@ Windows improvements:
* Windows builds now use Microsoft Visual C++ 14.0, and extension modules * Windows builds now use Microsoft Visual C++ 14.0, and extension modules
should use the same. should use the same.
Please read on for a comprehensive list of user-facing changes, including many
Please read on for a comprehensive list of user-facing changes. other smaller improvements, CPython optimizations, deprecations, and potential
porting issues.
.. PEP-sized items next.
.. _pep-4XX:
.. PEP 4XX: Virtual Environments
.. =============================
.. (Implemented by Foo Bar.)
.. .. seealso::
:pep:`4XX` - Python Virtual Environments
PEP written by Carl Meyer
New Features New Features
...@@ -277,7 +261,12 @@ Matrix multiplication is a notably common operation in many fields of ...@@ -277,7 +261,12 @@ Matrix multiplication is a notably common operation in many fields of
mathematics, science, engineering, and the addition of ``@`` allows writing mathematics, science, engineering, and the addition of ``@`` allows writing
cleaner code:: cleaner code::
>>> S = (H @ beta - r).T @ inv(H @ V @ H.T) @ (H @ beta - r) S = (H @ beta - r).T @ inv(H @ V @ H.T) @ (H @ beta - r)
instead of::
S = dot((dot(H, beta) - r).T,
dot(inv(dot(dot(H, V), H.T)), dot(H, beta) - r))
An upcoming release of NumPy 1.10 will add support for the new operator:: An upcoming release of NumPy 1.10 will add support for the new operator::
...@@ -421,60 +410,38 @@ Examples of functions which are now retried when interrupted by a signal ...@@ -421,60 +410,38 @@ Examples of functions which are now retried when interrupted by a signal
instead of raising :exc:`InterruptedError` if the Python signal handler does instead of raising :exc:`InterruptedError` if the Python signal handler does
not raise an exception: not raise an exception:
* :func:`open`, :func:`os.open`, :func:`io.open` * :func:`open`, :func:`os.open`, :func:`io.open`;
* functions of the :mod:`faulthandler` module
* :mod:`os` functions: * functions of the :mod:`faulthandler` module;
- :func:`os.fchdir` * :mod:`os` functions: :func:`~os.fchdir`, :func:`~os.fchmod`,
- :func:`os.fchmod` :func:`~os.fchown`, :func:`~os.fdatasync`, :func:`~os.fstat`,
- :func:`os.fchown` :func:`~os.fstatvfs`, :func:`~os.fsync`, :func:`~os.ftruncate`,
- :func:`os.fdatasync` :func:`~os.mkfifo`, :func:`~os.mknod`, :func:`~os.posix_fadvise`,
- :func:`os.fstat` :func:`~os.posix_fallocate`, :func:`~os.pread`, :func:`~os.pwrite`,
- :func:`os.fstatvfs` :func:`~os.read`, :func:`~os.readv`, :func:`~os.sendfile`,
- :func:`os.fsync` :func:`~os.wait3`, :func:`~os.wait4`, :func:`~os.wait`,
- :func:`os.ftruncate` :func:`~os.waitid`, :func:`~os.waitpid`, :func:`~os.write`,
- :func:`os.mkfifo` :func:`~os.writev`;
- :func:`os.mknod`
- :func:`os.posix_fadvise` * special cases: :func:`os.close` and :func:`os.dup2` now ignore
- :func:`os.posix_fallocate`
- :func:`os.pread`
- :func:`os.pwrite`
- :func:`os.read`
- :func:`os.readv`
- :func:`os.sendfile`
- :func:`os.wait3`
- :func:`os.wait4`
- :func:`os.wait`
- :func:`os.waitid`
- :func:`os.waitpid`
- :func:`os.write`
- :func:`os.writev`
- special cases: :func:`os.close` and :func:`os.dup2` now ignore
:py:data:`~errno.EINTR` error, the syscall is not retried (see the PEP :py:data:`~errno.EINTR` error, the syscall is not retried (see the PEP
for the rationale) for the rationale);
* :mod:`select` functions: * :mod:`select` functions: :func:`~select.devpoll.poll`,
:func:`~select.epoll.poll`, :func:`~select.kqueue.control`,
- :func:`select.devpoll.poll` :func:`~select.poll.poll`, :func:`~select.select`;
- :func:`select.epoll.poll`
- :func:`select.kqueue.control` * :func:`socket.socket` methods: :meth:`~socket.socket.accept`,
- :func:`select.poll.poll` :meth:`~socket.socket.connect` (except for non-blocking sockets),
- :func:`select.select` :meth:`~socket.socket.recv`, :meth:`~socket.socket.recvfrom`,
:meth:`~socket.socket.recvmsg`, :meth:`~socket.socket.send`,
* :func:`socket.socket` methods: :meth:`~socket.socket.sendall`, :meth:`~socket.socket.sendmsg`,
:meth:`~socket.socket.sendto`;
- :meth:`~socket.socket.accept`
- :meth:`~socket.socket.connect` (except for non-blocking sockets) * :func:`signal.sigtimedwait`, :func:`signal.sigwaitinfo`;
- :meth:`~socket.socket.recv`
- :meth:`~socket.socket.recvfrom` * :func:`time.sleep`.
- :meth:`~socket.socket.recvmsg`
- :meth:`~socket.socket.send`
- :meth:`~socket.socket.sendall`
- :meth:`~socket.socket.sendmsg`
- :meth:`~socket.socket.sendto`
* :func:`signal.sigtimedwait`, :func:`signal.sigwaitinfo`
* :func:`time.sleep`
.. seealso:: .. seealso::
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment