Re: [PATCH v7 00/20] submodule: convert the rest of 'update' to C

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 15 2022, Glen Choo wrote:

> Junio C Hamano <gitster@xxxxxxxxx> writes:
>
>>> This seems to heavily conflict with "clone, submodule: pass partial
>>> clone filters to submodules, 2022-02-04" by Josh Steadmon
>>> <690d2316ad518ea4551821b2b3aa652996858475.1644034886.git.steadmon@xxxxxxxxxx>
>>> in both builtins/submodule--helper.c and git-submodule.sh.
>>>
>>> It also removes the code that "submodule: record superproject gitdir
>>> during 'update', 2022-02-03" by Emily Shaffer
>>> <20220203215914.683922-5-emilyshaffer@xxxxxxxxxx>, so what the other
>>> topic ends up adding to the shell script needs to eventually be
>>> redone in the C code.
>>>
>>> I think "superproject aware" topic would see a reroll due to a
>>> slight redesign.  I am not sure how solid the design of the
>>> "pass down partial clone filter" topic is at this moment.
>
> Hm, I haven't looked at where the conflicts are yet, but I'll get to it
> as I'm reviewing the rest of the feedback.

To save you some time, my v4 CL summarizes the semantic conflict between
the two:
https://lore.kernel.org/git/cover-v4-0.7-00000000000-20220127T143552Z-avarab@xxxxxxxxx/

I.e. Atharva Raykar had working C code to do what an older version of
that superproject config series was doing, but the semantics changed in
a later version. It needs some new usage of path.c (or similar) API
adjusted, but I didn't (and still don't) have time to look into it.

> [...]
>> I can merge this to seen minus the above two topics and get it
>> compile, but it also seems to have some interaction with 961b130d
>> (branch: add --recurse-submodules option for branch creation,
>> 2022-01-28) and makes the t3207, tests added by that other topic,
>> fail X-<.
>
> Oof, that's embarrassing of me, let me take a look at that. There's a
> nontrivial chance that the "branch --recurse-submodules" tests caught an
> actual regression.

FWIW one thing I did as an extra sanity check was to run the whole test
suite with --tee with/without this series (or rather, my earlier
version), and diffing the full test-results output (which you'll need to
save in-between the two runs, and IIRC hack t/Makefile to stop removing
it on successful runs).

There's a lot of differences in output due to general issues in the test
suite output not being reproducable (writing timestamps etc.), but I
could not find any issues with the "git submodule" output being
different, of course we may not have tests, or it may be piped to
/dev/null....

But I've found it to be a helpful additional validation technique for
this series & others where I'm not as confident in the test coverage.




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux