Unifying sparse and narrow "profiles"

Durham Goode durham at fb.com
Tue May 16 12:22:21 EDT 2017


On 5/15/17 2:53 PM, Augie Fackler wrote:
>
>> On May 9, 2017, at 15:17, Gregory Szorc <gregory.szorc at gmail.com> wrote:
>>
>> How about this for a concrete proposal (with intent on landing some bits of sparse in 4.3):
>>
>> 1) Drop a copy of Facebook's sparse.py into hgext/ along with minimally-modified tests
>> 2) Mark extension as experimental and not subject to any BC guarantees
>> 3) Rename "sparse" command to "debugsparse" until we have a proper UX bikeshed
>> 4) Start moving code from extension into core where appropriate. This will help flush out what considerations core needs to make for maintaining sparse checkouts
>> 5) Attempt to stabilize the sparse profiles file format so daring consumers can use sparse checkouts in 4.3 without major BC concerns from file formats
>> 6) Bikeshed and paint the shed
>> 7) Repeat #6
>> 8) (a few releases later) drop experimental labeling and/or move sparse checkout into core as a feature that is enabled by default (presumably this is gated on a "sign-off" from narrow clone)
>
> This works for me, assuming it's okay for the Facebook end of things. I don't want to hurt them while we're getting this sorted.

Sounds good. My only request would be that if any breaking changes are 
made, please include Facebook in the discussion so we can plan ahead for 
the breakage (since this is all already in production here).


More information about the Mercurial-devel mailing list