def perfwalk(ui, repo, *pats): try: m = cmdutil.match(repo, pats, {}) timer(lambda: len(list(repo.dirstate.walk(m, [], True, False)))) except: try: m = cmdutil.match(repo, pats, {}) timer(lambda: len([b for a, b, c in repo.dirstate.statwalk([], m)])) except: timer(lambda: len(list(cmdutil.walk(repo, pats, {}))))
def perfwalk(ui, repo, *pats): try: m = cmdutil.match(repo, pats, {}) timer(lambda: len(list(repo.dirstate.walk(m, True, False)))) except: try: m = cmdutil.match(repo, pats, {}) timer(lambda: len([b for a,b,c in repo.dirstate.statwalk([], m)])) except: timer(lambda: len(list(cmdutil.walk(repo, pats, {}))))
def perfwalk(ui, repo, *pats, **opts): timer, fm = gettimer(ui, opts) try: m = scmutil.match(repo[None], pats, {}) timer(lambda: len(list(repo.dirstate.walk(m, [], True, False)))) except Exception: try: m = scmutil.match(repo[None], pats, {}) timer(lambda: len([b for a, b, c in repo.dirstate.statwalk([], m)])) except Exception: timer(lambda: len(list(cmdutil.walk(repo, pats, {})))) fm.end()
def find_files_with_lib(dirname): """ Use the Mercurial library to recursively find versioned files in dirname. """ try: try: repo = hg.repository(ui.ui(), path=dirname) except RepoError: return # tuple of (modified, added, removed, deleted, unknown, ignored, clean) modified, added, removed, deleted, unknown = repo.status()[:5] # exclude all files that hg knows about, but haven't been added, # or have been deleted, removed, or have an unknown status excluded = removed + deleted + unknown if version in OLD_VERSIONS: from mercurial import util node = None for src, abs, rel, exact in cmdutil.walk(repo, [], {}, node=node, badmatch=util.always, default='relglob'): if src == 'b': continue if not node and abs not in repo.dirstate: continue if abs in excluded: continue yield abs else: rev = None try: match = cmdutil.match(repo, [], {}, default='relglob') except: # Probably mercurial 1.8+ from mercurial import scmutil match = scmutil.match(repo[None], [], {}, default='relglob') match.bad = lambda x, y: False for abs in repo[rev].walk(match): if not rev and abs not in repo.dirstate: continue if abs in excluded: continue yield abs except Exception: if log: log.warn("Error in setuptools_hg: %s" % sys.exc_info()[1]) # try calling hg command as a last resort find_files_with_cmd(dirname)
def find_files_with_lib(dirname): """ Use the Mercurial library to recursively find versioned files in dirname. """ try: try: repo = hg.repository(ui.ui(), path=dirname) except RepoError: return # tuple of (modified, added, removed, deleted, unknown, ignored, clean) modified, added, removed, deleted, unknown = repo.status()[:5] # exclude all files that hg knows about, but haven't been added, # or have been deleted, removed, or have an unknown status excluded = removed + deleted + unknown if version in OLD_VERSIONS: from mercurial import util node = None for src, abs, rel, exact in cmdutil.walk(repo, [], {}, node=node, badmatch=util.always, default="relglob"): if src == "b": continue if not node and abs not in repo.dirstate: continue if abs in excluded: continue yield abs else: rev = None try: match = cmdutil.match(repo, [], {}, default="relglob") except: # Probably mercurial 1.8+ from mercurial import scmutil match = scmutil.match(repo[None], [], {}, default="relglob") match.bad = lambda x, y: False for abs in repo[rev].walk(match): if not rev and abs not in repo.dirstate: continue if abs in excluded: continue yield abs except Exception, e: if log: log.warn("Error in setuptools_hg: %s" % e) # try calling hg command as a last resort find_files_with_cmd(dirname)