Skip to content

Commit a236d24

Browse files
committed
refactor(timings): use inline arg capture
1 parent c567663 commit a236d24

File tree

1 file changed

+24
-22
lines changed

1 file changed

+24
-22
lines changed

src/cargo/core/compiler/timings/report.rs

Lines changed: 24 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -125,67 +125,69 @@ fn write_summary_table(
125125
.map(|(name, targets)| format!("{} ({})", name, targets.join(", ")))
126126
.collect();
127127
let targets = targets.join("<br>");
128+
let total_units = ctx.total_fresh + ctx.total_dirty;
129+
128130
let time_human = if duration > 60.0 {
129131
format!(" ({}m {:.1}s)", duration as u32 / 60, duration % 60.0)
130132
} else {
131133
"".to_string()
132134
};
133135
let total_time = format!("{:.1}s{}", duration, time_human);
136+
134137
let max_concurrency = ctx.concurrency.iter().map(|c| c.active).max().unwrap();
138+
let jobs = bcx.jobs();
135139
let num_cpus = std::thread::available_parallelism()
136140
.map(|x| x.get().to_string())
137141
.unwrap_or_else(|_| "n/a".into());
142+
138143
let rustc_info = render_rustc_info(bcx);
139144
let error_msg = match error {
140145
Some(e) => format!(r#"<tr><td class="error-text">Error:</td><td>{e}</td></tr>"#),
141146
None => "".to_string(),
142147
};
148+
149+
let HtmlRenderContext {
150+
start_str,
151+
profile,
152+
total_fresh,
153+
total_dirty,
154+
..
155+
} = &ctx;
156+
143157
write!(
144158
f,
145159
r#"
146160
<table class="my-table summary-table">
147161
<tr>
148-
<td>Targets:</td><td>{}</td>
162+
<td>Targets:</td><td>{targets}</td>
149163
</tr>
150164
<tr>
151-
<td>Profile:</td><td>{}</td>
165+
<td>Profile:</td><td>{profile}</td>
152166
</tr>
153167
<tr>
154-
<td>Fresh units:</td><td>{}</td>
168+
<td>Fresh units:</td><td>{total_fresh}</td>
155169
</tr>
156170
<tr>
157-
<td>Dirty units:</td><td>{}</td>
171+
<td>Dirty units:</td><td>{total_dirty}</td>
158172
</tr>
159173
<tr>
160-
<td>Total units:</td><td>{}</td>
174+
<td>Total units:</td><td>{total_units}</td>
161175
</tr>
162176
<tr>
163-
<td>Max concurrency:</td><td>{} (jobs={} ncpu={})</td>
177+
<td>Max concurrency:</td><td>{max_concurrency} (jobs={jobs} ncpu={num_cpus})</td>
164178
</tr>
165179
<tr>
166-
<td>Build start:</td><td>{}</td>
180+
<td>Build start:</td><td>{start_str}</td>
167181
</tr>
168182
<tr>
169-
<td>Total time:</td><td>{}</td>
183+
<td>Total time:</td><td>{total_time}</td>
170184
</tr>
171185
<tr>
172-
<td>rustc:</td><td>{}</td>
186+
<td>rustc:</td><td>{rustc_info}</td>
173187
</tr>
174-
{}
188+
{error_msg}
175189
</table>
176190
"#,
177-
targets,
178-
ctx.profile,
179-
ctx.total_fresh,
180-
ctx.total_dirty,
181-
ctx.total_fresh + ctx.total_dirty,
182-
max_concurrency,
183-
bcx.jobs(),
184-
num_cpus,
185-
ctx.start_str,
186-
total_time,
187-
rustc_info,
188-
error_msg,
189191
)?;
190192
Ok(())
191193
}

0 commit comments

Comments
 (0)