: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
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
--- /dev/null
+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.