On Mon, Jun 11, 2007 at 09:57:19PM -0700, Dustin Sallings <[EMAIL PROTECTED]> was heard to say: > On Jun 11, 2007, at 20:54, Daniel Burrows wrote: > > I don't know if there's a better solution (e.g., something as simple > >as using shellutils). Another reply on this bug suggested that tailor > >should be rewritten to use a different API. That may be, but OTOH > >this > >would be a reasonable temporary fix if it doesn't break anything else. > > Your changes seem to be copy ops. The problem I had (and you seemed > to be having) was with moves. I've attached the changes I made for > this (you can use ``darcs apply'' to apply them) if you want to see > if it helps you with your issues.
I haven't tested the code, just read it. At a quick glance, it looks to me like you've conflated two separate changes: a fix to make removal of directory trees work, and a fix for renaming files. Your fix for renaming files looks like it should work just fine: I fixed renames by copying up-front and letting .remove unlink the file; you did an up-front move and don't unlink in .remove. Either approach should work. The only other difference is that I used the mercurial.util copy function, but that was mostly because someone told me that mercurial itself uses this; I have no reason to think that shutil's copy/move are worse. The only thing I don't understand in your change is the comment about disjunct trees. Is that something to do with the the source and target repositories having the same working directory? Daniel -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]