Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: lazy compilation #5915

Merged
merged 1 commit into from
May 20, 2024
Merged

feat: lazy compilation #5915

merged 1 commit into from
May 20, 2024

Conversation

JSerFeng
Copy link
Collaborator

@JSerFeng JSerFeng commented Mar 11, 2024

Summary

What is lazy compilation ?

The easiest mental model would be:

Imagine some code that you may not use at the first run, for example, when you click a button, load another page, if you don't click that button at all when you develop other stuff, that page is useless, so we don't need to build it. We build it once we do execute the click.

We try to make entries and dynamic imports as split point, for example, consider:

A -dyn import()-> B -dyn import()-> C

When we compile A, we make B just an empty file, pretend user never write any code in it.

A -dyn import() -> B'(empty content)

Once we access B, which means we do need to build B, we fill B with its original content, pretend that user write content immediately

Require Documentation?

  • No
  • Yes, the corresponding rspack-website PR is __

@JSerFeng
Copy link
Collaborator Author

!canary

@github-actions github-actions bot added the release: feature release: feature related release(mr only) label Mar 11, 2024
@JSerFeng JSerFeng marked this pull request as draft March 11, 2024 08:46
Copy link
Contributor

0.5.5-canary-58c4cad-20240311091247

@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 2 times, most recently from 46b706d to 3dfa608 Compare March 11, 2024 09:30
@JSerFeng
Copy link
Collaborator Author

!canary

@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 2 times, most recently from 62fc0a8 to ab14a08 Compare March 11, 2024 12:53
@JSerFeng
Copy link
Collaborator Author

!canary

Copy link
Contributor

0.5.6-canary-7b27ac8-20240311132614

@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 4 times, most recently from 1281a4f to dcd4782 Compare March 12, 2024 09:11
@JSerFeng
Copy link
Collaborator Author

!canary

Copy link
Contributor

0.5.7-canary-dcd4782-20240312094134

@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 6 times, most recently from 8522340 to bc14fb8 Compare March 19, 2024 06:20
Copy link
Contributor

github-actions bot commented Mar 19, 2024

Test Compatibility Diff

main pr diff
76.852% 77.408% ✅ ⏫ 0.556
Unpassed tests

