D4887: narrow: don't include the manifests while widening a narrow clone
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Fri Oct 5 13:31:31 EDT 2018
martinvonz added a comment.
I don't think this is quite the right approach. If we're using treemanifest and widening from `{foo/, bar/}` to `{foo/, bar/, baz/}`, then we'd still be sending manifests for all those directories (and their subdirectories, right)? We should only have to send manifests for `baz/` (and subdirectories). `cgpacker` current has a `_filematcher`. Perhaps it needs a `_oldfilematcher` as well? Note that a differencematcher won't be enough because it would (correctly) include the root manifest in this example (and pretty much always). Here we need to call `visitdir()` once on each matcher instead of calling it once on a differencematcher.
I'm still fine with queuing this for now if you need this patch somewhat urgently even though I think the code in this patch and in https://phab.mercurial-scm.org/D4886 should eventually go away.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D4887
To: pulkit, durin42, martinvonz, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list