Matt Harbison <matt_harbison@yahoo.com> [Thu, 19 Oct 2017 23:16:48 -0400] rev 34936
test-arbitraryfilectx: stabilize for Windows
Previously, the second last test (context.arbitraryfilectx(..)) returned True on
Windows. I changed the repo setup sequence to import a patch, so that way the
repo would have a proper symlink. That made the last test fail, since it is
comparing files in wdir(), one of which is not the expected symlink.
Apparently the (feature !) line matching doesn't work well with (no-eol), so I
had to conditionalize the test instead of the output.
Durham Goode <durham@fb.com> [Sat, 28 Oct 2017 12:35:54 -0700] rev 34935
dirstate: remove excess attribute lookups for dirstate.status (issue5714)
A recent refactor added a layer of abstraction to the dirstate which makes doing
things like 'foo in dirstate' now require some extra Python attribute lookups.
This is causing a 100ms slow down in hg status for mozilla-central.
The fix is to hoist the inner dict's functions onto the main class once the lazy
loading it complete, as well as store the actual functions before doing the
status loop (as is done for other such functions).
In my testing, it seems to address the performance regression, but we'll
need to see the perf run results to know for sure.
Differential Revision: https://phab.mercurial-scm.org/D1257
Durham Goode <durham@fb.com> [Thu, 26 Oct 2017 16:15:36 -0700] rev 34934
dirstate: avoid reading the map when possible (issue5713) (issue5717)
Before the recent refactor, we would not load the entire map until it was
accessed. As part of the refactor, that got lost and even just trying to load
the dirstate parents would load the whole map. This caused a perf regression
(issue5713) and a regression with static http serving (issue5717).
Making it lazy loaded again fixes both.
Differential Revision: https://phab.mercurial-scm.org/D1253
Durham Goode <durham@fb.com> [Thu, 26 Oct 2017 16:15:31 -0700] rev 34933
dirstate: move clear onto dirstatemap class
A future diff will move the lazy loading aspect of dirstate to the dirstatemap
class. This means it requires a slightly different strategy of clearing than
just reinstantiating the object (since just reinstantiating the object will
lazily load the on disk data again later instead of remaining permanently
empty).
So let's give it it's own clear function.
Differential Revision: https://phab.mercurial-scm.org/D1252
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 18:19:07 +0200] rev 34932
internal-doc: document the config register mechanism
This explains the various usage and feature of the config register introduced
in Mercurial 4.3 and 4.4.
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 21:43:22 +0200] rev 34931
help: clarify the pre-txnclose-phase documentation
Gregory Szorc requested some clarification.
Boris Feld <boris.feld@octobus.net> [Fri, 27 Oct 2017 21:35:34 +0200] rev 34930
internal-doc: document the 'phases' parameters to 'getbundle'
The getbundle wireprotocol method has some extended documentation. We update it
with the next parameters introduced for binary phases.
Matt Harbison <matt_harbison@yahoo.com> [Sat, 28 Oct 2017 00:00:05 -0400] rev 34929
status: update the help to indicate that clean files are not normally tersed
The same applies to '?' if --quiet is used (or any of the other states if some
of -marduic is specified), but I couldn't figure out how to express that
clearly.
Matt Harbison <matt_harbison@yahoo.com> [Fri, 27 Oct 2017 23:48:38 -0400] rev 34928
terse: split on repo separator instead of os.sep (issue5715)
The paths being processed are from scmutil.status, and therefore normalized to
'/' separators.
Anton Shestakov <av6@dwimlabs.net> [Thu, 26 Oct 2017 11:58:55 +0800] rev 34927
makefile: put format-c into .PHONY targets