6 🔴 Stats chunkGroups: TODO
7 🔴 Stats chunkGroups: TODO
8 🔴 Stats chunkGroups: TODO
11 🔴 Compiler: TODO
12 🔴 Compiler: TODO
13 🔴 Compiler: TODO
14 🔴 Compiler: TODO
15 🔴 Compiler: TODO
18 🔴 Compiler methods isChild: TODO
30 🔴 Compiler: TODO
32 🔴 Compiler: TODO
36 🔴 Compiler: TODO
39 🔴 Compiler: TODO
41 🔴 Compiler: TODO
48 ⚪️ aggressive-splitting-entry: TODO
49 ⚪️ aggressive-splitting-on-demand: TODO
50 ⚪️ all-stats: TODO
51 ⚪️ asset: TODO
52 ⚪️ asset-concat: TODO
53 ⚪️ async-commons-chunk: TODO
54 ⚪️ async-commons-chunk-auto: TODO
55 ⚪️ child-compiler-apply-entry-option: TODO
56 ⚪️ chunk-module-id-range: TODO
57 ⚪️ chunks: TODO
58 ⚪️ chunks-development: TODO
59 ⚪️ circular-correctness: TODO
60 ⚪️ color-disabled: TODO
61 ⚪️ color-enabled: TODO
62 ⚪️ color-enabled-custom: TODO
63 ⚪️ common-libs: TODO
64 ⚪️ commons-chunk-min-size-0: TODO
65 ⚪️ commons-chunk-min-size-Infinity: TODO
66 ⚪️ commons-plugin-issue-4980: TODO
67 ⚪️ concat-and-sideeffects: TODO
68 ⚪️ context-independence: TODO
69 ⚪️ custom-terser: TODO
70 ⚪️ define-plugin: TODO
71 ⚪️ details-error: TODO
72 ⚪️ dll-reference-plugin-issue-7624: TODO
73 ⚪️ dll-reference-plugin-issue-7624-error: TODO
74 ⚪️ entry-filename: TODO
75 ⚪️ exclude-with-loader: TODO
76 ⚪️ external: TODO
77 ⚪️ graph-correctness-entries: TODO
78 ⚪️ graph-correctness-modules: TODO
79 ⚪️ graph-roots: TODO
80 ⚪️ ignore-warnings: TODO
81 ⚪️ immutable: TODO
82 ⚪️ import-context-filter: TODO
83 ⚪️ import-weak: TODO
84 ⚪️ import-weak-parser-option: TODO
85 ⚪️ import-with-invalid-options-comments: TODO
86 ⚪️ issue-7577: TODO
87 🔴 limit-chunk-count-plugin: #4304
88 ⚪️ logging: TODO
89 ⚪️ logging-debug: TODO
90 ⚪️ max-modules: TODO
91 ⚪️ max-modules-default: TODO
92 ⚪️ module-assets: TODO
93 ⚪️ module-deduplication: TODO
94 ⚪️ module-deduplication-named: TODO
95 ⚪️ module-federation-custom-exposed-module-name: TODO
96 ⚪️ module-not-found-error: TODO
97 ⚪️ module-reasons: TODO
98 ⚪️ module-trace-disabled-in-error: TODO
99 ⚪️ module-trace-enabled-in-error: TODO
100 ⚪️ named-chunk-groups: TODO
101 ⚪️ named-chunks-plugin: TODO
102 ⚪️ named-chunks-plugin-async: TODO
103 ⚪️ no-emit-on-errors-plugin-with-child-error: TODO
104 ⚪️ optimize-chunks: TODO
105 ⚪️ output-module: TODO
106 ⚪️ parse-error: TODO
107 ⚪️ performance-disabled: TODO
108 ⚪️ performance-error: TODO
109 ⚪️ performance-no-hints: TODO
110 ⚪️ prefetch: TODO
111 ⚪️ prefetch-preload-mixed: TODO
112 ⚪️ preload: TODO
113 ⚪️ preset-detailed: TODO
114 ⚪️ preset-errors-only: TODO
115 ⚪️ preset-errors-only-error: TODO
116 ⚪️ preset-errors-warnings: TODO
117 ⚪️ preset-minimal: TODO
118 ⚪️ preset-minimal-simple: TODO
119 ⚪️ preset-mixed-array: TODO
120 ⚪️ preset-none: TODO
121 ⚪️ preset-none-array: TODO
122 ⚪️ preset-none-error: TODO
123 ⚪️ preset-normal: TODO
124 ⚪️ preset-normal-performance: TODO
125 ⚪️ preset-normal-performance-ensure-filter-sourcemaps: TODO
126 ⚪️ preset-summary: TODO
127 ⚪️ preset-verbose: TODO
128 ⚪️ real-content-hash: TODO
129 ⚪️ related-assets: TODO
130 ⚪️ resolve-plugin-context: TODO
131 ⚪️ reverse-sort-modules: TODO
132 ⚪️ runtime-chunk: TODO
133 ⚪️ runtime-chunk-integration: TODO
134 ⚪️ runtime-chunk-issue-7382: TODO
135 ⚪️ runtime-chunk-single: TODO
136 ⚪️ runtime-specific-used-exports: TODO
137 ⚪️ scope-hoisting-bailouts: TODO
138 ⚪️ scope-hoisting-multi: TODO
139 ⚪️ side-effects-issue-7428: TODO
140 ⚪️ side-effects-optimization: TODO
141 ⚪️ side-effects-simple-unused: TODO
142 ⚪️ simple: TODO
143 ⚪️ simple-more-info: TODO
144 ⚪️ split-chunks: TODO
145 ⚪️ split-chunks-automatic-name: TODO
146 ⚪️ split-chunks-chunk-name: TODO
147 ⚪️ split-chunks-combinations: TODO
148 ⚪️ split-chunks-issue-6413: TODO
149 ⚪️ split-chunks-issue-6696: TODO
150 ⚪️ split-chunks-issue-7401: TODO
151 ⚪️ split-chunks-keep-remaining-size: TODO
152 ⚪️ split-chunks-max-size: TODO
153 ⚪️ split-chunks-min-size-reduction: TODO
154 ⚪️ split-chunks-prefer-bigger-splits: TODO
155 ⚪️ split-chunks-runtime-specific: TODO
156 ⚪️ tree-shaking: TODO
157 ⚪️ wasm-explorer-examples-sync: TODO
174 🔴 MultiCompiler: TODO
179 ⚪️ Examples aggressive-merging: TODO
180 ⚪️ Examples asset-advanced: TODO
184 ⚪️ Examples cjs-tree-shaking: TODO
188 ⚪️ Examples code-splitting-bundle-loader: TODO
197 ⚪️ Examples common-chunk-grandchildren: TODO
200 ⚪️ Examples custom-json-modules: TODO
201 ⚪️ Examples dll: TODO
202 ⚪️ Examples dll-app-and-vendor/0-vendor: TODO
203 ⚪️ Examples dll-app-and-vendor/1-app: TODO
204 ⚪️ Examples dll-entry-only: TODO
205 ⚪️ Examples dll-user: TODO
206 ⚪️ Examples explicit-vendor-chunk: TODO
214 ⚪️ Examples http2-aggressive-splitting: TODO
216 ⚪️ Examples lazy-compilation: TODO
222 ⚪️ Examples module-federation: TODO
229 ⚪️ Examples persistent-caching: TODO
238 ⚪️ Examples typescript: TODO
243 ⚪️ HotTestCases async-node child-compiler issue-9706: TODO
244 ⚪️ HotTestCases async-node chunks accept-system-import: TODO
245 ⚪️ HotTestCases async-node chunks accept-system-import-webpackhot: TODO
246 ⚪️ HotTestCases async-node chunks dynamic-system-import: TODO
247 ⚪️ HotTestCases async-node chunks split-chunks: TODO
248 ⚪️ HotTestCases async-node chunks split-chunks-webpackhot: TODO
249 ⚪️ HotTestCases async-node chunks system-import: TODO
250 🔴 HotTestCases async-node chunks update-chunk-loading-runtime: #5596
251 ⚪️ HotTestCases async-node code-generation this-in-accept: TODO
252 ⚪️ HotTestCases async-node code-generation this-in-accept-webpackhot: TODO
253 ⚪️ HotTestCases async-node concat reload-compat-flag: TODO
254 ⚪️ HotTestCases async-node concat reload-external: TODO
255 ⚪️ HotTestCases async-node conditional-runtime accept-conditional: TODO
256 ⚪️ HotTestCases async-node define issue-6962: TODO
257 ⚪️ HotTestCases async-node determinism issue-10174: TODO
258 ⚪️ HotTestCases async-node disposing remove-chunk-with-shared: TODO
259 ⚪️ HotTestCases async-node disposing remove-chunk-with-shared-in-other-runtime: TODO
260 ⚪️ HotTestCases async-node disposing runtime-independent-filename: TODO
261 ⚪️ HotTestCases async-node errors decline: TODO
262 ⚪️ HotTestCases async-node errors decline-webpackhot: TODO
263 ⚪️ HotTestCases async-node errors events: TODO
264 ⚪️ HotTestCases async-node errors self-decline: TODO
265 ⚪️ HotTestCases async-node errors unaccepted: TODO
266 ⚪️ HotTestCases async-node errors unaccepted-ignored: TODO
267 ⚪️ HotTestCases async-node esm-dependency-import import-meta-webpack-hot: TODO
268 ⚪️ HotTestCases async-node esm-dependency-import module-hot: TODO
269 ⚪️ HotTestCases async-node harmony auto-import: TODO
270 ⚪️ HotTestCases async-node harmony auto-import-default: TODO
271 ⚪️ HotTestCases async-node harmony auto-import-multiple: TODO
272 ⚪️ HotTestCases async-node harmony auto-reexport: TODO
273 ⚪️ HotTestCases async-node hashing exports-info-influence: TODO
274 ⚪️ HotTestCases async-node hashing full-hash-main: TODO
275 ⚪️ HotTestCases async-node hashing full-hash-syntax-error: TODO
276 ⚪️ HotTestCases async-node invalidate conditional-accept: TODO
277 ⚪️ HotTestCases async-node invalidate during-idle: TODO
285 ⚪️ HotTestCases async-node lazy-compilation https: TODO
292 ⚪️ HotTestCases async-node lazy-compilation simple: TODO
296 ⚪️ HotTestCases async-node loader-import-module css: TODO
297 ⚪️ HotTestCases async-node numeric-ids add-remove-chunks: TODO
298 ⚪️ HotTestCases async-node numeric-ids production: TODO
299 ⚪️ HotTestCases async-node parsing hot-api-optional-chaining: TODO
312 🔴 HotTestCases async-node recover recover-after-self-error: #5596
313 ⚪️ HotTestCases async-node runtime accept: TODO
314 ⚪️ HotTestCases async-node runtime bubble-async: TODO
315 ⚪️ HotTestCases async-node runtime bubble-update: TODO
316 ⚪️ HotTestCases async-node runtime circular: TODO
317 ⚪️ HotTestCases async-node runtime dispose-removed-chunk: TODO
318 ⚪️ HotTestCases async-node runtime dispose-removed-module: TODO
319 ⚪️ HotTestCases async-node runtime import-after-download: TODO
320 ⚪️ HotTestCases async-node runtime replace-runtime-module: TODO
321 ⚪️ HotTestCases async-node runtime require-disposed-module-warning: TODO
322 ⚪️ HotTestCases async-node runtime root-error: TODO
323 ⚪️ HotTestCases async-node runtime self-accept-and-dispose: TODO
324 ⚪️ HotTestCases async-node runtime self-accept-factory: TODO
325 ⚪️ HotTestCases async-node runtime update-multiple-modules: TODO
326 ⚪️ HotTestCases async-node runtime update-multiple-times: TODO
327 ⚪️ HotTestCases async-node sharing share-plugin: TODO
328 ⚪️ HotTestCases async-node status accept: TODO
329 ⚪️ HotTestCases async-node status check: TODO
330 ⚪️ HotTestCases async-node unexpected-invalidation used-exports: TODO
331 🔴 HotTestCases async-node worker move-between-runtime: #5597
332 ⚪️ HotTestCases async-node worker remove-add-worker: TODO
337 ⚪️ HotTestCases webworker child-compiler issue-9706: TODO
338 ⚪️ HotTestCases webworker chunks accept-system-import: TODO
339 ⚪️ HotTestCases webworker chunks accept-system-import-webpackhot: TODO
340 ⚪️ HotTestCases webworker chunks dynamic-system-import: TODO
341 ⚪️ HotTestCases webworker chunks split-chunks: TODO
342 ⚪️ HotTestCases webworker chunks split-chunks-webpackhot: TODO
343 ⚪️ HotTestCases webworker chunks system-import: TODO
344 🔴 HotTestCases webworker chunks update-chunk-loading-runtime: #5596
345 ⚪️ HotTestCases webworker code-generation this-in-accept: TODO
346 ⚪️ HotTestCases webworker code-generation this-in-accept-webpackhot: TODO
347 ⚪️ HotTestCases webworker concat reload-compat-flag: TODO
348 ⚪️ HotTestCases webworker concat reload-external: TODO
349 ⚪️ HotTestCases webworker conditional-runtime accept-conditional: TODO
350 ⚪️ HotTestCases webworker define issue-6962: TODO
351 ⚪️ HotTestCases webworker determinism issue-10174: TODO
352 ⚪️ HotTestCases webworker disposing remove-chunk-with-shared: TODO
353 ⚪️ HotTestCases webworker disposing remove-chunk-with-shared-in-other-runtime: TODO
354 ⚪️ HotTestCases webworker disposing runtime-independent-filename: TODO
355 ⚪️ HotTestCases webworker errors decline: TODO
356 ⚪️ HotTestCases webworker errors decline-webpackhot: TODO
357 ⚪️ HotTestCases webworker errors events: TODO
358 ⚪️ HotTestCases webworker errors self-decline: TODO
359 ⚪️ HotTestCases webworker errors unaccepted: TODO
360 ⚪️ HotTestCases webworker errors unaccepted-ignored: TODO
361 ⚪️ HotTestCases webworker esm-dependency-import import-meta-webpack-hot: TODO
362 ⚪️ HotTestCases webworker esm-dependency-import module-hot: TODO
363 ⚪️ HotTestCases webworker harmony auto-import: TODO
364 ⚪️ HotTestCases webworker harmony auto-import-default: TODO
365 ⚪️ HotTestCases webworker harmony auto-import-multiple: TODO
366 ⚪️ HotTestCases webworker harmony auto-reexport: TODO
367 ⚪️ HotTestCases webworker hashing exports-info-influence: TODO
368 ⚪️ HotTestCases webworker hashing full-hash-main: TODO
369 ⚪️ HotTestCases webworker hashing full-hash-syntax-error: TODO
370 ⚪️ HotTestCases webworker invalidate conditional-accept: TODO
371 ⚪️ HotTestCases webworker invalidate during-idle: TODO
379 ⚪️ HotTestCases webworker lazy-compilation https: TODO
386 ⚪️ HotTestCases webworker lazy-compilation simple: TODO
390 ⚪️ HotTestCases webworker loader-import-module css: TODO
391 ⚪️ HotTestCases webworker numeric-ids add-remove-chunks: TODO
392 ⚪️ HotTestCases webworker numeric-ids production: TODO
393 ⚪️ HotTestCases webworker parsing hot-api-optional-chaining: TODO
406 🔴 HotTestCases webworker recover recover-after-self-error: #5596
407 ⚪️ HotTestCases webworker runtime accept: TODO
408 ⚪️ HotTestCases webworker runtime bubble-async: TODO
409 ⚪️ HotTestCases webworker runtime bubble-update: TODO
410 ⚪️ HotTestCases webworker runtime circular: TODO
411 ⚪️ HotTestCases webworker runtime dispose-removed-chunk: TODO
412 ⚪️ HotTestCases webworker runtime dispose-removed-module: TODO
413 ⚪️ HotTestCases webworker runtime import-after-download: TODO
414 ⚪️ HotTestCases webworker runtime replace-runtime-module: TODO
415 ⚪️ HotTestCases webworker runtime require-disposed-module-warning: TODO
416 ⚪️ HotTestCases webworker runtime root-error: TODO
417 ⚪️ HotTestCases webworker runtime self-accept-and-dispose: TODO
418 ⚪️ HotTestCases webworker runtime self-accept-factory: TODO
419 ⚪️ HotTestCases webworker runtime update-multiple-modules: TODO
420 ⚪️ HotTestCases webworker runtime update-multiple-times: TODO
421 ⚪️ HotTestCases webworker sharing share-plugin: TODO
422 ⚪️ HotTestCases webworker status accept: TODO
423 ⚪️ HotTestCases webworker status check: TODO
424 ⚪️ HotTestCases webworker unexpected-invalidation used-exports: TODO
425 🔴 HotTestCases webworker worker move-between-runtime: #5597
433 ⚪️ HotTestCases node child-compiler issue-9706: TODO
434 ⚪️ HotTestCases node chunks accept-system-import: TODO
435 ⚪️ HotTestCases node chunks accept-system-import-webpackhot: TODO
436 ⚪️ HotTestCases node chunks dynamic-system-import: TODO
437 ⚪️ HotTestCases node chunks split-chunks: TODO
438 ⚪️ HotTestCases node chunks split-chunks-webpackhot: TODO
439 ⚪️ HotTestCases node chunks system-import: TODO
440 🔴 HotTestCases node chunks update-chunk-loading-runtime: #5596
441 ⚪️ HotTestCases node code-generation this-in-accept: TODO
442 ⚪️ HotTestCases node code-generation this-in-accept-webpackhot: TODO
443 ⚪️ HotTestCases node concat reload-compat-flag: TODO
444 ⚪️ HotTestCases node concat reload-external: TODO
445 ⚪️ HotTestCases node conditional-runtime accept-conditional: TODO
446 ⚪️ HotTestCases node define issue-6962: TODO
447 ⚪️ HotTestCases node determinism issue-10174: TODO
448 ⚪️ HotTestCases node disposing remove-chunk-with-shared: TODO
449 ⚪️ HotTestCases node disposing remove-chunk-with-shared-in-other-runtime: TODO
450 ⚪️ HotTestCases node disposing runtime-independent-filename: TODO
451 ⚪️ HotTestCases node errors decline: TODO
452 ⚪️ HotTestCases node errors decline-webpackhot: TODO
453 ⚪️ HotTestCases node errors events: TODO
454 ⚪️ HotTestCases node errors self-decline: TODO
455 ⚪️ HotTestCases node errors unaccepted: TODO
456 ⚪️ HotTestCases node errors unaccepted-ignored: TODO
457 ⚪️ HotTestCases node esm-dependency-import import-meta-webpack-hot: TODO
458 ⚪️ HotTestCases node esm-dependency-import module-hot: TODO
459 ⚪️ HotTestCases node harmony auto-import: TODO
460 ⚪️ HotTestCases node harmony auto-import-default: TODO
461 ⚪️ HotTestCases node harmony auto-import-multiple: TODO
462 ⚪️ HotTestCases node harmony auto-reexport: TODO
463 ⚪️ HotTestCases node hashing exports-info-influence: TODO
464 ⚪️ HotTestCases node hashing full-hash-main: TODO
465 ⚪️ HotTestCases node hashing full-hash-syntax-error: TODO
466 ⚪️ HotTestCases node invalidate conditional-accept: TODO
467 ⚪️ HotTestCases node invalidate during-idle: TODO
475 ⚪️ HotTestCases node lazy-compilation https: TODO
482 ⚪️ HotTestCases node lazy-compilation simple: TODO
486 ⚪️ HotTestCases node loader-import-module css: TODO
487 ⚪️ HotTestCases node numeric-ids add-remove-chunks: TODO
488 ⚪️ HotTestCases node numeric-ids production: TODO
489 ⚪️ HotTestCases node parsing hot-api-optional-chaining: TODO
502 🔴 HotTestCases node recover recover-after-self-error: #5596
503 ⚪️ HotTestCases node runtime accept: TODO
504 ⚪️ HotTestCases node runtime bubble-async: TODO
505 ⚪️ HotTestCases node runtime bubble-update: TODO
506 ⚪️ HotTestCases node runtime circular: TODO
507 ⚪️ HotTestCases node runtime dispose-removed-chunk: TODO
508 ⚪️ HotTestCases node runtime dispose-removed-module: TODO
509 ⚪️ HotTestCases node runtime import-after-download: TODO
510 ⚪️ HotTestCases node runtime replace-runtime-module: TODO
511 ⚪️ HotTestCases node runtime require-disposed-module-warning: TODO
512 ⚪️ HotTestCases node runtime root-error: TODO
513 ⚪️ HotTestCases node runtime self-accept-and-dispose: TODO
514 ⚪️ HotTestCases node runtime self-accept-factory: TODO
515 ⚪️ HotTestCases node runtime update-multiple-modules: TODO
516 ⚪️ HotTestCases node runtime update-multiple-times: TODO
517 ⚪️ HotTestCases node sharing share-plugin: TODO
518 ⚪️ HotTestCases node status accept: TODO
519 ⚪️ HotTestCases node status check: TODO
520 ⚪️ HotTestCases node unexpected-invalidation used-exports: TODO
521 🔴 HotTestCases node worker move-between-runtime: #5597
529 ⚪️ HotTestCases web child-compiler issue-9706: TODO
530 ⚪️ HotTestCases web chunks accept-system-import: TODO
531 ⚪️ HotTestCases web chunks accept-system-import-webpackhot: TODO
532 ⚪️ HotTestCases web chunks dynamic-system-import: TODO
533 ⚪️ HotTestCases web chunks split-chunks: TODO
534 ⚪️ HotTestCases web chunks split-chunks-webpackhot: TODO
535 ⚪️ HotTestCases web chunks system-import: TODO
536 🔴 HotTestCases web chunks update-chunk-loading-runtime: #5596
537 ⚪️ HotTestCases web code-generation this-in-accept: TODO
538 ⚪️ HotTestCases web code-generation this-in-accept-webpackhot: TODO
539 ⚪️ HotTestCases web concat reload-compat-flag: TODO
540 ⚪️ HotTestCases web concat reload-external: TODO
541 ⚪️ HotTestCases web conditional-runtime accept-conditional: TODO
542 ⚪️ HotTestCases web define issue-6962: TODO
543 ⚪️ HotTestCases web determinism issue-10174: TODO
544 ⚪️ HotTestCases web disposing remove-chunk-with-shared: TODO
545 ⚪️ HotTestCases web disposing remove-chunk-with-shared-in-other-runtime: TODO
546 ⚪️ HotTestCases web disposing runtime-independent-filename: TODO
547 ⚪️ HotTestCases web errors decline: TODO
548 ⚪️ HotTestCases web errors decline-webpackhot: TODO
549 ⚪️ HotTestCases web errors events: TODO
550 ⚪️ HotTestCases web errors self-decline: TODO
551 ⚪️ HotTestCases web errors unaccepted: TODO
552 ⚪️ HotTestCases web errors unaccepted-ignored: TODO
553 ⚪️ HotTestCases web esm-dependency-import import-meta-webpack-hot: TODO
554 ⚪️ HotTestCases web esm-dependency-import module-hot: TODO
555 ⚪️ HotTestCases web harmony auto-import: TODO
556 ⚪️ HotTestCases web harmony auto-import-default: TODO
557 ⚪️ HotTestCases web harmony auto-import-multiple: TODO
558 ⚪️ HotTestCases web harmony auto-reexport: TODO
559 ⚪️ HotTestCases web hashing exports-info-influence: TODO
560 ⚪️ HotTestCases web hashing full-hash-main: TODO
561 ⚪️ HotTestCases web hashing full-hash-syntax-error: TODO
562 ⚪️ HotTestCases web invalidate conditional-accept: TODO
563 ⚪️ HotTestCases web invalidate during-idle: TODO
571 ⚪️ HotTestCases web lazy-compilation https: TODO
578 ⚪️ HotTestCases web lazy-compilation simple: TODO
582 ⚪️ HotTestCases web loader-import-module css: TODO
583 ⚪️ HotTestCases web numeric-ids add-remove-chunks: TODO
584 ⚪️ HotTestCases web numeric-ids production: TODO
585 ⚪️ HotTestCases web parsing hot-api-optional-chaining: TODO
598 🔴 HotTestCases web recover recover-after-self-error: #5596
599 ⚪️ HotTestCases web runtime accept: TODO
600 ⚪️ HotTestCases web runtime bubble-async: TODO
601 ⚪️ HotTestCases web runtime bubble-update: TODO
602 ⚪️ HotTestCases web runtime circular: TODO
603 ⚪️ HotTestCases web runtime dispose-removed-chunk: TODO
604 ⚪️ HotTestCases web runtime dispose-removed-module: TODO
605 ⚪️ HotTestCases web runtime import-after-download: TODO
606 ⚪️ HotTestCases web runtime replace-runtime-module: TODO
607 ⚪️ HotTestCases web runtime require-disposed-module-warning: TODO
608 ⚪️ HotTestCases web runtime root-error: TODO
609 ⚪️ HotTestCases web runtime self-accept-and-dispose: TODO
610 ⚪️ HotTestCases web runtime self-accept-factory: TODO
611 ⚪️ HotTestCases web runtime update-multiple-modules: TODO
612 ⚪️ HotTestCases web runtime update-multiple-times: TODO
613 ⚪️ HotTestCases web sharing share-plugin: TODO
614 ⚪️ HotTestCases web status accept: TODO
615 ⚪️ HotTestCases web status check: TODO
616 ⚪️ HotTestCases web unexpected-invalidation used-exports: TODO
617 🔴 HotTestCases web worker move-between-runtime: #5597
625 ⚪️ ConfigTestCases additional-pass simple simple: TODO
626 ⚪️ ConfigTestCases amd disabled disabled: TODO
627 ⚪️ ConfigTestCases asset-emitted normal normal: TODO
628 ⚪️ ConfigTestCases asset-modules assetModuleFilename assetModuleFilename: TODO
632 ⚪️ ConfigTestCases asset-modules custom-condition custom-condition: TODO
636 ⚪️ ConfigTestCases asset-modules data-url data-url: TODO
637 ⚪️ ConfigTestCases asset-modules different-query different-query: TODO
641 ⚪️ ConfigTestCases asset-modules file-loader file-loader: TODO
642 ⚪️ ConfigTestCases asset-modules file-url file-url: TODO
643 ⚪️ ConfigTestCases asset-modules generator-asset-publicPath generator-asset-publicPath: TODO
644 ⚪️ ConfigTestCases asset-modules generator-asset-publicPath-hash generator-asset-publicPath-hash: TODO
645 ⚪️ ConfigTestCases asset-modules global-options global-options: TODO
646 ⚪️ ConfigTestCases asset-modules http-url http-url: TODO
647 ⚪️ ConfigTestCases asset-modules ignore ignore: TODO
648 ⚪️ ConfigTestCases asset-modules input-data-url input-data-url: TODO
649 ⚪️ ConfigTestCases asset-modules input-data-url-encoding input-data-url-encoding: TODO
650 ⚪️ ConfigTestCases asset-modules opus opus: TODO
651 ⚪️ ConfigTestCases asset-modules overridePath overridePath: TODO
652 ⚪️ ConfigTestCases asset-modules path path: TODO
653 ⚪️ ConfigTestCases asset-modules publicPath publicPath: TODO
654 ⚪️ ConfigTestCases asset-modules query query: TODO
655 ⚪️ ConfigTestCases asset-modules query-and-custom-condition query-and-custom-condition: TODO
656 ⚪️ ConfigTestCases asset-modules query-and-custom-encoder query-and-custom-encoder: TODO
657 ⚪️ ConfigTestCases asset-modules real-content-hash real-content-hash: TODO
658 ⚪️ ConfigTestCases asset-modules resource-from-data-uri resource-from-data-uri: TODO
659 ⚪️ ConfigTestCases asset-modules rule-generator-outputPath rule-generator-outputPath: TODO
660 ⚪️ ConfigTestCases asset-modules rule-generator-publicPath rule-generator-publicPath: TODO
661 ⚪️ ConfigTestCases asset-modules rule-generator-publicPath-override rule-generator-publicPath-override: TODO
662 ⚪️ ConfigTestCases asset-modules source source: TODO
663 ⚪️ ConfigTestCases asset-modules types types: TODO
664 ⚪️ ConfigTestCases asset-modules unsafe-cache-13827 unsafe-cache-13827: TODO
674 ⚪️ ConfigTestCases asset-url target-node3 target-node3: TODO
675 ⚪️ ConfigTestCases asset-url target-web1 target-web1: TODO
676 ⚪️ ConfigTestCases asset-url target-web2 target-web2: TODO
677 ⚪️ ConfigTestCases asset-url target-webworker1 target-webworker1: TODO
678 ⚪️ ConfigTestCases asset-url target-webworker2 target-webworker2: TODO
679 ⚪️ ConfigTestCases assets delete-asset delete-asset: TODO
680 ⚪️ ConfigTestCases async-commons-chunk all-selected all-selected: TODO
681 ⚪️ ConfigTestCases async-commons-chunk duplicate duplicate: TODO
682 ⚪️ ConfigTestCases async-commons-chunk existing-name existing-name: TODO
683 ⚪️ ConfigTestCases async-commons-chunk nested nested: TODO
684 ⚪️ ConfigTestCases async-commons-chunk node node: TODO
685 ⚪️ ConfigTestCases async-commons-chunk simple simple: TODO
688 ⚪️ ConfigTestCases async-library 1-use-library 1-use-library: TODO
689 ⚫️ ConfigTestCases cache-dependencies managed-items managed-items: No plan
690 ⚫️ ConfigTestCases cache-dependencies managed-items-unsafe-cache managed-items-unsafe-cache: No plan
691 ⚪️ ConfigTestCases chunk-graph issue-15173 issue-15173: TODO
701 ⚪️ ConfigTestCases chunk-index order-multiple-entries order-multiple-entries: TODO
702 ⚪️ ConfigTestCases clean dry dry: TODO
703 ⚪️ ConfigTestCases clean enabled enabled: TODO
704 ⚪️ ConfigTestCases clean ignore-fn ignore-fn: TODO
705 ⚪️ ConfigTestCases clean ignore-hook ignore-hook: TODO
706 ⚪️ ConfigTestCases clean ignore-rx ignore-rx: TODO
707 ⚪️ ConfigTestCases clean link link: TODO
708 ⚪️ ConfigTestCases code-generation harmony-pure-default harmony-pure-default: TODO
709 ⚪️ ConfigTestCases code-generation require-context-id require-context-id: TODO
710 ⚪️ ConfigTestCases code-generation use-strict use-strict: TODO
711 ⚪️ ConfigTestCases compiletime error-not-found error-not-found: TODO
712 ⚪️ ConfigTestCases compiletime exports-presence exports-presence: TODO
713 ⚪️ ConfigTestCases compiletime warn-not-found warn-not-found: TODO
720 ⚪️ ConfigTestCases concatenate-modules import-module import-module: TODO
735 ⚪️ ConfigTestCases concatenate-modules split-chunk-entry-module split-chunk-entry-module: TODO
810 ⚪️ ConfigTestCases contenthash assets assets: TODO
811 ⚪️ ConfigTestCases contenthash include-chunk-id include-chunk-id: TODO
812 ⚪️ ConfigTestCases context-exclusion simple simple: TODO
813 ⚪️ ConfigTestCases context-replacement System.import System.import: TODO
814 ⚪️ ConfigTestCases context-replacement a a: TODO
815 ⚪️ ConfigTestCases context-replacement b b: TODO
816 ⚪️ ConfigTestCases context-replacement c c: TODO
817 ⚪️ ConfigTestCases context-replacement d d: TODO
818 ⚪️ ConfigTestCases context-replacement e e: TODO
819 ⚪️ ConfigTestCases crossorigin set-crossorigin set-crossorigin: TODO
820 ⚪️ ConfigTestCases css basic basic: TODO
821 ⚪️ ConfigTestCases css basic-initial-only basic-initial-only: TODO
826 ⚪️ ConfigTestCases css conflicting-order conflicting-order: TODO
827 ⚪️ ConfigTestCases css css-modules css-modules: TODO
828 ⚪️ ConfigTestCases css css-modules-in-node css-modules-in-node: TODO
833 ⚪️ ConfigTestCases css exports exports: TODO
834 ⚪️ ConfigTestCases css exports-in-node exports-in-node: TODO
835 ⚪️ ConfigTestCases css external external: TODO
836 ⚪️ ConfigTestCases css large large: TODO
841 ⚪️ ConfigTestCases css urls urls: TODO
842 ⚫️ ConfigTestCases custom-hash-function xxhash xxhash: No plan
843 ⚪️ ConfigTestCases custom-modules json-custom json-custom: TODO
844 ⚪️ ConfigTestCases custom-source-type localization localization: TODO
845 ⚪️ ConfigTestCases deep-scope-analysis remove-export remove-export: TODO
846 ⚪️ ConfigTestCases deep-scope-analysis remove-export-scope-hoisting remove-export-scope-hoisting: TODO
847 ⚪️ ConfigTestCases defaulter immutable-config immutable-config: TODO
848 ⚪️ ConfigTestCases delegated simple simple: TODO
849 ⚪️ ConfigTestCases delegated-hash simple simple: TODO
853 ⚪️ ConfigTestCases deprecations chunk-and-module chunk-and-module: TODO
854 ⚪️ ConfigTestCases deprecations chunk-files chunk-files: TODO
855 ⚪️ ConfigTestCases deprecations config config: TODO
856 ⚪️ ConfigTestCases deprecations invalid-dependencies invalid-dependencies: TODO
857 ⚪️ ConfigTestCases deprecations non-unique-hash non-unique-hash: TODO
858 ⚪️ ConfigTestCases devtools harmony-eval harmony-eval: TODO
859 ⚪️ ConfigTestCases devtools harmony-eval-source-map harmony-eval-source-map: TODO
860 ⚪️ ConfigTestCases dll-plugin 0-create-dll 0-create-dll: TODO
861 ⚪️ ConfigTestCases dll-plugin 0-issue-10475 0-issue-10475: TODO
862 ⚪️ ConfigTestCases dll-plugin 1-issue-10475 1-issue-10475: TODO
863 ⚪️ ConfigTestCases dll-plugin 1-use-dll 1-use-dll: TODO
864 ⚪️ ConfigTestCases dll-plugin 2-use-dll-without-scope 2-use-dll-without-scope: TODO
865 ⚪️ ConfigTestCases dll-plugin 3-use-dll-with-hashid 3-use-dll-with-hashid: TODO
866 ⚪️ ConfigTestCases dll-plugin-entry 0-create-dll 0-create-dll: TODO
867 ⚪️ ConfigTestCases dll-plugin-entry 1-use-dll 1-use-dll: TODO
868 ⚪️ ConfigTestCases dll-plugin-entry 2-error-non-entry 2-error-non-entry: TODO
869 ⚪️ ConfigTestCases dll-plugin-format 0-create-dll 0-create-dll: TODO
870 ⚪️ ConfigTestCases dll-plugin-side-effects 0-create-dll 0-create-dll: TODO
871 ⚪️ ConfigTestCases dll-plugin-side-effects 1-use-dll 1-use-dll: TODO
872 ⚪️ ConfigTestCases ecmaVersion 2015 2015: TODO
873 ⚪️ ConfigTestCases ecmaVersion 2020 2020: TODO
874 ⚪️ ConfigTestCases ecmaVersion 5 5: TODO
875 ⚪️ ConfigTestCases ecmaVersion browserslist browserslist: TODO
876 ⚪️ ConfigTestCases ecmaVersion browserslist-config browserslist-config: TODO
877 ⚪️ ConfigTestCases ecmaVersion browserslist-config-env browserslist-config-env: TODO
878 ⚪️ ConfigTestCases ecmaVersion browserslist-missing browserslist-missing: TODO
879 ⚪️ ConfigTestCases ecmaVersion browserslist-query browserslist-query: TODO
880 ⚪️ ConfigTestCases ecmaVersion custom custom: TODO
881 ⚪️ ConfigTestCases emit-asset different-source different-source: TODO
882 ⚪️ ConfigTestCases emit-asset equal-source equal-source: TODO
883 ⚪️ ConfigTestCases entry adding-multiple-entry-points adding-multiple-entry-points: TODO
884 🔴 ConfigTestCases entry depend-on-advanced depend-on-advanced: afterSeal hook blocks
885 🔴 ConfigTestCases entry depend-on-bug depend-on-bug: DynamicEntryPlugin blocks
886 🔴 ConfigTestCases entry depend-on-non-js depend-on-non-js: mini-extract-css-plugin blocks
905 ⚪️ ConfigTestCases entry issue-1068 issue-1068: TODO
914 ⚪️ ConfigTestCases entry issue-8110 issue-8110: TODO
921 ⚪️ ConfigTestCases entry require-entry-point require-entry-point: TODO
922 ⚪️ ConfigTestCases entry single-entry-point single-entry-point: TODO
926 ⚪️ ConfigTestCases entry weird-names weird-names: TODO
927 ⚪️ ConfigTestCases entry weird-names2 weird-names2: TODO
928 ⚪️ ConfigTestCases errors asset-options-validation asset-options-validation: TODO
929 ⚪️ ConfigTestCases errors case-emit case-emit: TODO
934 ⚪️ ConfigTestCases errors entry-not-found entry-not-found: TODO
935 ⚪️ ConfigTestCases errors exception-in-chunk-renderer exception-in-chunk-renderer: TODO
936 ⚪️ ConfigTestCases errors import-missing import-missing: TODO
941 ⚪️ ConfigTestCases errors self-reexport self-reexport: TODO
942 ⚪️ ConfigTestCases externals async-externals async-externals: TODO
943 ⚪️ ConfigTestCases externals concatenated concatenated: TODO
944 ⚪️ ConfigTestCases externals concatenated-module concatenated-module: TODO
945 ⚪️ ConfigTestCases externals externals-array externals-array: TODO
946 ⚪️ ConfigTestCases externals externals-in-chunk externals-in-chunk: TODO
947 ⚪️ ConfigTestCases externals externals-in-commons-chunk externals-in-commons-chunk: TODO
948 ⚪️ ConfigTestCases externals externals-system externals-system: TODO
949 ⚪️ ConfigTestCases externals externals-system-custom externals-system-custom: TODO
950 ⚪️ ConfigTestCases externals global global: TODO
951 ⚪️ ConfigTestCases externals harmony harmony: TODO
958 ⚪️ ConfigTestCases externals non-umd-externals-umd2 non-umd-externals-umd2: TODO
959 ⚪️ ConfigTestCases externals optional-externals-cjs optional-externals-cjs: TODO
960 ⚪️ ConfigTestCases externals optional-externals-root optional-externals-root: TODO
961 ⚪️ ConfigTestCases externals optional-externals-umd optional-externals-umd: TODO
962 ⚪️ ConfigTestCases externals optional-externals-umd2 optional-externals-umd2: TODO
963 ⚪️ ConfigTestCases externals optional-externals-umd2-mixed optional-externals-umd2-mixed: TODO
967 ⚪️ ConfigTestCases externals resolve resolve: TODO
968 ⚪️ ConfigTestCases externals this this: TODO
969 ⚪️ ConfigTestCases filename-template filename-function filename-function: TODO
970 ⚪️ ConfigTestCases filename-template module-filename-template module-filename-template: TODO
971 ⚪️ ConfigTestCases filename-template script-src-filename script-src-filename: TODO
972 ⚪️ ConfigTestCases filename-template split-chunks-filename split-chunks-filename: TODO
973 ⚪️ ConfigTestCases finish-modules simple simple: TODO
974 ⚪️ ConfigTestCases graph conditional-ensure conditional-ensure: TODO
975 ⚪️ ConfigTestCases graph issue-11770 issue-11770: TODO
976 ⚪️ ConfigTestCases graph issue-11856 issue-11856: TODO
977 ⚪️ ConfigTestCases graph issue-11856.2 issue-11856.2: TODO
978 ⚪️ ConfigTestCases graph issue-11863 issue-11863: TODO
979 ⚪️ ConfigTestCases hash-length deterministic-module-ids deterministic-module-ids: TODO
980 ⚪️ ConfigTestCases hash-length hashed-module-ids hashed-module-ids: TODO
981 ⚪️ ConfigTestCases hash-length output-filename output-filename: TODO
1024 ⚪️ ConfigTestCases inner-graph altaskitButton altaskitButton: TODO
1025 ⚪️ ConfigTestCases inner-graph basic basic: TODO
1026 ⚪️ ConfigTestCases inner-graph blockScopes blockScopes: TODO
1027 ⚪️ ConfigTestCases inner-graph class class: TODO
1028 ⚪️ ConfigTestCases inner-graph const const: TODO
1029 ⚪️ ConfigTestCases inner-graph defaultArrow defaultArrow: TODO
1030 ⚪️ ConfigTestCases inner-graph defaultClass defaultClass: TODO
1031 ⚪️ ConfigTestCases inner-graph defaultExpression defaultExpression: TODO
1032 ⚪️ ConfigTestCases inner-graph defaultFunction defaultFunction: TODO
1033 ⚪️ ConfigTestCases inner-graph defaultFunctionExpression defaultFunctionExpression: TODO
1034 ⚪️ ConfigTestCases inner-graph defaultId defaultId: TODO
1035 ⚪️ ConfigTestCases inner-graph defaultNamedFunction defaultNamedFunction: TODO
1036 ⚪️ ConfigTestCases inner-graph defaultNamedFunctionExpression defaultNamedFunctionExpression: TODO
1037 ⚪️ ConfigTestCases inner-graph eval-bailout eval-bailout: TODO
1038 ⚪️ ConfigTestCases inner-graph export export: TODO
1039 ⚪️ ConfigTestCases inner-graph importAll importAll: TODO
1040 ⚪️ ConfigTestCases inner-graph issue-11678 issue-11678: TODO
1041 ⚪️ ConfigTestCases inner-graph issue-12669 issue-12669: TODO
1042 ⚪️ ConfigTestCases inner-graph issue-12669-mini issue-12669-mini: TODO
1043 ⚪️ ConfigTestCases inner-graph localReference localReference: TODO
1044 ⚪️ ConfigTestCases inner-graph nested nested: TODO
1045 ⚪️ ConfigTestCases inner-graph pure pure: TODO
1046 ⚪️ ConfigTestCases inner-graph ramdaIdentical ramdaIdentical: TODO
1047 ⚪️ ConfigTestCases inner-graph specifier specifier: TODO
1048 ⚪️ ConfigTestCases inner-graph varNotWritten varNotWritten: TODO
1049 ⚪️ ConfigTestCases inner-graph varWritten varWritten: TODO
1050 ⚪️ ConfigTestCases issues issue-11871-imports-order issue-11871-imports-order: TODO
1051 ⚪️ ConfigTestCases issues issue-12924 issue-12924: TODO
1056 ⚪️ ConfigTestCases issues issue-14974 issue-14974: TODO
1057 ⚪️ ConfigTestCases issues issue-3596 issue-3596: TODO
1058 ⚪️ ConfigTestCases issues issue-7470 issue-7470: TODO
1061 ⚪️ ConfigTestCases json tree-shaking-default tree-shaking-default: TODO
1062 ⚪️ ConfigTestCases layer rules rules: TODO
1063 ⚪️ ConfigTestCases library 0-create-library 0-create-library: TODO
1064 ⚪️ ConfigTestCases library 1-use-library 1-use-library: TODO
1081 ⚪️ ConfigTestCases library invalid-name invalid-name: TODO
1097 🟡 ConfigTestCases loader-import-module css css: #4923
1098 ⚪️ ConfigTestCases loaders #-issue-14755-# #-issue-14755-#: TODO
1102 🔴 ConfigTestCases loaders hot-in-context hot-in-context: blocked by parser hook and ConstPlugin: #4300
1125 ⚪️ ConfigTestCases loaders options options: TODO
1126 🔴 ConfigTestCases loaders pr-14384 pr-14384: Rspack does not export NormalModule and support beforeLoaders from JS side and whether to implemented is tracked here: https://github.com/orgs/web-infra-dev/projects/9
1135 ⚪️ ConfigTestCases managedPaths futureDefaults futureDefaults: TODO
1136 ⚪️ ConfigTestCases mangle mangle-with-object-prop mangle-with-object-prop: TODO
1137 ⚪️ ConfigTestCases module externals externals: TODO
1138 ⚪️ ConfigTestCases module runtime-chunk runtime-chunk: TODO
1139 ⚪️ ConfigTestCases module split-chunks split-chunks: TODO
1140 ⚪️ ConfigTestCases module-name different-issuers-for-same-module different-issuers-for-same-module: TODO
1147 ⚪️ ConfigTestCases node node-prefix node-prefix: TODO
1148 ⚪️ ConfigTestCases optimization chunk chunk: TODO
1158 ⚪️ ConfigTestCases optimization hashed-module-ids hashed-module-ids: TODO
1159 ⚪️ ConfigTestCases optimization minimizer minimizer: TODO
1160 ⚪️ ConfigTestCases optimization named-modules named-modules: TODO
1169 ⚪️ ConfigTestCases optimization runtime-specific-used-exports2 runtime-specific-used-exports2: TODO
1170 ⚪️ ConfigTestCases output charset charset: TODO
1175 ⚪️ ConfigTestCases output import-meta-name import-meta-name: TODO
1183 ⚪️ ConfigTestCases output publicPath-node publicPath-node: TODO
1184 ⚪️ ConfigTestCases output publicPath-scriptType-module publicPath-scriptType-module: TODO
1189 ⚪️ ConfigTestCases output string string: TODO
1190 ⚪️ ConfigTestCases output-module check-defaults check-defaults: TODO
1198 ⚪️ ConfigTestCases parsing context context: TODO
1203 ⚪️ ConfigTestCases parsing harmony-global harmony-global: TODO
1204 ⚪️ ConfigTestCases parsing harmony-this harmony-this: TODO
1205 ⚪️ ConfigTestCases parsing harmony-this-concat harmony-this-concat: TODO
1212 ⚪️ ConfigTestCases parsing issue-14545 issue-14545: TODO
1213 ⚪️ ConfigTestCases parsing issue-14720 issue-14720: TODO
1214 ⚪️ ConfigTestCases parsing issue-2942 issue-2942: TODO
1218 ⚪️ ConfigTestCases parsing issue-4857 issue-4857: TODO
1219 ⚪️ ConfigTestCases parsing issue-5624 issue-5624: TODO
1220 ⚪️ ConfigTestCases parsing issue-8293 issue-8293: TODO
1221 ⚪️ ConfigTestCases parsing issue-9042 issue-9042: TODO
1232 ⚪️ ConfigTestCases parsing optional optional: TODO
1233 ⚪️ ConfigTestCases parsing optional-chaining optional-chaining: TODO
1234 ⚪️ ConfigTestCases parsing relative-filedirname relative-filedirname: TODO
1235 ⚪️ ConfigTestCases parsing require-ignore require-ignore: TODO
1239 ⚪️ ConfigTestCases parsing requirejs requirejs: TODO
1240 ⚪️ ConfigTestCases parsing system.import system.import: TODO
1241 ⚪️ ConfigTestCases performance many-async-imports many-async-imports: TODO
1242 ⚪️ ConfigTestCases performance many-exports many-exports: TODO
1247 🔴 ConfigTestCases plugins banner-plugin-hashing banner-plugin-hashing: Lacking support of chunkhash
1248 ⚪️ ConfigTestCases plugins define-plugin define-plugin: TODO
1249 ⚪️ ConfigTestCases plugins define-plugin-bigint define-plugin-bigint: TODO
1288 ⚪️ ConfigTestCases plugins lib-manifest-plugin lib-manifest-plugin: TODO
1293 ⚪️ ConfigTestCases plugins min-chunk-size min-chunk-size: TODO
1294 ⚪️ ConfigTestCases plugins mini-css-extract-plugin mini-css-extract-plugin: TODO
1295 ⚪️ ConfigTestCases plugins profiling-plugin profiling-plugin: TODO
1296 ⚪️ ConfigTestCases plugins progress-plugin progress-plugin: TODO
1297 ⚪️ ConfigTestCases plugins provide-plugin provide-plugin: TODO
1298 ⚪️ ConfigTestCases plugins source-map-dev-tool-plugin source-map-dev-tool-plugin: TODO
1305 ⚪️ ConfigTestCases plugins terser-plugin terser-plugin: TODO
1306 ⚪️ ConfigTestCases process-assets html-plugin html-plugin: TODO
1307 ⚪️ ConfigTestCases race-conditions load-module load-module: TODO
1308 ⚪️ ConfigTestCases rebuild finishModules finishModules: TODO
1309 ⚪️ ConfigTestCases rebuild rebuildWithNewDependencies rebuildWithNewDependencies: TODO
1310 ⚪️ ConfigTestCases records issue-295 issue-295: TODO
1311 ⚪️ ConfigTestCases records issue-2991 issue-2991: TODO
1312 ⚪️ ConfigTestCases records issue-7339 issue-7339: TODO
1313 ⚪️ ConfigTestCases records issue-7492 issue-7492: TODO
1314 ⚪️ ConfigTestCases records stable-sort stable-sort: TODO
1315 ⚪️ ConfigTestCases require module-require module-require: TODO
1316 ⚪️ ConfigTestCases resolve context-resolve-with-ignore context-resolve-with-ignore: TODO
1317 ⚪️ ConfigTestCases resolve empty-context-module empty-context-module: TODO
1323 ⚪️ ConfigTestCases resolve issue-11335-context-module issue-11335-context-module: TODO
1324 ⚪️ ConfigTestCases resolve issue-15580 issue-15580: TODO
1328 ⚪️ ConfigTestCases resolve only-module only-module: TODO
1329 ⚪️ ConfigTestCases resolve-merging override override: TODO
1333 ⚪️ ConfigTestCases resolving prefer-absolute prefer-absolute: TODO
1334 ⚪️ ConfigTestCases resolving prefer-root prefer-root: TODO
1335 ⚪️ ConfigTestCases rule-set chaining chaining: TODO
1336 ⚪️ ConfigTestCases rule-set compiler compiler: TODO
1337 ⚪️ ConfigTestCases rule-set custom custom: TODO
1338 ⚪️ ConfigTestCases rule-set query query: TODO
1339 ⚪️ ConfigTestCases rule-set resolve-options resolve-options: TODO
1340 ⚪️ ConfigTestCases rule-set simple simple: TODO
1341 ⚪️ ConfigTestCases rule-set simple-use-array-fn simple-use-array-fn: TODO
1342 ⚪️ ConfigTestCases rule-set simple-use-fn-array simple-use-fn-array: TODO
1343 ⚪️ ConfigTestCases rule-set undefined-values undefined-values: TODO
1347 ⚪️ ConfigTestCases runtime invalid-esm-export invalid-esm-export: TODO
1348 ⚪️ ConfigTestCases runtime no-runtime-per-entry no-runtime-per-entry: TODO
1349 ⚪️ ConfigTestCases runtime opt-in-finally opt-in-finally: TODO
1353 ⚪️ ConfigTestCases scope-hoisting create-dll-plugin create-dll-plugin: TODO
1354 ⚪️ ConfigTestCases scope-hoisting dll-plugin dll-plugin: TODO
1375 ⚪️ ConfigTestCases sharing consume-module-ignore-warnings consume-module-ignore-warnings: TODO
1379 ⚪️ ConfigTestCases sharing consume-multiple-versions-ignore-warnings consume-multiple-versions-ignore-warnings: TODO
1412 ⚪️ ConfigTestCases side-effects issue-13063 issue-13063: TODO
1420 ⚪️ ConfigTestCases side-effects type-reexports type-reexports: TODO
1421 ⚪️ ConfigTestCases side-effects url url: TODO
1434 ⚪️ ConfigTestCases source-map array-as-output-library array-as-output-library: TODO
1435 ⚪️ ConfigTestCases source-map array-as-output-library-in-object-output array-as-output-library-in-object-output: TODO
1436 ⚪️ ConfigTestCases source-map context-module-source-path context-module-source-path: TODO
1437 ⚪️ ConfigTestCases source-map default-filename-extensions-css default-filename-extensions-css: TODO
1438 ⚪️ ConfigTestCases source-map default-filename-extensions-js default-filename-extensions-js: TODO
1439 ⚪️ ConfigTestCases source-map default-filename-extensions-mjs default-filename-extensions-mjs: TODO
1444 ⚪️ ConfigTestCases source-map exclude-modules-source-map exclude-modules-source-map: TODO
1445 ⚪️ ConfigTestCases source-map module-names module-names: TODO
1452 ⚪️ ConfigTestCases source-map namespace-source-path.library namespace-source-path.library: TODO
1453 ⚪️ ConfigTestCases source-map no-source-map no-source-map: TODO
1457 ⚪️ ConfigTestCases source-map object-as-output-library object-as-output-library: TODO
1458 🟡 ConfigTestCases source-map relative-source-map-path relative-source-map-path: #4304
1459 🔴 ConfigTestCases source-map relative-source-maps-by-loader relative-source-maps-by-loader: #5393
1460 ⚪️ ConfigTestCases source-map resource-path resource-path: TODO
1464 ⚪️ ConfigTestCases source-map source-map-with-profiling-plugin source-map-with-profiling-plugin: TODO
1465 ⚪️ ConfigTestCases source-map sources-array-production sources-array-production: TODO
1472 🔴 ConfigTestCases split-chunks chunk-filename-delimiter-default chunk-filename-delimiter-default: splitted chunk ids should be the same as webpack #4334
1477 🔴 ConfigTestCases split-chunks custom-filename-function custom-filename-function: not support function type of splitChunks #4333
1482 🔴 ConfigTestCases split-chunks entry-point-error entry-point-error: should emit error if entry point and splitted chunk have the same name #4332
1489 🔴 ConfigTestCases split-chunks issue-11513 issue-11513: should support object type minSize #4331
1508 🔴 ConfigTestCases split-chunks no-options no-options: no js splitChunks plugin
1512 🟡 ConfigTestCases split-chunks runtime-chunk runtime-chunk: not have the same name for splitted chunk with webpack #4334
1513 🔴 ConfigTestCases split-chunks runtime-chunk-async-node runtime-chunk-async-node: hang by unknown reasons #4342
1517 🔴 ConfigTestCases split-chunks runtime-chunk-node runtime-chunk-node: hang by unknown reasons #4342
1518 🔴 ConfigTestCases split-chunks runtime-chunk-node-13130 runtime-chunk-node-13130: hang by unknown reasons #4342
1529 🔴 ConfigTestCases split-chunks-common hot hot: block: require.main #3562
1542 🔴 ConfigTestCases split-chunks-common library library: block: require.ensure #4304
1560 ⚪️ ConfigTestCases target amd-container-named amd-container-named: TODO
1561 ⚪️ ConfigTestCases target amd-container-require amd-container-require: TODO
1562 ⚪️ ConfigTestCases target amd-container-unnamed amd-container-unnamed: TODO
1563 ⚪️ ConfigTestCases target amd-named amd-named: TODO
1564 ⚪️ ConfigTestCases target amd-require amd-require: TODO
1565 ⚪️ ConfigTestCases target amd-unnamed amd-unnamed: TODO
1573 ⚪️ ConfigTestCases target node-dynamic-import node-dynamic-import: TODO
1574 ⚪️ ConfigTestCases target strict-mode-global strict-mode-global: TODO
1584 ⚪️ ConfigTestCases target system-named-assets-path system-named-assets-path: TODO
1588 ⚪️ ConfigTestCases target umd-auxiliary-comments-object umd-auxiliary-comments-object: TODO
1589 ⚪️ ConfigTestCases target umd-auxiliary-comments-string umd-auxiliary-comments-string: TODO
1590 ⚪️ ConfigTestCases target umd-named-define umd-named-define: TODO
1591 🔴 ConfigTestCases trusted-types custom-policy-name custom-policy-name: #5395
1592 🔴 ConfigTestCases trusted-types default-policy-name default-policy-name: #5395
1593 ⚪️ ConfigTestCases trusted-types devtool-eval devtool-eval: TODO
1594 🔴 ConfigTestCases trusted-types no-policy-name no-policy-name: #5395
1595 🔴 ConfigTestCases trusted-types no-trusted-types no-trusted-types: #5395
1596 ⚪️ ConfigTestCases trusted-types web-worker web-worker: TODO
1597 ⚪️ ConfigTestCases types filesystems filesystems: TODO
1601 ⚪️ ConfigTestCases utils lazy-set lazy-set: TODO
1602 ⚪️ ConfigTestCases wasm export-imported-global export-imported-global: TODO
1603 ⚪️ ConfigTestCases wasm identical identical: TODO
1604 ⚪️ ConfigTestCases wasm import-wasm-wasm import-wasm-wasm: TODO
1605 ⚪️ ConfigTestCases wasm missing-wasm-experiment missing-wasm-experiment: TODO
1606 ⚪️ ConfigTestCases wasm wasm-in-initial-chunk-error wasm-in-initial-chunk-error: TODO
1607 ⚪️ ConfigTestCases web attach-existing attach-existing: TODO
1608 ⚪️ ConfigTestCases web node-source node-source: TODO
1609 ⚪️ ConfigTestCases web node-source-future-defaults node-source-future-defaults: TODO
1610 ⚪️ ConfigTestCases web node-source-global node-source-global: TODO
1611 ⚪️ ConfigTestCases web non-js-chunks-entrypoint non-js-chunks-entrypoint: TODO
1612 ⚪️ ConfigTestCases web non-js-chunks-entrypoint-runtime-chunk non-js-chunks-entrypoint-runtime-chunk: TODO
1616 ⚪️ ConfigTestCases web preexecuted-chunk preexecuted-chunk: TODO
1623 ⚪️ ConfigTestCases web retry-failed-import retry-failed-import: TODO
1624 ⚪️ ConfigTestCases web unique-jsonp unique-jsonp: TODO
1625 🔴 ConfigTestCases worker custom-worker custom-worker: #3656
1626 🔴 ConfigTestCases worker node-worker node-worker: needs compile time evaluateExpression
1627 🔴 ConfigTestCases worker node-worker-hmr node-worker-hmr: HMR plugin
1645 ⚪️ WatchTestCases add-defines: TODO
1646 ⚪️ WatchTestCases asset-concat: TODO
1647 ⚪️ WatchTestCases asset-modules: TODO
1648 ⚪️ WatchTestCases change-dep-while-detatched: TODO
1649 ⚪️ WatchTestCases changing-module-id: TODO
1650 ⚪️ WatchTestCases child-compilation-cache: TODO
1651 ⚪️ WatchTestCases emit-when-clean: TODO
1652 ⚪️ WatchTestCases emit-without-clean: TODO
1653 ⚪️ WatchTestCases immutable: TODO
1654 ⚪️ WatchTestCases loader-import-module: TODO
1655 ⚪️ WatchTestCases managedPath: TODO
1656 ⚪️ WatchTestCases new-split-chunk-entry-node: TODO
1657 ⚪️ WatchTestCases new-split-chunk-entry-web: TODO
1658 ⚪️ WatchTestCases reexport-mangle: TODO
1659 ⚪️ WatchTestCases unsafe-cache: TODO
1660 ⚪️ WatchTestCases unsafe-cache-duplicates: TODO
1661 ⚪️ WatchTestCases unsafe-cache-managed-paths: TODO
1662 ⚪️ WatchTestCases delete-in-context: TODO
1663 ⚪️ WatchTestCases loader-context-dep: TODO
1664 ⚪️ WatchTestCases issue-8766: TODO
1665 ⚪️ WatchTestCases issue-8766-with-cache: TODO
1666 ⚪️ WatchTestCases caching-harmony: TODO
1667 ⚪️ WatchTestCases reexport-chain: TODO
1668 ⚪️ WatchTestCases switching-harmony: TODO
1669 ⚪️ WatchTestCases automatic-prefetch-plugin: TODO
1670 ⚪️ WatchTestCases automatic-prefetch-plugin-9485: TODO
1671 ⚪️ WatchTestCases define-plugin: TODO
1672 ⚪️ WatchTestCases dll-reference-plugin: TODO
1673 ⚪️ WatchTestCases mini-css-extract-plugin: TODO
1674 ⚪️ WatchTestCases module-concatenation-plugin: TODO
1675 ⚪️ WatchTestCases profiling-plugin: TODO
1676 ⚪️ WatchTestCases watch-ignore-plugin: TODO
1677 ⚪️ WatchTestCases missing-module: TODO
1678 ⚪️ WatchTestCases parse-failed-esm: TODO
1679 ⚪️ WatchTestCases in-loader: TODO
1680 ⚪️ WatchTestCases dynamic-import: TODO
1681 ⚪️ WatchTestCases static-import: TODO
1682 ⚪️ WatchTestCases caching-inner-source: TODO
1683 ⚪️ WatchTestCases provide-unsafe-cache: TODO
1684 ⚪️ WatchTestCases issue-7400: TODO
1685 ⚪️ WatchTestCases unable-to-snapshot: TODO
1686 ⚪️ WatchTestCases warnings-contribute-to-hash: TODO
1687 ⚪️ WatchTestCases caching: TODO
1724 🔴 TestCases normal amd define-needs-module: #4313
1725 🔴 TestCases normal amd namedModules: #4313
1726 🔴 TestCases normal amd namedModulesConstArrayDep: #4313
1763 🔴 TestCases normal chunks context: #4304
1764 🔴 TestCases normal chunks inline-options: #4306
1765 🔴 TestCases normal chunks named-chunks: #4304
1766 🔴 TestCases normal chunks nested-in-empty: #4304
1767 🔴 TestCases normal chunks parsing: #4304
1768 🔴 TestCases normal chunks runtime: #4304
1769 🔴 TestCases normal chunks var-inject-error-handler: #4304
1770 🟡 TestCases normal chunks weak-dependencies: #2787
1771 🔴 TestCases normal chunks weak-dependencies-context: #4315
1812 🔴 TestCases normal cjs-interop non-existing-export: #4323
1813 🟡 TestCases normal cjs-tree-shaking bailouts: #4313
1814 🟡 TestCases normal cjs-tree-shaking mutate: #4323
1815 🔴 TestCases normal cjs-tree-shaking reexports: #4424
1893 🔴 TestCases normal compile deduplication-bundle-loader: #4304
1894 🔴 TestCases normal compile error-hide-stack: #4326
1907 🔴 TestCases normal context import-meta-webpack-context: #4305
1908 🔴 TestCases normal context issue-10969: #4329
1909 🔴 TestCases normal context issue-5750: #4328
1954 🟡 TestCases normal errors crash-missing-import: #4348
1955 🟡 TestCases normal errors harmony-import-missing: #4348
1956 🟡 TestCases normal errors harmony-import-missing2: #4348
1957 🔴 TestCases normal errors load-module-cycle: #3738
1958 🔴 TestCases normal errors load-module-cycle-multiple: #3738
1959 🔴 TestCases normal errors load-module-error: #3738
1960 🟡 TestCases normal errors loader-error-warning: #4349
1961 🟡 TestCases normal errors mjs-non-fully-specified: #4348
1962 🟡 TestCases normal errors module-request: #4348
1967 🟡 TestCases normal esm import-meta: #4350
2035 🟡 TestCases normal json default-default-with-concatenation: #3823
2036 🔴 TestCases normal json import-assertions-type-json: #4358
2037 🔴 TestCases normal json import-by-name: #4323
2038 🟡 TestCases normal json import-by-name-with-concatenation: #3823, #4323
2039 🟡 TestCases normal json import-with-default-with-concatenation: #3823
2040 🟡 TestCases normal json reexport: #4323
2066 🔴 TestCases normal large big-assets: #3180
2067 ⚪️ TestCases normal large many-replacements: TODO
2068 🔴 TestCases normal loaders import-module: #4398
2069 🔴 TestCases normal loaders issue-10725: blocked by this.loadModule #3738
2070 🔴 TestCases normal loaders issue-2299: blocked by this.loadModule #3738
2071 🔴 TestCases normal loaders issue-4959: blocked by this.loadModule #3738
2072 🔴 TestCases normal loaders no-string: blocked by #3459
2073 🔴 TestCases normal loaders resolve: #3180
2074 🔴 TestCases normal loaders utils: #4397
2128 🟡 TestCases normal mjs non-enumerable: #4323
2129 🟡 TestCases normal mjs type-module: #3544, #5197
2175 🔴 TestCases normal nonce set-nonce: #4401
2176 🔴 TestCases normal optimize side-effects-reexport-start-unknown: new tree-shaking re-implementation
2236 🔴 TestCases normal parsing amd-rename: #4313
2237 🟡 TestCases normal parsing chunks: #4304
2238 🟡 TestCases normal parsing complex-require: #4304, #4313
2239 🔴 TestCases normal parsing context: #3346
2240 🔴 TestCases normal parsing declared-api: #4313
2241 🔴 TestCases normal parsing es6.nominimize: #4304
2242 🔴 TestCases normal parsing evaluate: #4424
2243 🔴 TestCases normal parsing evaluate-nullish: #4424
2244 🔴 TestCases normal parsing extract-amd: #4313
2245 🔴 TestCases normal parsing extract-amd.nominimize: #4313
2246 🔴 TestCases normal parsing extract-require: #4424
2247 🔴 TestCases normal parsing harmony-deep-exports: #4426
2248 🔴 TestCases normal parsing harmony-duplicate-export: #4323
2249 🔴 TestCases normal parsing harmony-export-import-specifier: #4426
2250 🔴 TestCases normal parsing harmony-export-precedence: #4323
2251 🔴 TestCases normal parsing harmony-info: #4323
2252 🔴 TestCases normal parsing harmony-injecting-order: #4313
2253 🔴 TestCases normal parsing harmony-reexport: new treeshaking re-implementation
2254 🔴 TestCases normal parsing harmony-star-conflict: #4118, #4323
2255 🔴 TestCases normal parsing issue-2084: #4313
2256 🔴 TestCases normal parsing issue-2600: #4348
2257 🔴 TestCases normal parsing issue-2641: #4313
2258 ⚪️ TestCases normal parsing issue-3252: TODO
2259 ⚪️ TestCases normal parsing issue-3273: TODO
2260 🔴 TestCases normal parsing issue-345: #4313
2261 🔴 TestCases normal parsing issue-387: #4313
2262 🔴 TestCases normal parsing issue-4596: #4424
2263 🔴 TestCases normal parsing issue-4940: #4313
2264 🔴 TestCases normal parsing issue-627: #4429
2265 🔴 TestCases normal parsing issue-758: #4313, #4304
2266 🔴 TestCases normal parsing local-modules: #4313
2267 🔴 TestCases normal parsing missing-export-warning-nested: #4323
2268 🔴 TestCases normal parsing nullish-coalescing: #4300
2269 🔴 TestCases normal parsing precreated-ast: #4442
2270 🔴 TestCases normal parsing renaming: #4313, #3346
2271 🔴 TestCases normal parsing resolve-weak-context: #4315
2272 🔴 TestCases normal parsing strict-mode: #4313
2273 🔴 TestCases normal parsing typeof: #4424
2274 🔴 TestCases normal parsing unsupported-amd: #4313
2684 🔴 TestCases normal resolving commomjs-local-module: #4313
2685 🔴 TestCases normal resolving context: #4397
2686 🔴 TestCases normal resolving data-uri: #4445
2687 🔴 TestCases normal resolving issue-2986: #4348
2717 🔴 TestCases normal runtime chunk-callback-order: #4313
2718 🔴 TestCases normal runtime error-handling: #4348
2719 🔴 TestCases normal runtime missing-module-exception: #4348
2720 🔴 TestCases normal runtime missing-module-syntax-error: #4348
2721 🔴 TestCases normal runtime module-caching: #4304
2742 ⚪️ TestCases normal scope-hoisting circular-root-export: TODO
2743 🟡 TestCases normal scope-hoisting json-reexport-6700: #4323
2744 ⚪️ TestCases normal scope-hoisting renaming-shorthand-5027: TODO
2919 ⚪️ TestCases normal side-effects dynamic-reexports: TODO
2956 ⚪️ TestCases normal wasm v128: TODO
3053 🔴 TestCases hot amd define-needs-module: #4313
3054 🔴 TestCases hot amd namedModules: #4313
3055 🔴 TestCases hot amd namedModulesConstArrayDep: #4313
3092 🔴 TestCases hot chunks context: #4304
3093 🔴 TestCases hot chunks inline-options: #4306
3094 🔴 TestCases hot chunks named-chunks: #4304
3095 🔴 TestCases hot chunks nested-in-empty: #4304
3096 🔴 TestCases hot chunks parsing: #4304
3097 🔴 TestCases hot chunks runtime: #4304
3098 🔴 TestCases hot chunks var-inject-error-handler: #4304
3099 🟡 TestCases hot chunks weak-dependencies: #2787
3100 🔴 TestCases hot chunks weak-dependencies-context: #4315
3141 🔴 TestCases hot cjs-interop non-existing-export: #4323
3142 🟡 TestCases hot cjs-tree-shaking bailouts: #4313
3143 🟡 TestCases hot cjs-tree-shaking mutate: #4323
3144 🔴 TestCases hot cjs-tree-shaking reexports: #4424
3222 🔴 TestCases hot compile deduplication-bundle-loader: #4304
3223 🔴 TestCases hot compile error-hide-stack: #4326
3236 🔴 TestCases hot context import-meta-webpack-context: #4305
3237 🔴 TestCases hot context issue-10969: #4329
3238 🔴 TestCases hot context issue-5750: #4328
3283 🟡 TestCases hot errors crash-missing-import: #4348
3284 🟡 TestCases hot errors harmony-import-missing: #4348
3285 🟡 TestCases hot errors harmony-import-missing2: #4348
3286 🔴 TestCases hot errors load-module-cycle: #3738
3287 🔴 TestCases hot errors load-module-cycle-multiple: #3738
3288 🔴 TestCases hot errors load-module-error: #3738
3289 🟡 TestCases hot errors loader-error-warning: #4349
3290 🟡 TestCases hot errors mjs-non-fully-specified: #4348
3291 🟡 TestCases hot errors module-request: #4348
3296 🟡 TestCases hot esm import-meta: #4350
3364 🟡 TestCases hot json default-default-with-concatenation: #3823
3365 🔴 TestCases hot json import-assertions-type-json: #4358
3366 🔴 TestCases hot json import-by-name: #4323
3367 🟡 TestCases hot json import-by-name-with-concatenation: #3823, #4323
3368 🟡 TestCases hot json import-with-default-with-concatenation: #3823
3369 🟡 TestCases hot json reexport: #4323
3395 🔴 TestCases hot large big-assets: #3180
3396 ⚪️ TestCases hot large many-replacements: TODO
3397 🔴 TestCases hot loaders import-module: #4398
3398 🔴 TestCases hot loaders issue-10725: blocked by this.loadModule #3738
3399 🔴 TestCases hot loaders issue-2299: blocked by this.loadModule #3738
3400 🔴 TestCases hot loaders issue-4959: blocked by this.loadModule #3738
3401 🔴 TestCases hot loaders no-string: blocked by #3459
3402 🔴 TestCases hot loaders resolve: #3180
3403 🔴 TestCases hot loaders utils: #4397
3457 🟡 TestCases hot mjs non-enumerable: #4323
3458 🟡 TestCases hot mjs type-module: #3544, #5197
3504 🔴 TestCases hot nonce set-nonce: #4401
3505 🔴 TestCases hot optimize side-effects-reexport-start-unknown: new tree-shaking re-impl...[Comment body truncated]

