Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🛠 Tooling: Investigate performance improvements for end-to-end scripts in CI #860

Closed
3 tasks done
JoshuaKGoldberg opened this issue Sep 21, 2023 · 4 comments
Closed
3 tasks done
Assignees
Labels
area: tooling Managing the repository's maintenance status: blocked Waiting for something else to be resolved

Comments

@JoshuaKGoldberg
Copy link
Owner

Bug Report Checklist

  • I have tried restarting my IDE and the issue persists.
  • I have pulled the latest main branch of the repository.
  • I have searched for related issues and found none that matched my issue.

Overview

Right now, this repo has three "end-to-end" scripts that run in CI (one for each of the "setup" scripts):

  • Create: typically around 2-2.5 minutes in total
  • Initialize: typically around 2-2.5 minutes in total
  • Migrate: typically around 4-5 minutes in total

5 minutes in CI is way too long for a terminal app like this! Especially since test coverage merges in coverage results from all those scripts.

Can they be sped up? Is there any caching that can be done, maybe? Or is there a slowdown in a dependency that can be resolved?

Additional Info

I suspect that reducing log spam will help with this issue a lot: #859. Even if the log spam isn't hurting performance, reducing spam will likely make investigating easier.

@JoshuaKGoldberg
Copy link
Owner Author

After resolving #1131 and #1221, they seem to be taking 1.5-2 minutes now. Progress!

@JoshuaKGoldberg
Copy link
Owner Author

As of #1610 (and before it, even), things are down to 1-1.5 minutes. Progress!

@JoshuaKGoldberg
Copy link
Owner Author

JoshuaKGoldberg commented Dec 3, 2024

I put some logs in migration:

[Tue Dec 03 2024 14:59:50 GMT-0500 (Eastern Standard Time)] Starting command: pnpm build

[Tue Dec 03 2024 15:01:03 GMT-0500 (Eastern Standard Time)] Ending command: pnpm build

[Tue Dec 03 2024 15:01:03 GMT-0500 (Eastern Standard Time)] Starting command: pnpm lint --fix

[Tue Dec 03 2024 15:01:19 GMT-0500 (Eastern Standard Time)] Starting command: pnpm format --write

[Tue Dec 03 2024 15:01:22 GMT-0500 (Eastern Standard Time)] Ending command: pnpm format --write

Interesting that pnpm build is taking so long...

  • pnpm build 17.83s user 2.51s system 149% cpu 13.649 total
  • pnpm tsc 3.70s user 0.26s system 182% cpu 2.170 total

@JoshuaKGoldberg
Copy link
Owner Author

This will likely be superceded by #1782.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: tooling Managing the repository's maintenance status: blocked Waiting for something else to be resolved
Projects
None yet
Development

No branches or pull requests

1 participant