Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: more renaming
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13709
changegroupsubset: more renaming
Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: simplify prune
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13708
changegroupsubset: simplify prune Ancestors of nodes linked to commonrevs can be expected to be linked to commonrevs. Walking graphs of each revlog looking for rare/nonexistent outliers is overkill.
Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: more minor cleanups
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13707
changegroupsubset: more minor cleanups - remove more excessive comments - simplify some sorting operations - rename some variables - replace identity with a lambda
Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: minor cleanups
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13706
changegroupsubset: minor cleanups - move some variable declarations - drop some excessive comments - use standard variable naming
Sun, 20 Mar 2011 19:43:28 -0500 strip: simplify collectone
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13705
strip: simplify collectone
Sun, 20 Mar 2011 17:41:09 -0400 dirstate: avoid a race with multiple commits in the same process
Greg Ward <greg@gerg.ca> [Sun, 20 Mar 2011 17:41:09 -0400] rev 13704
dirstate: avoid a race with multiple commits in the same process (issue2264, issue2516) The race happens when two commits in a row change the same file without changing its size, *if* those two commits happen in the same second in the same process while holding the same repo lock. For example: commit 1: M a M b commit 2: # same process, same second, same repo lock M b # modify b without changing its size M c This first manifested in transplant, which is the most common way to do multiple commits in the same process. But it can manifest in any script or extension that does multiple commits under the same repo lock. (Thus, the test script tests both transplant and a custom script.) The problem was that dirstate.status() failed to notice the change to b when localrepo is about to do the second commit, meaning that change gets left in the working directory. In the context of transplant, that means either a crash ("RuntimeError: nothing committed after transplant") or a silently inaccurate transplant, depending on whether any other files were modified by the second transplanted changeset. The fix is to make status() work a little harder when we have previously marked files as clean (state 'normal') in the same process. Specifically, dirstate.normal() adds files to self._lastnormal, and other state-changing methods remove them. Then dirstate.status() puts any files in self._lastnormal into state 'lookup', which will make localrepository.status() read file contents to see if it has really changed. So we pay a small performance penalty for the second (and subsequent) commits in the same process, without affecting the common case. Anything that does lots of status updates and checks in the same process could suffer a performance hit. Incidentally, there is a simpler fix: call dirstate.normallookup() on every file updated by commit() at the end of the commit. The trouble with that solution is that it imposes a performance penalty on the common case: it means the next status-dependent hg command after every "hg commit" will be a little bit slower. The patch here is more complex, but only affects performance for the uncommon case.
Sun, 20 Mar 2011 01:16:57 +0100 changegroupsubset: extranodes are no longer needed
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 20 Mar 2011 01:16:57 +0100] rev 13703
changegroupsubset: extranodes are no longer needed
Sun, 20 Mar 2011 00:50:22 +0100 strip: remove usage of extranodes
Benoit Boissinot <benoit.boissinot@ens-lyon.org> [Sun, 20 Mar 2011 00:50:22 +0100] rev 13702
strip: remove usage of extranodes Instead of computing the exact set of missing revlog revisions, we only compute the set of missing/broken changesets. The resulting bundle can be slightly bigger but we will be able to get rid of the ugly extranodes handling in changegroupsubset.
Sun, 20 Mar 2011 00:22:47 +0100 patch: move closefile() into patchfile.close()
Patrick Mezard <pmezard@gmail.com> [Sun, 20 Mar 2011 00:22:47 +0100] rev 13701
patch: move closefile() into patchfile.close()
Sun, 20 Mar 2011 00:09:44 +0100 patch: inline patchfile.hashlines()
Patrick Mezard <pmezard@gmail.com> [Sun, 20 Mar 2011 00:09:44 +0100] rev 13700
patch: inline patchfile.hashlines()
Sun, 20 Mar 2011 00:08:44 +0100 patch: fix hunk newlines when parsing hunks, not in iterhunks()
Patrick Mezard <pmezard@gmail.com> [Sun, 20 Mar 2011 00:08:44 +0100] rev 13699
patch: fix hunk newlines when parsing hunks, not in iterhunks()
Sat, 19 Mar 2011 19:50:55 +0100 i18n: register new template keywords for translation
Patrick Mezard <pmezard@gmail.com> [Sat, 19 Mar 2011 19:50:55 +0100] rev 13698
i18n: register new template keywords for translation
Sat, 19 Mar 2011 01:34:49 -0500 annotate: catch nonexistent files using match.bad callback (issue1590)
Matt Mackall <mpm@selenic.com> [Sat, 19 Mar 2011 01:34:49 -0500] rev 13697
annotate: catch nonexistent files using match.bad callback (issue1590)
Fri, 18 Mar 2011 13:01:18 -0500 merge with stable
Steve Borho <steve@borho.org> [Fri, 18 Mar 2011 13:01:18 -0500] rev 13696
merge with stable
Fri, 18 Mar 2011 11:36:36 -0500 wix: add new file templates/paper/bookmarks.tmpl stable
Steve Borho <steve@borho.org> [Fri, 18 Mar 2011 11:36:36 -0500] rev 13695
wix: add new file templates/paper/bookmarks.tmpl This file was snuck onto the stable branch with 38c9837b1f75
Thu, 17 Mar 2011 17:08:13 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 17 Mar 2011 17:08:13 -0500] rev 13694
merge with stable
Thu, 17 Mar 2011 22:55:02 +0100 push/outgoing: print remote target path even if there's an error (issue2561) stable
Miloš Hadžić <milos.hadzic@gmail.com> [Thu, 17 Mar 2011 22:55:02 +0100] rev 13693
push/outgoing: print remote target path even if there's an error (issue2561) This is a simple patch to make hg push/hg outgoing print their remote target path even if the operation fails. I'm not sure if the original behavior was by design. This patch also changes one test to reflect the changed behaviour.
Thu, 17 Mar 2011 16:29:09 -0400 subrepo: recognize scp-style paths as git URLs stable
Eric Eisner <ede@mit.edu> [Thu, 17 Mar 2011 16:29:09 -0400] rev 13692
subrepo: recognize scp-style paths as git URLs
Thu, 17 Mar 2011 22:17:27 +0100 convert: add svnrev, svnpath and svnuuid template keywords
Patrick Mezard <pmezard@gmail.com> [Thu, 17 Mar 2011 22:17:27 +0100] rev 13691
convert: add svnrev, svnpath and svnuuid template keywords $ hg -R A-hg log --template '{rev} {svnuuid}{svnpath}@{svnrev}\n' 10 644ede6c-2b81-4367-9dc8-d786514f2cde/trunk@10
Thu, 17 Mar 2011 22:17:27 +0100 convert/svn: extract revsplit() in a function
Patrick Mezard <pmezard@gmail.com> [Thu, 17 Mar 2011 22:17:27 +0100] rev 13690
convert/svn: extract revsplit() in a function
Thu, 17 Mar 2011 22:17:27 +0100 transplant: add "transplanted" keyword
Patrick Mezard <pmezard@gmail.com> [Thu, 17 Mar 2011 22:17:27 +0100] rev 13689
transplant: add "transplanted" keyword $ hg log --template '{rev} {transplanted}\n' 7 a53251cdf717679d1907b289f991534be05c997a
Thu, 17 Mar 2011 12:00:49 -0500 merge with i18n
Matt Mackall <mpm@selenic.com> [Thu, 17 Mar 2011 12:00:49 -0500] rev 13688
merge with i18n
Wed, 16 Mar 2011 17:43:43 +0100 i18n: merge with stable
Martin Geisler <mg@lazybytes.net> [Wed, 16 Mar 2011 17:43:43 +0100] rev 13687
i18n: merge with stable
Wed, 16 Mar 2011 17:42:42 +0100 i18n-da: synchronize with e9628665b670 stable
Martin Geisler <mg@lazybytes.net> [Wed, 16 Mar 2011 17:42:42 +0100] rev 13686
i18n-da: synchronize with e9628665b670
(0) -10000 -3000 -1000 -300 -100 -50 -24 +24 +50 +100 +300 +1000 +3000 +10000 +30000 tip