From c49b8beb831ae9399f072f9cce7e94cc64e92243 Mon Sep 17 00:00:00 2001 From: Matt Riedemann Date: Tue, 5 Nov 2013 18:43:08 -0800 Subject: Fix int overflow exception in unittest MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes: File ".../versioning/version.py", line 30, in __init__ if self < 0: OverflowError: Python int too large to convert to C long Don't use __cmp__ which is deprecated and restricted to C long ints, rather than python's arbitrary precision ints. Copied from Pádraig Brady's Fedora patch: http://pkgs.fedoraproject.org/cgit/python-migrate.git/commit/?id=a01bf449 Co-authored-by: Pádraig Brady Change-Id: I71f349f97507525b2f2edaf034005d67b6cc3987 --- migrate/versioning/version.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/migrate/versioning/version.py b/migrate/versioning/version.py index d5a5be9..26cdd59 100644 --- a/migrate/versioning/version.py +++ b/migrate/versioning/version.py @@ -37,8 +37,23 @@ class VerNum(object): def __sub__(self, value): return self + (int(value) * -1) - def __cmp__(self, value): - return int(self) - int(value) + def __eq__(self, value): + return int(self) == int(value) + + def __ne__(self, value): + return int(self) != int(value) + + def __lt__(self, value): + return int(self) < int(value) + + def __gt__(self, value): + return int(self) > int(value) + + def __ge__(self, value): + return int(self) >= int(value) + + def __le__(self, value): + return int(self) <= int(value) def __repr__(self): return "" % self.value -- cgit v1.2.1