From: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Date: Wed, 10 Sep 2025 15:52:57 +0000 (+0100) Subject: GH-138562: Remove ``sort()`` from the common sequence methods in the data model ... X-Git-Tag: v3.15.0a1~417 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d0c9943869bb143df445229444224930330ac0f3;p=thirdparty%2FPython%2Fcpython.git GH-138562: Remove ``sort()`` from the common sequence methods in the data model (#138563) --- diff --git a/Doc/reference/datamodel.rst b/Doc/reference/datamodel.rst index 68645d1da3d3..7185d68c5cca 100644 --- a/Doc/reference/datamodel.rst +++ b/Doc/reference/datamodel.rst @@ -3142,17 +3142,20 @@ objects. The :mod:`collections.abc` module provides a :term:`abstract base class` to help create those methods from a base set of :meth:`~object.__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__delitem__`, and :meth:`!keys`. -Mutable sequences should provide methods :meth:`~sequence.append`, -:meth:`~sequence.count`, :meth:`~sequence.index`, :meth:`~sequence.extend`, -:meth:`~sequence.insert`, :meth:`~sequence.pop`, :meth:`~sequence.remove`, -:meth:`~sequence.reverse` and :meth:`!sort`, + +Mutable sequences should provide methods +:meth:`~sequence.append`, :meth:`~sequence.clear`, :meth:`~sequence.count`, +:meth:`~sequence.extend`, :meth:`~sequence.index`, :meth:`~sequence.insert`, +:meth:`~sequence.pop`, :meth:`~sequence.remove`, and :meth:`~sequence.reverse`, like Python standard :class:`list` objects. Finally, sequence types should implement addition (meaning concatenation) and multiplication (meaning repetition) by defining the methods :meth:`~object.__add__`, :meth:`~object.__radd__`, :meth:`~object.__iadd__`, :meth:`~object.__mul__`, :meth:`~object.__rmul__` and :meth:`~object.__imul__` described below; they should not define other numerical -operators. It is recommended that both mappings and sequences implement the +operators. + +It is recommended that both mappings and sequences implement the :meth:`~object.__contains__` method to allow efficient use of the ``in`` operator; for mappings, ``in`` should search the mapping's keys; for sequences, it should