fix: statically link Windows native CRT#418
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Fixes the Windows native addon packaging issue reported in discussion #413, where a clean Windows Sandbox install could not load
@rezi-ui/nativeuntil VC Redist x64 was installed separately.The root cause is that Windows native prebuilds were produced with the dynamic MSVC C runtime. This change makes the Windows build paths use Rust
+crt-staticand makes the vendored C build follow the same CRT mode, so the published.nodebinaries do not require users to install the Visual C++ Redistributable separately.Changes
ccbuild aligned with Rustcrt-statictarget features.Validation
npm run lintnpm run typechecknpm run test:scriptsnpm run build:nativenpm run test:native:smoke(deep engine checks skipped on this Linux host because no TTY)node scripts/verify-native-pack.mjs --host-onlyThe final proof for the Windows binary dependency will be the Windows prebuild/release job output from this PR, because this Linux host cannot inspect the resulting Windows DLL imports directly.