scripts: Adopted default visibility in scripts with complex fields

This makes it so scripts with complex fields will still output all
fields to output csv/json files, while only showing a user-friendly
subset unless -f/--field is explicitly provided.

While internal fields are often too much information to show by default,
csv/json files are expected to go to other scripts, not humans. So more
information is more useful up until you actually hit a performance
bottleneck.

And if you _do_ somehow manage to hit a performance bottleneck, you can
always limit the output with explicit -f/--field flags.
This commit is contained in:
Christopher Haster
2025-03-01 02:44:35 -06:00
parent 051bf66f9a
commit e71aca65d9
5 changed files with 19 additions and 12 deletions

View File

@@ -953,11 +953,13 @@ def main(gcda_paths, *,
else:
by = ['function']
visible = None
if fields is None:
fields = ['calls', 'hits', 'funcs', 'lines', 'branches']
if not hits:
fields = ['lines', 'branches']
visible = ['lines', 'branches']
else:
fields = ['calls', 'hits']
visible = ['calls', 'hits']
# find sizes
if not args.get('use', None):
@@ -1019,7 +1021,7 @@ def main(gcda_paths, *,
# print table
table(CovResult, results, diff_results,
by=by,
fields=fields,
fields=visible if visible is not None else fields,
sort=sort,
**args)