bpo-36953: Delay removal of ABCs from collections. (GH-13409)

Bump the removal to 3.9, indicate collections.abc available since 3.3,
replace version-changed directive to deprecated-removed.


https://bugs.python.org/issue36953
This commit is contained in:
Matthias Bussonnier 2019-05-30 14:45:48 -07:00 committed by Miss Islington (bot)
parent 5437ccca14
commit eea47e0939
3 changed files with 9 additions and 4 deletions

View File

@ -33,10 +33,10 @@ Python's general purpose built-in containers, :class:`dict`, :class:`list`,
:class:`UserString` wrapper around string objects for easier string subclassing :class:`UserString` wrapper around string objects for easier string subclassing
===================== ==================================================================== ===================== ====================================================================
.. versionchanged:: 3.3 .. deprecated-removed:: 3.3 3.9
Moved :ref:`collections-abstract-base-classes` to the :mod:`collections.abc` module. Moved :ref:`collections-abstract-base-classes` to the :mod:`collections.abc` module.
For backwards compatibility, they continue to be visible in this module through For backwards compatibility, they continue to be visible in this module through
Python 3.7. Subsequently, they will be removed entirely. Python 3.8.
:class:`ChainMap` objects :class:`ChainMap` objects

View File

@ -47,8 +47,8 @@ def __getattr__(name):
obj = getattr(_collections_abc, name) obj = getattr(_collections_abc, name)
import warnings import warnings
warnings.warn("Using or importing the ABCs from 'collections' instead " warnings.warn("Using or importing the ABCs from 'collections' instead "
"of from 'collections.abc' is deprecated, " "of from 'collections.abc' is deprecated since Python 3.3,"
"and in 3.8 it will stop working", "and in 3.9 it will stop working",
DeprecationWarning, stacklevel=2) DeprecationWarning, stacklevel=2)
globals()[name] = obj globals()[name] = obj
return obj return obj

View File

@ -0,0 +1,5 @@
Starting with Python 3.3, importing ABCs from :mod:`collections` is
deprecated, and import should be done from :mod:`collections.abc`. Still
being able to import from :mod:`collections` was marked for removal in 3.8,
but has been delayed to 3.9; documentation and ``DeprecationWarning``
clarified.