Moving to ClangCL on Windows for Node.js v24 #4067
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
TL;DR
This change switches from MSVC to ClangCL for release builds from Node.js v24. It also stops MSVC compilation for v24+ in the test CI.
Description
This PR is the last step needed to move to the ClangCL-produced binaries on Windows. Currently, we are compiling and testing ClangCL in the test CI alongside MSVC for v24, which creates a manageable bottleneck because of the doubled compilation and testing jobs run on each PR. With this change, we will stop MSVC compilation for v24+ in both test and release CI, meaning that ClangCL will become the only supported compiler for Node.js (I'll open a PR in node to document this).
I've tested the changes from this PR in 2 temporary jobs in test CI and release CI for versions 24, 23, and 22, and everything works as expected.
Mentioning relevant teams for visibility: @nodejs/build @nodejs/releasers @nodejs/tsc
Refs: #4001