Thu, 12 Nov 2015 20:48:41 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 12 Nov 2015 20:48:41 -0600] rev 26946
merge with stable
Thu, 12 Nov 2015 13:16:04 -0800 tags: create new sortdict for performance reasons stable
Gregory Szorc <gregory.szorc@gmail.com> [Thu, 12 Nov 2015 13:16:04 -0800] rev 26945
tags: create new sortdict for performance reasons sortdict internally maintains a list of keys in insertion order. When a key is replaced via __setitem__, we .remove() from this list. This involves a linear scan and array adjustment. This is an expensive operation. The tags reading code was calling into sortdict.__setitem__ for each tag in a read .hgtags revision. For repositories with thousands of tags or thousands of .hgtags revisions, the overhead from list.remove() noticeable. This patch creates a new sortdict() so __setitem__ calls don't incur a list.remove. This doesn't appear to have any performance impact on my Firefox repository. But that's only because tags reading doesn't show up in profiles to begin with. I'm still waiting to hear from a user with over 10,000 tags and hundreds of heads on the impact of this patch.
Tue, 10 Nov 2015 15:08:56 -0800 largefiles: specify where .orig files are kept
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 15:08:56 -0800] rev 26944
largefiles: specify where .orig files are kept This patch let's the user specify where .orig files are kept using the cmdutil.origpath function
Tue, 10 Nov 2015 14:52:54 -0800 mq: let the user choose where .orig files are kept
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 14:52:54 -0800] rev 26943
mq: let the user choose where .orig files are kept This patch uses cmdutil.origpath to let the user decide where .orig files are kept when backup files are created.
Tue, 10 Nov 2015 14:41:14 -0800 shelve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 14:41:14 -0800] rev 26942
shelve: choose where .orig file locations are kept This patch uses cmdutil.origpath to let the user set the location of the orig files.
Tue, 10 Nov 2015 16:25:59 -0800 filemerge: choose where .orig files are kept
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 16:25:59 -0800] rev 26941
filemerge: choose where .orig files are kept Having .orig files litter your working copy is a common complaint. This patch uses cmdutil.orig to let the user determine where those files should reside.
Tue, 10 Nov 2015 14:29:13 -0800 git-subrepos: revert respects specified location to save .orig files
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 14:29:13 -0800] rev 26940
git-subrepos: revert respects specified location to save .orig files This patch makes revert in git subrepos save .orig files where the user wants them by using the cmdutil.origpath function.
Tue, 10 Nov 2015 14:26:19 -0800 resolve: choose where .orig file locations are kept
Christian Delahousse <cdelahousse@fb.com> [Tue, 10 Nov 2015 14:26:19 -0800] rev 26939
resolve: choose where .orig file locations are kept Having your working copy littered with .orig files is a common HG complaint. This patch uses the cmd.origpath helper function to let the user specify where they should be kept when using the resolve command.
Thu, 12 Nov 2015 17:00:08 -0600 revert: allow configuring the .orig file location
Christian Delahousse <cdelahousse@fb.com> [Thu, 12 Nov 2015 17:00:08 -0600] rev 26938
revert: allow configuring the .orig file location
Thu, 12 Nov 2015 16:56:06 -0600 cmdutil: add origbackuppath helper
Christian Delahousse <cdelahousse@fb.com> [Thu, 12 Nov 2015 16:56:06 -0600] rev 26937
cmdutil: add origbackuppath helper
Tue, 10 Nov 2015 11:16:25 -0800 discovery: pass pushop to _nowarnheads
Ryan McElroy <rmcelroy@fb.com> [Tue, 10 Nov 2015 11:16:25 -0800] rev 26936
discovery: pass pushop to _nowarnheads Previously, we passed only enough information to _nowarnheads to perform the old calculation. However, extensions may want to use more information in this calculation. Now that pushop is extensible, extensions will often want access to the additional fields they have added to the pushop, so pass that through. Specifically, the remotenames extension will use this information to allow pushing new heads that are bookmarked without requiring --force.
Tue, 10 Nov 2015 11:13:21 -0800 exchange: pass pushop to discovery.checkheads
Ryan McElroy <rmcelroy@fb.com> [Tue, 10 Nov 2015 11:13:21 -0800] rev 26935
exchange: pass pushop to discovery.checkheads Previously, we passed a bunch of parameters to discovery.checkheads, but all of the arguments can be fetched out of pushop, which may contain a lot more useful information for extensions now that pushop is extensible.
Thu, 12 Nov 2015 15:26:30 -0600 merge with stable
Matt Mackall <mpm@selenic.com> [Thu, 12 Nov 2015 15:26:30 -0600] rev 26934
merge with stable
Fri, 13 Nov 2015 02:36:30 +0900 share: wrap bmstore._writerepo for transaction sensitivity (issue4940) stable
FUJIWARA Katsunori <foozy@lares.dti.ne.jp> [Fri, 13 Nov 2015 02:36:30 +0900] rev 26933
share: wrap bmstore._writerepo for transaction sensitivity (issue4940) 46dec89fe888 made 'bmstore.write()' transaction sensitive, to restore original bookmarks correctly at failure of a transaction. For example, shelve and unshelve imply steps below: before 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' writes updated ones into .hg/bookmarks 3. rollback transaction to remove internal commits 4. restore updated bookmarks manually after 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' doesn't write updated ones into .hg/bookmarks (these are written into .hg/bookmarks.pending, if external hook is spawn) 3. rollback transaction to remove internal commits 4. .hg/bookmarks should be clean, because it isn't changed while transaction running: see (2) above But if shelve or unshelve is executed in the repository created with "shared bookmarks" ("hg share -B"), this doesn't work as expected, because: - share extension makes 'bmstore.write()' write updated bookmarks into .hg/bookmarks of shared source repository regardless of transaction activity, and - intentional transaction failure at the end of shelve/unshelve doesn't restore already updated .hg/bookmarks of shared source This patch makes share extension wrap 'bmstore._writerepo()' instead of 'bmstore.write()', because the former is used to actually write bookmark changes out.
Sat, 07 Nov 2015 13:48:42 -0500 test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com> [Sat, 07 Nov 2015 13:48:42 -0500] rev 26932
test: use generaldelta in 'test-clonebundle.t' Using generaldelta has effects on the generated bundle.
(0) -10000 -3000 -1000 -300 -100 -15 +15 +100 +300 +1000 +3000 +10000 tip