D4850: store: pass matcher to store.datafiles() and filter files according to it

2018-10-03 Thread pulkit (Pulkit Goyal)
pulkit created this revision. Herald added a subscriber: mercurial-devel. Herald added a reviewer: hg-reviewers. REVISION SUMMARY To get narrow stream clones working, we need a way to filter the storage files using a matcher. This patch adds matcher as an argument to store.walk() and store.d

D4850: store: pass matcher to store.datafiles() and filter files according to it

2018-10-07 Thread martinvonz (Martin von Zweigbergk)
martinvonz added inline comments. INLINE COMMENTS > store.py:429-437 > +def datafiles(self, matcher=None): > for a, b, size in super(encodedstore, self).datafiles(): > try: > a = decodefilename(a) > except KeyError: > a = No

D4850: store: pass matcher to store.datafiles() and filter files according to it

2018-10-13 Thread indygreg (Gregory Szorc)
indygreg added a comment. Another conceptual problem with this is that it assumes `data/` and `meta/` are used for tracking just filelogs and manifestlogs. In theory, other revlogs / data files could be stored there. For files / `data/` paths, I think we're OK making this assumption. But

D4850: store: pass matcher to store.datafiles() and filter files according to it

2018-10-14 Thread pulkit (Pulkit Goyal)
pulkit added a comment. In https://phab.mercurial-scm.org/D4850#75708, @indygreg wrote: > Another conceptual problem with this is that it assumes `data/` and `meta/` are used for tracking just filelogs and manifestlogs. In theory, other revlogs / data files could be stored there. > >