Skip to content

Commit 18caf45

Browse files
authored
Merge pull request #59605 from hamishknight/fix-process-stats
2 parents e075778 + 605540d commit 18caf45

File tree

1 file changed

+31
-24
lines changed

1 file changed

+31
-24
lines changed

Diff for: utils/process-stats-dir.py

+31-24
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ def format_field(field, row):
356356
s += " :white_check_mark:"
357357
return s
358358
else:
359-
v = int(vars(row)[field])
359+
v = int(getattr(row, field))
360360
if row.name.startswith('time.'):
361361
return format_time(v)
362362
else:
@@ -561,12 +561,37 @@ def render_profiles(args):
561561
webbrowser.open_new_tab("file://" + os.path.abspath(index_path))
562562

563563

564+
def process(args):
565+
if args.catapult:
566+
write_catapult_trace(args)
567+
elif args.compare_stats_dirs:
568+
return compare_stats_dirs(args)
569+
elif args.set_csv_baseline is not None:
570+
return set_csv_baseline(args)
571+
elif args.compare_to_csv_baseline is not None:
572+
return compare_to_csv_baseline(args)
573+
elif args.incrementality:
574+
if args.paired:
575+
show_paired_incrementality(args)
576+
else:
577+
show_incrementality(args)
578+
elif args.lnt:
579+
write_lnt_values(args)
580+
elif args.evaluate:
581+
return evaluate(args)
582+
elif args.evaluate_delta:
583+
return evaluate_delta(args)
584+
elif args.render_profiles:
585+
return render_profiles(args)
586+
return None
587+
588+
564589
def main():
565590
parser = argparse.ArgumentParser()
566591
parser.add_argument("--verbose", action="store_true",
567592
help="Report activity verbosely")
568593
parser.add_argument("--output", default="-",
569-
type=argparse.FileType('w', 0),
594+
type=argparse.FileType('w'),
570595
help="Write output to file")
571596
parser.add_argument("--paired", action="store_true",
572597
help="Process two dirs-of-stats-dirs, pairwise")
@@ -677,28 +702,10 @@ def main():
677702
if len(args.remainder) == 0:
678703
parser.print_help()
679704
return 1
680-
if args.catapult:
681-
write_catapult_trace(args)
682-
elif args.compare_stats_dirs:
683-
return compare_stats_dirs(args)
684-
elif args.set_csv_baseline is not None:
685-
return set_csv_baseline(args)
686-
elif args.compare_to_csv_baseline is not None:
687-
return compare_to_csv_baseline(args)
688-
elif args.incrementality:
689-
if args.paired:
690-
show_paired_incrementality(args)
691-
else:
692-
show_incrementality(args)
693-
elif args.lnt:
694-
write_lnt_values(args)
695-
elif args.evaluate:
696-
return evaluate(args)
697-
elif args.evaluate_delta:
698-
return evaluate_delta(args)
699-
elif args.render_profiles:
700-
return render_profiles(args)
701-
return None
705+
try:
706+
return process(args)
707+
finally:
708+
args.output.close()
702709

703710

704711
sys.exit(main())

0 commit comments

Comments
 (0)