Wed, 23 Mar 2011 09:20:40 -0500 merge with stable
Matt Mackall <mpm@selenic.com> [Wed, 23 Mar 2011 09:20:40 -0500] rev 13728
merge with stable
Tue, 22 Mar 2011 21:27:51 -0500 debugbundle: fix up long line caught by check-code
Matt Mackall <mpm@selenic.com> [Tue, 22 Mar 2011 21:27:51 -0500] rev 13727
debugbundle: fix up long line caught by check-code
Tue, 22 Mar 2011 21:26:19 -0500 wireproto: avoid naked excepts
Matt Mackall <mpm@selenic.com> [Tue, 22 Mar 2011 21:26:19 -0500] rev 13726
wireproto: avoid naked excepts
Tue, 15 Mar 2011 14:55:16 +0100 mq: fix typo in docstring stable
Stefano Tortarolo <stefano.tortarolo@gmail.com> [Tue, 15 Mar 2011 14:55:16 +0100] rev 13725
mq: fix typo in docstring
Tue, 22 Mar 2011 09:22:29 +0100 commands: add debugbundle command
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 09:22:29 +0100] rev 13724
commands: add debugbundle command Lists ids contained in a bundle file. Useful for testing bundle-related commands.
Tue, 22 Mar 2011 09:22:21 +0100 wireproto: add known([id]) function
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 09:22:21 +0100] rev 13723
wireproto: add known([id]) function known([Node]) -> [1/0] Returns 1/0 for each node, indicating whether it's known by the server. Needed for new discovery protocols introduced in later patches.
Tue, 22 Mar 2011 07:40:02 +0100 wireproto: fix decodelist to properly return empty list
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 07:40:02 +0100] rev 13722
wireproto: fix decodelist to properly return empty list Needed by tests for next patch introducing known().
Tue, 22 Mar 2011 07:38:32 +0100 wireproto: fix handling of '*' args for HTTP and SSH
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 07:38:32 +0100] rev 13721
wireproto: fix handling of '*' args for HTTP and SSH
Tue, 22 Mar 2011 07:38:32 +0100 debug: add debugwireargs to test argument passing over the wire
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 07:38:32 +0100] rev 13720
debug: add debugwireargs to test argument passing over the wire Tests argument passing locally, via HTTP, and via SSH. This is mainly preparation for the next patch.
Tue, 22 Mar 2011 07:37:56 +0100 sshserver: drop unnecessary line
Peter Arrenbrecht <peter.arrenbrecht@gmail.com> [Tue, 22 Mar 2011 07:37:56 +0100] rev 13719
sshserver: drop unnecessary line
Tue, 22 Mar 2011 12:00:38 -0500 merge: avoid unlinking destination of merge when case changes (issue2715) stable
Matt Mackall <mpm@selenic.com> [Tue, 22 Mar 2011 12:00:38 -0500] rev 13718
merge: avoid unlinking destination of merge when case changes (issue2715)
Tue, 22 Mar 2011 11:59:43 -0500 dirstate: introduce a public case normalizing method stable
Matt Mackall <mpm@selenic.com> [Tue, 22 Mar 2011 11:59:43 -0500] rev 13717
dirstate: introduce a public case normalizing method
Sun, 20 Mar 2011 20:25:41 -0500 changegroup: minor cleanups
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 20:25:41 -0500] rev 13716
changegroup: minor cleanups
Sun, 20 Mar 2011 20:21:19 -0500 repair: revlog has an iterator
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 20:21:19 -0500] rev 13715
repair: revlog has an iterator
Sun, 20 Mar 2011 20:17:57 -0500 changegroup: fix leftover from delta read
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 20:17:57 -0500] rev 13714
changegroup: fix leftover from delta read
Sun, 20 Mar 2011 20:16:51 -0500 changegroup: drop expensive redundant usage of readdelta for progress
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 20:16:51 -0500] rev 13713
changegroup: drop expensive redundant usage of readdelta for progress
Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: use manifest.readfast to simplify collector
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13712
changegroupsubset: use manifest.readfast to simplify collector
Sun, 20 Mar 2011 19:43:28 -0500 manifest: add readfast method
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13711
manifest: add readfast method
Sun, 20 Mar 2011 19:43:28 -0500 changegroupsubset: simplify filenode_collector
Matt Mackall <mpm@selenic.com> [Sun, 20 Mar 2011 19:43:28 -0500] rev 13710
changegroupsubset: simplify filenode_collector
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()
(0) -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 +30000 tip