[darcs-devel] all my latest changes now on hub.darcs.net

Benjamin Franksen ben.franksen at online.de
Fri Jul 13 18:16:44 UTC 2018


On 07/12/2018 06:48 PM, Benjamin Franksen wrote:
> Another thing that I find unsatisfying is that even though we track the
> unrecorded state, we call applyToWorking /after/ calling
> finalizeRepositoryChanges e.g. in unrevert, unrecord,
> Darcs.UI.ApplyPatches etc. I think this is just wrong: we should require
> transaction mode for applyToWorking and call it before we finalize. If
> we cannot apply the changes to working, then the whole operation should
> fail.

I have made some additional patches that fix this particular problem.
applyToWorking now requires a transaction and the call sites have been
adapted accordingly. Along the way, I found a problem with the way we
check for conflicts with unrecorded changes in tentativelyMergePatches:
we check only for conflicts with pending but the message/prompt suggests
that what we really want is to check for conflicts with
pending+>+working. Fixing that simplifies the procedure because we
already calculated the particular merge required to make this check.
This is a change in behavior and therefore breaks a number of tests. The
tests are easily fixed by either piping another 'y' into the command
(usually pull) to answer the prompt, or by using --allow-conflicts to
avoid subsequent pulls to conflict with the markup that is otherwise
generated.

I also found that the tests for issue1316 are no longer failing,
probably due to one of the various fixes to the handling of the pending
patch.

Cheers
Ben



More information about the darcs-devel mailing list