Matt Mackall <mpm@selenic.com> [Sat, 28 Mar 2015 00:08:26 -0500] rev 24491
import-checker: rotatecycle is actually the canonical cycle key
So refactor to drop cyclekey().
Matt Mackall <mpm@selenic.com> [Fri, 27 Mar 2015 23:52:23 -0500] rev 24490
import-checker: make search algorithm non-recursive breadth-first
Breadth-first allows finding the shortest cycle including the starting
module. This lets us terminate our search early when we've discovered
shorter paths already. This gives a tremendous speed-up to the
cycle-finding portion of the test, dropping total runtime from 39s to
3s.
Matt Mackall <mpm@selenic.com> [Fri, 27 Mar 2015 19:27:19 -0500] rev 24489
import-checker: drop set() from cyclekey()
Matt Mackall <mpm@selenic.com> [Fri, 27 Mar 2015 19:25:40 -0500] rev 24488
import-checker: drop duplicate element from cycle
This will allow optimizing cyclekey creation
Matt Mackall <mpm@selenic.com> [Fri, 27 Mar 2015 18:50:39 -0500] rev 24487
import-checker: fix rotatecycle
It was duplicating the last element sometimes.
Siddharth Agarwal <sid0@fb.com> [Fri, 27 Mar 2015 01:03:06 -0700] rev 24486
dirs.addpath: rework algorithm to search forward
This improves performance because it uses strchr rather than a loop.
For LLVM/clang version "Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM
3.5svn)" on OS X, for a repo with over 200,000 files, this improves perfdirs
from 0.248 seconds to 0.230 (7.3%)
For gcc 4.4.6 on Linux, for a test repo with over 500,000 files, this improves
perfdirs from 0.704 seconds to 0.658 (6.5%).
Yuya Nishihara <yuya@tcha.org> [Sat, 14 Mar 2015 17:40:47 +0900] rev 24485
changeset_printer: use changectx to get status tuple
log.parents() can't handle wdir() revision. Because repo.status() creates ctx
objects, there would be no benefit to get parent node from changelog.
Yuya Nishihara <yuya@tcha.org> [Sat, 14 Mar 2015 17:23:51 +0900] rev 24484
changeset_printer: replace _meaningful_parentrevs() by changeset_templater's
Because changeset_printer needs pctx object anyway, there would be no benefit
to avoid creation of pctx in _meaningful_parentrevs().