python3: replace im_{self,func} with __{self,func}__ globally
These new names are portable back to Python 2.6.
Differential Revision: https://phab.mercurial-scm.org/D1091
--- a/mercurial/wireproto.py Sat Oct 14 12:00:35 2017 -0400
+++ b/mercurial/wireproto.py Sat Oct 14 12:02:15 2017 -0400
@@ -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
--- a/tests/test-lock.py Sat Oct 14 12:00:35 2017 -0400
+++ b/tests/test-lock.py Sat Oct 14 12:02:15 2017 -0400
@@ -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):