KEMBAR78
Run tests on all OSs by jakebailey · Pull Request #52350 · microsoft/TypeScript · GitHub
Skip to content

Conversation

@jakebailey
Copy link
Member

@jakebailey jakebailey commented Jan 21, 2023

Up until now, we only tested Linux in CI. It seems like a good idea to test all of our supported platforms and versions (especially since we get it "for free" in parallel).

@typescript-bot typescript-bot added Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug labels Jan 21, 2023
@jakebailey
Copy link
Member Author

Wow, after multiple reruns, I think declarationEmitPrivatePromiseLikeInterface is literally too slow to finish on a Windows CI builder with Node 14.

@jakebailey
Copy link
Member Author

The above is hopefully better after #52382 (the PR saved a significant amount on that test). We'll see if it passes or if there's still more to find.

@jakebailey jakebailey marked this pull request as ready for review January 26, 2023 18:51
@jakebailey
Copy link
Member Author

Marking this as ready-for-review; it seems to be working with that performance bump from reused Printers.

@jakebailey
Copy link
Member Author

Oh, hm, it was actually macOS this last time that was slow. It's a minute or so faster now but not really in range of other machines.

Copy link
Member

@weswigham weswigham left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'd probably be fine with only testing all OSes on latest node, coverage-wise, but the full matrix is fine, since, y'know, it's not like we're getting billed, right? 😆 (...do we have a GHA max worker limit?)

@jakebailey
Copy link
Member Author

jakebailey commented Jan 27, 2023

(...do we have a GHA max worker limit?)

We totally don't; Python's typeshed repo (equivalent to DT) runs 54 jobs per PR/commit.

One reason I would be testing on the full matrix is that we've seen breaks like how Node upgraded its icu library and changed the output of Date.toLocaleTimeString(); that one happened to occur on Linux (so we caught it), but I think something like that is equally likely to happen on the other OSs too.

@jakebailey
Copy link
Member Author

Well, I guess "latest" would get us those breaks, yeah. But I don't think there's really a downside of testing everything.

@jakebailey
Copy link
Member Author

Rechecking, the timeout is 40s for any singular test; with that one expensive test everything else seems to run under that limit. I was worried because the macOS builder takes 20 minutes (as opposed to 10-15 for other OSs), but an overall long time isn't bad so long as each individual test can run. I was assuming there was a total-time timeout but nope.

@jakebailey
Copy link
Member Author

declarationEmitPrivatePromiseLikeInterface is still flaky, it seems. Will have to keep profiling it.

@jakebailey jakebailey marked this pull request as draft February 16, 2023 21:14
@jakebailey jakebailey marked this pull request as ready for review March 13, 2024 17:35
@jakebailey jakebailey merged commit ac8eb2c into microsoft:main Mar 13, 2024
@jakebailey jakebailey deleted the ci-os-matrix branch March 13, 2024 19:42
@microsoft microsoft locked as resolved and limited conversation to collaborators Oct 16, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Author: Team For Uncommitted Bug PR for untriaged, rejected, closed or missing bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants