@depup/webpack 5.106.1-depup.0 → 5.109.2-depup.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (669) hide show
  1. package/README.md +9 -11
  2. package/bin/webpack.js +12 -0
  3. package/changes.json +16 -24
  4. package/hot/dev-server.js +2 -0
  5. package/lib/APIPlugin.js +60 -35
  6. package/lib/AsyncDependenciesBlock.js +3 -0
  7. package/lib/AutomaticPrefetchPlugin.js +6 -1
  8. package/lib/BannerPlugin.js +13 -5
  9. package/lib/Cache.js +27 -5
  10. package/lib/CacheFacade.js +41 -0
  11. package/lib/Chunk.js +71 -25
  12. package/lib/ChunkGraph.js +153 -19
  13. package/lib/ChunkGroup.js +115 -28
  14. package/lib/ChunkTemplate.js +9 -0
  15. package/lib/CircularModulesPlugin.js +190 -0
  16. package/lib/CleanPlugin.js +27 -28
  17. package/lib/CodeGenerationResults.js +19 -0
  18. package/lib/CompatibilityPlugin.js +85 -37
  19. package/lib/Compilation.js +656 -112
  20. package/lib/Compiler.js +109 -35
  21. package/lib/ConcatenationScope.js +34 -4
  22. package/lib/ConditionalInitFragment.js +6 -0
  23. package/lib/ConstPlugin.js +15 -12
  24. package/lib/ContextExclusionPlugin.js +3 -1
  25. package/lib/ContextModule.js +345 -55
  26. package/lib/ContextModuleFactory.js +193 -51
  27. package/lib/ContextReplacementPlugin.js +8 -1
  28. package/lib/DefinePlugin.js +537 -139
  29. package/lib/DependenciesBlock.js +6 -1
  30. package/lib/Dependency.js +159 -11
  31. package/lib/DependencyTemplate.js +7 -1
  32. package/lib/DependencyTemplates.js +4 -0
  33. package/lib/DotenvPlugin.js +3 -0
  34. package/lib/DynamicEntryPlugin.js +3 -1
  35. package/lib/EntryOptionPlugin.js +42 -2
  36. package/lib/EntryPlugin.js +4 -1
  37. package/lib/Entrypoint.js +5 -1
  38. package/lib/EnvironmentPlugin.js +3 -2
  39. package/lib/ErrorHelpers.js +7 -0
  40. package/lib/EvalDevToolModulePlugin.js +3 -1
  41. package/lib/EvalSourceMapDevToolPlugin.js +11 -11
  42. package/lib/ExportsInfo.js +421 -113
  43. package/lib/ExportsInfoApiPlugin.js +4 -3
  44. package/lib/ExternalModule.js +381 -80
  45. package/lib/ExternalModuleFactoryPlugin.js +75 -3
  46. package/lib/ExternalsPlugin.js +3 -1
  47. package/lib/FileSystemInfo.js +701 -175
  48. package/lib/FlagAllModulesAsUsedPlugin.js +3 -6
  49. package/lib/FlagDependencyExportsPlugin.js +82 -9
  50. package/lib/FlagDependencyUsagePlugin.js +115 -8
  51. package/lib/FlagEntryExportAsUsedPlugin.js +4 -1
  52. package/lib/Generator.js +24 -3
  53. package/lib/HotModuleReplacementPlugin.js +110 -44
  54. package/lib/IgnorePlugin.js +5 -2
  55. package/lib/IgnoreWarningsPlugin.js +2 -1
  56. package/lib/InitFragment.js +33 -30
  57. package/lib/JavascriptMetaInfoPlugin.js +9 -6
  58. package/lib/LazyBarrel.js +389 -0
  59. package/lib/LibraryTemplatePlugin.js +2 -1
  60. package/lib/LoaderOptionsPlugin.js +3 -1
  61. package/lib/LoaderTargetPlugin.js +3 -1
  62. package/lib/MainTemplate.js +15 -0
  63. package/lib/ManifestPlugin.js +9 -2
  64. package/lib/Module.js +121 -57
  65. package/lib/ModuleFactory.js +6 -1
  66. package/lib/ModuleFilenameHelpers.js +18 -4
  67. package/lib/ModuleGraph.js +69 -2
  68. package/lib/ModuleGraphConnection.js +9 -0
  69. package/lib/ModuleInfoHeaderPlugin.js +5 -0
  70. package/lib/ModuleNotFoundError.js +3 -83
  71. package/lib/ModuleProfile.js +27 -1
  72. package/lib/ModuleSourceTypeConstants.js +52 -19
  73. package/lib/ModuleTemplate.js +10 -0
  74. package/lib/ModuleTypeConstants.js +20 -4
  75. package/lib/MultiCompiler.js +59 -4
  76. package/lib/MultiStats.js +9 -0
  77. package/lib/MultiWatching.js +6 -0
  78. package/lib/NoEmitOnErrorsPlugin.js +1 -1
  79. package/lib/NodeStuffPlugin.js +78 -46
  80. package/lib/NormalModule.js +519 -206
  81. package/lib/NormalModuleFactory.js +156 -31
  82. package/lib/NormalModuleReplacementPlugin.js +3 -1
  83. package/lib/NullFactory.js +1 -0
  84. package/lib/OptionsApply.js +1 -0
  85. package/lib/Parser.js +3 -1
  86. package/lib/PlatformPlugin.js +2 -1
  87. package/lib/PrefetchPlugin.js +4 -1
  88. package/lib/ProgressPlugin.js +351 -161
  89. package/lib/ProvidePlugin.js +6 -3
  90. package/lib/RawModule.js +32 -16
  91. package/lib/RecordIdsPlugin.js +9 -0
  92. package/lib/RequestShortener.js +8 -0
  93. package/lib/ResolverFactory.js +5 -0
  94. package/lib/RuntimeGlobals.js +58 -5
  95. package/lib/RuntimeModule.js +22 -7
  96. package/lib/RuntimePlugin.js +123 -118
  97. package/lib/RuntimeTemplate.js +616 -37
  98. package/lib/SelfModuleFactory.js +3 -0
  99. package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
  100. package/lib/SourceMapDevToolPlugin.js +341 -63
  101. package/lib/Stats.js +6 -0
  102. package/lib/Template.js +52 -6
  103. package/lib/TemplatedPathPlugin.js +505 -138
  104. package/lib/UseStrictPlugin.js +3 -2
  105. package/lib/WarnCaseSensitiveModulesPlugin.js +72 -3
  106. package/lib/WarnDeprecatedOptionPlugin.js +6 -2
  107. package/lib/WarnNoModeSetPlugin.js +18 -2
  108. package/lib/WatchIgnorePlugin.js +5 -1
  109. package/lib/Watching.js +25 -3
  110. package/lib/WebpackError.js +3 -74
  111. package/lib/WebpackIsIncludedPlugin.js +4 -2
  112. package/lib/WebpackOptionsApply.js +88 -25
  113. package/lib/WebpackOptionsDefaulter.js +1 -0
  114. package/lib/asset/AssetBytesGenerator.js +28 -10
  115. package/lib/asset/AssetBytesParser.js +1 -0
  116. package/lib/asset/AssetGenerator.js +199 -60
  117. package/lib/asset/AssetModule.js +47 -0
  118. package/lib/asset/AssetModulesPlugin.js +115 -24
  119. package/lib/asset/AssetParser.js +4 -2
  120. package/lib/asset/AssetSourceGenerator.js +26 -8
  121. package/lib/asset/AssetSourceParser.js +1 -0
  122. package/lib/asset/RawDataUrlModule.js +23 -13
  123. package/lib/asset/WebManifestGenerator.js +164 -0
  124. package/lib/asset/WebManifestParser.js +130 -0
  125. package/lib/async-modules/AsyncModuleHelpers.js +1 -0
  126. package/lib/async-modules/AwaitDependenciesInitFragment.js +18 -4
  127. package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
  128. package/lib/async-modules/isGeneratorLowered.js +26 -0
  129. package/lib/buildChunkGraph.js +107 -15
  130. package/lib/bun/BunTargetPlugin.js +42 -0
  131. package/lib/cache/AddBuildDependenciesPlugin.js +3 -1
  132. package/lib/cache/AddManagedPathsPlugin.js +5 -1
  133. package/lib/cache/IdleFileCachePlugin.js +6 -1
  134. package/lib/cache/MemoryCachePlugin.js +1 -1
  135. package/lib/cache/MemoryWithGcCachePlugin.js +4 -1
  136. package/lib/cache/PackFileCacheStrategy.js +302 -12
  137. package/lib/cache/ResolverCachePlugin.js +12 -1
  138. package/lib/cache/getLazyHashedEtag.js +13 -2
  139. package/lib/cache/mergeEtags.js +4 -0
  140. package/lib/cli.js +142 -20
  141. package/lib/config/browserslistTargetHandler.js +141 -0
  142. package/lib/config/defaults.js +612 -43
  143. package/lib/config/defineConfig.js +31 -0
  144. package/lib/config/normalization.js +46 -1
  145. package/lib/config/target.js +200 -2
  146. package/lib/container/ContainerEntryDependency.js +2 -0
  147. package/lib/container/ContainerEntryModule.js +27 -14
  148. package/lib/container/ContainerEntryModuleFactory.js +1 -0
  149. package/lib/container/ContainerExposedDependency.js +6 -2
  150. package/lib/container/ContainerPlugin.js +2 -1
  151. package/lib/container/ContainerReferencePlugin.js +3 -2
  152. package/lib/container/FallbackDependency.js +9 -7
  153. package/lib/container/FallbackItemDependency.js +1 -0
  154. package/lib/container/FallbackModule.js +22 -9
  155. package/lib/container/FallbackModuleFactory.js +1 -0
  156. package/lib/container/HoistContainerReferencesPlugin.js +47 -55
  157. package/lib/container/ModuleFederationPlugin.js +21 -29
  158. package/lib/container/RemoteModule.js +33 -10
  159. package/lib/container/RemoteRuntimeModule.js +15 -12
  160. package/lib/container/RemoteToExternalDependency.js +1 -0
  161. package/lib/container/options.js +7 -0
  162. package/lib/css/CssGenerator.js +540 -272
  163. package/lib/css/CssInjectStyleRuntimeModule.js +86 -70
  164. package/lib/css/CssLoadingRuntimeModule.js +173 -81
  165. package/lib/{CssModule.js → css/CssModule.js} +72 -37
  166. package/lib/css/CssModulesPlugin.js +371 -208
  167. package/lib/css/CssParser.js +3538 -1963
  168. package/lib/css/syntax.js +4155 -0
  169. package/lib/debug/ProfilingPlugin.js +33 -2
  170. package/lib/deno/DenoTargetPlugin.js +41 -0
  171. package/lib/dependencies/AMDDefineDependency.js +29 -17
  172. package/lib/dependencies/AMDDefineDependencyParserPlugin.js +19 -6
  173. package/lib/dependencies/AMDPlugin.js +6 -3
  174. package/lib/dependencies/AMDRequireArrayDependency.js +13 -11
  175. package/lib/dependencies/AMDRequireContextDependency.js +10 -11
  176. package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
  177. package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +28 -14
  178. package/lib/dependencies/AMDRequireDependency.js +28 -20
  179. package/lib/dependencies/AMDRequireItemDependency.js +1 -0
  180. package/lib/dependencies/AMDRuntimeModules.js +3 -0
  181. package/lib/dependencies/CachedConstDependency.js +9 -1
  182. package/lib/dependencies/CommonJsDependencyHelpers.js +104 -0
  183. package/lib/dependencies/CommonJsExportRequireDependency.js +157 -38
  184. package/lib/dependencies/CommonJsExportsDependency.js +74 -20
  185. package/lib/dependencies/CommonJsExportsParserPlugin.js +246 -15
  186. package/lib/dependencies/CommonJsFullRequireDependency.js +91 -27
  187. package/lib/dependencies/CommonJsImportsParserPlugin.js +189 -24
  188. package/lib/dependencies/CommonJsPlugin.js +7 -4
  189. package/lib/dependencies/CommonJsRequireContextDependency.js +13 -13
  190. package/lib/dependencies/CommonJsRequireDependency.js +135 -13
  191. package/lib/dependencies/CommonJsSelfReferenceDependency.js +60 -16
  192. package/lib/dependencies/ConstDependency.js +22 -12
  193. package/lib/dependencies/ContextDependency.js +13 -2
  194. package/lib/dependencies/ContextDependencyHelpers.js +7 -4
  195. package/lib/dependencies/ContextDependencyTemplateAsId.js +2 -1
  196. package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
  197. package/lib/dependencies/ContextElementDependency.js +27 -14
  198. package/lib/dependencies/CreateRequireParserPlugin.js +14 -7
  199. package/lib/dependencies/CreateScriptUrlDependency.js +9 -7
  200. package/lib/dependencies/CriticalDependencyWarning.js +3 -1
  201. package/lib/dependencies/CssIcssExportDependency.js +681 -367
  202. package/lib/dependencies/CssIcssImportDependency.js +62 -17
  203. package/lib/dependencies/CssIcssSymbolDependency.js +36 -17
  204. package/lib/dependencies/CssImportDependency.js +37 -1
  205. package/lib/dependencies/CssUrlDependency.js +87 -14
  206. package/lib/dependencies/DelegatedSourceDependency.js +1 -0
  207. package/lib/dependencies/DllEntryDependency.js +12 -13
  208. package/lib/dependencies/DynamicExports.js +5 -0
  209. package/lib/dependencies/EntryDependency.js +1 -0
  210. package/lib/dependencies/ExportBindingInitFragment.js +164 -0
  211. package/lib/dependencies/ExportsInfoDependency.js +18 -12
  212. package/lib/dependencies/ExternalModuleDependency.js +13 -5
  213. package/lib/dependencies/ExternalModuleInitFragment.js +10 -5
  214. package/lib/dependencies/ExternalModuleInitFragmentDependency.js +19 -12
  215. package/lib/dependencies/HarmonyAcceptDependency.js +24 -26
  216. package/lib/dependencies/HarmonyAcceptImportDependency.js +2 -0
  217. package/lib/dependencies/HarmonyCompatibilityDependency.js +33 -14
  218. package/lib/dependencies/HarmonyDetectionParserPlugin.js +108 -30
  219. package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +34 -3
  220. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +70 -33
  221. package/lib/dependencies/HarmonyExportExpressionDependency.js +133 -43
  222. package/lib/dependencies/HarmonyExportHeaderDependency.js +11 -9
  223. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +268 -44
  224. package/lib/dependencies/HarmonyExportInitFragment.js +28 -20
  225. package/lib/dependencies/HarmonyExportSpecifierDependency.js +88 -18
  226. package/lib/dependencies/HarmonyExports.js +6 -1
  227. package/lib/dependencies/HarmonyImportDependency.js +60 -4
  228. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +139 -146
  229. package/lib/dependencies/HarmonyImportGuard.js +427 -0
  230. package/lib/dependencies/HarmonyImportSideEffectDependency.js +22 -1
  231. package/lib/dependencies/HarmonyImportSpecifierDependency.js +146 -24
  232. package/lib/{HarmonyLinkingError.js → dependencies/HarmonyLinkingError.js} +6 -3
  233. package/lib/dependencies/HarmonyModulesPlugin.js +11 -1
  234. package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +2 -1
  235. package/lib/dependencies/HtmlEntryDependency.js +1295 -0
  236. package/lib/dependencies/HtmlInlineHtmlDependency.js +107 -0
  237. package/lib/dependencies/HtmlInlineScriptDependency.js +126 -0
  238. package/lib/dependencies/HtmlInlineStyleDependency.js +152 -0
  239. package/lib/dependencies/HtmlSourceDependency.js +172 -0
  240. package/lib/dependencies/ImportContextDependency.js +9 -9
  241. package/lib/dependencies/ImportDependency.js +92 -3
  242. package/lib/dependencies/ImportEagerDependency.js +2 -0
  243. package/lib/dependencies/ImportMetaContextDependency.js +1 -0
  244. package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +35 -19
  245. package/lib/dependencies/ImportMetaContextPlugin.js +40 -8
  246. package/lib/dependencies/ImportMetaGlobDependency.js +81 -0
  247. package/lib/dependencies/ImportMetaGlobDependencyParserPlugin.js +78 -0
  248. package/lib/dependencies/ImportMetaGlobHelpers.js +660 -0
  249. package/lib/dependencies/ImportMetaHotAcceptDependency.js +2 -0
  250. package/lib/dependencies/ImportMetaHotDeclineDependency.js +2 -0
  251. package/lib/dependencies/ImportMetaPlugin.js +595 -209
  252. package/lib/dependencies/ImportMetaResolveDependency.js +90 -0
  253. package/lib/dependencies/ImportParserPlugin.js +114 -27
  254. package/lib/dependencies/ImportPhase.js +17 -11
  255. package/lib/dependencies/ImportPlugin.js +2 -1
  256. package/lib/dependencies/ImportWeakDependency.js +3 -0
  257. package/lib/dependencies/JsonExportsDependency.js +15 -10
  258. package/lib/dependencies/LoaderDependency.js +2 -0
  259. package/lib/dependencies/LoaderImportDependency.js +3 -0
  260. package/lib/dependencies/LoaderPlugin.js +9 -2
  261. package/lib/dependencies/LocalModule.js +15 -12
  262. package/lib/dependencies/LocalModuleDependency.js +15 -13
  263. package/lib/dependencies/LocalModulesHelpers.js +3 -0
  264. package/lib/dependencies/ModuleDecoratorDependency.js +16 -10
  265. package/lib/dependencies/ModuleDependency.js +14 -0
  266. package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
  267. package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
  268. package/lib/dependencies/ModuleHotAcceptDependency.js +2 -0
  269. package/lib/dependencies/ModuleHotDeclineDependency.js +2 -0
  270. package/lib/dependencies/ModuleInitFragmentDependency.js +19 -11
  271. package/lib/dependencies/NullDependency.js +2 -0
  272. package/lib/dependencies/PrefetchDependency.js +1 -0
  273. package/lib/dependencies/ProvidedDependency.js +36 -27
  274. package/lib/dependencies/PureExpressionDependency.js +14 -10
  275. package/lib/dependencies/RequireContextDependency.js +1 -0
  276. package/lib/dependencies/RequireContextDependencyParserPlugin.js +2 -1
  277. package/lib/dependencies/RequireContextPlugin.js +2 -1
  278. package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
  279. package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +4 -6
  280. package/lib/dependencies/RequireEnsureDependency.js +16 -13
  281. package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
  282. package/lib/dependencies/RequireEnsurePlugin.js +2 -1
  283. package/lib/dependencies/RequireHeaderDependency.js +7 -4
  284. package/lib/dependencies/RequireIncludeDependency.js +2 -0
  285. package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +11 -12
  286. package/lib/dependencies/RequireIncludePlugin.js +2 -1
  287. package/lib/{RequireJsStuffPlugin.js → dependencies/RequireJsStuffPlugin.js} +9 -8
  288. package/lib/dependencies/RequireResolveContextDependency.js +10 -11
  289. package/lib/dependencies/RequireResolveDependency.js +2 -0
  290. package/lib/dependencies/RequireResolveHeaderDependency.js +8 -5
  291. package/lib/dependencies/RuntimeRequirementsDependency.js +11 -8
  292. package/lib/dependencies/StaticExportsDependency.js +13 -10
  293. package/lib/dependencies/SystemPlugin.js +9 -6
  294. package/lib/dependencies/SystemRuntimeModule.js +1 -0
  295. package/lib/dependencies/TopLevelAwaitDependency.js +93 -0
  296. package/lib/dependencies/URLContextDependency.js +8 -7
  297. package/lib/dependencies/URLDependency.js +157 -33
  298. package/lib/dependencies/URLPlugin.js +2 -0
  299. package/lib/dependencies/UnsupportedDependency.js +12 -13
  300. package/lib/dependencies/WebAssemblyExportImportedDependency.js +15 -16
  301. package/lib/dependencies/WebAssemblyImportDependency.js +19 -18
  302. package/lib/dependencies/WebpackIsIncludedDependency.js +3 -0
  303. package/lib/dependencies/{WorkerPlugin.js → WorkerAndWorkletPlugin.js} +364 -114
  304. package/lib/dependencies/WorkerDependency.js +111 -27
  305. package/lib/dependencies/WorkletDependency.js +278 -0
  306. package/lib/dependencies/getFunctionExpression.js +1 -0
  307. package/lib/dependencies/processExportInfo.js +14 -11
  308. package/lib/{DelegatedModule.js → dll/DelegatedModule.js} +71 -44
  309. package/lib/{DelegatedModuleFactoryPlugin.js → dll/DelegatedModuleFactoryPlugin.js} +27 -4
  310. package/lib/{DelegatedPlugin.js → dll/DelegatedPlugin.js} +5 -3
  311. package/lib/{DllEntryPlugin.js → dll/DllEntryPlugin.js} +9 -5
  312. package/lib/{DllModule.js → dll/DllModule.js} +36 -24
  313. package/lib/{DllModuleFactory.js → dll/DllModuleFactory.js} +5 -4
  314. package/lib/{DllPlugin.js → dll/DllPlugin.js} +24 -6
  315. package/lib/{DllReferencePlugin.js → dll/DllReferencePlugin.js} +26 -18
  316. package/lib/{LibManifestPlugin.js → dll/LibManifestPlugin.js} +14 -10
  317. package/lib/electron/ElectronTargetPlugin.js +24 -5
  318. package/lib/{AbstractMethodError.js → errors/AbstractMethodError.js} +10 -1
  319. package/lib/{AsyncDependencyToInitialChunkError.js → errors/AsyncDependencyToInitialChunkError.js} +8 -3
  320. package/lib/errors/BuildCycleError.js +1 -1
  321. package/lib/{ChunkRenderError.js → errors/ChunkRenderError.js} +1 -1
  322. package/lib/{CodeGenerationError.js → errors/CodeGenerationError.js} +1 -1
  323. package/lib/{CommentCompilationWarning.js → errors/CommentCompilationWarning.js} +9 -3
  324. package/lib/{ConcurrentCompilationError.js → errors/ConcurrentCompilationError.js} +5 -2
  325. package/lib/{EnvironmentNotSupportAsyncWarning.js → errors/EnvironmentNotSupportAsyncWarning.js} +5 -5
  326. package/lib/{HookWebpackError.js → errors/HookWebpackError.js} +20 -16
  327. package/lib/{IgnoreErrorModuleFactory.js → errors/IgnoreErrorModuleFactory.js} +7 -4
  328. package/lib/{InvalidDependenciesModuleWarning.js → errors/InvalidDependenciesModuleWarning.js} +6 -3
  329. package/lib/errors/JSONParseError.js +115 -0
  330. package/lib/errors/LoaderLoadingError.js +20 -0
  331. package/lib/{ModuleBuildError.js → errors/ModuleBuildError.js} +22 -16
  332. package/lib/{ModuleDependencyError.js → errors/ModuleDependencyError.js} +10 -3
  333. package/lib/{ModuleDependencyWarning.js → errors/ModuleDependencyWarning.js} +13 -5
  334. package/lib/{ModuleError.js → errors/ModuleError.js} +10 -14
  335. package/lib/{ModuleHashingError.js → errors/ModuleHashingError.js} +5 -1
  336. package/lib/errors/ModuleNotFoundError.js +94 -0
  337. package/lib/errors/ModuleParseError.js +141 -0
  338. package/lib/{ModuleRestoreError.js → errors/ModuleRestoreError.js} +4 -1
  339. package/lib/{ModuleStoreError.js → errors/ModuleStoreError.js} +5 -1
  340. package/lib/{ModuleWarning.js → errors/ModuleWarning.js} +13 -14
  341. package/lib/{NodeStuffInWebError.js → errors/NodeStuffInWebError.js} +7 -5
  342. package/lib/errors/NonErrorEmittedError.js +30 -0
  343. package/lib/{UnhandledSchemeError.js → errors/UnhandledSchemeError.js} +9 -2
  344. package/lib/{UnsupportedFeatureWarning.js → errors/UnsupportedFeatureWarning.js} +4 -3
  345. package/lib/errors/WebpackError.js +84 -0
  346. package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
  347. package/lib/esm/ModuleChunkFormatPlugin.js +52 -15
  348. package/lib/esm/ModuleChunkLoadingPlugin.js +11 -3
  349. package/lib/esm/ModuleChunkLoadingRuntimeModule.js +80 -52
  350. package/lib/hmr/HotModuleReplacement.runtime.js +175 -30
  351. package/lib/hmr/HotModuleReplacementRuntimeModule.js +8 -0
  352. package/lib/hmr/JavascriptHotModuleReplacement.runtime.js +173 -26
  353. package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
  354. package/lib/hmr/LazyCompilationPlugin.js +154 -7
  355. package/lib/hmr/lazyCompilationBackend.js +53 -12
  356. package/lib/html/HtmlGenerator.js +1490 -0
  357. package/lib/html/HtmlModule.js +41 -0
  358. package/lib/html/HtmlModulesPlugin.js +1129 -0
  359. package/lib/html/HtmlParser.js +1970 -0
  360. package/lib/html/favicon.svg +1 -0
  361. package/lib/html/syntax.js +9106 -0
  362. package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
  363. package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
  364. package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
  365. package/lib/ids/HashedModuleIdsPlugin.js +2 -1
  366. package/lib/ids/IdHelpers.js +49 -12
  367. package/lib/ids/NamedChunkIdsPlugin.js +3 -1
  368. package/lib/ids/NamedModuleIdsPlugin.js +3 -1
  369. package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
  370. package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
  371. package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
  372. package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
  373. package/lib/ids/SyncModuleIdsPlugin.js +3 -1
  374. package/lib/index.js +66 -15
  375. package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +5 -6
  376. package/lib/javascript/BasicEvaluatedExpression.js +370 -49
  377. package/lib/javascript/ChunkFormatHelpers.js +2 -1
  378. package/lib/javascript/ChunkHelpers.js +1 -0
  379. package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
  380. package/lib/javascript/EnableChunkLoadingPlugin.js +6 -1
  381. package/lib/javascript/JavascriptGenerator.js +213 -51
  382. package/lib/javascript/JavascriptModule.js +54 -0
  383. package/lib/javascript/JavascriptModulesPlugin.js +628 -198
  384. package/lib/javascript/JavascriptParser.js +1334 -471
  385. package/lib/javascript/JavascriptParserHelpers.js +10 -7
  386. package/lib/javascript/StartupHelpers.js +5 -0
  387. package/lib/javascript/syntax.js +5037 -0
  388. package/lib/json/JsonData.js +5 -0
  389. package/lib/json/JsonGenerator.js +21 -0
  390. package/lib/json/JsonModule.js +40 -0
  391. package/lib/json/JsonModulesPlugin.js +8 -1
  392. package/lib/json/JsonParser.js +18 -27
  393. package/lib/library/AbstractLibraryPlugin.js +17 -2
  394. package/lib/library/AmdLibraryPlugin.js +8 -0
  395. package/lib/library/AssignLibraryPlugin.js +21 -3
  396. package/lib/library/EnableLibraryPlugin.js +8 -2
  397. package/lib/library/ExportPropertyLibraryPlugin.js +10 -0
  398. package/lib/{FalseIIFEUmdWarning.js → library/FalseIIFEUmdWarning.js} +2 -1
  399. package/lib/library/JsonpLibraryPlugin.js +8 -0
  400. package/lib/library/ModuleLibraryPlugin.js +154 -7
  401. package/lib/library/SystemLibraryPlugin.js +11 -3
  402. package/lib/library/UmdLibraryPlugin.js +16 -0
  403. package/lib/loaders/LoaderRunner.js +714 -0
  404. package/lib/loaders/loadLoader.js +100 -0
  405. package/lib/logging/Logger.js +17 -0
  406. package/lib/logging/createConsoleLogger.js +7 -0
  407. package/lib/logging/runtime.js +2 -0
  408. package/lib/logging/truncateArgs.js +2 -0
  409. package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
  410. package/lib/node/NodeEnvironmentPlugin.js +7 -3
  411. package/lib/node/NodeSourcePlugin.js +1 -1
  412. package/lib/node/NodeTargetPlugin.js +4 -63
  413. package/lib/node/NodeTemplatePlugin.js +3 -1
  414. package/lib/node/NodeWatchFileSystem.js +40 -22
  415. package/lib/node/ReadFileChunkLoadingRuntimeModule.js +13 -9
  416. package/lib/node/ReadFileCompileAsyncWasmPlugin.js +33 -3
  417. package/lib/node/ReadFileCompileWasmPlugin.js +28 -3
  418. package/lib/node/RequireChunkLoadingRuntimeModule.js +21 -16
  419. package/lib/node/nodeBuiltins.js +80 -0
  420. package/lib/node/nodeConsole.js +116 -64
  421. package/lib/optimize/AggressiveMergingPlugin.js +22 -16
  422. package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
  423. package/lib/optimize/ConcatenatedModule.js +603 -130
  424. package/lib/optimize/ConstExportsPlugin.js +211 -0
  425. package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
  426. package/lib/optimize/FlagIncludedChunksPlugin.js +15 -4
  427. package/lib/optimize/InlineExports.js +178 -0
  428. package/lib/optimize/InnerGraph.js +374 -262
  429. package/lib/optimize/InnerGraphPlugin.js +246 -117
  430. package/lib/optimize/LimitChunkCountPlugin.js +9 -0
  431. package/lib/optimize/MangleExportsPlugin.js +5 -1
  432. package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
  433. package/lib/optimize/MinChunkSizePlugin.js +2 -1
  434. package/lib/optimize/MinMaxSizeWarning.js +5 -4
  435. package/lib/optimize/ModuleConcatenationPlugin.js +229 -55
  436. package/lib/optimize/RealContentHashPlugin.js +130 -52
  437. package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
  438. package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
  439. package/lib/optimize/RuntimeChunkPlugin.js +2 -1
  440. package/lib/optimize/SideEffectsFlagPlugin.js +381 -55
  441. package/lib/optimize/SplitChunksPlugin.js +200 -50
  442. package/lib/performance/AssetsOverSizeLimitWarning.js +3 -2
  443. package/lib/performance/EntrypointsOverSizeLimitWarning.js +3 -2
  444. package/lib/performance/NoAsyncChunksWarning.js +5 -3
  445. package/lib/performance/SizeLimitsPlugin.js +8 -2
  446. package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
  447. package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +21 -0
  448. package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
  449. package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +5 -1
  450. package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +25 -13
  451. package/lib/prefetch/ResourceHintPlugin.js +687 -0
  452. package/lib/prefetch/ResourceHintRuntimeModule.js +149 -0
  453. package/lib/prefetch/StartupAssetHintRuntimeModule.js +210 -0
  454. package/lib/prefetch/parseResourceHintOptions.js +103 -0
  455. package/lib/rules/BasicEffectRulePlugin.js +3 -0
  456. package/lib/rules/BasicMatcherRulePlugin.js +3 -0
  457. package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
  458. package/lib/rules/RuleSetCompiler.js +132 -0
  459. package/lib/rules/UseEffectRulePlugin.js +10 -3
  460. package/lib/runtime/AsyncModuleGeneratorRuntimeModule.js +56 -0
  461. package/lib/runtime/AsyncModuleRuntimeModule.js +52 -33
  462. package/lib/runtime/AutoPublicPathRuntimeModule.js +22 -9
  463. package/lib/runtime/BaseUriRuntimeModule.js +1 -0
  464. package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
  465. package/lib/runtime/CommonJsWrapRuntimeModule.js +37 -0
  466. package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +2 -1
  467. package/lib/runtime/CompatRuntimeModule.js +2 -0
  468. package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +7 -4
  469. package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
  470. package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
  471. package/lib/runtime/DefinePropertyGettersRuntimeModule.js +34 -4
  472. package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
  473. package/lib/runtime/GetChunkFilenameRuntimeModule.js +88 -8
  474. package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
  475. package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
  476. package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +2 -1
  477. package/lib/runtime/GetWorkletBootstrapRuntimeModule.js +59 -0
  478. package/lib/runtime/GlobalRuntimeModule.js +1 -0
  479. package/lib/runtime/HasOwnPropertyRuntimeModule.js +2 -1
  480. package/lib/runtime/HelperRuntimeModule.js +5 -0
  481. package/lib/runtime/LoadScriptRuntimeModule.js +28 -37
  482. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +354 -37
  483. package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +2 -1
  484. package/lib/runtime/NonceRuntimeModule.js +1 -0
  485. package/lib/runtime/OnChunksLoadedRuntimeModule.js +5 -4
  486. package/lib/runtime/PublicPathRuntimeModule.js +1 -0
  487. package/lib/runtime/RelativeUrlRuntimeModule.js +4 -2
  488. package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
  489. package/lib/runtime/SetAnonymousDefaultNameRuntimeModule.js +38 -0
  490. package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
  491. package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +2 -1
  492. package/lib/runtime/StartupEntrypointRuntimeModule.js +5 -3
  493. package/lib/runtime/SystemContextRuntimeModule.js +1 -0
  494. package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
  495. package/lib/runtime/WorkerRuntimeModule.js +33 -0
  496. package/lib/schemes/DataUriPlugin.js +14 -2
  497. package/lib/schemes/FileUriPlugin.js +1 -1
  498. package/lib/schemes/HttpUriPlugin.js +86 -4
  499. package/lib/schemes/VirtualUrlPlugin.js +8 -4
  500. package/lib/serialization/AggregateErrorSerializer.js +9 -6
  501. package/lib/serialization/ArraySerializer.js +6 -8
  502. package/lib/serialization/BinaryMiddleware.js +427 -1006
  503. package/lib/serialization/DateObjectSerializer.js +4 -2
  504. package/lib/serialization/ErrorObjectSerializer.js +10 -6
  505. package/lib/serialization/FileMiddleware.js +345 -59
  506. package/lib/serialization/MapObjectSerializer.js +7 -9
  507. package/lib/serialization/NullPrototypeObjectSerializer.js +9 -9
  508. package/lib/serialization/ObjectMiddleware.js +73 -13
  509. package/lib/serialization/PlainObjectSerializer.js +16 -8
  510. package/lib/serialization/RegExpObjectSerializer.js +4 -2
  511. package/lib/serialization/Serializer.js +6 -0
  512. package/lib/serialization/SerializerMiddleware.js +14 -2
  513. package/lib/serialization/SetObjectSerializer.js +6 -8
  514. package/lib/serialization/SingleItemMiddleware.js +3 -0
  515. package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
  516. package/lib/sharing/ConsumeSharedModule.js +21 -7
  517. package/lib/sharing/ConsumeSharedPlugin.js +11 -11
  518. package/lib/sharing/ConsumeSharedRuntimeModule.js +55 -45
  519. package/lib/sharing/ProvideForSharedDependency.js +1 -0
  520. package/lib/sharing/ProvideSharedDependency.js +34 -15
  521. package/lib/sharing/ProvideSharedModule.js +42 -12
  522. package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
  523. package/lib/sharing/ProvideSharedPlugin.js +13 -8
  524. package/lib/sharing/SharePlugin.js +5 -1
  525. package/lib/sharing/ShareRuntimeModule.js +19 -16
  526. package/lib/sharing/resolveMatchedConfigs.js +6 -2
  527. package/lib/sharing/utils.js +9 -1
  528. package/lib/stats/DefaultStatsFactoryPlugin.js +289 -201
  529. package/lib/stats/DefaultStatsPresetPlugin.js +14 -2
  530. package/lib/stats/DefaultStatsPrinterPlugin.js +74 -170
  531. package/lib/stats/StatsFactory.js +70 -27
  532. package/lib/stats/StatsPrinter.js +16 -2
  533. package/lib/typescript/TypeScriptPlugin.js +210 -0
  534. package/lib/url/URLParserPlugin.js +111 -23
  535. package/lib/util/ArrayHelpers.js +1 -0
  536. package/lib/util/ArrayQueue.js +10 -5
  537. package/lib/util/AsyncQueue.js +154 -74
  538. package/lib/util/Hash.js +2 -2
  539. package/lib/util/IterableHelpers.js +3 -0
  540. package/lib/util/LazyBucketSortedSet.js +26 -0
  541. package/lib/util/LazySet.js +45 -4
  542. package/lib/util/LocConverter.js +64 -0
  543. package/lib/util/ParallelismFactorCalculator.js +1 -0
  544. package/lib/util/Queue.js +6 -3
  545. package/lib/util/Semaphore.js +15 -1
  546. package/lib/util/SetHelpers.js +4 -1
  547. package/lib/util/SortableSet.js +7 -1
  548. package/lib/util/SourceProcessor.js +119 -0
  549. package/lib/util/StackedCacheMap.js +20 -3
  550. package/lib/util/StackedMap.js +162 -43
  551. package/lib/util/StringXor.js +1 -1
  552. package/lib/util/TupleQueue.js +7 -3
  553. package/lib/util/TupleSet.js +14 -0
  554. package/lib/util/URLAbsoluteSpecifier.js +1 -0
  555. package/lib/util/WeakTupleMap.js +60 -1
  556. package/lib/util/binarySearchBounds.js +3 -2
  557. package/lib/util/chainedImports.js +3 -3
  558. package/lib/util/cleverMerge.js +19 -2
  559. package/lib/util/comparators.js +35 -4
  560. package/lib/util/compileBooleanMatcher.js +9 -0
  561. package/lib/util/concatenate.js +80 -24
  562. package/lib/util/conventions.js +46 -1
  563. package/lib/util/createHash.js +0 -1
  564. package/lib/util/createHooksRegistry.js +43 -0
  565. package/lib/util/createMappings.js +118 -0
  566. package/lib/util/dataURL.js +3 -2
  567. package/lib/util/deprecation.js +19 -0
  568. package/lib/util/deterministicGrouping.js +46 -17
  569. package/lib/util/extractSourceMap.js +2 -1
  570. package/lib/util/extractUrlAndGlobal.js +1 -0
  571. package/lib/util/findGraphRoots.js +7 -0
  572. package/lib/{formatLocation.js → util/formatLocation.js} +4 -2
  573. package/lib/{SizeFormatHelpers.js → util/formatSize.js} +10 -3
  574. package/lib/util/fs.js +87 -14
  575. package/lib/util/generateDebugId.js +1 -0
  576. package/lib/util/globUtils.js +710 -0
  577. package/lib/util/hash/BatchedHash.js +1 -0
  578. package/lib/util/hash/BulkUpdateHash.js +1 -0
  579. package/lib/util/hash/DebugHash.js +1 -0
  580. package/lib/util/hash/hash-digest.js +32 -15
  581. package/lib/util/hash/md4.js +1 -1
  582. package/lib/util/hash/wasm-hash.js +5 -0
  583. package/lib/util/hash/xxhash64.js +1 -1
  584. package/lib/util/identifier.js +118 -7
  585. package/lib/util/implicitTypeLoaderFallback.js +62 -0
  586. package/lib/util/internalSerializables.js +102 -60
  587. package/lib/util/magicComment.js +149 -7
  588. package/lib/util/makeSerializable.js +7 -0
  589. package/lib/util/memoize.js +2 -0
  590. package/lib/util/mimeTypes.js +176 -0
  591. package/lib/util/nonNumericOnlyHash.js +31 -1
  592. package/lib/util/numberHash.js +2 -2
  593. package/lib/util/parseJson.js +41 -0
  594. package/lib/util/processAsyncTree.js +8 -0
  595. package/lib/util/property.js +9 -2
  596. package/lib/util/publicPathPlaceholder.js +64 -0
  597. package/lib/util/registerExternalSerializer.js +24 -4
  598. package/lib/util/removeBOM.js +1 -0
  599. package/lib/util/runtime.js +32 -0
  600. package/lib/util/semver.js +15 -0
  601. package/lib/util/serialization.js +2 -0
  602. package/lib/util/smartGrouping.js +8 -0
  603. package/lib/util/source.js +23 -0
  604. package/lib/util/topologicalSort.js +69 -0
  605. package/lib/validateSchema.js +1 -0
  606. package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
  607. package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +25 -18
  608. package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +34 -22
  609. package/lib/wasm-async/AsyncWasmModule.js +77 -0
  610. package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
  611. package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +6 -1
  612. package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +22 -126
  613. package/lib/wasm-async/AsyncWebAssemblyParser.js +3 -2
  614. package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +13 -2
  615. package/lib/wasm-sync/SyncWasmModule.js +39 -0
  616. package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +7 -3
  617. package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +86 -19
  618. package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +4 -3
  619. package/lib/wasm-sync/WebAssemblyGenerator.js +27 -1
  620. package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +9 -3
  621. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
  622. package/lib/wasm-sync/WebAssemblyModulesPlugin.js +20 -1
  623. package/lib/wasm-sync/WebAssemblyParser.js +9 -3
  624. package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
  625. package/lib/web/FetchCompileAsyncWasmPlugin.js +29 -1
  626. package/lib/web/FetchCompileWasmPlugin.js +27 -1
  627. package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
  628. package/lib/web/JsonpChunkLoadingRuntimeModule.js +58 -64
  629. package/lib/web/JsonpTemplatePlugin.js +2 -1
  630. package/lib/webpack.js +78 -1
  631. package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
  632. package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +15 -10
  633. package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
  634. package/module.d.ts +21 -0
  635. package/package.json +79 -77
  636. package/schemas/WebpackOptions.check.js +1 -1
  637. package/schemas/WebpackOptions.json +1173 -80
  638. package/schemas/plugins/{DllPlugin.check.d.ts → HtmlGeneratorOptions.check.d.ts} +1 -1
  639. package/schemas/plugins/HtmlGeneratorOptions.check.js +6 -0
  640. package/schemas/plugins/HtmlGeneratorOptions.json +3 -0
  641. package/schemas/plugins/{DllReferencePlugin.check.d.ts → HtmlParserOptions.check.d.ts} +1 -1
  642. package/schemas/plugins/HtmlParserOptions.check.js +6 -0
  643. package/schemas/plugins/HtmlParserOptions.json +3 -0
  644. package/schemas/plugins/ProgressPlugin.check.js +1 -1
  645. package/schemas/plugins/ProgressPlugin.json +38 -0
  646. package/schemas/plugins/container/ContainerReferencePlugin.check.js +1 -1
  647. package/schemas/plugins/container/ContainerReferencePlugin.json +2 -0
  648. package/schemas/plugins/container/ExternalsType.check.js +1 -1
  649. package/schemas/plugins/container/ModuleFederationPlugin.check.js +1 -1
  650. package/schemas/plugins/container/ModuleFederationPlugin.json +2 -0
  651. package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.d.ts +7 -0
  652. package/schemas/plugins/css/CssAutoOrModuleParserOptions.check.js +6 -0
  653. package/schemas/plugins/css/CssAutoOrModuleParserOptions.json +3 -0
  654. package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -1
  655. package/schemas/plugins/css/CssParserOptions.check.js +1 -1
  656. package/schemas/plugins/dll/DllPlugin.check.d.ts +7 -0
  657. package/schemas/plugins/dll/DllReferencePlugin.check.d.ts +7 -0
  658. package/types.d.ts +11053 -3019
  659. package/lib/CaseSensitiveModulesWarning.js +0 -72
  660. package/lib/GraphHelpers.js +0 -46
  661. package/lib/ModuleParseError.js +0 -125
  662. package/lib/NoModeWarning.js +0 -23
  663. package/lib/css/CssMergeStyleSheetsRuntimeModule.js +0 -56
  664. package/lib/css/walkCssTokens.js +0 -1843
  665. package/lib/util/AppendOnlyStackedSet.js +0 -78
  666. /package/schemas/plugins/{DllPlugin.check.js → dll/DllPlugin.check.js} +0 -0
  667. /package/schemas/plugins/{DllPlugin.json → dll/DllPlugin.json} +0 -0
  668. /package/schemas/plugins/{DllReferencePlugin.check.js → dll/DllReferencePlugin.check.js} +0 -0
  669. /package/schemas/plugins/{DllReferencePlugin.json → dll/DllReferencePlugin.json} +0 -0
