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
===================== ====================================================================
.. versionchanged:: 3.3
.. deprecated-removed:: 3.3 3.9
Moved :ref:`collections-abstract-base-classes` to the :mod:`collections.abc` module.
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

View File

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