[PATCH 3 of 9 py3 v2] context: work around `long` not existing on Python 3

Augie Fackler raf at durin42.com
Sun Mar 12 13:38:17 EDT 2017


# HG changeset patch
# User Augie Fackler <augie at google.com>
# Date 1489283824 18000
#      Sat Mar 11 20:57:04 2017 -0500
# Node ID 406938c2ae5042166b7a22cad39210cb08c80a37
# Parent  3366d024d1d7284d49609f6ce4e3e8a329fc8808
context: work around `long` not existing on Python 3

I can't figure out what this branch is even trying to accomplish, and
it was introduced in ac89a23ca814 which doesn't really shed any
insight into why longs are treated differently from ints.

diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -33,6 +33,7 @@ from . import (
     obsolete as obsmod,
     patch,
     phases,
+    pycompat,
     repoview,
     revlog,
     scmutil,
@@ -419,7 +420,7 @@ class changectx(basectx):
                 self._node = repo.changelog.node(changeid)
                 self._rev = changeid
                 return
-            if isinstance(changeid, long):
+            if not pycompat.ispy3 and isinstance(changeid, long):
                 changeid = str(changeid)
             if changeid == 'null':
                 self._node = nullid


More information about the Mercurial-devel mailing list