Skip to content

Commit b36a88a

Browse files
authored
Merge pull request #1388 from nnethercote/github-table-tweaks
GitHub comment table tweaks
2 parents b1441a5 + a47e42d commit b36a88a

File tree

1 file changed

+29
-34
lines changed

1 file changed

+29
-34
lines changed

site/src/comparison.rs

Lines changed: 29 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,7 @@ pub fn write_summary_table(
525525
let value = if count > 0 { calculate() } else { None };
526526
value
527527
.map(|value| format!("{value:.1}%"))
528-
.unwrap_or_else(|| "N/A".to_string())
528+
.unwrap_or_else(|| "-".to_string())
529529
}
530530

531531
// (label, mean, max, count)
@@ -555,14 +555,14 @@ pub fn write_summary_table(
555555
Some(secondary.arithmetic_mean_of_improvements())
556556
}),
557557
if primary.is_empty() {
558-
"N/A".to_string()
558+
"-".to_string()
559559
} else {
560560
format!("{:.1}%", primary.arithmetic_mean_of_changes())
561561
},
562562
]);
563563

564564
let largest_change = if primary.is_empty() {
565-
"N/A".to_string()
565+
"-".to_string()
566566
} else {
567567
let largest_improvement = primary
568568
.largest_improvement()
@@ -620,6 +620,8 @@ pub fn write_summary_table(
620620
(primary.num_regressions + primary.num_improvements).to_string(),
621621
]);
622622

623+
// This code attempts to space the table cells evenly so that the data is
624+
// easy to read for anyone who is viewing the Markdown source.
623625
let column_labels = [
624626
" ".to_string(), // we want at least 10 spaces to accommodate "count[^2]"
625627
format!("mean{}", if with_footnotes { "[^1]" } else { "" }),
@@ -636,20 +638,13 @@ pub fn write_summary_table(
636638
}
637639
result.push_str("|\n");
638640

639-
let mut render_row = |row: Vec<String>| {
640-
debug_assert_eq!(row.len(), column_labels.len());
641-
for (column, &count) in row.into_iter().zip(&counts) {
641+
for row in 0..5 {
642+
let row_data = column_data.iter().map(|rows| rows[row].clone());
643+
debug_assert_eq!(row_data.len(), column_labels.len());
644+
for (column, &count) in row_data.zip(&counts) {
642645
write!(result, "| {:<1$} ", column, count).unwrap();
643646
}
644647
result.push_str("|\n");
645-
};
646-
647-
for row in 0..5 {
648-
let row_data = column_data
649-
.iter()
650-
.map(|rows| rows[row].clone())
651-
.collect::<Vec<_>>();
652-
render_row(row_data);
653648
}
654649
}
655650

@@ -1376,9 +1371,9 @@ mod tests {
13761371
| | mean[^1] | max | count[^2] |
13771372
|:----------:|:--------:|:---:|:---------:|
13781373
| Regressions ❌ <br /> (primary) | 146.7% | 200.0% | 3 |
1379-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1380-
| Improvements ✅ <br /> (primary) | N/A | N/A | 0 |
1381-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1374+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
1375+
| Improvements ✅ <br /> (primary) | - | - | 0 |
1376+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
13821377
| All ❌✅ (primary) | 146.7% | 200.0% | 3 |
13831378
"#
13841379
.trim_start(),
@@ -1396,10 +1391,10 @@ mod tests {
13961391
r#"
13971392
| | mean[^1] | max | count[^2] |
13981393
|:----------:|:--------:|:---:|:---------:|
1399-
| Regressions ❌ <br /> (primary) | N/A | N/A | 0 |
1400-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1394+
| Regressions ❌ <br /> (primary) | - | - | 0 |
1395+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
14011396
| Improvements ✅ <br /> (primary) | -71.7% | -80.0% | 3 |
1402-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1397+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
14031398
| All ❌✅ (primary) | -71.7% | -80.0% | 3 |
14041399
"#
14051400
.trim_start(),
@@ -1417,11 +1412,11 @@ mod tests {
14171412
r#"
14181413
| | mean[^1] | max | count[^2] |
14191414
|:----------:|:--------:|:---:|:---------:|
1420-
| Regressions ❌ <br /> (primary) | N/A | N/A | 0 |
1421-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1422-
| Improvements ✅ <br /> (primary) | N/A | N/A | 0 |
1415+
| Regressions ❌ <br /> (primary) | - | - | 0 |
1416+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
1417+
| Improvements ✅ <br /> (primary) | - | - | 0 |
14231418
| Improvements ✅ <br /> (secondary) | -71.7% | -80.0% | 3 |
1424-
| All ❌✅ (primary) | N/A | N/A | 0 |
1419+
| All ❌✅ (primary) | - | - | 0 |
14251420
"#
14261421
.trim_start(),
14271422
);
@@ -1438,11 +1433,11 @@ mod tests {
14381433
r#"
14391434
| | mean[^1] | max | count[^2] |
14401435
|:----------:|:--------:|:---:|:---------:|
1441-
| Regressions ❌ <br /> (primary) | N/A | N/A | 0 |
1436+
| Regressions ❌ <br /> (primary) | - | - | 0 |
14421437
| Regressions ❌ <br /> (secondary) | 146.7% | 200.0% | 3 |
1443-
| Improvements ✅ <br /> (primary) | N/A | N/A | 0 |
1444-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1445-
| All ❌✅ (primary) | N/A | N/A | 0 |
1438+
| Improvements ✅ <br /> (primary) | - | - | 0 |
1439+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
1440+
| All ❌✅ (primary) | - | - | 0 |
14461441
"#
14471442
.trim_start(),
14481443
);
@@ -1461,9 +1456,9 @@ mod tests {
14611456
| | mean[^1] | max | count[^2] |
14621457
|:----------:|:--------:|:---:|:---------:|
14631458
| Regressions ❌ <br /> (primary) | 150.0% | 200.0% | 2 |
1464-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1459+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
14651460
| Improvements ✅ <br /> (primary) | -62.5% | -75.0% | 2 |
1466-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1461+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
14671462
| All ❌✅ (primary) | 43.8% | 200.0% | 4 |
14681463
"#
14691464
.trim_start(),
@@ -1505,9 +1500,9 @@ mod tests {
15051500
| | mean[^1] | max | count[^2] |
15061501
|:----------:|:--------:|:---:|:---------:|
15071502
| Regressions ❌ <br /> (primary) | 20.0% | 20.0% | 1 |
1508-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1503+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
15091504
| Improvements ✅ <br /> (primary) | -50.0% | -50.0% | 1 |
1510-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1505+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
15111506
| All ❌✅ (primary) | -15.0% | -50.0% | 2 |
15121507
"#
15131508
.trim_start(),
@@ -1525,9 +1520,9 @@ mod tests {
15251520
| | mean[^1] | max | count[^2] |
15261521
|:----------:|:--------:|:---:|:---------:|
15271522
| Regressions ❌ <br /> (primary) | 100.0% | 100.0% | 1 |
1528-
| Regressions ❌ <br /> (secondary) | N/A | N/A | 0 |
1523+
| Regressions ❌ <br /> (secondary) | - | - | 0 |
15291524
| Improvements ✅ <br /> (primary) | -16.7% | -16.7% | 1 |
1530-
| Improvements ✅ <br /> (secondary) | N/A | N/A | 0 |
1525+
| Improvements ✅ <br /> (secondary) | - | - | 0 |
15311526
| All ❌✅ (primary) | 41.7% | 100.0% | 2 |
15321527
"#
15331528
.trim_start(),

0 commit comments

Comments
 (0)