D1091: python3: replace im_{self,func} with __{self,func}__ globally

durin42 (Augie Fackler) phabricator at mercurial-scm.org
Sun Oct 15 04:58:09 UTC 2017


durin42 created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  These new names are portable back to Python 2.6.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D1091

AFFECTED FILES
  mercurial/wireproto.py
  tests/test-lock.py

CHANGE DETAILS

diff --git a/tests/test-lock.py b/tests/test-lock.py
--- a/tests/test-lock.py
+++ b/tests/test-lock.py
@@ -19,7 +19,7 @@
 # work around http://bugs.python.org/issue1515
 if types.MethodType not in copy._deepcopy_dispatch:
     def _deepcopy_method(x, memo):
-        return type(x)(x.im_func, copy.deepcopy(x.im_self, memo), x.im_class)
+        return type(x)(x.__func__, copy.deepcopy(x.__self__, memo), x.im_class)
     copy._deepcopy_dispatch[types.MethodType] = _deepcopy_method
 
 class lockwrapper(lock.lock):
diff --git a/mercurial/wireproto.py b/mercurial/wireproto.py
--- a/mercurial/wireproto.py
+++ b/mercurial/wireproto.py
@@ -112,7 +112,7 @@
 
         for command, args, opts, finalfuture in self.calls:
             mtd = getattr(self._remote, command)
-            batchable = mtd.batchable(mtd.im_self, *args, **opts)
+            batchable = mtd.batchable(mtd.__self__, *args, **opts)
 
             commandargs, fremote = next(batchable)
             assert fremote



To: durin42, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list