[darcs-users] darcs patch: resolve issue1406: amend-record unrecords on a test fa...

Jason Dagit dagit at codersbase.com
Sat Sep 12 21:43:17 UTC 2009

On Sat, Sep 12, 2009 at 2:21 PM, Ganesh Sittampalam <ganesh at earth.li> wrote:

> On Sat, 12 Sep 2009, Eric Kow wrote:
>  On Wed, Sep 02, 2009 at 07:45:45 -0700, Jason Dagit wrote:
>>> Kamil and I have had some off-list discussion about this patch.  My
>>> current understanding is that it should not be applied yet.  Kamil is
>>> doing some further digging into how his bit of code should work
>>> transactionally.  Which is to say, we are being cautious :)
>> Thanks for this.
>> Could you provide a summary of this discussion?
> +1 for a summary - I've seen various patches flying around and Jason asked
> me to take an additional look last week, but I've only now had time but am
> not quite sure if things have moved on since then.

I don't think that discussion is particularly helpful.  In particular, the
bundle that Kamil sent here supersedes that discussion:

Not sure how you guys missed it, but once that bundle came to the list I
replied here:

I need you guys to comment on: 1) The orphan patches that I bring up in that
reply. 2) Putting inverse patches in tentative_pristine versus commuting
patches to the end and discarding them.

Someone may need to research what darcs does with the tentative_pristine to
correctly answer #2.  I haven't had enough round tuits to do that research
yet.  My fear is that if we read tentative_pristine and make a patch bundle
from it then you get extra patches.  You get the stuff that was in there
plus some inverses of stuff that is in there.  If we say, "okay, do some
coalescing first to collapse inverses" then I would like to point out that
Eric has made me aware of at least one bug with coalescing not being clever
enough to fully collapse a sequence (I don't have the issue# handy, sorry).
 It's possible that all we do with the tentative_pristine is apply it
directly to the pristine in which case applying patches and then their
inverses is no different than applying rollback patches and my fears are

Other things to note:  a) obliterate creates orphan patches, b) the old
version of this code used to commute the patches to_remove to the end and
discard them.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/darcs-users/attachments/20090912/5f553ad7/attachment.htm>

More information about the darcs-users mailing list