Re: [PATCH/RFC] sparse-checkout: take care of "--end-of-options" in set/add
From: Elijah Newren <hidden>
Date: 2023-12-24 01:03:04
On Sat, Dec 23, 2023 at 2:45 PM Elijah Newren [off-list ref] wrote:
Hi, On Sat, Dec 23, 2023 at 2:02 AM Jeff King [off-list ref] wrote:quoted
On Thu, Dec 21, 2023 at 02:04:56PM -0800, Junio C Hamano wrote:quoted
Jeff King [off-list ref] writes:quoted
Right, that is the "gotcha" I mentioned in my other email. Though that is the way it has behaved historically, my argument is that users are unreasonable to expect it to work: 1. It is not consistent with the rest of Git commands. 2. It is inconsistent with respect to existing options (and is an accident waiting to happen when new options are added). So I'd consider it a bug-fix.So the counter-proposal here is just to drop KEEP_UNKNOWN_OPT and deliberately break them^W^W^Wrealign their expectations?Yes. :) But keep in mind we are un-breaking other people, like those who typo: git sparse-checkout --sikp-checks and don't see an error (instead, we make a garbage entry in the sparse checkout file).I think you mean git sparse-checkout set --sikp-checks or git sparse-checkout add --sikp-checks (i.e. with either 'set' or 'add' in there) Neither of these are currently an error, but I agree both definitely ought to be. (Without the 'set' or 'add', you currently do get an error, as we'd expect.)quoted
quoted
I do not have much stake in sparse-checkout, so I am fine with that direction. But I suspect other folks on the list would have users of their own who would rather loudly complain to them if we broke them ;-)Likewise, I have never used sparse-checkout myself, and I don't care _that_ much. My interest is mostly in having various Git commands behave consistently. This whole discussion started because the centralized --end-of-options fix interacted badly with this unusual behavior.Well, I care quite a bit about sparse-checkout, and I would rather see Peff's proposed fix, even if some users might have to tweak their commands a little.
And I wrote it up as a patch over at https://lore.kernel.org/git/pull.1625.git.git.1703379611749.gitgitgadget@gmail.com/ (local)