package/README.md CHANGED
@@ -13,26 +13,24 @@ npm install @depup/webpack
13
13
 
14
14
  | Field | Value |
15
15
  |-------|-------|
16
- | Original | [webpack](https://www.npmjs.com/package/webpack) @ 5.106.1 |
17
- | Processed | 2026-04-10 |
16
+ | Original | [webpack](https://www.npmjs.com/package/webpack) @ 5.109.2 |
17
+ | Processed | 2026-08-02 |
18
18
  | Smoke test | passed |
19
- | Deps updated | 11 |
19
+ | Deps updated | 9 |
20
20
 
21
21
  ## Dependency Changes
22
22
 
23
23
  | Dependency | From | To |
24
24
  |------------|------|-----|
25
- | @types/eslint-scope | ^3.7.7 | ^9.1.0 |
26
- | acorn-import-phases | ^1.0.3 | ^1.0.4 |
27
- | browserslist | ^4.28.1 | ^4.28.2 |
25
+ | @types/estree | ^1.0.8 | ^1.0.9 |
26
+ | acorn | ^8.16.0 | ^8.18.0 |
27
+ | browserslist | ^4.28.1 | ^4.28.7 |
28
28
  | chrome-trace-event | ^1.0.2 | ^1.0.4 |
29
- | enhanced-resolve | ^5.20.0 | ^5.20.1 |
29
+ | enhanced-resolve | ^5.24.4 | ^5.24.5 |
30
+ | es-module-lexer | ^2.1.0 | ^2.3.1 |
30
31
  | eslint-scope | 5.1.1 | ^9.1.2 |
31
32
  | events | ^3.2.0 | ^3.3.0 |
32
- | json-parse-even-better-errors | ^2.3.1 | ^5.0.0 |
33
- | mime-types | ^2.1.27 | ^3.0.2 |
34
- | tapable | ^2.3.0 | ^2.3.2 |
35
- | terser-webpack-plugin | ^5.3.17 | ^5.4.0 |
33
+ | tapable | ^2.3.0 | ^2.3.3 |
36
34
 
37
35
  ---
38
36
 
package/bin/webpack.js CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  "use strict";
4
4
 
5
+ // Cache compiled module bytecode on disk (available since Node.js 22.8)
6
+ // eslint-disable-next-line n/no-unsupported-features/node-builtins
7
+ const { enableCompileCache } = require("module");
8
+
9
+ if (enableCompileCache) {
10
+ try {
11
+ enableCompileCache();
12
+ } catch (_error) {
13
+ // Nothing
14
+ }
15
+ }
16
+
5
17
  /**
6
18
  * @param {string} command process to run
7
19
  * @param {string[]} args command line arguments
package/changes.json CHANGED
@@ -1,24 +1,28 @@
1
1
  {
2
2
  "bumped": {
3
- "@types/eslint-scope": {
4
- "from": "^3.7.7",
5
- "to": "^9.1.0"
3
+ "@types/estree": {
4
+ "from": "^1.0.8",
5
+ "to": "^1.0.9"
6
6
  },
7
- "acorn-import-phases": {
8
- "from": "^1.0.3",
9
- "to": "^1.0.4"
7
+ "acorn": {
8
+ "from": "^8.16.0",
9
+ "to": "^8.18.0"
10
10
  },
11
11
  "browserslist": {
12
12
  "from": "^4.28.1",
13
- "to": "^4.28.2"
13
+ "to": "^4.28.7"
14
14
  },
15
15
  "chrome-trace-event": {
16
16
  "from": "^1.0.2",
17
17
  "to": "^1.0.4"
18
18
  },
19
19
  "enhanced-resolve": {
20
- "from": "^5.20.0",
21
- "to": "^5.20.1"
20
+ "from": "^5.24.4",
21
+ "to": "^5.24.5"
22
+ },
23
+ "es-module-lexer": {
24
+ "from": "^2.1.0",
25
+ "to": "^2.3.1"
22
26
  },
23
27
  "eslint-scope": {
24
28
  "from": "5.1.1",
@@ -28,23 +32,11 @@
28
32
  "from": "^3.2.0",
29
33
  "to": "^3.3.0"
30
34
  },
31
- "json-parse-even-better-errors": {
32
- "from": "^2.3.1",
33
- "to": "^5.0.0"
34
- },
35
- "mime-types": {
36
- "from": "^2.1.27",
37
- "to": "^3.0.2"
38
- },
39
35
  "tapable": {
40
36
  "from": "^2.3.0",
41
- "to": "^2.3.2"
42
- },
43
- "terser-webpack-plugin": {
44
- "from": "^5.3.17",
45
- "to": "^5.4.0"
37
+ "to": "^2.3.3"
46
38
  }
47
39
  },
48
- "timestamp": "2026-04-10T12:22:59.376Z",
49
- "totalUpdated": 11
40
+ "timestamp": "2026-08-02T00:59:09.770Z",
41
+ "totalUpdated": 9
50
42
  }
package/hot/dev-server.js CHANGED
@@ -3,6 +3,8 @@
3
3
  Author Tobias Koppers @sokra
4
4
  */
5
5
  /* globals __webpack_hash__ */
6
+ // Universal regular-HMR client (web + Node): runs `module.hot.check` whenever a
7
+ // `webpackHotUpdate` signal arrives on ./emitter (pushed by the dev-server).
6
8
  if (module.hot) {
7
9
  /** @type {undefined|string} */
8
10
  var lastHash;
package/lib/APIPlugin.js CHANGED
@@ -14,10 +14,10 @@ const {
14
14
  JAVASCRIPT_MODULE_TYPE_ESM
15
15
  } = require("./ModuleTypeConstants");
16
16
  const RuntimeGlobals = require("./RuntimeGlobals");
17
- const WebpackError = require("./WebpackError");
18
17
  const ConstDependency = require("./dependencies/ConstDependency");
19
18
  const ModuleInitFragmentDependency = require("./dependencies/ModuleInitFragmentDependency");
20
19
  const RuntimeRequirementsDependency = require("./dependencies/RuntimeRequirementsDependency");
20
+ const WebpackError = require("./errors/WebpackError");
21
21
  const BasicEvaluatedExpression = require("./javascript/BasicEvaluatedExpression");
22
22
  const JavascriptModulesPlugin = require("./javascript/JavascriptModulesPlugin");
23
23
  const {
@@ -30,10 +30,25 @@ const GetFullHashRuntimeModule = require("./runtime/GetFullHashRuntimeModule");
30
30
  /** @typedef {import("./Compiler")} Compiler */
31
31
  /** @typedef {import("./Dependency").DependencyLocation} DependencyLocation */
32
32
  /** @typedef {import("./Module").BuildInfo} BuildInfo */
33
+ /** @typedef {import("./javascript/JavascriptModule").JavascriptModuleBuildInfo} JavascriptModuleBuildInfo */
34
+ /** @typedef {import("./Compilation")} Compilation */
33
35
  /** @typedef {import("./javascript/JavascriptParser")} JavascriptParser */
34
36
  /** @typedef {import("./javascript/JavascriptParser").Range} Range */
35
37
 
38
+ // Compilations where a module reassigns `__webpack_public_path__` at runtime.
39
+ // A baked analyzable specifier can't reflect that, so those forms fall back.
40
+ /** @type {WeakSet<Compilation>} */
41
+ const runtimePublicPathOverride = new WeakSet();
42
+
36
43
  /**
44
+ * @param {Compilation} compilation compilation
45
+ * @returns {boolean} true when a module reassigns `__webpack_public_path__` at runtime
46
+ */
47
+ const usesRuntimePublicPathOverride = (compilation) =>
48
+ runtimePublicPathOverride.has(compilation);
49
+
50
+ /**
51
+ * Returns the replacement definitions used for webpack API identifiers.
37
52
  * @returns {Record<string, { expr: string, req: string[] | null, type?: string, assign: boolean }>} replacements
38
53
  */
39
54
  function getReplacements() {
@@ -140,7 +155,7 @@ const PLUGIN_NAME = "APIPlugin";
140
155
 
141
156
  class APIPlugin {
142
157
  /**
143
- * Apply the plugin
158
+ * Applies the plugin by registering its hooks on the compiler.
144
159
  * @param {Compiler} compiler the compiler instance
145
160
  * @returns {void}
146
161
  */
@@ -189,7 +204,10 @@ class APIPlugin {
189
204
  hooks.renderModuleContent.tap(
190
205
  PLUGIN_NAME,
191
206
  (source, module, renderContext) => {
192
- if (/** @type {BuildInfo} */ (module.buildInfo).needCreateRequire) {
207
+ if (
208
+ /** @type {JavascriptModuleBuildInfo} */ (module.buildInfo)
209
+ .needCreateRequire
210
+ ) {
193
211
  const chunkInitFragments = [
194
212
  getExternalModuleNodeCommonjsInitFragment(
195
213
  renderContext.runtimeTemplate
@@ -204,6 +222,7 @@ class APIPlugin {
204
222
  );
205
223
 
206
224
  /**
225
+ * Handles the hook callback for this code path.
207
226
  * @param {JavascriptParser} parser the parser
208
227
  */
209
228
  const handler = (parser) => {
@@ -219,27 +238,28 @@ class APIPlugin {
219
238
  }
220
239
  });
221
240
 
222
- parser.hooks.preStatement.tap(PLUGIN_NAME, (statement) => {
223
- if (parser.scope.topLevelScope === true) {
224
- if (
225
- statement.type === "FunctionDeclaration" &&
226
- statement.id &&
227
- statement.id.name === "module"
228
- ) {
229
- /** @type {BuildInfo} */
230
- (parser.state.module.buildInfo).moduleArgument =
231
- "__webpack_module__";
232
- } else if (
233
- statement.type === "ClassDeclaration" &&
234
- statement.id &&
235
- statement.id.name === "module"
236
- ) {
237
- /** @type {BuildInfo} */
238
- (parser.state.module.buildInfo).moduleArgument =
239
- "__webpack_module__";
240
- }
241
+ /**
242
+ * @param {import("estree").Statement | import("estree").ModuleDeclaration | import("estree").MaybeNamedFunctionDeclaration | import("estree").MaybeNamedClassDeclaration} statement statement
243
+ */
244
+ const moduleDeclarationHandler = (statement) => {
245
+ if (
246
+ parser.scope.topLevelScope === true &&
247
+ (statement.type === "FunctionDeclaration" ||
248
+ statement.type === "ClassDeclaration") &&
249
+ statement.id &&
250
+ statement.id.name === "module"
251
+ ) {
252
+ /** @type {BuildInfo} */
253
+ (parser.state.module.buildInfo).moduleArgument =
254
+ "__webpack_module__";
241
255
  }
242
- });
256
+ };
257
+ parser.hooks.preStatementByType
258
+ .for("FunctionDeclaration")
259
+ .tap(PLUGIN_NAME, moduleDeclarationHandler);
260
+ parser.hooks.preStatementByType
261
+ .for("ClassDeclaration")
262
+ .tap(PLUGIN_NAME, moduleDeclarationHandler);
243
263
 
244
264
  for (const key of Object.keys(REPLACEMENTS)) {
245
265
  const info = REPLACEMENTS[key];
@@ -248,15 +268,13 @@ class APIPlugin {
248
268
 
249
269
  if (key === "__non_webpack_require__" && moduleOutput) {
250
270
  if (nodeTarget) {
251
- /** @type {BuildInfo} */
271
+ /** @type {JavascriptModuleBuildInfo} */
252
272
  (parser.state.module.buildInfo).needCreateRequire = true;
253
273
  } else {
254
274
  const warning = new WebpackError(
255
275
  `${PLUGIN_NAME}\n__non_webpack_require__ is only allowed in target node`
256
276
  );
257
- warning.loc = /** @type {DependencyLocation} */ (
258
- expression.loc
259
- );
277
+ warning.loc = parser.getLocation(expression);
260
278
  warning.module = parser.state.module;
261
279
  compilation.warnings.push(warning);
262
280
  }
@@ -267,9 +285,15 @@ class APIPlugin {
267
285
  if (info.assign === false) {
268
286
  parser.hooks.assign.for(key).tap(PLUGIN_NAME, (expr) => {
269
287
  const err = new WebpackError(`${key} must not be assigned`);
270
- err.loc = /** @type {DependencyLocation} */ (expr.loc);
288
+ err.loc = parser.getLocation(expr);
271
289
  throw err;
272
290
  });
291
+ } else if (key === "__webpack_public_path__") {
292
+ // Flag the runtime override (still let the default handler emit
293
+ // `__webpack_require__.p = …`); returning nothing keeps that path.
294
+ parser.hooks.assign.for(key).tap(PLUGIN_NAME, () => {
295
+ runtimePublicPathOverride.add(compilation);
296
+ });
273
297
  }
274
298
  if (info.type) {
275
299
  parser.hooks.evaluateTypeof
@@ -285,7 +309,7 @@ class APIPlugin {
285
309
  JSON.stringify(parser.state.module.layer),
286
310
  /** @type {Range} */ (expr.range)
287
311
  );
288
- dep.loc = /** @type {DependencyLocation} */ (expr.loc);
312
+ dep.loc = parser.getLocation(expr);
289
313
  parser.state.module.addPresentationalDependency(dep);
290
314
  return true;
291
315
  });
@@ -312,7 +336,7 @@ class APIPlugin {
312
336
  parser.hooks.expression
313
337
  .for("__webpack_module__.id")
314
338
  .tap(PLUGIN_NAME, (expr) => {
315
- /** @type {BuildInfo} */
339
+ /** @type {JavascriptModuleBuildInfo} */
316
340
  (parser.state.module.buildInfo).moduleConcatenationBailout =
317
341
  "__webpack_module__.id";
318
342
  const moduleArgument = parser.state.module.moduleArgument;
@@ -320,7 +344,7 @@ class APIPlugin {
320
344
  const dep = new RuntimeRequirementsDependency([
321
345
  RuntimeGlobals.moduleId
322
346
  ]);
323
- dep.loc = /** @type {DependencyLocation} */ (expr.loc);
347
+ dep.loc = parser.getLocation(expr);
324
348
  parser.state.module.addPresentationalDependency(dep);
325
349
  } else {
326
350
  const initDep = new ModuleInitFragmentDependency(
@@ -334,7 +358,7 @@ class APIPlugin {
334
358
  /** @type {Range} */ (expr.range),
335
359
  []
336
360
  );
337
- dep.loc = /** @type {DependencyLocation} */ (expr.loc);
361
+ dep.loc = parser.getLocation(expr);
338
362
  parser.state.module.addPresentationalDependency(dep);
339
363
  }
340
364
  return true;
@@ -343,7 +367,7 @@ class APIPlugin {
343
367
  parser.hooks.expression
344
368
  .for("__webpack_module__")
345
369
  .tap(PLUGIN_NAME, (expr) => {
346
- /** @type {BuildInfo} */
370
+ /** @type {JavascriptModuleBuildInfo} */
347
371
  (parser.state.module.buildInfo).moduleConcatenationBailout =
348
372
  "__webpack_module__";
349
373
  const moduleArgument = parser.state.module.moduleArgument;
@@ -351,7 +375,7 @@ class APIPlugin {
351
375
  const dep = new RuntimeRequirementsDependency([
352
376
  RuntimeGlobals.module
353
377
  ]);
354
- dep.loc = /** @type {DependencyLocation} */ (expr.loc);
378
+ dep.loc = parser.getLocation(expr);
355
379
  parser.state.module.addPresentationalDependency(dep);
356
380
  } else {
357
381
  const initDep = new ModuleInitFragmentDependency(
@@ -365,7 +389,7 @@ class APIPlugin {
365
389
  /** @type {Range} */ (expr.range),
366
390
  []
367
391
  );
368
- dep.loc = /** @type {DependencyLocation} */ (expr.loc);
392
+ dep.loc = parser.getLocation(expr);
369
393
  parser.state.module.addPresentationalDependency(dep);
370
394
  }
371
395
  return true;
@@ -390,3 +414,4 @@ class APIPlugin {
390
414
  }
391
415
 
392
416
  module.exports = APIPlugin;
417
+ module.exports.usesRuntimePublicPathOverride = usesRuntimePublicPathOverride;
@@ -71,6 +71,7 @@ class AsyncDependenciesBlock extends DependenciesBlock {
71
71
  }
72
72
 
73
73
  /**
74
+ * Updates the hash with the data contributed by this instance.
74
75
  * @param {Hash} hash the hash used to track dependencies
75
76
  * @param {UpdateHashContext} context context
76
77
  * @returns {void}
@@ -88,6 +89,7 @@ class AsyncDependenciesBlock extends DependenciesBlock {
88
89
  }
89
90
 
90
91
  /**
92
+ * Serializes this instance into the provided serializer context.
91
93
  * @param {ObjectSerializerContext} context context
92
94
  */
93
95
  serialize(context) {
@@ -99,6 +101,7 @@ class AsyncDependenciesBlock extends DependenciesBlock {
99
101
  }
100
102
 
101
103
  /**
104
+ * Restores this instance from the provided deserializer context.
102
105
  * @param {ObjectDeserializerContext} context context
103
106
  */
104
107
  deserialize(context) {
@@ -13,9 +13,14 @@ const PrefetchDependency = require("./dependencies/PrefetchDependency");
13
13
 
14
14
  const PLUGIN_NAME = "AutomaticPrefetchPlugin";
15
15
 
16
+ /**
17
+ * Records modules from one compilation and adds them back as prefetch
18
+ * dependencies in the next compilation.
19
+ */
16
20
  class AutomaticPrefetchPlugin {
17
21
  /**
18
- * Apply the plugin
22
+ * Registers hooks that remember previously built normal modules and enqueue
23
+ * them as `PrefetchDependency` requests during the next make phase.
19
24
  * @param {Compiler} compiler the compiler instance
20
25
  * @returns {void}
21
26
  */
@@ -13,14 +13,15 @@ const Template = require("./Template");
13
13
  /** @typedef {import("webpack-sources").Source} Source */
14
14
  /** @typedef {import("../declarations/plugins/BannerPlugin").BannerPluginArgument} BannerPluginArgument */
15
15
  /** @typedef {import("../declarations/plugins/BannerPlugin").BannerPluginOptions} BannerPluginOptions */
16
- /** @typedef {import("./Compilation").PathData} PathData */
16
+ /** @typedef {import("./Compilation").PathDataChunk} PathDataChunk */
17
17
  /** @typedef {import("./Compiler")} Compiler */
18
18
  /** @typedef {import("./Chunk")} Chunk */
19
- /** @typedef {import("./TemplatedPathPlugin").TemplatePath} TemplatePath */
20
19
 
21
20
  /** @typedef {(data: { hash?: string, chunk: Chunk, filename: string }) => string} BannerFunction */
22
21
 
23
22
  /**
23
+ * Wraps banner text in a JavaScript block comment, preserving multi-line
24
+ * formatting and escaping accidental comment terminators.
24
25
  * @param {string} str string to wrap
25
26
  * @returns {string} wrapped string
26
27
  */
@@ -38,8 +39,14 @@ const wrapComment = (str) => {
38
39
 
39
40
  const PLUGIN_NAME = "BannerPlugin";
40
41
 
42
+ /**
43
+ * Prepends or appends banner text to emitted assets that match the configured
44
+ * file filters.
45
+ */
41
46
  class BannerPlugin {
42
47
  /**
48
+ * Normalizes banner options and compiles the configured banner source into a
49
+ * function that can render per-asset banner text.
43
50
  * @param {BannerPluginArgument} options options object
44
51
  */
45
52
  constructor(options) {
@@ -69,7 +76,8 @@ class BannerPlugin {
69
76
  }
70
77
 
71
78
  /**
72
- * Apply the plugin
79
+ * Validates the configured options and injects rendered banner comments into
80
+ * matching compilation assets at the configured process-assets stage.
73
81
  * @param {Compiler} compiler the compiler instance
74
82
  * @returns {void}
75
83
  */
@@ -108,11 +116,11 @@ class BannerPlugin {
108
116
  continue;
109
117
  }
110
118
 
111
- /** @type {PathData} */
119
+ /** @type {PathDataChunk} */
112
120
  const data = { chunk, filename: file };
113
121
 
114
122
  const comment = compilation.getPath(
115
- /** @type {TemplatePath} */
123
+ /** @type {string | import("./TemplatedPathPlugin").TemplatePathFn<PathDataChunk>} */
116
124
  (banner),
117
125
  data
118
126
  );
package/lib/Cache.js CHANGED
@@ -9,19 +9,20 @@ const { AsyncParallelHook, AsyncSeriesBailHook, SyncHook } = require("tapable");
9
9
  const {
10
10
  makeWebpackError,
11
11
  makeWebpackErrorCallback
12
- } = require("./HookWebpackError");
13
-
14
- /** @typedef {import("./WebpackError")} WebpackError */
12
+ } = require("./errors/HookWebpackError");
15
13
 
16
14
  /**
15
+ * Cache validation token whose string representation identifies the build
16
+ * inputs associated with a cached value.
17
17
  * @typedef {object} Etag
18
18
  * @property {() => string} toString
19
19
  */
20
20
 
21
21
  /**
22
+ * Completion callback used by cache operations that either fail with a `Error` or resolve with a typed result.
22
23
  * @template T
23
24
  * @callback CallbackCache
24
- * @param {WebpackError | null} err
25
+ * @param {Error | null} err
25
26
  * @param {T=} result
26
27
  * @returns {void}
27
28
  */
@@ -29,6 +30,8 @@ const {
29
30
  /** @typedef {EXPECTED_ANY} Data */
30
31
 
31
32
  /**
33
+ * Handler invoked after a cache read succeeds so additional cache layers can
34
+ * react to the retrieved value.
32
35
  * @template T
33
36
  * @callback GotHandler
34
37
  * @param {T} result
@@ -37,6 +40,8 @@ const {
37
40
  */
38
41
 
39
42
  /**
43
+ * Creates a callback wrapper that waits for a fixed number of completions and
44
+ * forwards the first error immediately.
40
45
  * @param {number} times times
41
46
  * @param {(err?: Error | null) => void} callback callback
42
47
  * @returns {(err?: Error | null) => void} callback
@@ -51,7 +56,14 @@ const needCalls = (times, callback) => (err) => {
51
56
  }
52
57
  };
53
58
 
59
+ /**
60
+ * Abstract cache interface backed by tapable hooks for reading, writing, idle
61
+ * transitions, and shutdown across webpack cache implementations.
62
+ */
54
63
  class Cache {
64
+ /**
65
+ * Initializes the cache lifecycle hooks implemented by cache backends.
66
+ */
55
67
  constructor() {
56
68
  this.hooks = {
57
69
  /** @type {AsyncSeriesBailHook<[string, Etag | null, GotHandler<EXPECTED_ANY>[]], Data>} */
@@ -70,6 +82,8 @@ class Cache {
70
82
  }
71
83
 
72
84
  /**
85
+ * Retrieves a cached value and lets registered `gotHandlers` observe the
86
+ * result before the caller receives it.
73
87
  * @template T
74
88
  * @param {string} identifier the cache identifier
75
89
  * @param {Etag | null} etag the etag
@@ -103,6 +117,8 @@ class Cache {
103
117
  }
104
118
 
105
119
  /**
120
+ * Stores a cache entry for the identifier and etag through the registered
121
+ * cache backend hooks.
106
122
  * @template T
107
123
  * @param {string} identifier the cache identifier
108
124
  * @param {Etag | null} etag the etag
@@ -120,7 +136,8 @@ class Cache {
120
136
  }
121
137
 
122
138
  /**
123
- * After this method has succeeded the cache can only be restored when build dependencies are
139
+ * Persists the set of build dependencies required to determine whether the
140
+ * cache can be restored in a future compilation.
124
141
  * @param {Iterable<string>} dependencies list of all build dependencies
125
142
  * @param {CallbackCache<void>} callback signals when the dependencies are stored
126
143
  * @returns {void}
@@ -133,6 +150,8 @@ class Cache {
133
150
  }
134
151
 
135
152
  /**
153
+ * Signals that webpack is entering an idle phase and cache backends may flush
154
+ * or compact pending work.
136
155
  * @returns {void}
137
156
  */
138
157
  beginIdle() {
@@ -140,6 +159,8 @@ class Cache {
140
159
  }
141
160
 
142
161
  /**
162
+ * Signals that webpack is leaving the idle phase and waits for cache
163
+ * backends to finish any asynchronous resume work.
143
164
  * @param {CallbackCache<void>} callback signals when the call finishes
144
165
  * @returns {void}
145
166
  */
@@ -150,6 +171,7 @@ class Cache {
150
171
  }
151
172
 
152
173
  /**
174
+ * Shuts down every registered cache backend and waits for cleanup to finish.
153
175
  * @param {CallbackCache<void>} callback signals when the call finishes
154
176
  * @returns {void}
155
177
  */