[Python-checkins] cpython: Issue #23326: Removed __ne__ implementations. Since fixing default __ne__

serhiy.storchaka python-checkins at python.org
Sat Jan 31 11:24:05 CET 2015


https://hg.python.org/cpython/rev/3603bae63c13
changeset: 94414:3603bae63c13
parent: 94411:3813a5282eac
user: Serhiy Storchaka <storchaka at gmail.com>
date: Sat Jan 31 12:05:05 2015 +0200
summary:
 Issue #23326: Removed __ne__ implementations. Since fixing default __ne__
implementation in issue #21408 they are redundant.
files:
 Lib/_pydecimal.py | 9 --------
 Lib/argparse.py | 5 ----
 Lib/asyncio/events.py | 4 ---
 Lib/collections/__init__.py | 5 ----
 Lib/datetime.py | 25 ------------------------
 Lib/distutils/version.py | 6 -----
 Lib/email/charset.py | 3 --
 Lib/email/header.py | 3 --
 Lib/functools.py | 2 -
 Lib/inspect.py | 9 --------
 Lib/sched.py | 1 -
 Lib/test/datetimetester.py | 2 -
 Lib/test/test_argparse.py | 3 --
 Lib/test/test_long.py | 2 -
 Lib/unittest/mock.py | 4 ---
 Lib/uuid.py | 5 ----
 Lib/xml/dom/minidom.py | 3 --
 Lib/xml/etree/ElementTree.py | 4 ---
 Lib/xmlrpc/client.py | 9 --------
 Misc/NEWS | 3 ++
 20 files changed, 3 insertions(+), 104 deletions(-)
diff --git a/Lib/_pydecimal.py b/Lib/_pydecimal.py
--- a/Lib/_pydecimal.py
+++ b/Lib/_pydecimal.py
@@ -923,15 +923,6 @@
 return False
 return self._cmp(other) == 0
 
- def __ne__(self, other, context=None):
- self, other = _convert_for_comparison(self, other, equality_op=True)
- if other is NotImplemented:
- return other
- if self._check_nans(other, context):
- return True
- return self._cmp(other) != 0
-
-
 def __lt__(self, other, context=None):
 self, other = _convert_for_comparison(self, other)
 if other is NotImplemented:
diff --git a/Lib/argparse.py b/Lib/argparse.py
--- a/Lib/argparse.py
+++ b/Lib/argparse.py
@@ -1209,11 +1209,6 @@
 return NotImplemented
 return vars(self) == vars(other)
 
- def __ne__(self, other):
- if not isinstance(other, Namespace):
- return NotImplemented
- return not (self == other)
-
 def __contains__(self, key):
 return key in self.__dict__
 
diff --git a/Lib/asyncio/events.py b/Lib/asyncio/events.py
--- a/Lib/asyncio/events.py
+++ b/Lib/asyncio/events.py
@@ -178,10 +178,6 @@
 self._cancelled == other._cancelled)
 return NotImplemented
 
- def __ne__(self, other):
- equal = self.__eq__(other)
- return NotImplemented if equal is NotImplemented else not equal
-
 def cancel(self):
 if not self._cancelled:
 self._loop._timer_handle_cancelled(self)
diff --git a/Lib/collections/__init__.py b/Lib/collections/__init__.py
--- a/Lib/collections/__init__.py
+++ b/Lib/collections/__init__.py
@@ -987,7 +987,6 @@
 def __lt__(self, other): return self.data < self.__cast(other)
 def __le__(self, other): return self.data <= self.__cast(other)
 def __eq__(self, other): return self.data == self.__cast(other)
- def __ne__(self, other): return self.data != self.__cast(other)
 def __gt__(self, other): return self.data > self.__cast(other)
 def __ge__(self, other): return self.data >= self.__cast(other)
 def __cast(self, other):
@@ -1064,10 +1063,6 @@
 if isinstance(string, UserString):
 return self.data == string.data
 return self.data == string
- def __ne__(self, string):
- if isinstance(string, UserString):
- return self.data != string.data
- return self.data != string
 def __lt__(self, string):
 if isinstance(string, UserString):
 return self.data < string.data
diff --git a/Lib/datetime.py b/Lib/datetime.py
--- a/Lib/datetime.py
+++ b/Lib/datetime.py
@@ -567,12 +567,6 @@
 else:
 return False
 
- def __ne__(self, other):
- if isinstance(other, timedelta):
- return self._cmp(other) != 0
- else:
- return True
-
 def __le__(self, other):
 if isinstance(other, timedelta):
 return self._cmp(other) <= 0
@@ -804,11 +798,6 @@
 return self._cmp(other) == 0
 return NotImplemented
 
- def __ne__(self, other):
- if isinstance(other, date):
- return self._cmp(other) != 0
- return NotImplemented
-
 def __le__(self, other):
 if isinstance(other, date):
 return self._cmp(other) <= 0
@@ -1079,12 +1068,6 @@
 else:
 return False
 
- def __ne__(self, other):
- if isinstance(other, time):
- return self._cmp(other, allow_mixed=True) != 0
- else:
- return True
-
 def __le__(self, other):
 if isinstance(other, time):
 return self._cmp(other) <= 0
@@ -1651,14 +1634,6 @@
 else:
 return False
 
- def __ne__(self, other):
- if isinstance(other, datetime):
- return self._cmp(other, allow_mixed=True) != 0
- elif not isinstance(other, date):
- return NotImplemented
- else:
- return True
-
 def __le__(self, other):
 if isinstance(other, datetime):
 return self._cmp(other) <= 0
diff --git a/Lib/distutils/version.py b/Lib/distutils/version.py
--- a/Lib/distutils/version.py
+++ b/Lib/distutils/version.py
@@ -48,12 +48,6 @@
 return c
 return c == 0
 
- def __ne__(self, other):
- c = self._cmp(other)
- if c is NotImplemented:
- return c
- return c != 0
-
 def __lt__(self, other):
 c = self._cmp(other)
 if c is NotImplemented:
diff --git a/Lib/email/charset.py b/Lib/email/charset.py
--- a/Lib/email/charset.py
+++ b/Lib/email/charset.py
@@ -249,9 +249,6 @@
 def __eq__(self, other):
 return str(self) == str(other).lower()
 
- def __ne__(self, other):
- return not self.__eq__(other)
-
 def get_body_encoding(self):
 """Return the content-transfer-encoding used for body encoding.
 
diff --git a/Lib/email/header.py b/Lib/email/header.py
--- a/Lib/email/header.py
+++ b/Lib/email/header.py
@@ -262,9 +262,6 @@
 # args and do another comparison.
 return other == str(self)
 
- def __ne__(self, other):
- return not self == other
-
 def append(self, s, charset=None, errors='strict'):
 """Append a string to the MIME header.
 
diff --git a/Lib/functools.py b/Lib/functools.py
--- a/Lib/functools.py
+++ b/Lib/functools.py
@@ -223,8 +223,6 @@
 return mycmp(self.obj, other.obj) <= 0
 def __ge__(self, other):
 return mycmp(self.obj, other.obj) >= 0
- def __ne__(self, other):
- return mycmp(self.obj, other.obj) != 0
 __hash__ = None
 return K
 
diff --git a/Lib/inspect.py b/Lib/inspect.py
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -2255,9 +2255,6 @@
 self._default == other._default and
 self._annotation == other._annotation)
 
- def __ne__(self, other):
- return not self.__eq__(other)
-
 
 class BoundArguments:
 """Result of `Signature.bind` call. Holds the mapping of arguments
@@ -2342,9 +2339,6 @@
 self.signature == other.signature and
 self.arguments == other.arguments)
 
- def __ne__(self, other):
- return not self.__eq__(other)
-
 
 class Signature:
 """A Signature object represents the overall signature of a function.
@@ -2559,9 +2553,6 @@
 return (isinstance(other, Signature) and
 self._hash_basis() == other._hash_basis())
 
- def __ne__(self, other):
- return not self.__eq__(other)
-
 def _bind(self, args, kwargs, *, partial=False):
 """Private method. Don't use directly."""
 
diff --git a/Lib/sched.py b/Lib/sched.py
--- a/Lib/sched.py
+++ b/Lib/sched.py
@@ -41,7 +41,6 @@
 
 class Event(namedtuple('Event', 'time, priority, action, argument, kwargs')):
 def __eq__(s, o): return (s.time, s.priority) == (o.time, o.priority)
- def __ne__(s, o): return (s.time, s.priority) != (o.time, o.priority)
 def __lt__(s, o): return (s.time, s.priority) < (o.time, o.priority)
 def __le__(s, o): return (s.time, s.priority) <= (o.time, o.priority)
 def __gt__(s, o): return (s.time, s.priority) > (o.time, o.priority)
diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py
--- a/Lib/test/datetimetester.py
+++ b/Lib/test/datetimetester.py
@@ -1305,8 +1305,6 @@
 return isinstance(other, LargerThanAnything)
 def __eq__(self, other):
 return isinstance(other, LargerThanAnything)
- def __ne__(self, other):
- return not isinstance(other, LargerThanAnything)
 def __gt__(self, other):
 return not isinstance(other, LargerThanAnything)
 def __ge__(self, other):
diff --git a/Lib/test/test_argparse.py b/Lib/test/test_argparse.py
--- a/Lib/test/test_argparse.py
+++ b/Lib/test/test_argparse.py
@@ -69,9 +69,6 @@
 def __eq__(self, other):
 return vars(self) == vars(other)
 
- def __ne__(self, other):
- return not (self == other)
-
 
 class ArgumentParserError(Exception):
 
diff --git a/Lib/test/test_long.py b/Lib/test/test_long.py
--- a/Lib/test/test_long.py
+++ b/Lib/test/test_long.py
@@ -599,8 +599,6 @@
 return (x > y) - (x < y)
 def __eq__(self, other):
 return self._cmp__(other) == 0
- def __ne__(self, other):
- return self._cmp__(other) != 0
 def __ge__(self, other):
 return self._cmp__(other) >= 0
 def __gt__(self, other):
diff --git a/Lib/unittest/mock.py b/Lib/unittest/mock.py
--- a/Lib/unittest/mock.py
+++ b/Lib/unittest/mock.py
@@ -2015,10 +2015,6 @@
 return (other_args, other_kwargs) == (self_args, self_kwargs)
 
 
- def __ne__(self, other):
- return not self.__eq__(other)
-
-
 def __call__(self, *args, **kwargs):
 if self.name is None:
 return _Call(('', args, kwargs), name='()')
diff --git a/Lib/uuid.py b/Lib/uuid.py
--- a/Lib/uuid.py
+++ b/Lib/uuid.py
@@ -185,11 +185,6 @@
 return self.int == other.int
 return NotImplemented
 
- def __ne__(self, other):
- if isinstance(other, UUID):
- return self.int != other.int
- return NotImplemented
-
 # Q. What's the value of being able to sort UUIDs?
 # A. Use them as keys in a B-Tree or similar mapping.
 
diff --git a/Lib/xml/dom/minidom.py b/Lib/xml/dom/minidom.py
--- a/Lib/xml/dom/minidom.py
+++ b/Lib/xml/dom/minidom.py
@@ -545,9 +545,6 @@
 def __lt__(self, other):
 return self._cmp(other) < 0
 
- def __ne__(self, other):
- return self._cmp(other) != 0
-
 def __getitem__(self, attname_or_tuple):
 if isinstance(attname_or_tuple, tuple):
 return self._attrsNS[attname_or_tuple]
diff --git a/Lib/xml/etree/ElementTree.py b/Lib/xml/etree/ElementTree.py
--- a/Lib/xml/etree/ElementTree.py
+++ b/Lib/xml/etree/ElementTree.py
@@ -532,10 +532,6 @@
 if isinstance(other, QName):
 return self.text == other.text
 return self.text == other
- def __ne__(self, other):
- if isinstance(other, QName):
- return self.text != other.text
- return self.text != other
 
 # --------------------------------------------------------------------
 
diff --git a/Lib/xmlrpc/client.py b/Lib/xmlrpc/client.py
--- a/Lib/xmlrpc/client.py
+++ b/Lib/xmlrpc/client.py
@@ -340,10 +340,6 @@
 s, o = self.make_comparable(other)
 return s == o
 
- def __ne__(self, other):
- s, o = self.make_comparable(other)
- return s != o
-
 def timetuple(self):
 return time.strptime(self.value, "%Y%m%dT%H:%M:%S")
 
@@ -407,11 +403,6 @@
 other = other.data
 return self.data == other
 
- def __ne__(self, other):
- if isinstance(other, Binary):
- other = other.data
- return self.data != other
-
 def decode(self, data):
 self.data = base64.decodebytes(data)
 
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -226,6 +226,9 @@
 Library
 -------
 
+- Issue #23326: Removed __ne__ implementations. Since fixing default __ne__
+ implementation in issue #21408 they are redundant.
+
 - Issue #14099: Restored support of writing ZIP files to tellable but
 non-seekable streams.
 
-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /