Mercurial > public > mercurial-scm > hg
comparison contrib/benchmarks/revset.py @ 43076:2372284d9457
formatting: blacken the codebase
This is using my patch to black
(https://github.com/psf/black/pull/826) so we don't un-wrap collection
literals.
Done with:
hg files 'set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"' | xargs black -S
# skip-blame mass-reformatting only
# no-check-commit reformats foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D6971
author | Augie Fackler <augie@google.com> |
---|---|
date | Sun, 06 Oct 2019 09:45:02 -0400 |
parents | cff0f5926797 |
children | 6000f5b25c9b |
comparison
equal
deleted
inserted
replaced
43075:57875cf423c9 | 43076:2372284d9457 |
---|---|
16 import string | 16 import string |
17 import sys | 17 import sys |
18 | 18 |
19 from . import basedir, perfbench | 19 from . import basedir, perfbench |
20 | 20 |
21 | |
21 def createrevsetbenchmark(baseset, variants=None): | 22 def createrevsetbenchmark(baseset, variants=None): |
22 if variants is None: | 23 if variants is None: |
23 # Default variants | 24 # Default variants |
24 variants = ["plain", "first", "last", "sort", "sort+first", | 25 variants = ["plain", "first", "last", "sort", "sort+first", "sort+last"] |
25 "sort+last"] | 26 fname = "track_" + "_".join( |
26 fname = "track_" + "_".join("".join([ | 27 "".join( |
27 c if c in string.digits + string.letters else " " | 28 [c if c in string.digits + string.letters else " " for c in baseset] |
28 for c in baseset | 29 ).split() |
29 ]).split()) | 30 ) |
30 | 31 |
31 def wrap(fname, baseset): | 32 def wrap(fname, baseset): |
32 @perfbench(name=baseset, params=[("variant", variants)]) | 33 @perfbench(name=baseset, params=[("variant", variants)]) |
33 def f(perf, variant): | 34 def f(perf, variant): |
34 revset = baseset | 35 revset = baseset |
35 if variant != "plain": | 36 if variant != "plain": |
36 for var in variant.split("+"): | 37 for var in variant.split("+"): |
37 revset = "%s(%s)" % (var, revset) | 38 revset = "%s(%s)" % (var, revset) |
38 return perf("perfrevset", revset) | 39 return perf("perfrevset", revset) |
40 | |
39 f.__name__ = fname | 41 f.__name__ = fname |
40 return f | 42 return f |
43 | |
41 return wrap(fname, baseset) | 44 return wrap(fname, baseset) |
45 | |
42 | 46 |
43 def initializerevsetbenchmarks(): | 47 def initializerevsetbenchmarks(): |
44 mod = sys.modules[__name__] | 48 mod = sys.modules[__name__] |
45 with open(os.path.join(basedir, 'contrib', 'base-revsets.txt'), | 49 with open(os.path.join(basedir, 'contrib', 'base-revsets.txt'), 'rb') as fh: |
46 'rb') as fh: | |
47 for line in fh: | 50 for line in fh: |
48 baseset = line.strip() | 51 baseset = line.strip() |
49 if baseset and not baseset.startswith('#'): | 52 if baseset and not baseset.startswith('#'): |
50 func = createrevsetbenchmark(baseset) | 53 func = createrevsetbenchmark(baseset) |
51 setattr(mod, func.__name__, func) | 54 setattr(mod, func.__name__, func) |
52 | 55 |
56 | |
53 initializerevsetbenchmarks() | 57 initializerevsetbenchmarks() |