Yuya Nishihara <yuya@tcha.org> [Thu, 18 Aug 2016 16:29:22 +0900] rev 29816
templater: fix if() to not evaluate False as bool('False')
Before, False was True. This patch fixes the issue by processing True/False
transparently. The other values (including integer 0) are tested as strings
for backward compatibility, which means "if(latesttagdistance)" never be False.
Should we change the behavior of "if(0)" as well?
Yuya Nishihara <yuya@tcha.org> [Thu, 18 Aug 2016 15:55:07 +0900] rev 29815
templater: make it clearer that _flatten() omits None
Gábor Stefanik <gabor.stefanik@nng.com> [Thu, 18 Aug 2016 17:25:10 +0200] rev 29814
revset: support "follow(renamed.py,
e22f4f3f06c3)" (
issue5334)
v2: fixes from review
Matt Mackall <mpm@selenic.com> [Wed, 17 Aug 2016 13:43:13 -0500] rev 29813
coal: use inheritance to derive from paper
This illustrates how much simpler this approach is, in particular the
effect of map-relative paths.
Matt Mackall <mpm@selenic.com> [Wed, 17 Aug 2016 13:40:27 -0500] rev 29812
templater: add inheritance support to style maps
We can now specify a base map file:
__base__ = path/to/map/file
That map file will be read and used to populate unset elements of the
current map. Unlike using %include, elements in the inherited class
will be read relative to that path.
This makes it much easier to make custom local tweaks to a style.
Yuya Nishihara <yuya@tcha.org> [Thu, 18 Aug 2016 18:43:48 +0900] rev 29811
killdaemons: prevent killing all user processes by bad pid file
When I was fixing the test-gpg issue, I noticed gpg-connect-agent could print
"-1" as a server pid if command was wrong. I'm not pretty sure but nobody
would want to kill their running applications by mistake.
Yuya Nishihara <yuya@tcha.org> [Wed, 17 Aug 2016 20:56:12 +0900] rev 29810
py3: automatically glob out line numbers from check-py3-compat output
It was boring task to update the result manually.
Yuya Nishihara <yuya@tcha.org> [Wed, 17 Aug 2016 20:52:50 +0900] rev 29809
py3: have check-py3-compat require pygments to get stable result
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 17:06:35 +0200] rev 29808
computeoutgoing: move the function from 'changegroup' to 'exchange'
Now that all users are in exchange, we can safely move the code in the
'exchange' module. This function is really about processing the argument of a
'getbundle' call, so it even makes senses to do so.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 17:00:38 +0200] rev 29807
getchangegroup: take an 'outgoing' object as argument (API)
There is various version of this function that differ mostly by the way they
define the bundled set. The flexibility is now available in the outgoing object
itself so we move the complexity into the caller themself. This will allow use
to remove a good share of the similar function to obtains a changegroup in the
'changegroup.py' module.
An important side effect is that we stop calling 'computeoutgoing' in
'getchangegroup'. This is fine as code that needs such argument processing
is actually going through the 'exchange' module which already all this function
itself.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 22:31:38 +0200] rev 29806
outgoing: add a 'missingroots' argument
This argument can be used instead of 'commonheads' to determine the 'outgoing'
set. We remove the outgoingbetween function as its role can now be handled by
'outgoing' itself.
I've thought of using an external function instead of making the constructor
more complicated. However, there is low hanging fruit to improve the current
code flow by storing some side products of the processing of 'missingroots'. So
in my opinion it make senses to add all this to the class.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 15:55:44 +0200] rev 29805
outgoing: adds some default value for argument
We are about to introduce a third option to create an outgoing object:
'missingroots'. This argument will be mutually exclusive with 'commonheads' so
we implement some default value handling in preparation.
This will also help use to make more use of outgoing creation around the code
base.
Pierre-Yves David <pierre-yves.david@ens-lyon.org> [Tue, 09 Aug 2016 15:26:53 +0200] rev 29804
outgoing: pass a repo object to the constructor
We are to introduce more code constructing such object in the code base. It will
be more convenient to pass a repository object, all current users already
operate at the repository level anyway. More changes to the contructor argument
are coming in later changeset.
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com> [Tue, 16 Aug 2016 08:21:16 +0000] rev 29803
match: remove matchessubrepo method (API)
Since it is no more used in cmdutil.{files,remove} and scmutil.addremove
we remove this method.
Hannes Oldenburg <hannes.christian.oldenburg@gmail.com> [Tue, 16 Aug 2016 08:15:12 +0000] rev 29802
subrepo: cleanup of subrepo filematcher logic
Previously in the worst case we iterated the files in matcher twice and
had a method only for this, which reimplemented logic in subdirmatchers
constructor. So we replaced the method with a subdirmatcher.files() call.
Yuya Nishihara <yuya@tcha.org> [Sun, 14 Aug 2016 14:46:24 +0900] rev 29801
pycompat: delay loading modules registered to stub
Replacement _pycompatstub designed to be compatible with our demandimporter.
try-except is replaced by version comparison because ImportError will no longer
be raised immediately.