Siddharth Agarwal <sid0@fb.com> [Sun, 24 Mar 2013 17:06:10 -0700] rev 18817
perf: add a command to measure merge.calculateupdates perf
The performance of merge.manifestmerge will be improved in upcoming patches.
This command will be used to demonstrate the improvement.
Bryan O'Sullivan <bryano@fb.com> [Mon, 25 Mar 2013 16:57:36 -0700] rev 18816
hgk: fix a pyflakes error
Siddharth Agarwal <sid0@fb.com> [Fri, 22 Mar 2013 17:03:49 -0700] rev 18815
dirstate.walk: fast path none-seen + match-always case for step 3
This case is a common one -- e.g. `hg diff`.
For a repository with 170,000 files, this speeds up perfstatus from 0.95
seconds to 0.88.
Siddharth Agarwal <sid0@fb.com> [Fri, 22 Mar 2013 17:03:00 -0700] rev 18814
dirstate.walk: fast path match-always case during traversal
This case is a common one -- e.g. `hg status`.
For a repository with 170,000 files, this speeds up perfstatus --unknown from
2.15 seconds to 2.09.
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Mar 2013 14:22:34 -0700] rev 18813
largefiles: fix _always for match overrides
Upcoming patches will speed dirstate.walk up by not filtering based on the
match function when match.always() is True. For that to work, match.always()
needs to be accurate. Previously it wasn't so for largefiles.
Siddharth Agarwal <sid0@fb.com> [Mon, 25 Mar 2013 14:12:39 -0700] rev 18812
dirstate.walk: remove subrepo and .hg from results before step 3
An upcoming patch will speed dirstate.walk up by not querying the results dict
when it is empty. This ensures it is in some common cases.
This should be safe because subrepos and .hg aren't part of the dirstate.
Kevin Bullock <kbullock@ringworld.org> [Mon, 25 Mar 2013 12:12:41 -0500] rev 18811
merge with stable
Bryan O'Sullivan <bryano@fb.com> [Fri, 22 Mar 2013 10:56:55 -0700] rev 18810
blackbox: account for another source of errors
Andrew Shadura <bugzilla@tut.by> [Tue, 16 Oct 2012 22:44:14 +0200] rev 18809
hgk: remove regsub, split on \r instead
No need to regsub all \r\n's to \n's,
we can just split on \r as well; this may
produce extra empty elements in the list,
but they won't match anyway.
Andrew Shadura <bugzilla@tut.by> [Tue, 16 Oct 2012 22:41:44 +0200] rev 18808
hgk: simplify tags parser
As when hg tags is being called without -v option, it returns
lines with two elements in each, we can just interate them as
if it were a usual Tcl list using foreach and two variables.
Line endings and whitespace don't matter when doing so, so we
may keep them as is.
When we're processing the lines, tag variable is assigned a tag
name, and rev is a string in form of revision:hash which we can
split on colon. As Tcl8.4 lacks lassign command, and using lindex
makes code a bit less readable, we use foreach to iterate over
two-element list.