Hi Steven,

On Wed, Apr 29, 2009 at 16:33:14 -0400, Steven G. Johnson wrote:
> Applying patch 436 of 449... Unapplicable patch:
> Tue Jul 31 19:43:29 EDT 2007  [email protected]
>   * remove Makefile.in files, which are generated by automake
> darcs: ./Makefile.in: removeFile: does not exist (No such file or directory)

If it's just that one patch, it should be possible to somehow convince
darcs that it never existed in the first place, perhaps by editing one
of the inventory files.

Is this repository also publicly available?

> PS. I have a suspicion that this may be the results of an odd interaction 
> between Darcs and autotools.  Perhaps one of the automake/autoconf tools  
> like autoreconf may at some point have done something to the  
> _darcs/current directory, mistaking it for a source directory because of  
> the files configure.ac, Makefile.in, etcetera, which is why I encountered 
> error for Makefile.in exactly as in the 2006 web page above.  But my  
> understanding was that this should not be fatal, since Darcs' real 
> history is in the patches list and _darcs/current is just an 
> optimization?

That sounds like a nice guess for how this may have happened.  The
problem is that corruption to the pristine cache (_darcs/current) can
cause darcs to create nonsense patches (such as the removal of
Makefile.in), which simply cannot apply to any sensible repository.

The good news is that darcs 2 now supports hashed repositories which
avoid precisely this kind of problem and other sorts of naughtiness
caused by pristine cache corruption.  Once you have resolved the
immediate issue at hand, I would recommend you protect yourself against
such mysteries in the future by doing a darcs get --hashed.  See
http://wiki.darcs.net/index.html/DarcsTwo for more details.

In the long run, I'll bet that despite our best efforts (eg. with the
pristine cache), the real world will devise all sorts of interesting
ways to generate bad patches... which is why I am keen on there one
day being a sort of darcs transplant command or some other mechanism to
let us cleanly perform surgery on a darcs repository

Thanks,

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9

Attachment: pgptvdXGiOcTZ.pgp
Description: PGP signature

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to