This revision was automatically updated to reflect the committed changes.
Closed by commit rHG79392b35e947: memfilectx: make changectx argument mandatory
in constructor (API) (authored by martinvonz, committed by ).
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D1658?vs=4381=4418
REVISION DETAIL
https://phab.mercurial-scm.org/D1658
AFFECTED FILES
contrib/synthrepo.py
hgext/convert/hg.py
hgext/histedit.py
hgext/largefiles/lfcommands.py
hgext/uncommit.py
mercurial/cmdutil.py
mercurial/context.py
mercurial/debugcommands.py
tests/test-commit.t
tests/test-context.py
CHANGE DETAILS
diff --git a/tests/test-context.py b/tests/test-context.py
--- a/tests/test-context.py
+++ b/tests/test-context.py
@@ -32,7 +32,7 @@
# test memctx with non-ASCII commit message
def filectxfn(repo, memctx, path):
-return context.memfilectx(repo, "foo", "")
+return context.memfilectx(repo, memctx, "foo", "")
ctx = context.memctx(repo, ['tip', None],
encoding.tolocal("Gr\xc3\xbcezi!"),
@@ -49,7 +49,7 @@
data, flags = fctx.data(), fctx.flags()
if f == 'foo':
data += 'bar\n'
-return context.memfilectx(repo, f, data, 'l' in flags, 'x' in flags)
+return context.memfilectx(repo, memctx, f, data, 'l' in flags, 'x' in
flags)
ctxa = repo.changectx(0)
ctxb = context.memctx(repo, [ctxa.node(), None], "test diff", ["foo"],
diff --git a/tests/test-commit.t b/tests/test-commit.t
--- a/tests/test-commit.t
+++ b/tests/test-commit.t
@@ -648,7 +648,8 @@
> u = uimod.ui.load()
> r = hg.repository(u, '.')
> def filectxfn(repo, memctx, path):
- > return context.memfilectx(repo, path, '[hooks]\nupdate = echo owned')
+ > return context.memfilectx(repo, memctx, path,
+ > '[hooks]\nupdate = echo owned')
> c = context.memctx(r, [r['tip'].node(), node.nullid],
>'evil', [notrc], filectxfn, 0)
> r.commitctx(c)
@@ -673,7 +674,8 @@
> u = uimod.ui.load()
> r = hg.repository(u, '.')
> def filectxfn(repo, memctx, path):
- > return context.memfilectx(repo, path, '[hooks]\nupdate = echo owned')
+ > return context.memfilectx(repo, memctx, path,
+ > '[hooks]\nupdate = echo owned')
> c = context.memctx(r, [r['tip'].node(), node.nullid],
>'evil', [notrc], filectxfn, 0)
> r.commitctx(c)
@@ -692,7 +694,8 @@
> u = uimod.ui.load()
> r = hg.repository(u, '.')
> def filectxfn(repo, memctx, path):
- > return context.memfilectx(repo, path, '[hooks]\nupdate = echo owned')
+ > return context.memfilectx(repo, memctx, path,
+ > '[hooks]\nupdate = echo owned')
> c = context.memctx(r, [r['tip'].node(), node.nullid],
>'evil', [notrc], filectxfn, 0)
> r.commitctx(c)
diff --git a/mercurial/debugcommands.py b/mercurial/debugcommands.py
--- a/mercurial/debugcommands.py
+++ b/mercurial/debugcommands.py
@@ -225,7 +225,8 @@
def fctxfn(repo, cx, path):
if path in filecontent:
-return context.memfilectx(repo, path,
filecontent[path])
+return context.memfilectx(repo, cx, path,
+ filecontent[path])
return None
if len(ps) == 0 or ps[0] < 0:
diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -2204,12 +2204,11 @@
files = self._cache.keys()
def getfile(repo, memctx, path):
if self._cache[path]['exists']:
-return memfilectx(repo, path,
+return memfilectx(repo, memctx, path,
self._cache[path]['data'],
'l' in self._cache[path]['flags'],
'x' in self._cache[path]['flags'],
- self._cache[path]['copied'],
- memctx)
+ self._cache[path]['copied'])
else:
# Returning None, but including the path in `files`, is
# necessary for memctx to register a deletion.
@@ -2389,9 +2388,9 @@
copied = fctx.renamed()
if copied:
copied = copied[0]
-return memfilectx(repo, path, fctx.data(),
+return memfilectx(repo, memctx, path, fctx.data(),
islink=fctx.islink(), isexec=fctx.isexec(),
- copied=copied, memctx=memctx)
+ copied=copied)
return getfilectx
@@ -2405,9 +2404,8 @@
if data is None:
return None
islink, isexec = mode
-return memfilectx(repo, path, data, islink=islink,
- isexec=isexec, copied=copied,
- memctx=memctx)
+return memfilectx(repo, memctx, path,