Mon, 13 Feb 2017 16:03:05 -0800 update: add experimental config for default way of handling dirty wdir
Martin von Zweigbergk <martinvonz@google.com> [Mon, 13 Feb 2017 16:03:05 -0800] rev 31167
update: add experimental config for default way of handling dirty wdir This allows the user to set e.g. experimental.updatecheck=abort to abort update if the working directory is dirty, but still be able to override the behavior with e.g. --merge when needed. I considered adding a --mergelinear option to get back the old behavior even when experimental.updatecheck=abort is set, but I couldn't see why anyone would prefer that over --merge. The default is read in hg.updatetotally(), which means it also applies to "hg pull -u" and "hg unbundle -u".
Mon, 13 Feb 2017 12:58:37 -0800 update: accept --merge to allow merging across topo branches (issue5125)
Martin von Zweigbergk <martinvonz@google.com> [Mon, 13 Feb 2017 12:58:37 -0800] rev 31166
update: accept --merge to allow merging across topo branches (issue5125)
Mon, 27 Feb 2017 15:09:19 -0800 merge: combine the "merge" cases in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 15:09:19 -0800] rev 31165
merge: combine the "merge" cases in docstring table
Mon, 27 Feb 2017 15:07:01 -0800 merge: combine "dirty" cases in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 15:07:01 -0800] rev 31164
merge: combine "dirty" cases in docstring table
Mon, 27 Feb 2017 15:29:34 -0800 merge: clarify non-linear default updates in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 15:29:34 -0800] rev 31163
merge: clarify non-linear default updates in docstring table Non-linear updates won't happen by default, regardless of -c/-C.
Mon, 27 Feb 2017 15:02:36 -0800 merge: combine the two "can't happen" cases in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 15:02:36 -0800] rev 31162
merge: combine the two "can't happen" cases in docstring table
Mon, 27 Feb 2017 15:00:13 -0800 merge: move "incompatible options" case first in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 15:00:13 -0800] rev 31161
merge: move "incompatible options" case first in docstring table
Mon, 27 Feb 2017 14:58:53 -0800 merge: make "linear" an input in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 14:58:53 -0800] rev 31160
merge: make "linear" an input in docstring table Instead of having two ouputs, it seem simpler to have an addition input. This will allow further simplification.
Mon, 27 Feb 2017 14:33:17 -0800 merge: drop redundant column in docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 14:33:17 -0800] rev 31159
merge: drop redundant column in docstring table The "same" and "cross" columns now have the same values, so let's combine them into "non-linear".
Mon, 27 Feb 2017 14:27:22 -0800 merge: drop obsolete non-linear cases from docstring table
Martin von Zweigbergk <martinvonz@google.com> [Mon, 27 Feb 2017 14:27:22 -0800] rev 31158
merge: drop obsolete non-linear cases from docstring table Since 6b1fc09c699a (update: change default destination to tipmost descendant (issue4673) (BC), 2016-02-02), non-linear updates can no longer happen if the user doesn't specify a destination, so we can drop these case from the table in the docstring of merge.update().
Wed, 24 Feb 2016 14:44:14 -0800 revert: move code dealing with deletions closer together
Martin von Zweigbergk <martinvonz@google.com> [Wed, 24 Feb 2016 14:44:14 -0800] rev 31157
revert: move code dealing with deletions closer together
Fri, 03 Mar 2017 14:10:06 -0500 ui: fix configlist on Python 3
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 14:10:06 -0500] rev 31156
ui: fix configlist on Python 3 Since we're working on bytestrings, we have to use [offset:offset+1] to get consistent behavior on Python 2 and 3. I've only tested the _parse_plain closure, not the _parse_quote one, but I have no real reason to expect the latter to be broken since the fixes were fairly mechanical.
Fri, 03 Mar 2017 12:55:49 -0500 config: pass some optional args as keywords
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 12:55:49 -0500] rev 31155
config: pass some optional args as keywords This makes it a little more obvious that self.read is being passed as include, which took me a moment to figure out.
Fri, 03 Mar 2017 13:28:24 -0500 config: load included config files in binary mode
Augie Fackler <raf@durin42.com> [Fri, 03 Mar 2017 13:28:24 -0500] rev 31154
config: load included config files in binary mode I guess we've been getting lucky that this works in Python 2. This fixes loading included config files in Python 3 (it used to fail on the "somebody set up us the BOM" check.)
Wed, 01 Mar 2017 16:39:48 -0800 manifest: remove _repo from manifestctx objects
Durham Goode <durham@fb.com> [Wed, 01 Mar 2017 16:39:48 -0800] rev 31153
manifest: remove _repo from manifestctx objects We were storing the repo on the manifestctx objects so that they could access the manifestlog via repo.manifestlog, which would refresh the structure if it became out of date. This caused probems however when we want to have multiple manifest logs in memory at once, like when transitioning to tree manifest from flat manifests, since a tree manifest would try to access sub-trees via repo.manifestlog[node], which was the flat manifest. The solution is to just not store the repo, and instead store the manifestlog that created this context. This removes the invalidation when the in memory manifestlog becomes out of date, but people should probably not be keeping ctx's around that long anyway.
Wed, 01 Mar 2017 15:50:01 -0800 phases: remove experimental.nativephaseskillswitch
Jun Wu <quark@fb.com> [Wed, 01 Mar 2017 15:50:01 -0800] rev 31152
phases: remove experimental.nativephaseskillswitch The native code has been used for a long time. Therefore drop the experimental config option.
Wed, 01 Mar 2017 16:35:57 -0800 manifest: allow specifying the revlog filename
Durham Goode <durham@fb.com> [Wed, 01 Mar 2017 16:35:57 -0800] rev 31151
manifest: allow specifying the revlog filename Previously we had hardcoded the manifest filename to be 00manifest.i. In our external treemanifest extension, we want to allow writing a treemanifest side by side with a flat manifest, so we need to be able to store the root revisions at a different location (in our extension we use 00manifesttree.i). This patches moves the revlog name to a parameter so we can adjust it.
Fri, 03 Mar 2017 15:30:48 +0530 py3: drop unrequired code from __init__.py
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 03 Mar 2017 15:30:48 +0530] rev 31150
py3: drop unrequired code from __init__.py Once we are using pycompat.open(), we don't need this hack to convert the second argument to unicodes. So removing this.
Fri, 03 Mar 2017 13:04:32 +0530 py3: add pycompat.open and replace open() calls
Pulkit Goyal <7895pulkit@gmail.com> [Fri, 03 Mar 2017 13:04:32 +0530] rev 31149
py3: add pycompat.open and replace open() calls open() requires mode argument as unicodes on Python 3. This patch introduces pycompat.open() which is inserted to files using transformer and replaces builtins.open() calls.
Fri, 05 Aug 2016 13:56:10 +0200 localrepo: deprecate 'repo.opener' (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 05 Aug 2016 13:56:10 +0200] rev 31148
localrepo: deprecate 'repo.opener' (API) The "new" 'repo.vfs' attribute have been around for almost 5 years. I think we can deprecate the old form now ;-)
Thu, 02 Mar 2017 03:24:58 +0100 statichttp: use 'repo.vfs' as the main attribute
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 03:24:58 +0100] rev 31147
statichttp: use 'repo.vfs' as the main attribute We are about to deprecate the repo.opener attribute, we prepare the static http code to be ready for this change.
Thu, 02 Mar 2017 03:23:18 +0100 clonebundle: use 'repo.vfs' instead of 'repo.opener'
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Thu, 02 Mar 2017 03:23:18 +0100] rev 31146
clonebundle: use 'repo.vfs' instead of 'repo.opener' The later is a 5 years old form.
Fri, 05 Aug 2016 13:53:45 +0200 localrepo: deprecated 'repo.wopener' (API)
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 05 Aug 2016 13:53:45 +0200] rev 31145
localrepo: deprecated 'repo.wopener' (API) The "new" 'repo.wvfs' attribute have been around for almost 5 years. I think we can deprecate the old form now ;-)
Fri, 05 Aug 2016 13:49:05 +0200 localrepo: add some comment about role of various vfs object
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Fri, 05 Aug 2016 13:49:05 +0200] rev 31144
localrepo: add some comment about role of various vfs object This should make things clearer for most people.
Thu, 19 Jan 2017 16:27:08 -0500 tests: un-nest the `order` repo in test-rebase-scenario-global
Augie Fackler <augie@google.com> [Thu, 19 Jan 2017 16:27:08 -0500] rev 31143
tests: un-nest the `order` repo in test-rebase-scenario-global This wasn't hurting anything, but it's more in line with how we manage other tests.
Mon, 06 Feb 2017 15:19:32 -0500 osx: install bash and zsh completions by default
Augie Fackler <augie@google.com> [Mon, 06 Feb 2017 15:19:32 -0500] rev 31142
osx: install bash and zsh completions by default The zsh location appears to be on the default $fpath for zsh. bash, on the other hand, appears to have no default location for completion scripts, so we follow the lead of Apple's Git distribution and select a semi-arbitrary place in /usr/local for the file.
Thu, 02 Mar 2017 10:12:40 -0800 util: add allowhardlinks module variable
Durham Goode <durham@fb.com> [Thu, 02 Mar 2017 10:12:40 -0800] rev 31141
util: add allowhardlinks module variable To enable extensions to enable hardlinks for certain environments, let's move the 'if False' to be an 'if allowhardlinks' and let extensions modify the allowhardlinks variable. Tests on linux ext4 pass with it set to True and to False.
Thu, 02 Mar 2017 20:30:56 -0500 merge with stable
Augie Fackler <raf@durin42.com> [Thu, 02 Mar 2017 20:30:56 -0500] rev 31140
merge with stable
(0) -30000 -10000 -3000 -1000 -300 -100 -50 -28 +28 +50 +100 +300 +1000 +3000 +10000 tip