Matt Mackall <mpm@selenic.com> [Tue, 02 Apr 2013 01:05:26 -0500] rev 18856
Added tag 2.5.3 for changeset 50c922c1b514
Takumi IINO <trot.thunder@gmail.com> [Fri, 15 Feb 2013 18:07:14 +0900] rev 18855
hgweb: show correct error message for i18n environment
If exception is error.LookupError and running in i18n environment,
below condition is always true.
Because msg is translated and dosen't contain 'manifest'.
if util.safehasattr(err, 'name') and 'manifest' not in msg:
This patch creates a new exception class and uses it instead of
string match.
Wagner Bruna <wbruna@softwareexpress.com.br> [Mon, 01 Apr 2013 18:48:12 -0300] rev 18854
commands: fix typo in debugobsolete docstring
Siddharth Agarwal <sid0@fb.com> [Thu, 28 Mar 2013 18:27:19 -0700] rev 18853
duplicatecopies: do not mark items not in the dirstate as copies
Consider the following repo:
0 -- 1 (renames a to b)
\
- 2
If we're rebasing 2 onto 1, then duplicatecopies is called with arguments (2,
1). copies.pathcopies goes backwards from 1 to 0 and returns the pair dst = a,
src = b. Of course, since we're working on top of 2, at this point a doesn't
exist in the dirstate.
Extra entries in the copymap are currently harmless because the copymap is
only queried for items in the dirstate map. However, if the dirstate.copy
method becomes one of the sources used to determine which files have changed,
this will prove problematic.
Note that we can't avoid going backwards in general -- consider this repo:
0 -- 1 (renames a to b)
\
- 2 (renames a to c)
Rebasing 2 onto 1 should produce a rename from b to c.
Siddharth Agarwal <sid0@fb.com> [Thu, 28 Mar 2013 00:14:27 -0700] rev 18852
duplicatecopies: fix arg name and docstring
While most callers do indeed use duplicatecopies with a rev and its parent,
rebase doesn't.
Siddharth Agarwal <sid0@fb.com> [Fri, 29 Mar 2013 19:54:06 -0700] rev 18851
pull: list bookmarks before pulling changesets (issue3873)
Consider a bookmark B that exists both locally and remotely. If B is updated
remotely, and then a pull is performed where the pull set contains the new
location of B, the bookmark is updated locally. However, if remote B is
updated in the middle of a pull to a location not in the pull set, the
bookmark won't be updated locally at all.
To fix this, list bookmarks before pulling in changesets, not after. This
still leaves a race open if B gets moved in between listing bookmarks and
pulling in changesets, but the race window is much smaller. Fixing the race
properly would require a bundle format upgrade.
test-hook.t's output changes because we no longer do two listkeys calls during
pull, just one.
test-pull-http.t's output changes because we now search for bookmarks before
searching for changes.