# HG changeset patch # User Martin von Zweigbergk # Date 1522879592 25200 # Node ID 5bcd5859b505de68d94e25ce9113c1c69587adb5 # Parent a6014392837e5d474cb3b229a9a629627f4c631d perf: make perfmanifest and perfnodelookup work with revsets They were using repo[rev], which only works with a single symbol (e.g. "." or "my-bookmark"), not general revsets. Switch them to scmutil.revsingle() so they can also be used with e.g. ".^". I don't actually care about these commands, but I want to remove uses of repo[]. Differential Revision: https://phab.mercurial-scm.org/D3083 diff -r a6014392837e -r 5bcd5859b505 contrib/perf.py --- a/contrib/perf.py Tue Apr 03 23:47:01 2018 -0700 +++ b/contrib/perf.py Wed Apr 04 15:06:32 2018 -0700 @@ -767,7 +767,7 @@ @command('perfchangeset', formatteropts) def perfchangeset(ui, repo, rev, **opts): timer, fm = gettimer(ui, opts) - n = repo[rev].node() + n = scmutil.revsingle(repo, rev).node() def d(): repo.changelog.read(n) #repo.changelog._cache = None @@ -853,7 +853,7 @@ timer, fm = gettimer(ui, opts) import mercurial.revlog mercurial.revlog._prereadsize = 2**24 # disable lazy parser in old hg - n = repo[rev].node() + n = scmutil.revsingle(repo, rev).node() cl = mercurial.revlog.revlog(getsvfs(repo), "00changelog.i") def d(): cl.rev(n)