Skip to content

Commit 2bc2727

Browse files
authored
Support reporting geometric mean by tags (#209)
* Support reporting geometric mean by tags This requires the following changes to pyperf first: psf/pyperf#132 * Ensure `tags` is always a list * Use property * Update pyperf
1 parent 746c0e9 commit 2bc2727

File tree

4 files changed

+10
-3
lines changed

4 files changed

+10
-3
lines changed

pyperformance/_benchmark.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ def _get_metadata_value(self, key, default):
137137

138138
@property
139139
def tags(self):
140-
return self._get_metadata_value('tags', ())
140+
return self._get_metadata_value('tags', [])
141141

142142
@property
143143
def datadir(self):

pyperformance/_benchmark_metadata.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,10 @@ def _resolve_value(field, value, rootdir):
214214
value = value.replace(',', ' ').split()
215215
for tag in value:
216216
_utils.check_name(tag)
217+
if tag == 'all':
218+
raise ValueError("Invalid tag 'all'")
219+
elif tag == '':
220+
raise ValueError("Invalid empty tag")
217221
elif field == 'datadir':
218222
if not os.path.isabs(value):
219223
value = os.path.join(rootdir, value)

pyperformance/data-files/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ psutil==5.9.0
1010
# via -r requirements.in
1111
pyparsing==3.0.8
1212
# via packaging
13-
pyperf==2.3.1
13+
pyperf==2.4.1
1414
# via -r requirements.in
1515
toml==0.10.2
1616
# via -r requirements.in

pyperformance/run.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,10 @@ def add_bench(dest_suite, obj):
124124

125125
version = pyperformance.__version__
126126
for res in results:
127-
res.update_metadata({'performance_version': version})
127+
res.update_metadata({
128+
'performance_version': version,
129+
'tags': bench.tags
130+
})
128131

129132
if dest_suite is not None:
130133
dest_suite.add_benchmark(res)

0 commit comments

Comments
 (0)