Commit 915e4c1
committed
feat(pack): add target: node support for library builds
- Make library endpoint platform-aware: dispatch compile-time info,
module options, and resolve options based on Platform (Web/Node)
- Create Node.js-compatible runtime backend (runtime-backend-node.ts)
without DOM APIs (no document.createElement, importScripts, etc.)
- Conditionally select runtime backend in runtime_code.rs based on
is_node_platform flag on LibraryChunkingContext
- Always use EdgeWorker environment for library chunking context
(ChunkLoading::Edge prevents async chunk splitting for single-file output)
- Move and organize target_node snapshot tests under target_node/
- Add library_build_node_target test with dynamic import() to verify
single-chunk enforcement and correct Node.js built-in externals1 parent b0ecb21 commit 915e4c1
26 files changed
Lines changed: 364 additions & 133 deletions
File tree
- crates
- pack-api/src
- pack-core
- js/src/umd
- src/library
- ecmascript
- runtime
- pack-tests/tests/snapshot
- basic/target_node/output
- runtime/library_build_runtime/output
- target_node
- basic_node
- input
- output
- library_build_node_target
- input
- output
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | 10 | | |
| |||
265 | 266 | | |
266 | 267 | | |
267 | 268 | | |
268 | | - | |
269 | | - | |
270 | | - | |
| 269 | + | |
| 270 | + | |
271 | 271 | | |
272 | | - | |
| 272 | + | |
273 | 273 | | |
274 | 274 | | |
275 | 275 | | |
276 | | - | |
| 276 | + | |
277 | 277 | | |
278 | | - | |
| 278 | + | |
279 | 279 | | |
280 | 280 | | |
281 | 281 | | |
| |||
299 | 299 | | |
300 | 300 | | |
301 | 301 | | |
302 | | - | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
303 | 305 | | |
304 | | - | |
| 306 | + | |
305 | 307 | | |
306 | | - | |
307 | | - | |
308 | | - | |
309 | | - | |
310 | | - | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
311 | 313 | | |
312 | | - | |
313 | | - | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
320 | | - | |
321 | | - | |
| 314 | + | |
322 | 315 | | |
323 | 316 | | |
324 | 317 | | |
325 | | - | |
326 | 318 | | |
327 | 319 | | |
328 | 320 | | |
329 | 321 | | |
330 | 322 | | |
331 | | - | |
332 | | - | |
333 | | - | |
334 | | - | |
335 | | - | |
336 | | - | |
| 323 | + | |
| 324 | + | |
337 | 325 | | |
338 | 326 | | |
339 | | - | |
340 | | - | |
341 | | - | |
342 | 327 | | |
343 | 328 | | |
344 | 329 | | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
345 | 333 | | |
346 | 334 | | |
347 | 335 | | |
| |||
350 | 338 | | |
351 | 339 | | |
352 | 340 | | |
353 | | - | |
| 341 | + | |
354 | 342 | | |
355 | 343 | | |
356 | 344 | | |
| |||
359 | 347 | | |
360 | 348 | | |
361 | 349 | | |
362 | | - | |
363 | | - | |
364 | | - | |
365 | | - | |
366 | | - | |
367 | | - | |
368 | | - | |
369 | | - | |
370 | | - | |
371 | | - | |
| 350 | + | |
| 351 | + | |
372 | 352 | | |
373 | | - | |
374 | | - | |
375 | | - | |
376 | | - | |
377 | | - | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
378 | 367 | | |
379 | 368 | | |
380 | 369 | | |
381 | 370 | | |
382 | 371 | | |
383 | 372 | | |
384 | | - | |
385 | | - | |
386 | | - | |
387 | | - | |
388 | | - | |
389 | | - | |
390 | | - | |
391 | | - | |
| 373 | + | |
| 374 | + | |
392 | 375 | | |
393 | | - | |
394 | | - | |
395 | | - | |
396 | | - | |
397 | | - | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
398 | 388 | | |
399 | 389 | | |
400 | 390 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
3 | | - | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
9 | 11 | | |
| 12 | + | |
10 | 13 | | |
11 | 14 | | |
12 | 15 | | |
| |||
125 | 128 | | |
126 | 129 | | |
127 | 130 | | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
128 | 145 | | |
129 | 146 | | |
130 | 147 | | |
131 | 148 | | |
132 | 149 | | |
133 | 150 | | |
134 | | - | |
| 151 | + | |
135 | 152 | | |
136 | 153 | | |
137 | | - | |
| 154 | + | |
138 | 155 | | |
139 | 156 | | |
140 | 157 | | |
141 | 158 | | |
142 | 159 | | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
148 | | - | |
149 | | - | |
150 | | - | |
151 | | - | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
152 | 179 | | |
153 | 180 | | |
154 | 181 | | |
155 | 182 | | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
163 | 200 | | |
164 | 201 | | |
165 | 202 | | |
166 | 203 | | |
167 | | - | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | | - | |
172 | | - | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | | - | |
177 | | - | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
178 | 221 | | |
179 | 222 | | |
180 | 223 | | |
| |||
257 | 300 | | |
258 | 301 | | |
259 | 302 | | |
| 303 | + | |
260 | 304 | | |
261 | 305 | | |
262 | 306 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1036 | 1036 | | |
1037 | 1037 | | |
1038 | 1038 | | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
| 1055 | + | |
| 1056 | + | |
| 1057 | + | |
| 1058 | + | |
| 1059 | + | |
1039 | 1060 | | |
1040 | 1061 | | |
1041 | 1062 | | |
| |||
0 commit comments