Tue, 16 Oct 2012 15:39:12 +0200 obsolete: flip `obstore.successors` and `obsolete.precursors`
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 16 Oct 2012 15:39:12 +0200] rev 17776
obsolete: flip `obstore.successors` and `obsolete.precursors` People were confused by the fact `obstore.precursors` contained marker allowing to find "precursors" and vice-versa. This changeset changes their meaning to: - precursors[x] -> set(markers on precursors edges of x) - successors[x] -> set(markers on successors edges of x) Some documentation is added to clarify the situation.
Sun, 14 Oct 2012 23:33:10 +0200 obsolete: add example of marker usage in the documentation
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Oct 2012 23:33:10 +0200] rev 17775
obsolete: add example of marker usage in the documentation Recent discussion with Augie Fackler pointed the lack of such example in the documentation.
Mon, 15 Oct 2012 00:12:06 +0200 obsolete: cheap detection of nullid as successors
Pierre-Yves David <pierre-yves.david@logilab.fr> [Mon, 15 Oct 2012 00:12:06 +0200] rev 17774
obsolete: cheap detection of nullid as successors Nullid as successors create multiple issues: - Nullid revnum is -1, confusing algorithm that use revnum unless you add special handling in all of them. - Nullid confuses "divergent" changeset detection and resolution. As you can't add any successors to Nullid without being in even more troubles Fortunately, there is no good reason to use nullid as a successor. The only sensible meaning of "succeed by nullid" is "dropped" and this meaning is already covered by obsolescence marker with empty successors set. However, letting some nullid successors to slip in may cause terrible damage in such algorithm difficult to debug. So I prefer to perform and clear detection of of such pathological changeset. We could be much smarter by cleaning up nullid successors on the fly but it would be much for expensive. As core Mercurial does not create any such changeset, I think it is fine to just abort when suspicious situation is detected. Earlier experimental version created such changesets, so there are some out there. The evolve extension added the necessary logic to clean up its mess.
Tue, 16 Oct 2012 11:43:15 -0700 commands: don't infer repo for commands like update (issue2748)
Siddharth Agarwal <sid0@fb.com> [Tue, 16 Oct 2012 11:43:15 -0700] rev 17773
commands: don't infer repo for commands like update (issue2748) Maintain a whitelist of commands to infer the repo for instead. The whitelist contains those commands that take file(s) in the working dir as arguments.
Mon, 15 Oct 2012 09:43:34 -0700 hgweb: make the escape filter remove null characters (issue2567)
Siddharth Agarwal <sid0@fb.com> [Mon, 15 Oct 2012 09:43:34 -0700] rev 17772
hgweb: make the escape filter remove null characters (issue2567)
Tue, 16 Oct 2012 16:56:14 +0200 histedit: create obsolescence markers in deterministic order
Pierre-Yves David <pierre-yves.david@logilab.fr> [Tue, 16 Oct 2012 16:56:14 +0200] rev 17771
histedit: create obsolescence markers in deterministic order I arbitrary use the revnum of the precursor because it sound a right order.
Mon, 15 Oct 2012 23:54:54 -0400 bookmarks: when @ bookmark diverges, don't double the @ sign (BC)
David M. Carr <david@carrclan.us> [Mon, 15 Oct 2012 23:54:54 -0400] rev 17770
bookmarks: when @ bookmark diverges, don't double the @ sign (BC) This changeset treats the bookmark "@" as a special case for the naming of divergent bookmarks, as per the tables below. For the <no alias> case, the actual suffix will vary, depending on what suffixes are already in use. Before: Bookmark | Remote | Divergent Bookmark -------------------------------------- foo | bar | foo@bar foo | <no alias> | foo@1 @ | bar | @@bar @ | <no alias> | @@1 After: Bookmark | Remote | Divergent Bookmark -------------------------------------- foo | bar | foo@bar foo | <no alias> | foo@1 @ | bar | @bar @ | <no alias> | @1 This case is likely to be more common now that 92980a8dfdfe has made the "@" bookmark have special meaning to clone. The change in behavior was discussed on the mailing list in the thread below: http://markmail.org/thread/rwedgxp7le5j2h2f
Tue, 16 Oct 2012 16:04:28 +0200 histedit: max(x, key=y) and min(x, key=y) are not available in python 2.4
Thomas Arendsen Hein <thomas@intevation.de> [Tue, 16 Oct 2012 16:04:28 +0200] rev 17769
histedit: max(x, key=y) and min(x, key=y) are not available in python 2.4 Use sorted(x, key=y)[-1] or sorted(x, key=y)[0] instead.
Sat, 13 Oct 2012 15:10:39 -0500 vfs: use self.write to write symlink placeholders
Matt Mackall <mpm@selenic.com> [Sat, 13 Oct 2012 15:10:39 -0500] rev 17768
vfs: use self.write to write symlink placeholders The existing write() path is much more robust than the hand-rolled version that was inlined here.
Sun, 14 Oct 2012 23:49:28 +0200 histedit: do not use "min" on ctx
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Oct 2012 23:49:28 +0200] rev 17767
histedit: do not use "min" on ctx It does not crash but does not compare revision number at all. We actually remove any call to min because the list is already topologically sorted.
Sun, 14 Oct 2012 23:58:02 +0200 histedit: clean abort when there is nothing to edit
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Oct 2012 23:58:02 +0200] rev 17766
histedit: clean abort when there is nothing to edit
Mon, 15 Oct 2012 00:05:16 +0200 histedit: rename `revs` in `ctxs` inside the `between` function
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Mon, 15 Oct 2012 00:05:16 +0200] rev 17765
histedit: rename `revs` in `ctxs` inside the `between` function The variable content is actually contexts, not revision numbers.
Sun, 14 Oct 2012 23:03:58 +0200 test: fix invalid redirection for histedit text
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Sun, 14 Oct 2012 23:03:58 +0200] rev 17764
test: fix invalid redirection for histedit text Appending to the file is wrong, we want new content.
Sat, 13 Oct 2012 15:03:00 -0500 vfs: backout fchmod change from 76b73ce0ffac
Matt Mackall <mpm@selenic.com> [Sat, 13 Oct 2012 15:03:00 -0500] rev 17763
vfs: backout fchmod change from 76b73ce0ffac Only works on Unix with Python >= 2.6, need a different fix.
Fri, 12 Oct 2012 21:41:08 +0200 histedit: refuse to edit public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 12 Oct 2012 21:41:08 +0200] rev 17762
histedit: refuse to edit public changeset Public changeset are immutable. This changeset enforce that in histedit.
(0) -10000 -3000 -1000 -300 -100 -15 +15 +100 +300 +1000 +3000 +10000 +30000 tip