[darcs-devel] [issue1461] case-folding can lead to working directory corruption

Ganesh Sittampalam ganesh at earth.li
Sat Jul 13 15:06:45 UTC 2019


On 13/07/2019 15:01, Ian Lynagh wrote:
> On Sat, Jul 13, 2019 at 11:49:19AM +0000, Ben Franksen wrote:
>>
>> Ben Franksen <ben.franksen at online.de> added the comment:
>>
>>>>>  - We probably can't protect against all possible failures. 
>>>>> Reordering patches could lead to invalid states being created even 
>>>>> when a particular linearisation of the repository looked fine.
>>>>
>>>> I don't believe this is so. [...]
>>>
>>> The kind of example I had in mind was this:
>>>
>>> patch 1: add a
>>> patch 2: rm a
>>> patch 3: add A
>>>
>>> now unpull 2.
>>
>> OMG I feel so stupid. Yes, this could only be avoided if we make it a
>> global property i.e. you cannot 'add A' if there is an 'add a'
>> /anywhere/ in the repo (and likewise with move).
> 
> Or perhaps "add A" should depend on "rm a"?

That's a cunning idea for a single linearised history.

We'd still have a problem with merging 'add a' and 'add A'.

Ganesh



More information about the darcs-devel mailing list