PEP 594: Update 1.5 (#1068)
* Fix markup for wave section * Add estimated EOL for 3.9 * mention pynntp and why getopt and wave stay * Add Ned's suggestion
This commit is contained in:
parent
933fbf8626
commit
2d536899f0
50
pep-0594.rst
50
pep-0594.rst
|
@ -99,6 +99,11 @@ Starting with Python 3.9, deprecated modules will start issuing
|
||||||
`DeprecationWarning`. The `parser`_ module is removed and potentially
|
`DeprecationWarning`. The `parser`_ module is removed and potentially
|
||||||
replaced with a new module.
|
replaced with a new module.
|
||||||
|
|
||||||
|
All other deprecated modules are fully supported and will receive security
|
||||||
|
updates until Python 3.9 reaches its end of lifetime. Python 3.9.0 will
|
||||||
|
be released about 18 months after 3.8.0 (April 2021?) and most likely
|
||||||
|
be supported for 5 years after the release. The estimated EOL of Python 3.9
|
||||||
|
is in 2026.
|
||||||
|
|
||||||
3.10
|
3.10
|
||||||
----
|
----
|
||||||
|
@ -493,7 +498,9 @@ groups used to be a dominant platform for online discussions. Over the last
|
||||||
two decades, news has been slowly but steadily replaced with mailing lists
|
two decades, news has been slowly but steadily replaced with mailing lists
|
||||||
and web-based discussion platforms. Twisted is also
|
and web-based discussion platforms. Twisted is also
|
||||||
`planning <https://twistedmatrix.com/trac/ticket/9405>`_ to deprecate NNTP
|
`planning <https://twistedmatrix.com/trac/ticket/9405>`_ to deprecate NNTP
|
||||||
support.
|
support and `pynnt <https://github.com/greenbender/pynntp>`_ hasn't seen any
|
||||||
|
activity since 2014. This is a good indicator that the public interest in
|
||||||
|
NNTP support is declining.
|
||||||
|
|
||||||
The ``nntplib`` tests have been the cause of additional work in the recent
|
The ``nntplib`` tests have been the cause of additional work in the recent
|
||||||
past. Python only contains client side of NNTP. The tests connect to
|
past. Python only contains client side of NNTP. The tests connect to
|
||||||
|
@ -773,8 +780,11 @@ getopt
|
||||||
------
|
------
|
||||||
|
|
||||||
The `getopt <https://docs.python.org/3/library/getopt.html>`_ module mimics
|
The `getopt <https://docs.python.org/3/library/getopt.html>`_ module mimics
|
||||||
C's getopt() option parser. Although users are encouraged to use argparse
|
C's getopt() option parser.
|
||||||
instead, the getopt module is still widely used.
|
|
||||||
|
Although users are encouraged to use argparse instead, the getopt module is
|
||||||
|
still widely used. The module is small, simple, and handy for C developers
|
||||||
|
to write simple Python scripts.
|
||||||
|
|
||||||
Module type
|
Module type
|
||||||
pure Python
|
pure Python
|
||||||
|
@ -785,8 +795,10 @@ optparse
|
||||||
--------
|
--------
|
||||||
|
|
||||||
The `optparse <https://docs.python.org/3/library/optparse.html>`_ module is
|
The `optparse <https://docs.python.org/3/library/optparse.html>`_ module is
|
||||||
the predecessor of the argparse module. Although it has been deprecated for
|
the predecessor of the argparse module.
|
||||||
many years, it's still widely used.
|
|
||||||
|
Although it has been deprecated for many years, it's still too widely used
|
||||||
|
to remove it.
|
||||||
|
|
||||||
Module type
|
Module type
|
||||||
pure Python
|
pure Python
|
||||||
|
@ -796,16 +808,21 @@ Substitute
|
||||||
argparse
|
argparse
|
||||||
|
|
||||||
wave
|
wave
|
||||||
~~~~
|
----
|
||||||
|
|
||||||
The `wave <https://docs.python.org/3/library/wave.html>`_ module provides
|
The `wave <https://docs.python.org/3/library/wave.html>`_ module provides
|
||||||
support for the WAV sound format. The module uses one simple function
|
support for the WAV sound format.
|
||||||
from the `audioop`_ module to perform byte swapping between little and big
|
|
||||||
endian formats. Before 24 bit WAV support was added, byte swap used to be
|
The module is not deprecated, because The WAV format is still relevant these
|
||||||
implemented with the ``array`` module. To remove ``wave``'s dependency on the
|
days. The ``wave`` module is also used in education, e.g. to show kids how
|
||||||
``audioop``, the byte swap function could be either be moved to another
|
to make noise with a computer.
|
||||||
module (e.g. ``operator``) or the ``array`` module could gain support for
|
|
||||||
24 bit (3 byte) arrays.
|
The module uses one simple function from the `audioop`_ module to perform
|
||||||
|
byte swapping between little and big endian formats. Before 24 bit WAV
|
||||||
|
support was added, byte swap used to be implemented with the ``array``
|
||||||
|
module. To remove ``wave``'s dependency on the ``audioop``, the byte swap
|
||||||
|
function could be either be moved to another module (e.g. ``operator``) or
|
||||||
|
the ``array`` module could gain support for 24 bit (3 byte) arrays.
|
||||||
|
|
||||||
Module type
|
Module type
|
||||||
pure Python (depends on *byteswap* from `audioop`_ C extension)
|
pure Python (depends on *byteswap* from `audioop`_ C extension)
|
||||||
|
@ -827,7 +844,10 @@ documentation may be moved into a new git repository, so community members
|
||||||
have a place from which they can pick up and fork code.
|
have a place from which they can pick up and fork code.
|
||||||
|
|
||||||
A first draft of a `legacylib <https://github.com/tiran/legacylib>`_
|
A first draft of a `legacylib <https://github.com/tiran/legacylib>`_
|
||||||
repository is available on my private Github account.
|
repository is available on my private Github account. The modules could be
|
||||||
|
made available on PyPI. The Python core team will not publish or maintain
|
||||||
|
the packages. It is my hope that members of the Python community will
|
||||||
|
adopt, maintain, and perhaps improve the deprecated modules.
|
||||||
|
|
||||||
It's my hope that some of the deprecated modules will be picked up and
|
It's my hope that some of the deprecated modules will be picked up and
|
||||||
adopted by users that actually care about them. For example ``colorsys`` and
|
adopted by users that actually care about them. For example ``colorsys`` and
|
||||||
|
@ -881,6 +901,8 @@ Update 1
|
||||||
list suitable substitutions.
|
list suitable substitutions.
|
||||||
* Mention that ``socketserver`` is going to stay for ``http.server`` and
|
* Mention that ``socketserver`` is going to stay for ``http.server`` and
|
||||||
``xmlrpc.server``
|
``xmlrpc.server``
|
||||||
|
* The future maintenance section now states that the deprecated modules
|
||||||
|
may be adopted by Python community members.
|
||||||
|
|
||||||
References
|
References
|
||||||
==========
|
==========
|
||||||
|
|
Loading…
Reference in New Issue