Compare array.js bundle size
Use the repository's fast comparison command. Do not run TypeScript compilation, Terser, Rollup, Turbo, or the full build unless the user separately requests production bundle numbers.
Workflow
Use the baseline named by the user. If none is given, let the script default to
origin/mainand thenmain.From the repository root, run:
pnpm bundle-size:array [baseline-ref]Report:
- the resolved baseline ref and commit
- minified percentage and byte change
- gzip percentage and byte change
- Brotli percentage and byte change
- elapsed time
Lead with the percentage most relevant to the user's question. If they did not specify one, lead with minified and include the compressed results below it.
Interpretation
- The command builds both source trees with the same esbuild version, options, installed dependencies, and workspace-source aliases, so the percentage is an apples-to-apples comparison.
- The current side includes tracked, uncommitted, and imported untracked source changes from the working tree.
- The baseline side is a temporary source snapshot from the resolved git commit; the command does not check out or modify the working tree.
- Treat the result as a fast directional comparison. Absolute bytes differ from the production Rollup/Terser output.
- A positive percentage is a size increase; a negative percentage is a reduction.
Validation and troubleshooting
- To verify the comparison machinery itself, run
pnpm bundle-size:array HEAD. With no relevant uncommitted source changes, every row should report0.00%. - If the baseline ref cannot be resolved, ask for another local git ref or fetch it only with the user's approval when network access is required.
- If esbuild or other dependencies are missing, explain that dependencies must be installed. Do not substitute the full production build.