evolve: protect call to rebase within a wlock (#42, #35, #16)
Without a wlock, repo.commit would blow away the dirstate's parents on OSes
that have no 'os.symlink' support in python, leading evolve to produce a merge
instead of a rebase. If a user ran the rebase command instead of evolve, then
things would work because rebase is wrapped in a giant wlock.
Unfortunately, we can't use the same idea of wrapping the evolve command in one
giant wlock because that's too early in the process. If the lock did wrap the
entire evolve command, then the working directory would save its current
parents which, since rebase hasn't been called yet, would be just
p1.
Therefore, we need to obtain the lock *after* the dirstate's parents are
changed but *before* the call to rebase. This way ensures that when a conflict
happens the working directory correctly shows both parent changeset.
mercurial-evolve (3.2.0-1) UNRELEASED; urgency=low
* New upstream release.
-- Julien Cristau <julien.cristau@logilab.fr> Tue, 04 Jun 2013 17:28:02 +0200
mercurial-evolve (3.1.0-1) UNRELEASED; urgency=low
* New upstream release.
-- Pierre-Yves David <pierre-yves.david@logilab.fr> Mon, 04 Mar 2013 18:02:15 +0100
mercurial-evolve (2.1.0-1) UNRELEASED; urgency=low
* New upstream release
-- Pierre-Yves David <pierre-yves.david@logilab.fr> Mon, 03 Dec 2012 15:19:19 +0100
mercurial-evolve (1.1.0-1) UNRELEASED; urgency=low
* New upstream release.
-- Pierre-Yves David <pierre-yves.david@logilab.fr> Tue, 20 Nov 2012 16:28:12 +0100
mercurial-evolve (1.0.2-1) UNRELEASED; urgency=low
* New upstream Release
-- Pierre-Yves David <pierre-yves.david@logilab.fr> Wed, 19 Sep 2012 17:38:47 +0200
mercurial-evolve (1.0.1-1) UNRELEASED; urgency=low
* New bug fix release
* remove conflicting __init__.py
-- Pierre-Yves David <pierre-yves.david@logilab.fr> Fri, 31 Aug 2012 11:31:03 +0200
mercurial-evolve (1.0.0-1) UNRELEASED; urgency=low
* Initial release.
-- Julien Cristau <jcristau@debian.org> Fri, 24 Aug 2012 16:46:30 +0200