Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 25 Jun 2012 15:18:47 +0200] rev 308
obsolete: detect late comer during push
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 26 Jun 2012 11:33:39 +0200] rev 307
obsolete: add latecomer computation and display
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 26 Jun 2012 11:13:46 +0200] rev 306
obsolete: add precursors and successors revset.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 26 Jun 2012 11:11:52 +0200] rev 305
update revset vocabulary to use precursors, successors
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 25 Jun 2012 12:40:42 +0200] rev 304
obsolete: remove unused variable in rebase wrapping
Patrick Mezard <patrick@mezard.eu> [Sat, 23 Jun 2012 11:46:06 +0200] rev 303
evolve: tidy up a bit
- long lines
- extra blank lines
- commands options descriptions
Patrick Mezard <patrick@mezard.eu> [Sat, 23 Jun 2012 11:14:09 +0200] rev 302
obsolete: make collapse create less markers
Collapsing A and B into C was registering:
A -> C
B -> C
A -> B
At this point, the last relation brings nothing and is removed for the
sake of simplicity:
A -> C
B -> C
test-evolve.t is slightly modified as one of the relations let stabilize
compute a target outside of the parent revision tree. This is a
stabilize bug, not trivial to fix, so let's tweak the test for now.
Patrick Mezard <patrick@mezard.eu> [Fri, 22 Jun 2012 19:32:18 +0200] rev 301
obsolete: remove unused code from reposetup()
Patrick Mezard <patrick@mezard.eu> [Sat, 23 Jun 2012 01:14:49 +0200] rev 300
obsolete: suspended changeset with secret only children should be secret too
test-obsolete-push.t: exhibit outgoing bug with suspended changeset in this case
Patrick Mezard <patrick@mezard.eu> [Fri, 22 Jun 2012 18:04:43 +0200] rev 299
obsolete: add 'obsolete' keyword
The obsolete keyword displays the node status among 'stable',
'unstable', 'suspended', 'extinct'.
Patrick Mezard <patrick@mezard.eu> [Thu, 21 Jun 2012 19:58:57 +0200] rev 298
obsolete: unify collapsed revisions markers handling
When collapsing A, B and C into D, amend was registering:
A -> D
B -> D
A -> B
C -> D
A -> C
while the rebase wrapper was doing:
A -> D
B -> D
C -> D
At this point, I have no argument to favor one or another or even a new
one like:
A -> B
B -> C
C -> D
so I am aligning the rebase implementation on the older amend one. At
least we can now change them all at once.
Patrick Mezard <patrick@mezard.eu> [Thu, 21 Jun 2012 19:24:19 +0200] rev 297
rebase: improve invalid revisions filtering
- Filter rebasestate nullmerge and unrebased revision before considering
updating obsolete. This simplifies the handling of obsolete and make
it ignore unrebased revision rather than extinguishing them.
- Apply obsolete markers only if rebasestate is not empty, testing
rebasetarget was irrelevant.
Patrick Mezard <patrick@mezard.eu> [Thu, 21 Jun 2012 18:00:32 +0200] rev 296
test-evolve: extend output and exhibit an amend bug
The extended section shows the parent revision stabilizing itself on
another revision, without --any. In theory, only descendants of the
parent predecessors or of its descendants should be stabilized, and be
stabilized in parent subtree. Unfortunately, stabilize implementation
correctly picks the changesets to stabilize but not their target.
This problem is aggravated by amend registering too many obsolete
markers which prevents the stabilize selection heuristic to prune
several changesets.
Patrick Mezard <patrick@mezard.eu> [Thu, 21 Jun 2012 17:33:02 +0200] rev 295
evolve: remove --change . == --change .^ crazyness
Patrick Mezard <patrick@mezard.eu> [Thu, 21 Jun 2012 16:23:42 +0200] rev 294
evolve: use explicit phase constants
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 18:04:50 +0200] rev 293
[doc] update readme
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 16:19:21 +0200] rev 292
[doc] have people update on stable after cloning
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 16:07:20 +0200] rev 291
merge with fix
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 16:07:01 +0200] rev 290
merge with fix
David Douard <david.douard@logilab.fr> [Mon, 11 Jun 2012 11:59:08 +0200] rev 289
[qsync] fix: 'newerversion' expect node id, not hexid
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 15:57:57 +0200] rev 288
merge back with stable tag
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 15:57:35 +0200] rev 287
Added tag 0.2.0 for changeset d3f20770b86a
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 15:57:28 +0200] rev 286
Merge with Patrick improvement
Patrick Mezard <patrick@mezard.eu> [Wed, 20 Jun 2012 14:43:20 +0200] rev 285
obsolete: do not obsolete rebase --detach nullmerge revs
Rebase state contains the changesets to rebase as well as 'nullmerge'
entries used drive the merge strategy. These nullmerge were not rebased
and should be ignored, and certainly not be marked obsolete.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 17:57:54 +0200] rev 284
evolve: fix relocate() with removed revision
relocate() was not handling the case where the rebased revision was
discarded and was raising when trying to update the phase of None.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 17:58:49 +0200] rev 283
test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 18:05:23 +0200] rev 282
obsolete: handle rebase --collapse
Recording obsolete in concludenode() did not work for --collapse because
only the first revision was passed to the call. The new strategy is to
track the rebase state in defineparents() and concludenode() and to
create markers only after a successful non-abort call. In theory, this
should also fix --continue/--abort cases.
The change in test-stabilize-order.t comes from concludenode() no longer
creating obsolete marker. stabilize command was actually duplicating
markers, once in concludenode(), once explicitely.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 17:05:39 +0200] rev 281
test-stabilize-order.t: trace obsolete markers
Will prevent breakage in rebase.concludenode() overriding.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 14:02:12 +0200] rev 280
test-obsolete-rebase.t: move --keep test from test-obsolete.t
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 18:02:34 +0200] rev 279
obsolete: handle rebase removing empty changesets
The new revision identifier returned by concludenode() was None and was
not correctly translated to nullid.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 10:24:47 +0200] rev 278
obsolete: add or fix debug commands help
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 10:20:09 +0200] rev 277
obsolete: do not duplicate command help
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 10:17:02 +0200] rev 276
obsolete: use new-style command registration
Patrick Mezard <patrick@mezard.eu> [Wed, 20 Jun 2012 15:42:01 +0200] rev 275
obsolete: make rebase abort with --keep
obsolete modifies rebase to mark rebased changesets obsolete instead of
stripping them, which makes --keep irrelevant.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 09:23:50 +0200] rev 274
obsolete: fix rebase wrapping
ui and repo arguments were swapped which made --keep calls traceback.
Patrick Mezard <patrick@mezard.eu> [Tue, 19 Jun 2012 10:02:32 +0200] rev 273
obsolete: add debugsuccessors command
It dumps obsolete changesets and their successors.
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 18 Jun 2012 12:11:06 +0200] rev 272
evolve: add alias for kill and stabilize
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 15:30:55 +0200] rev 271
merge with 0.1.0 tag
Pierre-Yves David <pierre-yves.david@logilab.fr> [Wed, 20 Jun 2012 15:28:51 +0200] rev 270
Added tag 0.1.0 for changeset 6c6bb7a23bb5
Patrick Mezard <patrick@mezard.eu> [Wed, 13 Jun 2012 18:28:10 +0200] rev 269
stabilize: improve unstable selection heuristic
Without argument, stabilize was picking the first in:
"unstable() and ((suspended() or obsancestors(::.))::)"
which usually returned the "oldest" unstable revision in parent
predecessors descendants. This revision is interesting because it
usually gives "soft" merges but rebasing it left the working directory
on a remote branch, which was very confusing.
The new heuristic picks an unstable changeset which can be rebased on
top of the parent revision, or on top of one of its descendants
(selected in revision order). This has the advantage of selecting a
revision which can be rebased on the current subtree, and leave the
working directory in a more convenient location.
Patrick Mezard <patrick@mezard.eu> [Tue, 12 Jun 2012 15:33:23 +0200] rev 268
amend: remove useless repo.changelog alias
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 18 Jun 2012 17:15:04 +0200] rev 267
README: some more changes
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 18 Jun 2012 17:12:11 +0200] rev 266
merge with Arne changes
Patrick Mezard <patrick@mezard.eu> [Tue, 12 Jun 2012 13:28:39 +0200] rev 265
amend: do not traceback on no-ops
If rewrite() generated changeset happened to be an existing one, the
call would traceback when trying to obsolete the changeset with itself.
Instead, leave gracefully, marking any intermediate changeset extinct.
Patrick Mezard <patrick@mezard.eu> [Tue, 12 Jun 2012 11:53:02 +0200] rev 264
amend: do not rely on revsingle() default for --change
Patrick Mezard <patrick@mezard.eu> [Tue, 12 Jun 2012 11:14:02 +0200] rev 263
amend: drop --branches, pick it from working directory
The amended changeset branch was picked either from --branch or from the
first parent, but the actual working directory branch was ignored. The
behaviour is changed so the amended revision branch is picked from the
intermediate revision, which branch comes from the usual working
directory rules. --branch is thus replaced by "hg branch".
Patrick Mezard <patrick@mezard.eu> [Tue, 12 Jun 2012 11:08:27 +0200] rev 262
.hgignore: add .rej/.err/.orig and emacs tmp files
Arne Babenhauserheide <bab@draketo.de> [Mon, 18 Jun 2012 14:35:49 +0200] rev 261
added “pull here is OK, too” to the README.