@JSerFeng JSerFeng marked this pull request as ready for review March 19, 2024 07:45
@JSerFeng
Copy link
Collaborator Author

!canary

Copy link
Contributor

0.5.7-canary-9e2ce60-20240320055406

Copy link

netlify bot commented Mar 28, 2024

Deploy Preview for rspack canceled.

Name Link
🔨 Latest commit fa8e500
🔍 Latest deploy log https://app.netlify.com/sites/rspack/deploys/6645c7cc83400a0007acc4c9

@hardfist
Copy link
Contributor

we can try it on rspress and see the performance gain, cc @chenjiahan

@9aoy 9aoy mentioned this pull request May 14, 2024
@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 3 times, most recently from d8fe4a5 to 4a6c62e Compare May 14, 2024 14:03
@chenjiahan
Copy link
Member

@Timeless0911 can you try to enable lazy compilation in Rspress and give some feedbacks? ❤️

@JSerFeng JSerFeng force-pushed the feat/lazy-compilation branch 6 times, most recently from 2a1c9c7 to 14bc877 Compare May 16, 2024 08:18
@Timeless0911
Copy link
Collaborator

Sync some context for public, now two issues have been discovered yet

  1. HMR does not take effect when first screen is loaded, causing the page to be actively refreshed to see it
  2. The optimize effect of huge doc website projects is not obvious

@JSerFeng is tracking on it.

@JSerFeng JSerFeng merged commit 4917589 into main May 20, 2024
29 checks passed
@JSerFeng JSerFeng deleted the feat/lazy-compilation branch May 20, 2024 08:31
@JSerFeng
Copy link
Collaborator Author

JSerFeng commented May 20, 2024

HMR does not take effect when first screen is loaded, causing the page to be actively refreshed to see it

rsbuild has its own entry for hmr runtime, and that entry has been lazy compiled because of lazyCompilation, so the hmr didn't work as expected because its runtime has not been injected.

The optimize effect of huge doc website projects is not obvious

After fixing some other bugs that causing the performance issue, the build time decreased from 4 seconds to 1 seconds

@JSerFeng
Copy link
Collaborator Author

JSerFeng commented May 20, 2024

rsbuild could encapsulate this part of the logic and put rsbuild's own entry into test.
eg.

module.exports = {
  experiments: {
    lazyCompilation: {
      test(module) {
        const name = module.nameForCondition();
        const isHmrEntry =
                name.includes('/client/hmr') ||
                name.includes('/client/reactRefreshEntry.js');
        return !isHmrEntry;
      }
    }
  }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release: feature release: feature related release(mr only)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants