Hi Peff, On Fri, Mar 20, 2020 at 02:12:14AM -0400, Jeff King wrote: > On Thu, Mar 19, 2020 at 10:44:39AM -0700, Jonathan Tan wrote: > > - Some hosts like GitHub support some partial clone filters, but not > > "tree:0". > > Yes, this is going to fail against GitHub servers, just like it would > for older servers. One way to prevent that would be to use a "blob" > filter if that's what we originally partial-cloned with. I don't know if > that information always reliably makes it into this code path, though. > I think I'd prefer a capability-based fix in the long run. > > We may support "tree:0" eventually at GitHub. It's quick to compute with > bitmaps, just like "blob:none" is. But "tree:1" isn't. I'm rolling this out shortly :). > One side note (for Taylor, cc'd): our patches elsewhere to limit the > allowed filters don't make it possible to express the difference between > "tree:0" and "tree:1". It may be worth thinking about that, especially > if it influences the config schema (since we'll have to support it > forever once it makes it into a release). They do now, mostly thanks to Peff's original thinking about separating out each filter choice into its own subsection, so that we can write not just: [uploadpack "filter.tree:depth"] allow = true but also: [uploadpack "filter.tree:depth"] allow = true maxDepth = <n> I have some patches that I'm rolling out to GitHub in the next day or so that do just that. I think that we will likely just support the no-trees version of this filter (i.e., '--filter=tree:0'), since that is the only case that is helped by having up-to-date bitmaps enabled. I assume that other administrators will do the same. I'm going to send these patches upstream in the not-too-distant future, because I want to address the original issues that I talked about in my RFC about adding these filter subsections to 'upload-pack's configuration in the first place in [1]. My hope is that I can do that while these patches are being vetted in the wild before I send them to the list. Thanks, Taylor [1]: https://lore.kernel.org/git/cover.1584477196.git.me@xxxxxxxxxxxx/