From: Raymond Hettinger Date: Sat, 10 Apr 2010 16:57:36 +0000 (+0000) Subject: Issue 8361: Remove assert from functools.total_ordering X-Git-Tag: v2.7b2~327 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=4e45512de2d76e0366c5e7ac5d02119419bfc9ea;p=thirdparty%2FPython%2Fcpython.git Issue 8361: Remove assert from functools.total_ordering --- diff --git a/Lib/functools.py b/Lib/functools.py index 539dc90ecd8f..d75e44ae83ad 100644 --- a/Lib/functools.py +++ b/Lib/functools.py @@ -67,8 +67,9 @@ def total_ordering(cls): ('__lt__', lambda self, other: not self >= other)] } roots = set(dir(cls)) & set(convert) - assert roots, 'must define at least one ordering operation: < > <= >=' - root = max(roots) # prefer __lt __ to __le__ to __gt__ to __ge__ + if not roots: + raise ValueError('must define at least one ordering operation: < > <= >=') + root = max(roots) # prefer __lt__ to __le__ to __gt__ to __ge__ for opname, opfunc in convert[root]: if opname not in roots: opfunc.__name__ = opname