[PATCH] treemanifest: fix bad argument order to treemanifestctx

Martin von Zweigbergk martinvonz at google.com
Mon Oct 17 19:45:35 EDT 2016


On Mon, Oct 17, 2016 at 4:42 PM Durham Goode <durham at fb.com> wrote:





*From: *Martin von Zweigbergk <martinvonz at google.com>
*Date: *Monday, October 17, 2016 at 4:39 PM
*To: *Durham Goode <durham at fb.com>, "mercurial-devel at mercurial-scm.org" <
mercurial-devel at mercurial-scm.org>
*Subject: *Re: [PATCH] treemanifest: fix bad argument order to
treemanifestctx





On Mon, Oct 17, 2016 at 4:34 PM Durham Goode <durham at fb.com> wrote:

On 10/17/16, 4:13 PM, "Martin von Zweigbergk" <martinvonz at google.com> wrote:

># HG changeset patch
># User Martin von Zweigbergk <martinvonz at google.com>
># Date 1476745932 25200
>#      Mon Oct 17 16:12:12 2016 -0700
># Node ID b36a81cd4015b9742d1fbb0d5f94207e7a400cdb
># Parent  8a864844d5a0c34bdb24d2e098a0cd339e32e020
>treemanifest: fix bad argument order to treemanifestctx
>
>Found by running tests with _treeinmem (both of them) modified to be
>True.
>
>diff -r 8a864844d5a0 -r b36a81cd4015 mercurial/manifest.py
>--- a/mercurial/manifest.py    Wed Oct 12 21:33:45 2016 +0200
>+++ b/mercurial/manifest.py    Mon Oct 17 16:12:12 2016 -0700
>@@ -1386,7 +1386,7 @@
>         # Need to perform a slow delta
>         revlog = self._revlog
>         r0 = revlog.deltaparent(revlog.rev(self._node))
>-        m0 = treemanifestctx(revlog, revlog.node(r0),
dir=self._dir).read()
>+        m0 = treemanifestctx(revlog, self._dir, revlog.node(r0)).read()
>         m1 = self.read()
>         md = treemanifest(dir=self._dir)
>         for f, ((n0, fl0), (n1, fl1)) in m0.diff(m1).iteritems():

Looks good to me.  What would be required to get some _treeinmem code
coverage in the tests?



Twice the runtime? :-) But seriously, I suspect that's reason enough that
we don't want it enabled by default. And I don't know what subset would be
useful to run it on either.



But it was much less broken than I expected, actually. This was all that
was needed. I expected it to be broken before your series even started, but
it wasn't. There is one failing test case (test-rebase-newancestor.t) that
I have not understood why it's failing. It scares me a bit that I still
don't know why it's failing.



Just doing one run of test-manifest.t with it on would probably be enough
to catch most issues.  What’s the exact command you used to run the tests?
So I can run it myself before sending more patches.


 sed -i -e 's/_treeinmem =.*/_treeinmem = True/g' mercurial/manifest.py
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.mercurial-scm.org/pipermail/mercurial-devel/attachments/20161017/5738e8d0/attachment-0001.html>


More information about the Mercurial-devel mailing list