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.
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.
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.)
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.
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.
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.
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.
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.
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 ;-)
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.