Re: [PATCH] add -p: coalesce hunks before testing applicability
- From
- Jochen Sprickerhof <jochen@sprickerhof.de>
- Date
- Sep 23, 2018, 17:16 UTC
- Message-ID
- <20180923171626.GN26251@vis>
- In-Reply-To
- <d6a8f77b-0a83-90ae-a7fb-a3954ac3b346@talktalk.net>
* Phillip Wood <phillip.wood@talktalk.net> [2018-09-13 11:20]:
>Yes in the long term we want to be able to coalesce edited hunks, but I >think it is confusing to call coalesce_overlapping_hunks() at the moment >as it will not coalesce the edited hunks.
I would see it as a first step into that direction.
Show 7 quoted lines
>I think that if you split a hunk, edit the first subhunk, transforming a >trailing context line to a deletion then try if you try to stage the >second subhunk it will fail. With your patch the edit will succeed as >the second subhunk is skipped when testing the edited patch. Then when >you try to stage the second subhunk it will fail as it's leading context >will contradict the trailing lines of the edited subhunk. With the old >method the edit failed but didn't store up trouble for the future.
Agreed. I guess the question is if you assume a hunk to be applied or skipped as the default. You can still find enough cases where neither the current nor the patched version works. I stumbled upon the one case where I wanted to stage only one part of a split hunk and that one worked after my patch. I leave it up to you if the added benefit overweights the stored up trouble.
Cheers Jochen