Skip to content

Commit c484c1f

Browse files
committed
add run variation chart
1 parent 2a0b27c commit c484c1f

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed

scripts/generate-chart.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ function readResults(file) {
4848

4949
// Generate chart data
5050
function generateChartData(option = {}) {
51-
const fixtures = ['next', 'astro', 'svelte', 'vue'];
51+
const fixtures = ['next', 'astro', 'svelte', 'vue', 'run'];
5252
const variations = [
5353
'cache',
5454
'cache+lockfile',
@@ -188,7 +188,7 @@ function generateHtml(chartData, perPackageCountChartData) {
188188
<div class="chart-container">
189189
<canvas id="myChart"></canvas>
190190
</div>
191-
<h2>Single package install time (milliseconds per package)</h2>
191+
<h2 id="per-package-chart-title">Single package install time (milliseconds per package)</h2>
192192
<div class="chart-container">
193193
<canvas id="myChartPerPackage"></canvas>
194194
</div>
@@ -256,7 +256,8 @@ function generateHtml(chartData, perPackageCountChartData) {
256256
}
257257
258258
// Get per-package chart data for this variation
259-
if (perPackageCountChartData && perPackageCountChartData.result && perPackageCountChartData.result[variation]) {
259+
if (perPackageCountChartData && perPackageCountChartData.result && perPackageCountChartData.result[variation] && variation !== 'run') {
260+
document.getElementById('per-package-chart-title').style.display = 'block';
260261
const perPkgVariationData = perPackageCountChartData.result[variation];
261262
chartPerPackage = new Chart(ctxPerPackage, {
262263
type: 'bar',
@@ -291,25 +292,27 @@ function generateHtml(chartData, perPackageCountChartData) {
291292
const c = ctxPerPackage.getContext('2d');
292293
c.clearRect(0, 0, ctxPerPackage.width, ctxPerPackage.height);
293294
}
295+
document.getElementById('per-package-chart-title').style.display = 'none';
294296
}
295297
}
296298
297299
// --- Static Table Generation ---
298300
function generateResultsTable(chartData, perPackageCountChartData) {
299301
// Gather all unique PMs from datasets
300302
const allPMsSet = new Set();
303+
const excludePMs = new Set(['node', 'nx', 'turbo']);
301304
Object.values(chartData.result).forEach(variationObj => {
302305
if (variationObj && Array.isArray(variationObj.datasets)) {
303-
variationObj.datasets.forEach(ds => allPMsSet.add(ds.label));
306+
variationObj.datasets.filter(ds => !excludePMs.has(ds.label)).forEach(ds => allPMsSet.add(ds.label));
304307
}
305308
});
306-
// Sort PMs alphabetically for consistent column order
307-
const allPMs = Array.from(allPMsSet).sort();
309+
const allPMs = Array.from(allPMsSet);
308310
309311
// Gather all fixture+variation combinations
310312
// We'll use the labels (fixtures) and chartData.labels (variations)
311313
const rows = [];
312314
for (const variation of chartData.labels) {
315+
if (variation === 'run') continue; // do not render run results in summary table
313316
const variationObj = chartData.result[variation];
314317
const perPkgVariationObj = perPackageCountChartData.result[variation];
315318
if (!variationObj || !perPkgVariationObj) continue;

scripts/variations/run.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ BENCH_COMMAND_NODE="node --run test > $BENCH_OUTPUT_FOLDER/node-run-output-\${HY
3434
# Run the benchmark run-script benchmarks
3535
# The install step is defined as a "prepare" option so that time spent
3636
# on the install is not accounted for in the benchmark results.
37-
echo "Hyperfine version: $(hyperfine --version)"
3837
hyperfine --ignore-failure \
3938
--time-unit=millisecond \
4039
--export-json="$BENCH_OUTPUT_FOLDER/benchmarks.json" \

0 commit comments

Comments
 (0)