mirror of
https://github.com/python/cpython.git
synced 2025-12-31 04:23:37 +00:00
gh-101100: Fix Sphinx warnings in whatsnew/2.7.rst and related (#115319)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
This commit is contained in:
parent
705c76d4a2
commit
92483b21b3
9 changed files with 119 additions and 100 deletions
|
|
@ -417,8 +417,8 @@ Subprocess Transports
|
|||
|
||||
Stop the subprocess.
|
||||
|
||||
On POSIX systems, this method sends SIGTERM to the subprocess.
|
||||
On Windows, the Windows API function TerminateProcess() is called to
|
||||
On POSIX systems, this method sends :py:const:`~signal.SIGTERM` to the subprocess.
|
||||
On Windows, the Windows API function :c:func:`!TerminateProcess` is called to
|
||||
stop the subprocess.
|
||||
|
||||
See also :meth:`subprocess.Popen.terminate`.
|
||||
|
|
|
|||
|
|
@ -240,7 +240,7 @@ their completion.
|
|||
|
||||
.. note::
|
||||
|
||||
On Windows, :py:data:`SIGTERM` is an alias for :meth:`terminate`.
|
||||
On Windows, :py:const:`~signal.SIGTERM` is an alias for :meth:`terminate`.
|
||||
``CTRL_C_EVENT`` and ``CTRL_BREAK_EVENT`` can be sent to processes
|
||||
started with a *creationflags* parameter which includes
|
||||
``CREATE_NEW_PROCESS_GROUP``.
|
||||
|
|
@ -249,10 +249,10 @@ their completion.
|
|||
|
||||
Stop the child process.
|
||||
|
||||
On POSIX systems this method sends :py:const:`signal.SIGTERM` to the
|
||||
On POSIX systems this method sends :py:const:`~signal.SIGTERM` to the
|
||||
child process.
|
||||
|
||||
On Windows the Win32 API function :c:func:`TerminateProcess` is
|
||||
On Windows the Win32 API function :c:func:`!TerminateProcess` is
|
||||
called to stop the child process.
|
||||
|
||||
.. method:: kill()
|
||||
|
|
|
|||
|
|
@ -252,3 +252,18 @@ Other Functions
|
|||
.. data:: CRTDBG_REPORT_MODE
|
||||
|
||||
Returns current *mode* for the specified *type*.
|
||||
|
||||
|
||||
.. data:: CRT_ASSEMBLY_VERSION
|
||||
|
||||
The CRT Assembly version, from the :file:`crtassem.h` header file.
|
||||
|
||||
|
||||
.. data:: VC_ASSEMBLY_PUBLICKEYTOKEN
|
||||
|
||||
The VC Assembly public key token, from the :file:`crtassem.h` header file.
|
||||
|
||||
|
||||
.. data:: LIBRARIES_ASSEMBLY_NAME_PREFIX
|
||||
|
||||
The Libraries Assembly name prefix, from the :file:`crtassem.h` header file.
|
||||
|
|
|
|||
|
|
@ -649,8 +649,8 @@ The :mod:`multiprocessing` package mostly replicates the API of the
|
|||
|
||||
.. method:: terminate()
|
||||
|
||||
Terminate the process. On POSIX this is done using the ``SIGTERM`` signal;
|
||||
on Windows :c:func:`TerminateProcess` is used. Note that exit handlers and
|
||||
Terminate the process. On POSIX this is done using the :py:const:`~signal.SIGTERM` signal;
|
||||
on Windows :c:func:`!TerminateProcess` is used. Note that exit handlers and
|
||||
finally clauses, etc., will not be executed.
|
||||
|
||||
Note that descendant processes of the process will *not* be terminated --
|
||||
|
|
|
|||
|
|
@ -857,8 +857,8 @@ Instances of the :class:`Popen` class have the following methods:
|
|||
|
||||
.. method:: Popen.terminate()
|
||||
|
||||
Stop the child. On POSIX OSs the method sends SIGTERM to the
|
||||
child. On Windows the Win32 API function :c:func:`TerminateProcess` is called
|
||||
Stop the child. On POSIX OSs the method sends :py:const:`~signal.SIGTERM` to the
|
||||
child. On Windows the Win32 API function :c:func:`!TerminateProcess` is called
|
||||
to stop the child.
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2388,11 +2388,11 @@ changes, or look through the Subversion logs for all the details.
|
|||
using the format character ``'?'``.
|
||||
(Contributed by David Remahl.)
|
||||
|
||||
* The :class:`Popen` objects provided by the :mod:`subprocess` module
|
||||
now have :meth:`terminate`, :meth:`kill`, and :meth:`send_signal` methods.
|
||||
On Windows, :meth:`send_signal` only supports the :const:`SIGTERM`
|
||||
* The :class:`~subprocess.Popen` objects provided by the :mod:`subprocess` module
|
||||
now have :meth:`~subprocess.Popen.terminate`, :meth:`~subprocess.Popen.kill`, and :meth:`~subprocess.Popen.send_signal` methods.
|
||||
On Windows, :meth:`!send_signal` only supports the :py:const:`~signal.SIGTERM`
|
||||
signal, and all these methods are aliases for the Win32 API function
|
||||
:c:func:`TerminateProcess`.
|
||||
:c:func:`!TerminateProcess`.
|
||||
(Contributed by Christian Heimes.)
|
||||
|
||||
* A new variable in the :mod:`sys` module, :attr:`float_info`, is an
|
||||
|
|
|
|||
|
|
@ -196,7 +196,7 @@ A partial list of 3.1 features that were backported to 2.7:
|
|||
|
||||
Other new Python3-mode warnings include:
|
||||
|
||||
* :func:`operator.isCallable` and :func:`operator.sequenceIncludes`,
|
||||
* :func:`!operator.isCallable` and :func:`!operator.sequenceIncludes`,
|
||||
which are not supported in 3.x, now trigger warnings.
|
||||
* The :option:`!-3` switch now automatically
|
||||
enables the :option:`!-Qwarn` switch that causes warnings
|
||||
|
|
@ -455,11 +455,11 @@ a varying number of handlers.
|
|||
All this flexibility can require a lot of configuration. You can
|
||||
write Python statements to create objects and set their properties,
|
||||
but a complex set-up requires verbose but boring code.
|
||||
:mod:`logging` also supports a :func:`~logging.fileConfig`
|
||||
:mod:`logging` also supports a :func:`~logging.config.fileConfig`
|
||||
function that parses a file, but the file format doesn't support
|
||||
configuring filters, and it's messier to generate programmatically.
|
||||
|
||||
Python 2.7 adds a :func:`~logging.dictConfig` function that
|
||||
Python 2.7 adds a :func:`~logging.config.dictConfig` function that
|
||||
uses a dictionary to configure logging. There are many ways to
|
||||
produce a dictionary from different sources: construct one with code;
|
||||
parse a file containing JSON; or use a YAML parsing library if one is
|
||||
|
|
@ -533,7 +533,7 @@ implemented by Vinay Sajip, are:
|
|||
``getLogger('app.network.listen')``.
|
||||
|
||||
* The :class:`~logging.LoggerAdapter` class gained an
|
||||
:meth:`~logging.LoggerAdapter.isEnabledFor` method that takes a
|
||||
:meth:`~logging.Logger.isEnabledFor` method that takes a
|
||||
*level* and returns whether the underlying logger would
|
||||
process a message of that level of importance.
|
||||
|
||||
|
|
@ -554,8 +554,8 @@ called a :dfn:`view` instead of a fully materialized list.
|
|||
It's not possible to change the return values of :meth:`~dict.keys`,
|
||||
:meth:`~dict.values`, and :meth:`~dict.items` in Python 2.7 because
|
||||
too much code would break. Instead the 3.x versions were added
|
||||
under the new names :meth:`~dict.viewkeys`, :meth:`~dict.viewvalues`,
|
||||
and :meth:`~dict.viewitems`.
|
||||
under the new names :meth:`!viewkeys`, :meth:`!viewvalues`,
|
||||
and :meth:`!viewitems`.
|
||||
|
||||
::
|
||||
|
||||
|
|
@ -720,7 +720,7 @@ Some smaller changes made to the core Python language are:
|
|||
with B() as b:
|
||||
... suite of statements ...
|
||||
|
||||
The :func:`contextlib.nested` function provides a very similar
|
||||
The :func:`!contextlib.nested` function provides a very similar
|
||||
function, so it's no longer necessary and has been deprecated.
|
||||
|
||||
(Proposed in https://codereview.appspot.com/53094; implemented by
|
||||
|
|
@ -785,7 +785,7 @@ Some smaller changes made to the core Python language are:
|
|||
implemented by Mark Dickinson; :issue:`1811`.)
|
||||
|
||||
* Implicit coercion for complex numbers has been removed; the interpreter
|
||||
will no longer ever attempt to call a :meth:`__coerce__` method on complex
|
||||
will no longer ever attempt to call a :meth:`!__coerce__` method on complex
|
||||
objects. (Removed by Meador Inge and Mark Dickinson; :issue:`5211`.)
|
||||
|
||||
* The :meth:`str.format` method now supports automatic numbering of the replacement
|
||||
|
|
@ -817,7 +817,7 @@ Some smaller changes made to the core Python language are:
|
|||
|
||||
A low-level change: the :meth:`object.__format__` method now triggers
|
||||
a :exc:`PendingDeprecationWarning` if it's passed a format string,
|
||||
because the :meth:`__format__` method for :class:`object` converts
|
||||
because the :meth:`!__format__` method for :class:`object` converts
|
||||
the object to a string representation and formats that. Previously
|
||||
the method silently applied the format string to the string
|
||||
representation, but that could hide mistakes in Python code. If
|
||||
|
|
@ -825,7 +825,7 @@ Some smaller changes made to the core Python language are:
|
|||
precision, presumably you're expecting the formatting to be applied
|
||||
in some object-specific way. (Fixed by Eric Smith; :issue:`7994`.)
|
||||
|
||||
* The :func:`int` and :func:`long` types gained a ``bit_length``
|
||||
* The :func:`int` and :func:`!long` types gained a ``bit_length``
|
||||
method that returns the number of bits necessary to represent
|
||||
its argument in binary::
|
||||
|
||||
|
|
@ -848,8 +848,8 @@ Some smaller changes made to the core Python language are:
|
|||
statements that were only working by accident. (Fixed by Meador Inge;
|
||||
:issue:`7902`.)
|
||||
|
||||
* It's now possible for a subclass of the built-in :class:`unicode` type
|
||||
to override the :meth:`__unicode__` method. (Implemented by
|
||||
* It's now possible for a subclass of the built-in :class:`!unicode` type
|
||||
to override the :meth:`!__unicode__` method. (Implemented by
|
||||
Victor Stinner; :issue:`1583863`.)
|
||||
|
||||
* The :class:`bytearray` type's :meth:`~bytearray.translate` method now accepts
|
||||
|
|
@ -876,7 +876,7 @@ Some smaller changes made to the core Python language are:
|
|||
Forgeot d'Arc in :issue:`1616979`; CP858 contributed by Tim Hatch in
|
||||
:issue:`8016`.)
|
||||
|
||||
* The :class:`file` object will now set the :attr:`filename` attribute
|
||||
* The :class:`!file` object will now set the :attr:`!filename` attribute
|
||||
on the :exc:`IOError` exception when trying to open a directory
|
||||
on POSIX platforms (noted by Jan Kaliszewski; :issue:`4764`), and
|
||||
now explicitly checks for and forbids writing to read-only file objects
|
||||
|
|
@ -966,7 +966,7 @@ Several performance enhancements have been added:
|
|||
|
||||
Apart from the performance improvements this change should be
|
||||
invisible to end users, with one exception: for testing and
|
||||
debugging purposes there's a new structseq :data:`sys.long_info` that
|
||||
debugging purposes there's a new structseq :data:`!sys.long_info` that
|
||||
provides information about the internal format, giving the number of
|
||||
bits per digit and the size in bytes of the C type used to store
|
||||
each digit::
|
||||
|
|
@ -1005,8 +1005,8 @@ Several performance enhancements have been added:
|
|||
conversion function that supports arbitrary bases.
|
||||
(Patch by Gawain Bolton; :issue:`6713`.)
|
||||
|
||||
* The :meth:`split`, :meth:`replace`, :meth:`rindex`,
|
||||
:meth:`rpartition`, and :meth:`rsplit` methods of string-like types
|
||||
* The :meth:`!split`, :meth:`!replace`, :meth:`!rindex`,
|
||||
:meth:`!rpartition`, and :meth:`!rsplit` methods of string-like types
|
||||
(strings, Unicode strings, and :class:`bytearray` objects) now use a
|
||||
fast reverse-search algorithm instead of a character-by-character
|
||||
scan. This is sometimes faster by a factor of 10. (Added by
|
||||
|
|
@ -1044,7 +1044,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
used with :class:`memoryview` instances and other similar buffer objects.
|
||||
(Backported from 3.x by Florent Xicluna; :issue:`7703`.)
|
||||
|
||||
* Updated module: the :mod:`bsddb` module has been updated from 4.7.2devel9
|
||||
* Updated module: the :mod:`!bsddb` module has been updated from 4.7.2devel9
|
||||
to version 4.8.4 of
|
||||
`the pybsddb package <https://www.jcea.es/programacion/pybsddb.htm>`__.
|
||||
The new version features better Python 3.x compatibility, various bug fixes,
|
||||
|
|
@ -1129,7 +1129,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
|
||||
(Added by Raymond Hettinger; :issue:`1818`.)
|
||||
|
||||
Finally, the :class:`~collections.Mapping` abstract base class now
|
||||
Finally, the :class:`~collections.abc.Mapping` abstract base class now
|
||||
returns :const:`NotImplemented` if a mapping is compared to
|
||||
another type that isn't a :class:`Mapping`.
|
||||
(Fixed by Daniel Stutzbach; :issue:`8729`.)
|
||||
|
|
@ -1158,7 +1158,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
|
||||
(Contributed by Mats Kindahl; :issue:`7005`.)
|
||||
|
||||
* Deprecated function: :func:`contextlib.nested`, which allows
|
||||
* Deprecated function: :func:`!contextlib.nested`, which allows
|
||||
handling more than one context manager with a single :keyword:`with`
|
||||
statement, has been deprecated, because the :keyword:`!with` statement
|
||||
now supports multiple context managers.
|
||||
|
|
@ -1184,7 +1184,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
|
||||
* New method: the :class:`~decimal.Decimal` class gained a
|
||||
:meth:`~decimal.Decimal.from_float` class method that performs an exact
|
||||
conversion of a floating-point number to a :class:`~decimal.Decimal`.
|
||||
conversion of a floating-point number to a :class:`!Decimal`.
|
||||
This exact conversion strives for the
|
||||
closest decimal approximation to the floating-point representation's value;
|
||||
the resulting decimal value will therefore still include the inaccuracy,
|
||||
|
|
@ -1198,9 +1198,9 @@ changes, or look through the Subversion logs for all the details.
|
|||
of the operands. Previously such comparisons would fall back to
|
||||
Python's default rules for comparing objects, which produced arbitrary
|
||||
results based on their type. Note that you still cannot combine
|
||||
:class:`Decimal` and floating-point in other operations such as addition,
|
||||
:class:`!Decimal` and floating-point in other operations such as addition,
|
||||
since you should be explicitly choosing how to convert between float and
|
||||
:class:`~decimal.Decimal`. (Fixed by Mark Dickinson; :issue:`2531`.)
|
||||
:class:`!Decimal`. (Fixed by Mark Dickinson; :issue:`2531`.)
|
||||
|
||||
The constructor for :class:`~decimal.Decimal` now accepts
|
||||
floating-point numbers (added by Raymond Hettinger; :issue:`8257`)
|
||||
|
|
@ -1218,7 +1218,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
more sensible for numeric types. (Changed by Mark Dickinson; :issue:`6857`.)
|
||||
|
||||
Comparisons involving a signaling NaN value (or ``sNAN``) now signal
|
||||
:const:`InvalidOperation` instead of silently returning a true or
|
||||
:const:`~decimal.InvalidOperation` instead of silently returning a true or
|
||||
false value depending on the comparison operator. Quiet NaN values
|
||||
(or ``NaN``) are now hashable. (Fixed by Mark Dickinson;
|
||||
:issue:`7279`.)
|
||||
|
|
@ -1235,13 +1235,13 @@ changes, or look through the Subversion logs for all the details.
|
|||
created some new files that should be included.
|
||||
(Fixed by Tarek Ziadé; :issue:`8688`.)
|
||||
|
||||
* The :mod:`doctest` module's :const:`IGNORE_EXCEPTION_DETAIL` flag
|
||||
* The :mod:`doctest` module's :const:`~doctest.IGNORE_EXCEPTION_DETAIL` flag
|
||||
will now ignore the name of the module containing the exception
|
||||
being tested. (Patch by Lennart Regebro; :issue:`7490`.)
|
||||
|
||||
* The :mod:`email` module's :class:`~email.message.Message` class will
|
||||
now accept a Unicode-valued payload, automatically converting the
|
||||
payload to the encoding specified by :attr:`output_charset`.
|
||||
payload to the encoding specified by :attr:`!output_charset`.
|
||||
(Added by R. David Murray; :issue:`1368247`.)
|
||||
|
||||
* The :class:`~fractions.Fraction` class now accepts a single float or
|
||||
|
|
@ -1268,10 +1268,10 @@ changes, or look through the Subversion logs for all the details.
|
|||
:issue:`6845`.)
|
||||
|
||||
* New class decorator: :func:`~functools.total_ordering` in the :mod:`functools`
|
||||
module takes a class that defines an :meth:`__eq__` method and one of
|
||||
:meth:`__lt__`, :meth:`__le__`, :meth:`__gt__`, or :meth:`__ge__`,
|
||||
module takes a class that defines an :meth:`~object.__eq__` method and one of
|
||||
:meth:`~object.__lt__`, :meth:`~object.__le__`, :meth:`~object.__gt__`, or :meth:`~object.__ge__`,
|
||||
and generates the missing comparison methods. Since the
|
||||
:meth:`__cmp__` method is being deprecated in Python 3.x,
|
||||
:meth:`!__cmp__` method is being deprecated in Python 3.x,
|
||||
this decorator makes it easier to define ordered classes.
|
||||
(Added by Raymond Hettinger; :issue:`5479`.)
|
||||
|
||||
|
|
@ -1300,7 +1300,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
:mod:`gzip` module will now consume these trailing bytes. (Fixed by
|
||||
Tadek Pietraszek and Brian Curtin; :issue:`2846`.)
|
||||
|
||||
* New attribute: the :mod:`hashlib` module now has an :attr:`~hashlib.hashlib.algorithms`
|
||||
* New attribute: the :mod:`hashlib` module now has an :attr:`!algorithms`
|
||||
attribute containing a tuple naming the supported algorithms.
|
||||
In Python 2.7, ``hashlib.algorithms`` contains
|
||||
``('md5', 'sha1', 'sha224', 'sha256', 'sha384', 'sha512')``.
|
||||
|
|
@ -1348,10 +1348,10 @@ changes, or look through the Subversion logs for all the details.
|
|||
* Updated module: The :mod:`io` library has been upgraded to the version shipped with
|
||||
Python 3.1. For 3.1, the I/O library was entirely rewritten in C
|
||||
and is 2 to 20 times faster depending on the task being performed. The
|
||||
original Python version was renamed to the :mod:`_pyio` module.
|
||||
original Python version was renamed to the :mod:`!_pyio` module.
|
||||
|
||||
One minor resulting change: the :class:`io.TextIOBase` class now
|
||||
has an :attr:`errors` attribute giving the error setting
|
||||
has an :attr:`~io.TextIOBase.errors` attribute giving the error setting
|
||||
used for encoding and decoding errors (one of ``'strict'``, ``'replace'``,
|
||||
``'ignore'``).
|
||||
|
||||
|
|
@ -1423,10 +1423,10 @@ changes, or look through the Subversion logs for all the details.
|
|||
passed to the callable.
|
||||
(Contributed by lekma; :issue:`5585`.)
|
||||
|
||||
The :class:`~multiprocessing.Pool` class, which controls a pool of worker processes,
|
||||
The :class:`~multiprocessing.pool.Pool` class, which controls a pool of worker processes,
|
||||
now has an optional *maxtasksperchild* parameter. Worker processes
|
||||
will perform the specified number of tasks and then exit, causing the
|
||||
:class:`~multiprocessing.Pool` to start a new worker. This is useful if tasks may leak
|
||||
:class:`!Pool` to start a new worker. This is useful if tasks may leak
|
||||
memory or other resources, or if some tasks will cause the worker to
|
||||
become very large.
|
||||
(Contributed by Charles Cazabon; :issue:`6963`.)
|
||||
|
|
@ -1498,7 +1498,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
global site-packages directories,
|
||||
:func:`~site.getusersitepackages` returns the path of the user's
|
||||
site-packages directory, and
|
||||
:func:`~site.getuserbase` returns the value of the :envvar:`USER_BASE`
|
||||
:func:`~site.getuserbase` returns the value of the :data:`~site.USER_BASE`
|
||||
environment variable, giving the path to a directory that can be used
|
||||
to store data.
|
||||
(Contributed by Tarek Ziadé; :issue:`6693`.)
|
||||
|
|
@ -1540,11 +1540,11 @@ changes, or look through the Subversion logs for all the details.
|
|||
* The :mod:`ssl` module's :class:`~ssl.SSLSocket` objects now support the
|
||||
buffer API, which fixed a test suite failure (fix by Antoine Pitrou;
|
||||
:issue:`7133`) and automatically set
|
||||
OpenSSL's :c:macro:`SSL_MODE_AUTO_RETRY`, which will prevent an error
|
||||
OpenSSL's :c:macro:`!SSL_MODE_AUTO_RETRY`, which will prevent an error
|
||||
code being returned from :meth:`recv` operations that trigger an SSL
|
||||
renegotiation (fix by Antoine Pitrou; :issue:`8222`).
|
||||
|
||||
The :func:`ssl.wrap_socket` constructor function now takes a
|
||||
The :func:`~ssl.SSLContext.wrap_socket` constructor function now takes a
|
||||
*ciphers* argument that's a string listing the encryption algorithms
|
||||
to be allowed; the format of the string is described
|
||||
`in the OpenSSL documentation
|
||||
|
|
@ -1568,8 +1568,8 @@ changes, or look through the Subversion logs for all the details.
|
|||
code (one of ``bBhHiIlLqQ``); it now always raises a
|
||||
:exc:`struct.error` exception. (Changed by Mark Dickinson;
|
||||
:issue:`1523`.) The :func:`~struct.pack` function will also
|
||||
attempt to use :meth:`__index__` to convert and pack non-integers
|
||||
before trying the :meth:`__int__` method or reporting an error.
|
||||
attempt to use :meth:`~object.__index__` to convert and pack non-integers
|
||||
before trying the :meth:`~object.__int__` method or reporting an error.
|
||||
(Changed by Mark Dickinson; :issue:`8300`.)
|
||||
|
||||
* New function: the :mod:`subprocess` module's
|
||||
|
|
@ -1590,7 +1590,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
(Contributed by Gregory P. Smith.)
|
||||
|
||||
The :mod:`subprocess` module will now retry its internal system calls
|
||||
on receiving an :const:`EINTR` signal. (Reported by several people; final
|
||||
on receiving an :const:`~errno.EINTR` signal. (Reported by several people; final
|
||||
patch by Gregory P. Smith in :issue:`1068268`.)
|
||||
|
||||
* New function: :func:`~symtable.Symbol.is_declared_global` in the :mod:`symtable` module
|
||||
|
|
@ -1602,16 +1602,16 @@ changes, or look through the Subversion logs for all the details.
|
|||
identifier instead of the previous default value of ``'python'``.
|
||||
(Changed by Sean Reifschneider; :issue:`8451`.)
|
||||
|
||||
* The ``sys.version_info`` value is now a named tuple, with attributes
|
||||
named :attr:`major`, :attr:`minor`, :attr:`micro`,
|
||||
:attr:`releaselevel`, and :attr:`serial`. (Contributed by Ross
|
||||
* The :attr:`sys.version_info` value is now a named tuple, with attributes
|
||||
named :attr:`!major`, :attr:`!minor`, :attr:`!micro`,
|
||||
:attr:`!releaselevel`, and :attr:`!serial`. (Contributed by Ross
|
||||
Light; :issue:`4285`.)
|
||||
|
||||
:func:`sys.getwindowsversion` also returns a named tuple,
|
||||
with attributes named :attr:`major`, :attr:`minor`, :attr:`build`,
|
||||
:attr:`platform`, :attr:`service_pack`, :attr:`service_pack_major`,
|
||||
:attr:`service_pack_minor`, :attr:`suite_mask`, and
|
||||
:attr:`product_type`. (Contributed by Brian Curtin; :issue:`7766`.)
|
||||
with attributes named :attr:`!major`, :attr:`!minor`, :attr:`!build`,
|
||||
:attr:`!platform`, :attr:`!service_pack`, :attr:`!service_pack_major`,
|
||||
:attr:`!service_pack_minor`, :attr:`!suite_mask`, and
|
||||
:attr:`!product_type`. (Contributed by Brian Curtin; :issue:`7766`.)
|
||||
|
||||
* The :mod:`tarfile` module's default error handling has changed, to
|
||||
no longer suppress fatal errors. The default error level was previously 0,
|
||||
|
|
@ -1691,7 +1691,7 @@ changes, or look through the Subversion logs for all the details.
|
|||
(Originally implemented in Python 3.x by Raymond Hettinger, and backported
|
||||
to 2.7 by Michael Foord.)
|
||||
|
||||
* The ElementTree library, :mod:`xml.etree`, no longer escapes
|
||||
* The :mod:`xml.etree.ElementTree` library, no longer escapes
|
||||
ampersands and angle brackets when outputting an XML processing
|
||||
instruction (which looks like ``<?xml-stylesheet href="#style1"?>``)
|
||||
or comment (which looks like ``<!-- comment -->``).
|
||||
|
|
@ -1701,8 +1701,8 @@ changes, or look through the Subversion logs for all the details.
|
|||
:mod:`SimpleXMLRPCServer <xmlrpc.server>` modules, have improved performance by
|
||||
supporting HTTP/1.1 keep-alive and by optionally using gzip encoding
|
||||
to compress the XML being exchanged. The gzip compression is
|
||||
controlled by the :attr:`encode_threshold` attribute of
|
||||
:class:`SimpleXMLRPCRequestHandler`, which contains a size in bytes;
|
||||
controlled by the :attr:`!encode_threshold` attribute of
|
||||
:class:`~xmlrpc.server.SimpleXMLRPCRequestHandler`, which contains a size in bytes;
|
||||
responses larger than this will be compressed.
|
||||
(Contributed by Kristján Valur Jónsson; :issue:`6267`.)
|
||||
|
||||
|
|
@ -1713,7 +1713,8 @@ changes, or look through the Subversion logs for all the details.
|
|||
:mod:`zipfile` now also supports archiving empty directories and
|
||||
extracts them correctly. (Fixed by Kuba Wieczorek; :issue:`4710`.)
|
||||
Reading files out of an archive is faster, and interleaving
|
||||
:meth:`~zipfile.ZipFile.read` and :meth:`~zipfile.ZipFile.readline` now works correctly.
|
||||
:meth:`read() <io.BufferedIOBase.read>` and
|
||||
:meth:`readline() <io.IOBase.readline>` now works correctly.
|
||||
(Contributed by Nir Aides; :issue:`7610`.)
|
||||
|
||||
The :func:`~zipfile.is_zipfile` function now
|
||||
|
|
@ -1807,14 +1808,14 @@ closely resemble the native platform's widgets. This widget
|
|||
set was originally called Tile, but was renamed to Ttk (for "themed Tk")
|
||||
on being added to Tcl/Tck release 8.5.
|
||||
|
||||
To learn more, read the :mod:`ttk` module documentation. You may also
|
||||
To learn more, read the :mod:`~tkinter.ttk` module documentation. You may also
|
||||
wish to read the Tcl/Tk manual page describing the
|
||||
Ttk theme engine, available at
|
||||
https://www.tcl.tk/man/tcl8.5/TkCmd/ttk_intro.htm. Some
|
||||
https://www.tcl.tk/man/tcl8.5/TkCmd/ttk_intro.html. Some
|
||||
screenshots of the Python/Ttk code in use are at
|
||||
https://code.google.com/archive/p/python-ttk/wikis/Screenshots.wiki.
|
||||
|
||||
The :mod:`ttk` module was written by Guilherme Polo and added in
|
||||
The :mod:`tkinter.ttk` module was written by Guilherme Polo and added in
|
||||
:issue:`2983`. An alternate version called ``Tile.py``, written by
|
||||
Martin Franklin and maintained by Kevin Walzer, was proposed for
|
||||
inclusion in :issue:`2618`, but the authors argued that Guilherme
|
||||
|
|
@ -1830,7 +1831,7 @@ The :mod:`unittest` module was greatly enhanced; many
|
|||
new features were added. Most of these features were implemented
|
||||
by Michael Foord, unless otherwise noted. The enhanced version of
|
||||
the module is downloadable separately for use with Python versions 2.4 to 2.6,
|
||||
packaged as the :mod:`unittest2` package, from
|
||||
packaged as the :mod:`!unittest2` package, from
|
||||
https://pypi.org/project/unittest2.
|
||||
|
||||
When used from the command line, the module can automatically discover
|
||||
|
|
@ -1938,19 +1939,20 @@ GvR worked on merging them into Python's version of :mod:`unittest`.
|
|||
differences in the two strings. This comparison is now used by
|
||||
default when Unicode strings are compared with :meth:`~unittest.TestCase.assertEqual`.
|
||||
|
||||
* :meth:`~unittest.TestCase.assertRegexpMatches` and
|
||||
:meth:`~unittest.TestCase.assertNotRegexpMatches` checks whether the
|
||||
* :meth:`assertRegexpMatches() <unittest.TestCase.assertRegex>` and
|
||||
:meth:`assertNotRegexpMatches() <unittest.TestCase.assertNotRegex>` checks whether the
|
||||
first argument is a string matching or not matching the regular
|
||||
expression provided as the second argument (:issue:`8038`).
|
||||
|
||||
* :meth:`~unittest.TestCase.assertRaisesRegexp` checks whether a particular exception
|
||||
* :meth:`assertRaisesRegexp() <unittest.TestCase.assertRaisesRegex>` checks
|
||||
whether a particular exception
|
||||
is raised, and then also checks that the string representation of
|
||||
the exception matches the provided regular expression.
|
||||
|
||||
* :meth:`~unittest.TestCase.assertIn` and :meth:`~unittest.TestCase.assertNotIn`
|
||||
tests whether *first* is or is not in *second*.
|
||||
|
||||
* :meth:`~unittest.TestCase.assertItemsEqual` tests whether two provided sequences
|
||||
* :meth:`assertItemsEqual() <unittest.TestCase.assertCountEqual>` tests whether two provided sequences
|
||||
contain the same elements.
|
||||
|
||||
* :meth:`~unittest.TestCase.assertSetEqual` compares whether two sets are equal, and
|
||||
|
|
@ -1966,7 +1968,7 @@ GvR worked on merging them into Python's version of :mod:`unittest`.
|
|||
|
||||
* :meth:`~unittest.TestCase.assertDictEqual` compares two dictionaries and reports the
|
||||
differences; it's now used by default when you compare two dictionaries
|
||||
using :meth:`~unittest.TestCase.assertEqual`. :meth:`~unittest.TestCase.assertDictContainsSubset` checks whether
|
||||
using :meth:`~unittest.TestCase.assertEqual`. :meth:`!assertDictContainsSubset` checks whether
|
||||
all of the key/value pairs in *first* are found in *second*.
|
||||
|
||||
* :meth:`~unittest.TestCase.assertAlmostEqual` and :meth:`~unittest.TestCase.assertNotAlmostEqual` test
|
||||
|
|
@ -2023,8 +2025,8 @@ version 1.3. Some of the new features are:
|
|||
p = ET.XMLParser(encoding='utf-8')
|
||||
t = ET.XML("""<root/>""", parser=p)
|
||||
|
||||
Errors in parsing XML now raise a :exc:`ParseError` exception, whose
|
||||
instances have a :attr:`position` attribute
|
||||
Errors in parsing XML now raise a :exc:`~xml.etree.ElementTree.ParseError` exception, whose
|
||||
instances have a :attr:`!position` attribute
|
||||
containing a (*line*, *column*) tuple giving the location of the problem.
|
||||
|
||||
* ElementTree's code for converting trees to a string has been
|
||||
|
|
@ -2034,7 +2036,8 @@ version 1.3. Some of the new features are:
|
|||
"xml" (the default), "html", or "text". HTML mode will output empty
|
||||
elements as ``<empty></empty>`` instead of ``<empty/>``, and text
|
||||
mode will skip over elements and only output the text chunks. If
|
||||
you set the :attr:`tag` attribute of an element to ``None`` but
|
||||
you set the :attr:`~xml.etree.ElementTree.Element.tag` attribute of an
|
||||
element to ``None`` but
|
||||
leave its children in place, the element will be omitted when the
|
||||
tree is written out, so you don't need to do more extensive rearrangement
|
||||
to remove a single element.
|
||||
|
|
@ -2064,14 +2067,14 @@ version 1.3. Some of the new features are:
|
|||
# Outputs <root><item>1</item>...</root>
|
||||
print ET.tostring(new)
|
||||
|
||||
* New :class:`Element` method:
|
||||
* New :class:`~xml.etree.ElementTree.Element` method:
|
||||
:meth:`~xml.etree.ElementTree.Element.iter` yields the children of the
|
||||
element as a generator. It's also possible to write ``for child in
|
||||
elem:`` to loop over an element's children. The existing method
|
||||
:meth:`getiterator` is now deprecated, as is :meth:`getchildren`
|
||||
:meth:`!getiterator` is now deprecated, as is :meth:`!getchildren`
|
||||
which constructs and returns a list of children.
|
||||
|
||||
* New :class:`Element` method:
|
||||
* New :class:`~xml.etree.ElementTree.Element` method:
|
||||
:meth:`~xml.etree.ElementTree.Element.itertext` yields all chunks of
|
||||
text that are descendants of the element. For example::
|
||||
|
||||
|
|
@ -2227,7 +2230,7 @@ Changes to Python's build process and to the C API include:
|
|||
(Fixed by Thomas Wouters; :issue:`1590864`.)
|
||||
|
||||
* The :c:func:`Py_Finalize` function now calls the internal
|
||||
:func:`threading._shutdown` function; this prevents some exceptions from
|
||||
:func:`!threading._shutdown` function; this prevents some exceptions from
|
||||
being raised when an interpreter shuts down.
|
||||
(Patch by Adam Olsen; :issue:`1722344`.)
|
||||
|
||||
|
|
@ -2242,7 +2245,7 @@ Changes to Python's build process and to the C API include:
|
|||
Heller; :issue:`3102`.)
|
||||
|
||||
* New configure option: the :option:`!--with-system-expat` switch allows
|
||||
building the :mod:`pyexpat` module to use the system Expat library.
|
||||
building the :mod:`pyexpat <xml.parsers.expat>` module to use the system Expat library.
|
||||
(Contributed by Arfrever Frehtes Taifersar Arahesis; :issue:`7609`.)
|
||||
|
||||
* New configure option: the
|
||||
|
|
@ -2329,9 +2332,9 @@ Port-Specific Changes: Windows
|
|||
|
||||
* The :mod:`msvcrt` module now contains some constants from
|
||||
the :file:`crtassem.h` header file:
|
||||
:data:`CRT_ASSEMBLY_VERSION`,
|
||||
:data:`VC_ASSEMBLY_PUBLICKEYTOKEN`,
|
||||
and :data:`LIBRARIES_ASSEMBLY_NAME_PREFIX`.
|
||||
:data:`~msvcrt.CRT_ASSEMBLY_VERSION`,
|
||||
:data:`~msvcrt.VC_ASSEMBLY_PUBLICKEYTOKEN`,
|
||||
and :data:`~msvcrt.LIBRARIES_ASSEMBLY_NAME_PREFIX`.
|
||||
(Contributed by David Cournapeau; :issue:`4365`.)
|
||||
|
||||
* The :mod:`_winreg <winreg>` module for accessing the registry now implements
|
||||
|
|
@ -2342,21 +2345,21 @@ Port-Specific Changes: Windows
|
|||
were also tested and documented.
|
||||
(Implemented by Brian Curtin: :issue:`7347`.)
|
||||
|
||||
* The new :c:func:`_beginthreadex` API is used to start threads, and
|
||||
* The new :c:func:`!_beginthreadex` API is used to start threads, and
|
||||
the native thread-local storage functions are now used.
|
||||
(Contributed by Kristján Valur Jónsson; :issue:`3582`.)
|
||||
|
||||
* The :func:`os.kill` function now works on Windows. The signal value
|
||||
can be the constants :const:`CTRL_C_EVENT`,
|
||||
:const:`CTRL_BREAK_EVENT`, or any integer. The first two constants
|
||||
can be the constants :const:`~signal.CTRL_C_EVENT`,
|
||||
:const:`~signal.CTRL_BREAK_EVENT`, or any integer. The first two constants
|
||||
will send :kbd:`Control-C` and :kbd:`Control-Break` keystroke events to
|
||||
subprocesses; any other value will use the :c:func:`TerminateProcess`
|
||||
subprocesses; any other value will use the :c:func:`!TerminateProcess`
|
||||
API. (Contributed by Miki Tebeka; :issue:`1220212`.)
|
||||
|
||||
* The :func:`os.listdir` function now correctly fails
|
||||
for an empty path. (Fixed by Hirokazu Yamamoto; :issue:`5913`.)
|
||||
|
||||
* The :mod:`mimelib` module will now read the MIME database from
|
||||
* The :mod:`mimetypes` module will now read the MIME database from
|
||||
the Windows registry when initializing.
|
||||
(Patch by Gabriel Genellina; :issue:`4969`.)
|
||||
|
||||
|
|
@ -2385,7 +2388,7 @@ Port-Specific Changes: Mac OS X
|
|||
Port-Specific Changes: FreeBSD
|
||||
-----------------------------------
|
||||
|
||||
* FreeBSD 7.1's :const:`SO_SETFIB` constant, used with the :func:`~socket.socket` methods
|
||||
* FreeBSD 7.1's :const:`!SO_SETFIB` constant, used with the :func:`~socket.socket` methods
|
||||
:func:`~socket.socket.getsockopt`/:func:`~socket.socket.setsockopt` to select an
|
||||
alternate routing table, is now available in the :mod:`socket`
|
||||
module. (Added by Kyle VanderBeek; :issue:`8235`.)
|
||||
|
|
@ -2441,7 +2444,7 @@ This section lists previously described changes and other bugfixes
|
|||
that may require changes to your code:
|
||||
|
||||
* The :func:`range` function processes its arguments more
|
||||
consistently; it will now call :meth:`__int__` on non-float,
|
||||
consistently; it will now call :meth:`~object.__int__` on non-float,
|
||||
non-integer arguments that are supplied to it. (Fixed by Alexander
|
||||
Belopolsky; :issue:`1533`.)
|
||||
|
||||
|
|
@ -2486,13 +2489,13 @@ In the standard library:
|
|||
(or ``NaN``) are now hashable. (Fixed by Mark Dickinson;
|
||||
:issue:`7279`.)
|
||||
|
||||
* The ElementTree library, :mod:`xml.etree`, no longer escapes
|
||||
* The :mod:`xml.etree.ElementTree` library no longer escapes
|
||||
ampersands and angle brackets when outputting an XML processing
|
||||
instruction (which looks like ``<?xml-stylesheet href="#style1"?>``)
|
||||
or comment (which looks like ``<!-- comment -->``).
|
||||
(Patch by Neil Muller; :issue:`2746`.)
|
||||
|
||||
* The :meth:`~StringIO.StringIO.readline` method of :class:`~StringIO.StringIO` objects now does
|
||||
* The :meth:`!readline` method of :class:`~io.StringIO` objects now does
|
||||
nothing when a negative length is requested, as other file-like
|
||||
objects do. (:issue:`7348`).
|
||||
|
||||
|
|
@ -2577,11 +2580,11 @@ Two new environment variables for debug mode
|
|||
--------------------------------------------
|
||||
|
||||
In debug mode, the ``[xxx refs]`` statistic is not written by default, the
|
||||
:envvar:`PYTHONSHOWREFCOUNT` environment variable now must also be set.
|
||||
:envvar:`!PYTHONSHOWREFCOUNT` environment variable now must also be set.
|
||||
(Contributed by Victor Stinner; :issue:`31733`.)
|
||||
|
||||
When Python is compiled with ``COUNT_ALLOC`` defined, allocation counts are no
|
||||
longer dumped by default anymore: the :envvar:`PYTHONSHOWALLOCCOUNT` environment
|
||||
longer dumped by default anymore: the :envvar:`!PYTHONSHOWALLOCCOUNT` environment
|
||||
variable must now also be set. Moreover, allocation counts are now dumped into
|
||||
stderr, rather than stdout. (Contributed by Victor Stinner; :issue:`31692`.)
|
||||
|
||||
|
|
@ -2712,7 +2715,8 @@ PEP 476: Enabling certificate verification by default for stdlib http clients
|
|||
-----------------------------------------------------------------------------
|
||||
|
||||
:pep:`476` updated :mod:`httplib <http>` and modules which use it, such as
|
||||
:mod:`urllib2 <urllib.request>` and :mod:`xmlrpclib`, to now verify that the server
|
||||
:mod:`urllib2 <urllib.request>` and :mod:`xmlrpclib <xmlrpc.client>`, to now
|
||||
verify that the server
|
||||
presents a certificate which is signed by a Certificate Authority in the
|
||||
platform trust store and whose hostname matches the hostname being requested
|
||||
by default, significantly improving security for many applications. This
|
||||
|
|
@ -2753,7 +2757,7 @@ entire Python process back to the default permissive behaviour of Python 2.7.8
|
|||
and earlier.
|
||||
|
||||
For cases where the connection establishment code can't be modified, but the
|
||||
overall application can be, the new :func:`ssl._https_verify_certificates`
|
||||
overall application can be, the new :func:`!ssl._https_verify_certificates`
|
||||
function can be used to adjust the default behaviour at runtime.
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -169,7 +169,7 @@ Some smaller changes made to the core Python language are:
|
|||
... if '<critical>' in line:
|
||||
... outfile.write(line)
|
||||
|
||||
With the new syntax, the :func:`contextlib.nested` function is no longer
|
||||
With the new syntax, the :func:`!contextlib.nested` function is no longer
|
||||
needed and is now deprecated.
|
||||
|
||||
(Contributed by Georg Brandl and Mattias Brändström;
|
||||
|
|
|
|||
|
|
@ -743,8 +743,8 @@ Several new and useful functions and methods have been added:
|
|||
|
||||
Two methods have been deprecated:
|
||||
|
||||
* :meth:`xml.etree.ElementTree.getchildren` use ``list(elem)`` instead.
|
||||
* :meth:`xml.etree.ElementTree.getiterator` use ``Element.iter`` instead.
|
||||
* :meth:`!xml.etree.ElementTree.getchildren` use ``list(elem)`` instead.
|
||||
* :meth:`!xml.etree.ElementTree.getiterator` use ``Element.iter`` instead.
|
||||
|
||||
For details of the update, see `Introducing ElementTree
|
||||
<https://web.archive.org/web/20200703234532/http://effbot.org/zone/elementtree-13-intro.htm>`_
|
||||
|
|
@ -2682,7 +2682,7 @@ require changes to your code:
|
|||
|
||||
(Contributed by Georg Brandl; :issue:`5675`.)
|
||||
|
||||
* The previously deprecated :func:`contextlib.nested` function has been removed
|
||||
* The previously deprecated :func:`!contextlib.nested` function has been removed
|
||||
in favor of a plain :keyword:`with` statement which can accept multiple
|
||||
context managers. The latter technique is faster (because it is built-in),
|
||||
and it does a better job finalizing multiple context managers when one of them
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue