On Mon, 12 Feb 2018 18:00:52 +0100, Boris Feld wrote: > # HG changeset patch > # User Boris Feld <boris.f...@octobus.net> > # Date 1518448909 -3600 > # Mon Feb 12 16:21:49 2018 +0100 > # Node ID b0f45e1376e2d0f32023e197c51802bc21c60490 > # Parent f02fd7ca256d044c4a51c3f3fc0ecaf95d23e03d > # EXP-Topic noname > # Available At https://bitbucket.org/octobus/mercurial-devel/ > # hg pull https://bitbucket.org/octobus/mercurial-devel/ -r > b0f45e1376e2 > revset: skip old style lookup if external whitespace are detected > > Since label cannot contains leading or trailing whitespace we can skip looking > for them. This is useful in repository with slow labels (eg: special type of > tags). Short command running on a specific revision can benefit from such > shortcut. > > eg on a repository where loading tags take 0.4s: > > 1: hg log --template '{node}\n' --rev 'rev(0)' > 0.560 seconds > > 2: hg log --template '{node}\n' --rev ' rev(0)' > 0.109 seconds
Seems okay, but isn't it too obscure that prefixing with ' ' is the fast way of querying? Instead, maybe we can make lookup() to not search slow labels assuming these labeling schemes didn't exist in pre-revset era. Alternatively, we could add a config knob to switch off the old-style range support. _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel