webpack 5.102.1 → 5.103.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 (118) hide show
  1. package/README.md +121 -134
  2. package/lib/CompatibilityPlugin.js +25 -2
  3. package/lib/Compilation.js +25 -2
  4. package/lib/ConcatenationScope.js +0 -15
  5. package/lib/CssModule.js +6 -1
  6. package/lib/DefinePlugin.js +11 -11
  7. package/lib/Dependency.js +8 -1
  8. package/lib/DependencyTemplate.js +1 -0
  9. package/lib/DotenvPlugin.js +457 -0
  10. package/lib/EnvironmentPlugin.js +19 -16
  11. package/lib/EvalSourceMapDevToolPlugin.js +16 -0
  12. package/lib/ExportsInfo.js +6 -2
  13. package/lib/ExternalModule.js +20 -28
  14. package/lib/ExternalModuleFactoryPlugin.js +10 -8
  15. package/lib/ExternalsPlugin.js +2 -1
  16. package/lib/ManifestPlugin.js +235 -0
  17. package/lib/Module.js +3 -0
  18. package/lib/ModuleGraph.js +2 -1
  19. package/lib/ModuleSourceTypesConstants.js +0 -6
  20. package/lib/MultiCompiler.js +1 -1
  21. package/lib/NodeStuffPlugin.js +419 -121
  22. package/lib/NormalModule.js +17 -16
  23. package/lib/RuntimeGlobals.js +22 -4
  24. package/lib/RuntimePlugin.js +27 -6
  25. package/lib/RuntimeTemplate.js +115 -56
  26. package/lib/SourceMapDevToolPlugin.js +20 -0
  27. package/lib/WebpackOptionsApply.js +33 -9
  28. package/lib/asset/AssetBytesGenerator.js +1 -1
  29. package/lib/asset/AssetGenerator.js +1 -2
  30. package/lib/asset/AssetSourceGenerator.js +1 -1
  31. package/lib/config/browserslistTargetHandler.js +5 -0
  32. package/lib/config/defaults.js +98 -18
  33. package/lib/config/normalization.js +2 -1
  34. package/lib/config/target.js +6 -0
  35. package/lib/css/CssGenerator.js +283 -57
  36. package/lib/css/CssLoadingRuntimeModule.js +2 -0
  37. package/lib/css/CssMergeStyleSheetsRuntimeModule.js +56 -0
  38. package/lib/css/CssModulesPlugin.js +84 -34
  39. package/lib/css/CssParser.js +1174 -667
  40. package/lib/css/walkCssTokens.js +97 -0
  41. package/lib/dependencies/CommonJsImportsParserPlugin.js +0 -9
  42. package/lib/dependencies/CommonJsPlugin.js +12 -0
  43. package/lib/dependencies/CssIcssExportDependency.js +247 -8
  44. package/lib/dependencies/CssIcssFromIdentifierDependency.js +124 -0
  45. package/lib/dependencies/CssIcssGlobalIdentifierDependency.js +48 -0
  46. package/lib/dependencies/CssIcssImportDependency.js +60 -54
  47. package/lib/dependencies/CssIcssLocalIdentifierDependency.js +61 -0
  48. package/lib/dependencies/{CssSelfLocalIdentifierDependency.js → CssIcssSelfLocalIdentifierDependency.js} +88 -10
  49. package/lib/dependencies/CssIcssSymbolDependency.js +31 -29
  50. package/lib/dependencies/CssImportDependency.js +15 -5
  51. package/lib/dependencies/ExternalModuleInitFragment.js +1 -1
  52. package/lib/dependencies/ExternalModuleInitFragmentDependency.js +95 -0
  53. package/lib/dependencies/HarmonyAcceptDependency.js +6 -1
  54. package/lib/dependencies/HarmonyAcceptImportDependency.js +2 -1
  55. package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +12 -1
  56. package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +32 -21
  57. package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +12 -8
  58. package/lib/dependencies/HarmonyImportDependency.js +23 -27
  59. package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +28 -69
  60. package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -3
  61. package/lib/dependencies/HarmonyImportSpecifierDependency.js +10 -8
  62. package/lib/dependencies/ImportDependency.js +8 -2
  63. package/lib/dependencies/ImportEagerDependency.js +6 -3
  64. package/lib/dependencies/ImportMetaPlugin.js +97 -9
  65. package/lib/dependencies/ImportParserPlugin.js +19 -21
  66. package/lib/dependencies/ImportPhase.js +121 -0
  67. package/lib/dependencies/ImportWeakDependency.js +6 -3
  68. package/lib/dependencies/ModuleDependency.js +5 -1
  69. package/lib/dependencies/ModuleHotAcceptDependency.js +1 -1
  70. package/lib/esm/ExportWebpackRequireRuntimeModule.js +1 -8
  71. package/lib/hmr/LazyCompilationPlugin.js +1 -0
  72. package/lib/ids/IdHelpers.js +4 -1
  73. package/lib/index.js +6 -0
  74. package/lib/javascript/ChunkHelpers.js +16 -5
  75. package/lib/javascript/JavascriptGenerator.js +101 -101
  76. package/lib/javascript/JavascriptModulesPlugin.js +23 -13
  77. package/lib/javascript/JavascriptParser.js +142 -38
  78. package/lib/json/JsonParser.js +7 -1
  79. package/lib/library/ModuleLibraryPlugin.js +0 -10
  80. package/lib/library/SystemLibraryPlugin.js +4 -0
  81. package/lib/library/UmdLibraryPlugin.js +1 -1
  82. package/lib/node/NodeTargetPlugin.js +9 -1
  83. package/lib/node/ReadFileCompileWasmPlugin.js +0 -2
  84. package/lib/optimize/ConcatenatedModule.js +161 -135
  85. package/lib/runtime/AsyncModuleRuntimeModule.js +28 -18
  86. package/lib/runtime/AutoPublicPathRuntimeModule.js +8 -3
  87. package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +89 -55
  88. package/lib/util/comparators.js +4 -3
  89. package/lib/util/internalSerializables.js +4 -4
  90. package/lib/util/jsonParseEvenBetterErrors.js +10 -0
  91. package/lib/wasm/EnableWasmLoadingPlugin.js +10 -4
  92. package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +8 -5
  93. package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +8 -4
  94. package/lib/web/FetchCompileWasmPlugin.js +0 -2
  95. package/lib/webpack.js +85 -82
  96. package/module.d.ts +5 -0
  97. package/package.json +16 -14
  98. package/schemas/WebpackOptions.check.js +1 -1
  99. package/schemas/WebpackOptions.json +109 -27
  100. package/schemas/plugins/ManifestPlugin.check.d.ts +7 -0
  101. package/schemas/plugins/ManifestPlugin.check.js +6 -0
  102. package/schemas/plugins/ManifestPlugin.json +98 -0
  103. package/schemas/plugins/SourceMapDevToolPlugin.check.js +1 -1
  104. package/schemas/plugins/SourceMapDevToolPlugin.json +16 -3
  105. package/schemas/plugins/container/ContainerReferencePlugin.check.js +1 -1
  106. package/schemas/plugins/container/ContainerReferencePlugin.json +4 -1
  107. package/schemas/plugins/container/ExternalsType.check.js +1 -1
  108. package/schemas/plugins/container/ModuleFederationPlugin.check.js +1 -1
  109. package/schemas/plugins/container/ModuleFederationPlugin.json +4 -1
  110. package/schemas/plugins/css/CssAutoParserOptions.check.js +1 -1
  111. package/schemas/plugins/css/CssGlobalGeneratorOptions.check.js +1 -1
  112. package/schemas/plugins/css/CssGlobalParserOptions.check.js +1 -1
  113. package/schemas/plugins/css/CssModuleGeneratorOptions.check.js +1 -1
  114. package/schemas/plugins/css/CssModuleParserOptions.check.js +1 -1
  115. package/schemas/plugins/css/CssParserOptions.check.js +1 -1
  116. package/schemas/plugins/json/JsonModulesPluginParser.check.js +1 -1
  117. package/types.d.ts +560 -293
  118. package/lib/dependencies/CssLocalIdentifierDependency.js +0 -250
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "webpack",
3
- "version": "5.102.1",
3
+ "version": "5.103.0",
4
4
  "description": "Packs ECMAScript/CommonJs/AMD modules for the browser. Allows you to split your codebase into multiple bundles, which can be loaded on demand. Supports loaders to preprocess files, i.e. json, jsx, es7, css, less, ... and your custom stuff.",
5
5
  "homepage": "https://github.com/webpack/webpack",
6
6
  "bugs": "https://github.com/webpack/webpack/issues",
@@ -98,7 +98,7 @@
98
98
  "glob-to-regexp": "^0.4.1",
99
99
  "graceful-fs": "^4.2.11",
100
100
  "json-parse-even-better-errors": "^2.3.1",
101
- "loader-runner": "^4.2.0",
101
+ "loader-runner": "^4.3.1",
102
102
  "mime-types": "^2.1.27",
103
103
  "neo-async": "^2.6.2",
104
104
  "schema-utils": "^4.3.3",
@@ -111,16 +111,16 @@
111
111
  "@babel/core": "^7.27.1",
112
112
  "@babel/preset-react": "^7.27.1",
113
113
  "@codspeed/core": "^5.0.1",
114
- "@eslint/js": "^9.36.0",
115
- "@eslint/markdown": "^7.3.0",
114
+ "@eslint/js": "^9.37.0",
115
+ "@eslint/markdown": "^7.4.0",
116
116
  "@stylistic/eslint-plugin": "^5.4.0",
117
117
  "@types/glob-to-regexp": "^0.4.4",
118
118
  "@types/graceful-fs": "^4.1.9",
119
119
  "@types/jest": "^30.0.0",
120
120
  "@types/mime-types": "^2.1.4",
121
- "@types/node": "^24.5.2",
121
+ "@types/node": "^24.9.1",
122
122
  "@types/xxhashjs": "^0.2.4",
123
- "assemblyscript": "^0.28.8",
123
+ "assemblyscript": "^0.28.9",
124
124
  "babel-loader": "^10.0.0",
125
125
  "bundle-loader": "^0.5.6",
126
126
  "coffee-loader": "^5.0.0",
@@ -131,7 +131,7 @@
131
131
  "date-fns": "^4.0.0",
132
132
  "es5-ext": "^0.10.53",
133
133
  "es6-promise-polyfill": "^1.2.0",
134
- "eslint": "^9.36.0",
134
+ "eslint": "^9.37.0",
135
135
  "eslint-config-prettier": "^10.1.1",
136
136
  "eslint-config-webpack": "^4.5.1",
137
137
  "eslint-plugin-import": "^2.32.0",
@@ -139,7 +139,7 @@
139
139
  "eslint-plugin-jsdoc": "^51.2.3",
140
140
  "eslint-plugin-n": "^17.23.1",
141
141
  "eslint-plugin-prettier": "^5.5.0",
142
- "eslint-plugin-unicorn": "^61.0.1",
142
+ "eslint-plugin-unicorn": "^62.0.0",
143
143
  "file-loader": "^6.0.0",
144
144
  "fork-ts-checker-webpack-plugin": "^9.0.2",
145
145
  "globals": "^16.0.0",
@@ -154,32 +154,34 @@
154
154
  "jest-junit": "^16.0.0",
155
155
  "json-loader": "^0.5.7",
156
156
  "json5": "^2.1.3",
157
- "less": "^4.0.0",
157
+ "less": "^4.4.2",
158
158
  "less-loader": "^12.2.0",
159
- "lint-staged": "^16.1.2",
159
+ "lint-staged": "^16.2.3",
160
160
  "lodash": "^4.17.19",
161
161
  "lodash-es": "^4.17.15",
162
- "memfs": "^4.14.0",
162
+ "memfs": "^4.49.0",
163
+ "meriyah": "^6.1.4",
163
164
  "mini-css-extract-plugin": "^2.9.0",
164
165
  "mini-svg-data-uri": "^1.2.3",
165
166
  "node-gyp": "^11.2.0",
166
167
  "nyc": "^17.1.0",
167
168
  "open-cli": "^8.0.0",
169
+ "pkg-pr-new": "^0.0.60",
168
170
  "prettier": "^3.6.0",
169
171
  "prettier-2": "npm:prettier@^2",
170
172
  "pretty-format": "^30.0.5",
171
173
  "pug": "^3.0.3",
172
174
  "pug-loader": "^2.4.0",
173
175
  "raw-loader": "^4.0.1",
174
- "react": "^19.0.0",
175
- "react-dom": "^19.0.0",
176
+ "react": "^19.2.0",
177
+ "react-dom": "^19.2.0",
176
178
  "rimraf": "^3.0.2",
177
179
  "script-loader": "^0.7.2",
178
180
  "simple-git": "^3.28.0",
179
181
  "strip-ansi": "^6.0.0",
180
182
  "style-loader": "^4.0.0",
181
183
  "terser": "^5.43.1",
182
- "three": "^0.180.0",
184
+ "three": "^0.181.0",
183
185
  "tinybench": "^5.0.0",
184
186
  "toml": "^3.0.0",
185
187
  "tooling": "webpack/tooling#v1.24.3",