changeset 40386:4a81d82474e9

lfs: consult the narrow matcher when extracting pointers from ctx (issue5794) I added a testcase for lfs to all narrow tests, and the following failed: test-narrow-acl.t test-narrow-exchange.t test-narrow-patterns.t test-narrow-strip.t test-narrow-trackedcmd.t test-narrow-widen.t test-narrow.t The first two still have errors in the pretxnchangegroup on clone and (receiving a) push, which I'm still looking into (4d63f3bc1e1a fixed something in this area already). These two modified tests seem to cover the things that failed in the remaining narrow tests, i.e. `hg tracked` and `hg strip`, so I didn't bother enabling the testcases elsewhere. Maybe we should, but it's 68 tests total.
author Matt Harbison <matt_harbison@yahoo.com>
date Sun, 21 Oct 2018 22:26:00 -0400
parents cc4586749c8c
children f1a39128da95
files hgext/lfs/wrapper.py tests/test-narrow-strip.t tests/test-narrow.t
diffstat 3 files changed, 21 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/hgext/lfs/wrapper.py	Sat Oct 20 20:25:56 2018 +0900
+++ b/hgext/lfs/wrapper.py	Sun Oct 21 22:26:00 2018 -0400
@@ -374,7 +374,12 @@
     stored for the path is an empty dict.
     """
     result = {}
+    m = ctx.repo().narrowmatch()
+
+    # TODO: consider manifest.fastread() instead
     for f in ctx.files():
+        if not m(f):
+            continue
         p = pointerfromctx(ctx, f, removed=removed)
         if p is not None:
             result[f] = p
--- a/tests/test-narrow-strip.t	Sat Oct 20 20:25:56 2018 +0900
+++ b/tests/test-narrow-strip.t	Sun Oct 21 22:26:00 2018 -0400
@@ -1,4 +1,12 @@
 #testcases flat tree
+#testcases lfs-on lfs-off
+
+#if lfs-on
+  $ cat >> $HGRCPATH <<EOF
+  > [extensions]
+  > lfs =
+  > EOF
+#endif
 
   $ . "$TESTDIR/narrow-library.sh"
 
--- a/tests/test-narrow.t	Sat Oct 20 20:25:56 2018 +0900
+++ b/tests/test-narrow.t	Sun Oct 21 22:26:00 2018 -0400
@@ -1,4 +1,12 @@
 #testcases flat tree
+#testcases lfs-on lfs-off
+
+#if lfs-on
+  $ cat >> $HGRCPATH <<EOF
+  > [extensions]
+  > lfs =
+  > EOF
+#endif
 
   $ . "$TESTDIR/narrow-library.sh"