Commit 6ebf78e
committed
fix(ci/windows): generate deno snapshot on Linux, download on Windows
Windows cannot build generate_snapshot.exe — irreconcilable CRT conflict:
- surrealdb-librocksdb-sys mt_static compiles RocksDB with /MT
- V8/deno deps link against /MD C++ runtime (msvcprt.lib)
- MSVC linker refuses to mix MT/MD (LNK1319), even with /FORCE
The V8 heap snapshot (CUSTOM_DENO_SNAPSHOT.bin) is architecture-specific
(x86_64) but OS-independent — the same serialized heap state works on
Linux, macOS, and Windows.
New approach:
1. 'generate-deno-snapshot' job runs on Linux CI image (~10 min)
2. Uploads CUSTOM_DENO_SNAPSHOT.bin as artifact
3. Windows job downloads artifact before cargo build
4. No more generate_snapshot.exe compilation on Windows1 parent 15cf990 commit 6ebf78e
1 file changed
Lines changed: 46 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
55 | 95 | | |
56 | 96 | | |
57 | 97 | | |
| |||
426 | 466 | | |
427 | 467 | | |
428 | 468 | | |
| 469 | + | |
429 | 470 | | |
430 | 471 | | |
431 | 472 | | |
| |||
521 | 562 | | |
522 | 563 | | |
523 | 564 | | |
524 | | - | |
525 | | - | |
526 | | - | |
527 | | - | |
528 | | - | |
529 | | - | |
530 | | - | |
531 | | - | |
532 | | - | |
533 | | - | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
| 568 | + | |
| 569 | + | |
534 | 570 | | |
535 | 571 | | |
536 | 572 | | |
| |||
0 commit comments