]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-37324: Remove ABC aliases from collections (GH-23754)
authorHugo van Kemenade <hugovk@users.noreply.github.com>
Tue, 12 Jan 2021 23:16:37 +0000 (01:16 +0200)
committerGitHub <noreply@github.com>
Tue, 12 Jan 2021 23:16:37 +0000 (00:16 +0100)
Remove deprecated aliases to Abstract Base Classes from the
collections module.

Doc/library/collections.rst
Doc/whatsnew/3.10.rst
Lib/collections/__init__.py
Misc/NEWS.d/next/Core and Builtins/2020-12-12-20-09-12.bpo-37324.jB-9_U.rst [new file with mode: 0644]

index 1293f542b04377e15e662355c0ddb07e5a2c6b35..aa0acfaae45a5f05be0dce4d1b799da63692ae92 100644 (file)
@@ -33,11 +33,6 @@ Python's general purpose built-in containers, :class:`dict`, :class:`list`,
 :class:`UserString`     wrapper around string objects for easier string subclassing
 =====================   ====================================================================
 
-.. deprecated-removed:: 3.3 3.10
-    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.9.
-
 
 :class:`ChainMap` objects
 -------------------------
index d2b3ed75f8c271f943f5c93b8c57817ba2d5707c..7a51a9dbfb83adea5b7ba55e8774ecef31bda4cc 100644 (file)
@@ -550,6 +550,10 @@ Removed
   now due to the _warnings module was converted to a builtin module in 2.6.
   (Contributed by Hai Shi in :issue:`42599`.)
 
+* Remove deprecated aliases to :ref:`collections-abstract-base-classes` from
+  the :mod:`collections` module.
+  (Contributed by Victor Stinner in :issue:`37324`.)
+
 
 Porting to Python 3.10
 ======================
index 9c25a2d2784b8f1454a374eb21e4e91a24969748..7d338131d6740d7f1c51d398ff2be6e453fc78a8 100644 (file)
@@ -51,22 +51,6 @@ except ImportError:
     pass
 
 
-def __getattr__(name):
-    # For backwards compatibility, continue to make the collections ABCs
-    # through Python 3.6 available through the collections module.
-    # Note, no new collections ABCs were added in Python 3.7
-    if name in _collections_abc.__all__:
-        obj = getattr(_collections_abc, name)
-        import warnings
-        warnings.warn("Using or importing the ABCs from 'collections' instead "
-                      "of from 'collections.abc' is deprecated since Python 3.3, "
-                      "and in 3.10 it will stop working",
-                      DeprecationWarning, stacklevel=2)
-        globals()[name] = obj
-        return obj
-    raise AttributeError(f'module {__name__!r} has no attribute {name!r}')
-
-
 ################################################################################
 ### OrderedDict
 ################################################################################
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-12-12-20-09-12.bpo-37324.jB-9_U.rst b/Misc/NEWS.d/next/Core and Builtins/2020-12-12-20-09-12.bpo-37324.jB-9_U.rst
new file mode 100644 (file)
index 0000000..5b57da4
--- /dev/null
@@ -0,0 +1,2 @@
+Remove deprecated aliases to :ref:`collections-abstract-base-classes` from
+the :mod:`collections` module.