chore(deps): update dependency webpack to v5.109.2 #144

Open
renovate-bot wants to merge 1 commit from renovate/webpack-5.x-lockfile into master
Member

This PR contains the following updates:

Package Change Age Confidence
webpack 5.107.2 -> 5.109.2 age confidence

Release Notes

webpack/webpack (webpack)

v5.109.2

Compare Source

Patch Changes
  • Resolve aliases pointing at a package directory whose name ends with .js again. (by @​alexander-akait in #​21542)

  • Name CSS sources in source maps by their resource path, without the css prefix. (by @​bjohansebas in #​21536)

  • Delete no longer referenced files from the filesystem cache directory after storing the cache, age them by recorded time so restored caches are cleaned too, and collect every fully expired pack in one store instead of one per build. (by @​bjohansebas in #​21528)

  • Report "universal" as the loader context target for the universal target. (by @​alexander-akait in #​21540)

  • Skip require().prop in dead branches gated by inlined imported constants. (by @​hai-x in #​21517)

  • Annotate configuration options and public hooks in the generated types with the @since JSDoc tag. (by @​bjohansebas in #​21473)

v5.109.1

Compare Source

Patch Changes
  • Fix stray semicolon emitted before an imported call following a parenthesized sequence element. (by @​alexander-akait in #​21533)

  • Make require(esm) module.exports re-export analysis independent of module processing order. (by @​alexander-akait in #​21521)

  • Ignore ERR_SERVER_NOT_RUNNING on lazy-compilation backend dispose so compiler.close() succeeds on Bun. (by @​alexander-akait in #​21521)

  • Name the failing key when DefinePlugin fails to evaluate a typeof value. (by @​alexander-akait in #​21503)

  • Improve Deno compatibility: guard setNoDelay and force-close connections on lazy-compilation backend dispose, and return a real ArrayBuffer from the Node async/sync wasm loader so WebAssembly.instantiate accepts it. (by @​alexander-akait in #​21524)

  • Speed up the HTML parser and cut its peak memory: module-scope helpers/state and tokenizer callbacks, plus exact AST column pre-sizing. (by @​alexander-akait in #​21492)

  • Track CommonJS build dependencies by parsing sources when require.cache children are unavailable (e.g. Bun). (by @​alexander-akait in #​21531)

  • Cook common string-literal escapes on the JS parser fast path and own the tokenizer's cold-path readers. (by @​alexander-akait in #​21500)

  • Build the CSS parseA* AST on the SoA store instead of node classes, cutting parse memory and time. (by @​alexander-akait in #​21498)

  • Speed up and cut memory of the experimental CSS and HTML parsers: drop two derivable AST node columns, and scan long string, url, comment, and plaintext token bodies natively. (by @​alexander-akait in #​21504)

  • Speed up non-modules CSS parsing: skip redundant token re-reads, drop selector-prelude tokens without materializing nodes, allocate rule preludes lazily, and fast-path empty list seals. (by @​alexander-akait in #​21511)

  • Speed up stats generation and cut its peak memory: reuse cached sort comparators instead of thrashing the comparator caches on every sort, and drop redundant module-graph lookups and allocations in the extractors. (by @​alexander-akait in #​21506)

  • Speed up CSS parsing: byte-range function-name checks, indexed sibling lookahead. (by @​bjohansebas in #​21520)

  • Reduce allocations and redundant work across the code-generation, module-concatenation, exports/usage-analysis, hashing, and chunk-splitting hot paths. (by @​alexander-akait in #​21516)

  • Enable the Node.js compile cache in the webpack CLI entry point. (by @​bjohansebas in #​21523)

  • Encode the persistent cache with V8's value serializer. (by @​avivkeller in #​21514)

  • Speed up SplitChunksPlugin: reject non-subset chunk sets with 64-bit signatures, cache unnamed entry keys, and drop per-module closures. (by @​avivkeller in #​21529)

  • Initialize NormalModule._ast in the constructor so each instance keeps a single hidden-class shape. (by @​alexander-akait in #​21515)

  • Reduce allocations in the binary serialization hot paths. (by @​alexander-akait in #​21526)

  • Deduplicate and simplify several lib modules and speed up AggressiveMergingPlugin. (by @​alexander-akait in #​21525)

  • Rename nested const/let __webpack_require__ and __webpack_exports__ declarations in bundled webpack output. (by @​hai-x in #​21508)

v5.109.0

Compare Source

Minor Changes
  • Default experiments.typescript to "auto", enabling built-in TypeScript support on Node.js >= 22.6 when no TypeScript loader is registered. (by @​alexander-akait in #​21477)

  • Default experiments.css, experiments.html and experiments.asyncWebAssembly to "auto", enabling built-in support unless a loader is registered for those files; modules with inline or hook-injected loaders (e.g. html-webpack-plugin templates) keep being parsed as JavaScript. (by @​alexander-akait in #​21477)

  • Add output.resourceHints to emit resource hints (preload/prefetch/modulepreload/preconnect), on by default for ESM output, plus module.parser.<type>.urlHints, css.fontPreload and javascript.dynamicImportCssPreload. (by @​alexander-akait in #​21477)

  • Add built-in build progress via infrastructureLogging.progress, plus estimatedTime, phaseTimings, progress bar width and progressBar: "auto" on ProgressPlugin. (by @​alexander-akait in #​21477)

  • Concatenate CommonJS modules with statically analyzable exports; opt out via optimization.concatenateModules: { commonjs: false }. (by @​alexander-akait in #​21477)

  • Wrap "weird" CommonJS modules into module concatenation instead of bailing out. (by @​alexander-akait in #​21477)

  • Add output.html.inline (true | "script" | "style") and the webpackInline magic comment to inline chunk content into HTML. (by @​alexander-akait in #​21477)

  • Add output.html.inject to control where chunk tags are injected. (by @​alexander-akait in #​21477)

  • Add output.html.title, output.html.meta and output.html.base options for head generation. (by @​alexander-akait in #​21477)

  • Support per-icon link attributes (sizes, media, color, type, crossorigin) and arrays in output.html.favicon. (by @​alexander-akait in #​21487)

  • Add output.html.manifest to generate and link a web app manifest with hashed icons. (by @​alexander-akait in #​21487)

  • Add output.html.csp to inject a Content-Security-Policy meta with inline-content hashes and an optional nonce. (by @​alexander-akait in #​21487)

  • Add the output.html injectTags compilation hook to inject tags (script/link/meta/…) with injectTo placement. (by @​alexander-akait in #​21487)

  • Add the output.html transformTags compilation hook to mutate, remove, or move (between <head> and <body>) a page's existing <script>/<link>/<style>/<meta> tags. (by @​alexander-akait in #​21487)

  • Extend the HTML pipeline with html link sources (bundled as their own emitted page) and rel="preload"/"prefetch" links bundled as chunks. (by @​alexander-akait in #​21477)

  • Recognize more asset-bearing HTML sources: the twitter:player:stream meta, legacy SVG references, and Web App Manifest icons/screenshots/shortcuts URLs. (by @​alexander-akait in #​21477)

  • Add module.parser.html.as to parse HTML as a document or an element fragment. (by @​alexander-akait in #​21477)

  • Allow disabling a built-in HTML parser source via type: false in sources. (by @​alexander-akait in #​21477)

  • Export webpack.html.HtmlModulesPlugin with transformHtml/htmlEmitted compilation hooks. (by @​alexander-akait in #​21477)

  • Resolve @custom-media (including media-type values) and @custom-selector in native CSS. (by @​alexander-akait in #​21477)

  • Scope view-transition-name/-group/-class names and ::view-transition-*() pseudo references in CSS modules under customIdents. (by @​alexander-akait in #​21486)

  • Add import.meta.glob support, with a caseSensitive option and consistent hidden/node_modules matching. (by @​alexander-akait in #​21477)

  • Resolve import.meta.resolve("./asset") to the emitted asset URL via the importMeta.resolve parser option. (by @​alexander-akait in #​21477)

  • Add import.meta.env defaults: MODE, DEV, PROD, SSR and BASE_URL. (by @​alexander-akait in #​21477)

  • Add fine-grained import.meta parser options. (by @​alexander-akait in #​21477)

  • Deprecate the importMetaContext parser option in favor of importMeta.webpackContext. (by @​alexander-akait in #​21477)

  • Emit analyzable new URL(…, import.meta.url), worker/worklet URL and import() references with literal specifiers for ESM module output. (by @​alexander-akait in #​21477)

  • Compile async modules to generators for targets without async/await. (by @​alexander-akait in #​21477)

  • Evaluate and validate the second argument of dynamic import(specifier, options). (by @​alexander-akait in #​21477)

  • Add module.parser.javascript.worklet to bundle Worklet addModule() entries. (by @​alexander-akait in #​21477)

  • Add ?raw, ?url, ?inline and ?no-inline asset query suffixes under experiments.futureDefaults. (by @​alexander-akait in #​21477)

  • Add an interop ("default" | "esModule") hint for object externals to control default-export interop. (by @​alexander-akait in #​21477)

  • Add an amd-async externals type that loads AMD externals without an AMD library wrapper. (by @​alexander-akait in #​21477)

  • Support cache.compression: "zstd" for the filesystem cache. (by @​alexander-akait in #​21477)

  • Warn on strict-mode-only syntax and semantic hazards in ES module output, configurable via the strictModeViolations parser option. (by @​alexander-akait in #​21477)

  • Support parsers without location APIs: locations derive from node offsets and AST nodes no longer carry loc. (by @​alexander-akait in #​21477)

  • Attach the original DOM event to ChunkLoadError and ScriptExternalLoadError as error.event. (by @​alexander-akait in #​21477)

  • Add output.wasmStreamingFallback for wasm fallback on a wrong MIME type. (by @​alexander-akait in #​21477)

  • Show why a module was marked as not cacheable in stats output. (by @​alexander-akait in #​21477)

  • Expose the active MultiWatching on MultiCompiler.watching. (by @​alexander-akait in #​21477)

  • Resolve git merge conflicts when parsing the build-http lockfile. (by @​alexander-akait in #​21477)

Patch Changes

v5.108.4

Compare Source

Patch Changes

v5.108.3

Compare Source

Patch Changes

v5.108.2

Compare Source

Patch Changes

v5.108.1

Compare Source

Patch Changes
  • Fix invalid property access for escaped namespace imports with multi-character mangled export names. (by @​xiaoxiaojx in #​21280)

  • Add frames to ProfilingPlugin TracingStartedInBrowser event so the trace loads in Chrome DevTools. (by @​alexander-akait in #​21269)

v5.108.0

Compare Source

Minor Changes
  • Treat top-level await and import.meta as ES module markers, matching Node.js syntax detection so no explicit module type is needed. (by @​alexander-akait in #​21218)

  • Add a bun target that emits ESM and externalizes bun:* and node.js built-in modules. (by @​alexander-akait in #​21248)

  • Support CommonJS reexports via Object.defineProperty value and getter descriptors. (by @​alexander-akait in #​21129)

  • Support JSON Schema const when generating CLI flags from a schema. (by @​alexander-akait in #​21087)

  • Support JSON Schema if/then/else when generating CLI flags from a schema. (by @​alexander-akait in #​21087)

  • Skip import specifiers, require() and import() calls in dead conditional branches gated by inlined imported constants (isDEV ? A : B), evaluated via getCondition. (by @​hai-x in #​21136)

  • CSS localIdentName [hash] now resolves to the local ident hash (matching css-loader); use [modulehash] for the module hash. (by @​alexander-akait in #​21259)

  • Add CSS parser as option and resolve url() inside HTML style attributes. (by @​alexander-akait in #​21157)

  • Add dedicated module classes for all built-in module types. (by @​alexander-akait in #​21164)

  • Support .html/.css for the default ./src entry under the html/css experiments. (by @​alexander-akait in #​21039)

  • Add defineConfig helper for typed configuration files. (by @​alexander-akait in #​21169)

  • Add a deno target (with versions, e.g. deno, deno2, deno1.40) that emits ESM, resolves node.js built-ins via the required node: specifier, and keeps Deno's own import protocols (npm:, jsr:, node:, http(s)://) external. (by @​alexander-akait in #​21247)

  • Use module-import for electron externals when the target supports ESM. (by @​alexander-akait in #​21184)

  • Add output.environment.logicalAssignment to emit ||= in runtime code when the target supports logical assignment operators. (by @​bjohansebas in #​21219)

  • Resolve and rewrite asset URLs inside <iframe srcdoc> in HTML modules. (by @​bjohansebas in #​21226)

  • Add HMR support for HTML modules with body/title DOM patching on update. (by @​alexander-akait in #​21011)

  • Add css-url html source type extracting url() references from CSS-valued attributes. (by @​alexander-akait in #​21250)

  • Add module.parser.html.sources option to disable or customize URL-attribute extraction for HTML modules, with script / script-module / stylesheet / stylesheet-inline types for custom attributes (by @​alexander-akait in #​21022)

  • Add module.parser.html.template option to transform HTML module source before parsing. (by @​alexander-akait in #​21055)

  • Extract more source URLs in HTML modules (SVG, legacy and obsolete attributes). (by @​alexander-akait in #​21241)

  • Inline export default <const> when the default-exported value is a primitive constant. (by @​hai-x in #​21189)

  • Support optimization.inlineExports for better tree-shaking. (by @​hai-x in #​20973)

  • Re-encode inline hash digests ([contenthash]/[chunkhash]/[fullhash]/[modulehash]) from the full content hash, so they carry full entropy and work under optimization.realContentHash and in dynamically-loaded chunk filenames; also preserve leading zero bytes in base-N digests. (by @​alexander-akait in #​21267)

  • Allow tree-shaking unused calls to /*#__NO_SIDE_EFFECTS__*/-annotated (pure) exports across module boundaries. (by @​hai-x in #​20907)

  • Defer building unused re-export targets of side-effect-free barrel modules. (by @​hai-x in #​21165)

  • Keep export mangling enabled for modules whose namespace object is used as a whole value, by materializing a decoupled namespace object that keeps the original export names. (by @​alexander-akait in #​21234)

  • Add output.environment.let option (paired with target's let capability) and emit let/const instead of var in generated runtime code wherever it is safe. Bindings that may be wrapped in runtime-condition if blocks (harmony imports, ConcatenatedModule external imports) continue to use var to preserve function scoping. (by @​alexander-akait in #​21010)

  • Add output.html to emit an HTML file per entrypoint, injecting its JS/CSS chunks (including dependOn shared chunks). (by @​alexander-akait in #​21215)

  • Add module.parser.javascript.pureFunctions to mark top-level names as side-effect-free for tree shaking. (by @​hai-x in #​21063)

  • Add universal to compiler.platform, true for universal targets ("universal" or ["web", "node"]). (by @​bjohansebas in #​21252)

  • Add output.strictModuleResolution to gate the runtime MODULE_NOT_FOUND guard. (by @​hai-x in #​21067)

  • Support an inline digest in hash path placeholders, e.g. [contenthash:base64:8]. (by @​alexander-akait in #​21259)

  • Support [uniqueName] and its [uniquename] alias in template paths. (by @​alexander-akait in #​21155)

  • Support CSS in Node for universal targets, collecting styles for SSR. (by @​alexander-akait in #​21208)

  • Improve commonjs, node-commonjs and global externals for universal targets. (by @​alexander-akait in #​21187)

  • Add a universal target preset (browser + web worker + Node.js + Electron + NW.js) that always outputs ECMAScript modules. (by @​alexander-akait in #​21214)

  • Support new Worker(new URL(...)) in universal (node + web) targets by resolving the Worker constructor from worker_threads when no global Worker exists. (by @​alexander-akait in #​21195)

  • Add output.workerChunkFilename and entry.worker for worker chunk filenames. (by @​alexander-akait in #​21128)

Patch Changes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) | |---|---|---|---| | [webpack](https://github.com/webpack/webpack) | [`5.107.2` -> `5.109.2`](https://renovatebot.com/diffs/npm/webpack/5.107.2/5.109.2) | ![age](https://developer.mend.io/api/mc/badges/age/npm/webpack/5.109.2?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/webpack/5.107.2/5.109.2?slim=true) | --- ### Release Notes <details> <summary>webpack/webpack (webpack)</summary> ### [`v5.109.2`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51092) [Compare Source](https://github.com/webpack/webpack/compare/v5.109.1...v5.109.2) ##### Patch Changes - Resolve aliases pointing at a package directory whose name ends with `.js` again. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21542](https://github.com/webpack/webpack/pull/21542)) - Name CSS sources in source maps by their resource path, without the `css ` prefix. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21536](https://github.com/webpack/webpack/pull/21536)) - Delete no longer referenced files from the filesystem cache directory after storing the cache, age them by recorded time so restored caches are cleaned too, and collect every fully expired pack in one store instead of one per build. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21528](https://github.com/webpack/webpack/pull/21528)) - Report `"universal"` as the loader context target for the universal target. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21540](https://github.com/webpack/webpack/pull/21540)) - Skip `require().prop` in dead branches gated by inlined imported constants. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21517](https://github.com/webpack/webpack/pull/21517)) - Annotate configuration options and public hooks in the generated types with the `@since` JSDoc tag. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21473](https://github.com/webpack/webpack/pull/21473)) ### [`v5.109.1`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51091) [Compare Source](https://github.com/webpack/webpack/compare/v5.109.0...v5.109.1) ##### Patch Changes - Fix stray semicolon emitted before an imported call following a parenthesized sequence element. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21533](https://github.com/webpack/webpack/pull/21533)) - Make `require(esm)` `module.exports` re-export analysis independent of module processing order. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21521](https://github.com/webpack/webpack/pull/21521)) - Ignore ERR\_SERVER\_NOT\_RUNNING on lazy-compilation backend dispose so `compiler.close()` succeeds on Bun. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21521](https://github.com/webpack/webpack/pull/21521)) - Name the failing key when DefinePlugin fails to evaluate a `typeof` value. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21503](https://github.com/webpack/webpack/pull/21503)) - Improve Deno compatibility: guard `setNoDelay` and force-close connections on lazy-compilation backend dispose, and return a real `ArrayBuffer` from the Node async/sync wasm loader so `WebAssembly.instantiate` accepts it. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21524](https://github.com/webpack/webpack/pull/21524)) - Speed up the HTML parser and cut its peak memory: module-scope helpers/state and tokenizer callbacks, plus exact AST column pre-sizing. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21492](https://github.com/webpack/webpack/pull/21492)) - Track CommonJS build dependencies by parsing sources when `require.cache` children are unavailable (e.g. Bun). (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21531](https://github.com/webpack/webpack/pull/21531)) - Cook common string-literal escapes on the JS parser fast path and own the tokenizer's cold-path readers. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21500](https://github.com/webpack/webpack/pull/21500)) - Build the CSS `parseA*` AST on the SoA store instead of node classes, cutting parse memory and time. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21498](https://github.com/webpack/webpack/pull/21498)) - Speed up and cut memory of the experimental CSS and HTML parsers: drop two derivable AST node columns, and scan long string, url, comment, and plaintext token bodies natively. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21504](https://github.com/webpack/webpack/pull/21504)) - Speed up non-modules CSS parsing: skip redundant token re-reads, drop selector-prelude tokens without materializing nodes, allocate rule preludes lazily, and fast-path empty list seals. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21511](https://github.com/webpack/webpack/pull/21511)) - Speed up stats generation and cut its peak memory: reuse cached sort comparators instead of thrashing the comparator caches on every sort, and drop redundant module-graph lookups and allocations in the extractors. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21506](https://github.com/webpack/webpack/pull/21506)) - Speed up CSS parsing: byte-range function-name checks, indexed sibling lookahead. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21520](https://github.com/webpack/webpack/pull/21520)) - Reduce allocations and redundant work across the code-generation, module-concatenation, exports/usage-analysis, hashing, and chunk-splitting hot paths. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21516](https://github.com/webpack/webpack/pull/21516)) - Enable the Node.js compile cache in the webpack CLI entry point. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21523](https://github.com/webpack/webpack/pull/21523)) - Encode the persistent cache with V8's value serializer. (by [@&#8203;avivkeller](https://github.com/avivkeller) in [#&#8203;21514](https://github.com/webpack/webpack/pull/21514)) - Speed up SplitChunksPlugin: reject non-subset chunk sets with 64-bit signatures, cache unnamed entry keys, and drop per-module closures. (by [@&#8203;avivkeller](https://github.com/avivkeller) in [#&#8203;21529](https://github.com/webpack/webpack/pull/21529)) - Initialize `NormalModule._ast` in the constructor so each instance keeps a single hidden-class shape. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21515](https://github.com/webpack/webpack/pull/21515)) - Reduce allocations in the binary serialization hot paths. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21526](https://github.com/webpack/webpack/pull/21526)) - Deduplicate and simplify several lib modules and speed up AggressiveMergingPlugin. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21525](https://github.com/webpack/webpack/pull/21525)) - Rename nested `const`/`let __webpack_require__` and `__webpack_exports__` declarations in bundled webpack output. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21508](https://github.com/webpack/webpack/pull/21508)) ### [`v5.109.0`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51090) [Compare Source](https://github.com/webpack/webpack/compare/v5.108.4...v5.109.0) ##### Minor Changes - Default `experiments.typescript` to `"auto"`, enabling built-in TypeScript support on Node.js >= 22.6 when no TypeScript loader is registered. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Default `experiments.css`, `experiments.html` and `experiments.asyncWebAssembly` to `"auto"`, enabling built-in support unless a loader is registered for those files; modules with inline or hook-injected loaders (e.g. html-webpack-plugin templates) keep being parsed as JavaScript. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `output.resourceHints` to emit resource hints (`preload`/`prefetch`/`modulepreload`/`preconnect`), on by default for ESM output, plus `module.parser.<type>.urlHints`, `css.fontPreload` and `javascript.dynamicImportCssPreload`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add built-in build progress via `infrastructureLogging.progress`, plus `estimatedTime`, `phaseTimings`, progress bar `width` and `progressBar: "auto"` on `ProgressPlugin`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Concatenate CommonJS modules with statically analyzable exports; opt out via `optimization.concatenateModules: { commonjs: false }`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Wrap "weird" CommonJS modules into module concatenation instead of bailing out. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `output.html.inline` (`true | "script" | "style"`) and the `webpackInline` magic comment to inline chunk content into HTML. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `output.html.inject` to control where chunk tags are injected. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `output.html.title`, `output.html.meta` and `output.html.base` options for head generation. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Support per-icon link attributes (`sizes`, `media`, `color`, `type`, `crossorigin`) and arrays in `output.html.favicon`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21487](https://github.com/webpack/webpack/pull/21487)) - Add `output.html.manifest` to generate and link a web app manifest with hashed icons. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21487](https://github.com/webpack/webpack/pull/21487)) - Add `output.html.csp` to inject a Content-Security-Policy meta with inline-content hashes and an optional nonce. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21487](https://github.com/webpack/webpack/pull/21487)) - Add the `output.html` `injectTags` compilation hook to inject tags (script/link/meta/…) with `injectTo` placement. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21487](https://github.com/webpack/webpack/pull/21487)) - Add the `output.html` `transformTags` compilation hook to mutate, remove, or move (between `<head>` and `<body>`) a page's existing `<script>`/`<link>`/`<style>`/`<meta>` tags. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21487](https://github.com/webpack/webpack/pull/21487)) - Extend the HTML pipeline with `html` link sources (bundled as their own emitted page) and `rel="preload"`/`"prefetch"` links bundled as chunks. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Recognize more asset-bearing HTML sources: the `twitter:player:stream` meta, legacy SVG references, and Web App Manifest `icons`/`screenshots`/`shortcuts` URLs. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `module.parser.html.as` to parse HTML as a document or an element fragment. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Allow disabling a built-in HTML parser source via `type: false` in `sources`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Export `webpack.html.HtmlModulesPlugin` with `transformHtml`/`htmlEmitted` compilation hooks. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Resolve `@custom-media` (including media-type values) and `@custom-selector` in native CSS. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Scope `view-transition-name`/`-group`/`-class` names and `::view-transition-*()` pseudo references in CSS modules under `customIdents`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21486](https://github.com/webpack/webpack/pull/21486)) - Add `import.meta.glob` support, with a `caseSensitive` option and consistent hidden/`node_modules` matching. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Resolve `import.meta.resolve("./asset")` to the emitted asset URL via the `importMeta.resolve` parser option. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `import.meta.env` defaults: `MODE`, `DEV`, `PROD`, `SSR` and `BASE_URL`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add fine-grained `import.meta` parser options. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Deprecate the `importMetaContext` parser option in favor of `importMeta.webpackContext`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Emit analyzable `new URL(…, import.meta.url)`, worker/worklet URL and `import()` references with literal specifiers for ESM module output. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Compile async modules to generators for targets without async/await. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Evaluate and validate the second argument of dynamic `import(specifier, options)`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `module.parser.javascript.worklet` to bundle Worklet `addModule()` entries. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `?raw`, `?url`, `?inline` and `?no-inline` asset query suffixes under `experiments.futureDefaults`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add an `interop` (`"default" | "esModule"`) hint for object externals to control default-export interop. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add an `amd-async` externals type that loads AMD externals without an AMD library wrapper. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Support `cache.compression: "zstd"` for the filesystem cache. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Warn on strict-mode-only syntax and semantic hazards in ES module output, configurable via the `strictModeViolations` parser option. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Support parsers without location APIs: locations derive from node offsets and AST nodes no longer carry `loc`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Attach the original DOM event to `ChunkLoadError` and `ScriptExternalLoadError` as `error.event`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Add `output.wasmStreamingFallback` for wasm fallback on a wrong MIME type. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Show why a module was marked as not cacheable in stats output. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Expose the active `MultiWatching` on `MultiCompiler.watching`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Resolve git merge conflicts when parsing the build-http lockfile. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) ##### Patch Changes - Fix broken HMR with `output.module` and non-`import` chunk loading by emitting a plain-JSON hot-update manifest. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix unused CSS module exports leaking into the JS wrapper. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix deferred import evaluation: re-throw cached errors, guard forcing a still-evaluating module, keep re-exported deferred namespaces identical, and evaluate initial-chunk deferred context imports lazily. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Keep ESM live bindings for a module library's entry exports, including when the runtime is emitted as a separate chunk. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix SplitChunks merging undersized modules into the wrong result group. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix named id assignment reusing an already-used numbered suffix, which could produce duplicate module/chunk ids. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix inlined non-binary asset modules with `encoding: false` emitting "undefined" instead of their content. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Decode non-base64 data URIs as UTF-8 so multi-byte characters are preserved. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Keep required JSON data intact when a prototype method (e.g. `arr.includes()`) is called on it. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Recognize modern RegExp flags (`d`, `s`, `u`, `v`) when statically evaluating `new RegExp(...)`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Merge object-form and dotted DefinePlugin definitions so `import.meta.env`/`process.env` are consistent across direct, whole-object and destructured access. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Emit an error when an object external has no entry for the used externals type. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix a persistent cache restore crash when a content section starts exactly on a content-buffer boundary. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Restore missing `internalSerializables` entries (webpack/lib/Module and cold filesystem cache). (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix watch rebuild crash when context symlink targets lack `timestampHash`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix lazy compilation backend leaking idle module entries and hanging on exit. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Stop logging benign ECONNRESET client errors from the lazy compilation server. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Accept compilations from another webpack copy in `getCompilationHooks` again. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix `output.html` injection edge cases: escaping, head detection, duplicate meta tags, resource-hint/entry-tag retention with `inject: false`, and stylesheet placement. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Ignore a `<base>` inside an inert `<template>` when resolving HTML URLs. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Bust an HTML page's `[contenthash]` when its inlined chunk content changes. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix a dangling stylesheet `<link>` for a JS-only chunk in an HTML entry. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix a malformed HTML magic comment leaking a pending `webpackInline` directive onto the next element. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix off-by-one dropping the last character of an unterminated `url(...)` at end-of-input. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Consume the trailing whitespace of a CSS hex escape when unescaping identifiers. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix `[fullhash]` in `output.webassemblyModuleFilename` by dropping a stray brace and requesting the `getFullHash` runtime module. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix duplicated errors/warnings in stats output when detail-less entries exceed `errorsSpace`/`warningsSpace`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Improve module parse errors with a babel-style code frame and the module type. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21485](https://github.com/webpack/webpack/pull/21485)) - Fix `formatSize` rendering sizes of 1 TiB or larger as "undefined". (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Skip the anonymous default export `.name` fix-up when `name` is non-configurable, instead of throwing on pre-ES2015 engines. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Escape `?` and `#` in context module regexp identifiers so source map names are not truncated. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Resolve directory requests to their index module in scoped `DllReferencePlugin`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Skip the `hasSymbol` check in the async module runtime when `environment.symbol` is set. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Use a shared `__webpack_require__.cjs` helper for wrapped CommonJS modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Derive ASI positions from source text instead of acorn's `onInsertedSemicolon`, so custom parsers need not collect semicolons. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Avoid a second full parse for `auto` source type by downgrading module to script in place on a top-level return. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix exponential-time side-effects analysis on cyclic module graphs by memoizing cycle-free results via Tarjan lowlink. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Speed up JavaScript parsing and AST walking and reduce parser memory usage. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Speed up CSS and HTML parsing and code generation and reduce parser memory usage. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Speed up snapshot creation and reduce its memory usage. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Reduce allocations in JS codegen, concatenation, queues and parser setup. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Speed up stats generation on large builds by reusing the item context across array items. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Memoize loader resolution per compilation to avoid re-resolving the same loader for every matching module. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Reuse and harden webpack's shared resource parser in the loader runner. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Update webpack-sources to 3.5.1 and enhanced-resolve to 5.24.2 to cut peak memory. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Inline the loader-runner package into core. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21477](https://github.com/webpack/webpack/pull/21477)) - Fix context hash crash on unsupported directory entries like FIFOs and sockets. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21484](https://github.com/webpack/webpack/pull/21484)) - Verify internalSerializables in lint:special and regenerate it in fix:special. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21476](https://github.com/webpack/webpack/pull/21476)) ### [`v5.108.4`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51084) [Compare Source](https://github.com/webpack/webpack/compare/v5.108.3...v5.108.4) ##### Patch Changes - Speed up non-CSS-Modules parsing by not building unused selector AST nodes. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21324](https://github.com/webpack/webpack/pull/21324)) - Speed up non-CSS-Modules CSS parsing by dropping value tokens nothing reads. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21324](https://github.com/webpack/webpack/pull/21324)) - Resolve HTML asset URLs against the document `<base href>`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21329](https://github.com/webpack/webpack/pull/21329)) - Add HTML integration tests: generateError output, ignored src, null-char parse. (by [@&#8203;aryanraj45](https://github.com/aryanraj45) in [#&#8203;21328](https://github.com/webpack/webpack/pull/21328)) - Reduce CPU and memory overhead of HTML and CSS parsing and code generation. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21332](https://github.com/webpack/webpack/pull/21332)) - Reduce HTML parser memory and CPU by skipping unused AST nodes. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21323](https://github.com/webpack/webpack/pull/21323)) - Reduce HTML parser memory by storing the AST in struct-of-arrays form. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21331](https://github.com/webpack/webpack/pull/21331)) - Key the provided-exports cache on a lazy barrel's still-lazy re-export targets. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21326](https://github.com/webpack/webpack/pull/21326)) - Default `output.globalObject` to `globalThis` for universal targets. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21314](https://github.com/webpack/webpack/pull/21314)) - Pass through `new URL(...)` directory references instead of resolving them. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21312](https://github.com/webpack/webpack/pull/21312)) ### [`v5.108.3`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51083) [Compare Source](https://github.com/webpack/webpack/compare/v5.108.2...v5.108.3) ##### Patch Changes - Speed up CSS parsing and reduce CSS AST node memory. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21285](https://github.com/webpack/webpack/pull/21285)) - Fix HMR codegen crash for harmony accept with unresolved imports. (by [@&#8203;xiaoxiaojx](https://github.com/xiaoxiaojx) in [#&#8203;21302](https://github.com/webpack/webpack/pull/21302)) - Match harmony accept dependencies by module reference so HMR codegen handles imports without a module or chunk id. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21303](https://github.com/webpack/webpack/pull/21303)) ### [`v5.108.2`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51082) [Compare Source](https://github.com/webpack/webpack/compare/v5.108.1...v5.108.2) ##### Patch Changes - Fix lazy barrel deferral of ungrouped side-effect imports. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21291](https://github.com/webpack/webpack/pull/21291)) - Respect the `node:` prefix for node.js core modules used as externals. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21286](https://github.com/webpack/webpack/pull/21286)) ### [`v5.108.1`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51081) [Compare Source](https://github.com/webpack/webpack/compare/v5.108.0...v5.108.1) ##### Patch Changes - Fix invalid property access for escaped namespace imports with multi-character mangled export names. (by [@&#8203;xiaoxiaojx](https://github.com/xiaoxiaojx) in [#&#8203;21280](https://github.com/webpack/webpack/pull/21280)) - Add frames to ProfilingPlugin TracingStartedInBrowser event so the trace loads in Chrome DevTools. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21269](https://github.com/webpack/webpack/pull/21269)) ### [`v5.108.0`](https://github.com/webpack/webpack/blob/HEAD/CHANGELOG.md#51080) [Compare Source](https://github.com/webpack/webpack/compare/v5.107.2...v5.108.0) ##### Minor Changes - Treat top-level await and `import.meta` as ES module markers, matching Node.js syntax detection so no explicit module type is needed. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21218](https://github.com/webpack/webpack/pull/21218)) - Add a `bun` target that emits ESM and externalizes `bun:*` and node.js built-in modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21248](https://github.com/webpack/webpack/pull/21248)) - Support CommonJS reexports via `Object.defineProperty` value and getter descriptors. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21129](https://github.com/webpack/webpack/pull/21129)) - Support JSON Schema `const` when generating CLI flags from a schema. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21087](https://github.com/webpack/webpack/pull/21087)) - Support JSON Schema `if`/`then`/`else` when generating CLI flags from a schema. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21087](https://github.com/webpack/webpack/pull/21087)) - Skip import specifiers, `require()` and `import()` calls in dead conditional branches gated by inlined imported constants (`isDEV ? A : B`), evaluated via `getCondition`. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21136](https://github.com/webpack/webpack/pull/21136)) - CSS `localIdentName` `[hash]` now resolves to the local ident hash (matching css-loader); use `[modulehash]` for the module hash. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21259](https://github.com/webpack/webpack/pull/21259)) - Add CSS parser `as` option and resolve `url()` inside HTML `style` attributes. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21157](https://github.com/webpack/webpack/pull/21157)) - Add dedicated module classes for all built-in module types. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21164](https://github.com/webpack/webpack/pull/21164)) - Support `.html`/`.css` for the default `./src` entry under the html/css experiments. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21039](https://github.com/webpack/webpack/pull/21039)) - Add `defineConfig` helper for typed configuration files. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21169](https://github.com/webpack/webpack/pull/21169)) - Add a `deno` target (with versions, e.g. `deno`, `deno2`, `deno1.40`) that emits ESM, resolves node.js built-ins via the required `node:` specifier, and keeps Deno's own import protocols (`npm:`, `jsr:`, `node:`, `http(s)://`) external. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21247](https://github.com/webpack/webpack/pull/21247)) - Use `module-import` for electron externals when the target supports ESM. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21184](https://github.com/webpack/webpack/pull/21184)) - Add `output.environment.logicalAssignment` to emit `||=` in runtime code when the target supports logical assignment operators. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21219](https://github.com/webpack/webpack/pull/21219)) - Resolve and rewrite asset URLs inside `<iframe srcdoc>` in HTML modules. (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21226](https://github.com/webpack/webpack/pull/21226)) - Add HMR support for HTML modules with body/title DOM patching on update. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21011](https://github.com/webpack/webpack/pull/21011)) - Add `css-url` html source type extracting `url()` references from CSS-valued attributes. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21250](https://github.com/webpack/webpack/pull/21250)) - Add `module.parser.html.sources` option to disable or customize URL-attribute extraction for HTML modules, with `script` / `script-module` / `stylesheet` / `stylesheet-inline` types for custom attributes (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21022](https://github.com/webpack/webpack/pull/21022)) - Add `module.parser.html.template` option to transform HTML module source before parsing. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21055](https://github.com/webpack/webpack/pull/21055)) - Extract more source URLs in HTML modules (SVG, legacy and obsolete attributes). (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21241](https://github.com/webpack/webpack/pull/21241)) - Inline `export default <const>` when the default-exported value is a primitive constant. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21189](https://github.com/webpack/webpack/pull/21189)) - Support `optimization.inlineExports` for better tree-shaking. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;20973](https://github.com/webpack/webpack/pull/20973)) - Re-encode inline hash digests (`[contenthash]`/`[chunkhash]`/`[fullhash]`/`[modulehash]`) from the full content hash, so they carry full entropy and work under `optimization.realContentHash` and in dynamically-loaded chunk filenames; also preserve leading zero bytes in base-N digests. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21267](https://github.com/webpack/webpack/pull/21267)) - Allow tree-shaking unused calls to `/*#__NO_SIDE_EFFECTS__*/`-annotated (pure) exports across module boundaries. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;20907](https://github.com/webpack/webpack/pull/20907)) - Defer building unused re-export targets of side-effect-free barrel modules. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21165](https://github.com/webpack/webpack/pull/21165)) - Keep export mangling enabled for modules whose namespace object is used as a whole value, by materializing a decoupled namespace object that keeps the original export names. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21234](https://github.com/webpack/webpack/pull/21234)) - Add `output.environment.let` option (paired with target's `let` capability) and emit `let`/`const` instead of `var` in generated runtime code wherever it is safe. Bindings that may be wrapped in runtime-condition `if` blocks (harmony imports, ConcatenatedModule external imports) continue to use `var` to preserve function scoping. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21010](https://github.com/webpack/webpack/pull/21010)) - Add `output.html` to emit an HTML file per entrypoint, injecting its JS/CSS chunks (including `dependOn` shared chunks). (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21215](https://github.com/webpack/webpack/pull/21215)) - Add `module.parser.javascript.pureFunctions` to mark top-level names as side-effect-free for tree shaking. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21063](https://github.com/webpack/webpack/pull/21063)) - Add `universal` to `compiler.platform`, true for universal targets (`"universal"` or `["web", "node"]`). (by [@&#8203;bjohansebas](https://github.com/bjohansebas) in [#&#8203;21252](https://github.com/webpack/webpack/pull/21252)) - Add `output.strictModuleResolution` to gate the runtime `MODULE_NOT_FOUND` guard. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21067](https://github.com/webpack/webpack/pull/21067)) - Support an inline digest in hash path placeholders, e.g. `[contenthash:base64:8]`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21259](https://github.com/webpack/webpack/pull/21259)) - Support `[uniqueName]` and its `[uniquename]` alias in template paths. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21155](https://github.com/webpack/webpack/pull/21155)) - Support CSS in Node for universal targets, collecting styles for SSR. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21208](https://github.com/webpack/webpack/pull/21208)) - Improve commonjs, node-commonjs and global externals for universal targets. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21187](https://github.com/webpack/webpack/pull/21187)) - Add a `universal` target preset (browser + web worker + Node.js + Electron + NW\.js) that always outputs ECMAScript modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21214](https://github.com/webpack/webpack/pull/21214)) - Support `new Worker(new URL(...))` in universal (node + web) targets by resolving the Worker constructor from `worker_threads` when no global `Worker` exists. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21195](https://github.com/webpack/webpack/pull/21195)) - Add `output.workerChunkFilename` and `entry.worker` for worker chunk filenames. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21128](https://github.com/webpack/webpack/pull/21128)) ##### Patch Changes - Skip re-parsing the inlined entry module when no renaming is needed. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21167](https://github.com/webpack/webpack/pull/21167)) - Extend the avoidEntryIife no-parse fast path to multi-entry chunks. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21173](https://github.com/webpack/webpack/pull/21173)) - Reuse the binary deserialize dispatch table to speed up cache restore. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21175](https://github.com/webpack/webpack/pull/21175)) - Type `buildInfo` and `buildMeta` per module type with shared common properties. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21172](https://github.com/webpack/webpack/pull/21172)) - Avoid copying module runtime requirements when ownership is not transferred. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21140](https://github.com/webpack/webpack/pull/21140)) - Keep all CommonJS exports when an exported function accesses them via `this`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21179](https://github.com/webpack/webpack/pull/21179)) - Align CLI color-support detection across Node, Deno and Bun. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21257](https://github.com/webpack/webpack/pull/21257)) - Include the schema origin path in conflicting-schema CLI argument errors. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21087](https://github.com/webpack/webpack/pull/21087)) - Reject `__proto__`, `constructor` and `prototype` path segments in `cli.processArguments` to prevent prototype pollution. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21057](https://github.com/webpack/webpack/pull/21057)) - Speed up `Compilation.deleteAsset` and `Compilation.renameAsset` via a lazy reverse index from asset file name to containing chunks. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21035](https://github.com/webpack/webpack/pull/21035)) - Fix merging of inner modules' top-level declarations in concatenated modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21170](https://github.com/webpack/webpack/pull/21170)) - Reduce allocations in export hashing and concatenation name lookups. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21167](https://github.com/webpack/webpack/pull/21167)) - Avoid toLowerCase allocations in CSS keyword comparisons. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21109](https://github.com/webpack/webpack/pull/21109)) - Speed up CSS identifier escaping with a char-class lookup table. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21109](https://github.com/webpack/webpack/pull/21109)) - Resolve `[fullhash]` in `url()` public paths for inlined CSS export types (`style`/`text`/`css-style-sheet`) at runtime. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21054](https://github.com/webpack/webpack/pull/21054)) - Avoid quadratic line scan when building CSS module exports source maps. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21109](https://github.com/webpack/webpack/pull/21109)) - Compute CSS comment source locations lazily. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21109](https://github.com/webpack/webpack/pull/21109)) - Support inline hash digest and length in CSS module `localIdentName` placeholders. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21259](https://github.com/webpack/webpack/pull/21259)) - Resolve full CSS escapes (including hex) in CSS-Modules names, so e.g. `\75 rl()` matches `url()`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21196](https://github.com/webpack/webpack/pull/21196)) - Reduce CSS parser CPU (hoisted per-call regexes, byte-compared `@container` pure-mode keywords) and stop retaining parsed comments on the reused parser instance between modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21202](https://github.com/webpack/webpack/pull/21202)) - Reduce CSS build time and memory usage. Per-export CSS dependencies are consolidated into one dependency per module, and hot-path allocations and lookups in CSS code generation and the module-graph cache are trimmed. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21114](https://github.com/webpack/webpack/pull/21114)) - Cache CSS public-path placeholder offsets per module source to avoid re-materializing and re-scanning the source on every render. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21054](https://github.com/webpack/webpack/pull/21054)) - Fix CSS tokenizer infinite loops and dropped tokens on malformed input. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21102](https://github.com/webpack/webpack/pull/21102)) - Speed up CSS identifier unescaping with bulk run flushing. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21109](https://github.com/webpack/webpack/pull/21109)) - Skip already-visited symlink targets when resolving context hashes so cyclic symlink graphs no longer overflow the queue. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21088](https://github.com/webpack/webpack/pull/21088)) - Resolve `DefinePlugin` access to an undefined object member as `undefined`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21040](https://github.com/webpack/webpack/pull/21040)) - Avoid materializing dependency source locations when sorting, keeping them lazy to reduce build time and memory. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21228](https://github.com/webpack/webpack/pull/21228)) - Speed up serialization deserialize by replacing a Buffer.isBuffer call with a typeof check. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21203](https://github.com/webpack/webpack/pull/21203)) - Emit assets with absolute target paths as-is to avoid invalid Windows paths. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21223](https://github.com/webpack/webpack/pull/21223)) - Add `output.environment.spread`, `output.environment.hasOwn`, and `output.environment.symbol`, and use method shorthand, spread, `Object.hasOwn`, and an unguarded `Symbol` in generated runtime code where the environment supports it. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21188](https://github.com/webpack/webpack/pull/21188)) - Drop the unused loadScript runtime from ESM hot-update bundles. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21208](https://github.com/webpack/webpack/pull/21208)) - Extend value binding optimization to export default expressions. (by [@&#8203;xiaoxiaojx](https://github.com/xiaoxiaojx) in [#&#8203;21117](https://github.com/webpack/webpack/pull/21117)) - Reduce ExportInfo memory and cache size for inline-exports metadata. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21171](https://github.com/webpack/webpack/pull/21171)) - Resolve nested exports info paths iteratively to cut per-level array allocations. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21137](https://github.com/webpack/webpack/pull/21137)) - Fix stale incremental cache for css, html and asset/source/inline modules. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21108](https://github.com/webpack/webpack/pull/21108)) - CommonJS tree-shaking no longer drops exports accessed before a deferred require binding. (by [@&#8203;xiaoxiaojx](https://github.com/xiaoxiaojx) in [#&#8203;21123](https://github.com/webpack/webpack/pull/21123)) - Make CSS-referenced asset available in lazy JS chunk during incremental rebuilds. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21100](https://github.com/webpack/webpack/pull/21100)) - Correct string/template import specifier parsing for filesystem cache build dependencies and fix module-sharing hostname validation. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21232](https://github.com/webpack/webpack/pull/21232)) - perf: guard isDeferred() behind experiments.deferImport in ConcatenatedModule (by [@&#8203;shashank-u03](https://github.com/shashank-u03) in [#&#8203;21096](https://github.com/webpack/webpack/pull/21096)) - Speed up deterministicGrouping and cached comparators on large builds. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21197](https://github.com/webpack/webpack/pull/21197)) - Reduce allocations on harmony/commonjs dependency hot paths. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21180](https://github.com/webpack/webpack/pull/21180)) - Force-load a module's new owning chunk during HMR when its only loaded chunk is removed from a runtime, so it keeps receiving updates. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21131](https://github.com/webpack/webpack/pull/21131)) - Fix HTML parser adoption agency to handle a `nobr` shielded by a marker. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21274](https://github.com/webpack/webpack/pull/21274)) - Expand HTML parser tag/attribute coverage and decode character references. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21159](https://github.com/webpack/webpack/pull/21159)) - Speed up and reduce allocations in the experimental HTML parser's tokenizer, tree builder, and entity decoder. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21152](https://github.com/webpack/webpack/pull/21152)) - Speed up the experimental HTML parser and reduce its memory usage. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21130](https://github.com/webpack/webpack/pull/21130)) - Avoid redundant HTML module work: reuse the dependency-template render across the JS and HTML code-generation passes, and memoize sentinel resolution/content hashing per source. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21054](https://github.com/webpack/webpack/pull/21054)) - Release inner-graph state after use and speed up inlined-export checks. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21167](https://github.com/webpack/webpack/pull/21167)) - Reduce JavascriptParser allocations on the walk hot path to speed up parsing and lower memory usage. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21139](https://github.com/webpack/webpack/pull/21139)) - Reduce CPU and memory overhead of the lazy barrel optimization. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21213](https://github.com/webpack/webpack/pull/21213)) - Keep the error message in module build errors on engines whose `Error.stack` omits it. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21239](https://github.com/webpack/webpack/pull/21239)) - Speed up module concatenation by caching repeated per-module computations. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21115](https://github.com/webpack/webpack/pull/21115)) - Move the `hot` flag from `Module` to `NormalModule`, where it's actually read and written. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21028](https://github.com/webpack/webpack/pull/21028)) - Move the `weak` flag from `Dependency` to `ModuleDependency`, where it's actually set. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21111](https://github.com/webpack/webpack/pull/21111)) - Avoid the entry IIFE for multiple inlined entry modules by renaming collisions. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21151](https://github.com/webpack/webpack/pull/21151)) - Reject `new import.defer(...)`/`new import.source(...)` with member access as a SyntaxError. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21211](https://github.com/webpack/webpack/pull/21211)) - Avoid `ProvidePlugin` injection for local CommonJS require bindings that use the same variable name. (by [@&#8203;fireairforce](https://github.com/fireairforce) in [#&#8203;21041](https://github.com/webpack/webpack/pull/21041)) - Resolve the global `new Worker(new URL(...))` to `worker_threads` on the `node` target. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21217](https://github.com/webpack/webpack/pull/21217)) - Use optional chaining in generated runtime code where the environment supports it. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21186](https://github.com/webpack/webpack/pull/21186)) - Allow output.path to be the filesystem root by treating EISDIR like EEXIST in mkdirp. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21223](https://github.com/webpack/webpack/pull/21223)) - Reduce memory by not retaining the source location object on every dependency. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21183](https://github.com/webpack/webpack/pull/21183)) - Keep the full exports object when a `require()` binding is re-exported. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21144](https://github.com/webpack/webpack/pull/21144)) - Replace glob-to-regexp dependency with watchpack's globToRegExp utility. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21176](https://github.com/webpack/webpack/pull/21176)) - Shrink the persistent cache: add a NULL\_AND\_I16 binary tier and inline tiny strings instead of larger far back-references. (by [@&#8203;hai-x](https://github.com/hai-x) in [#&#8203;21210](https://github.com/webpack/webpack/pull/21210)) - Type serializer read/write contexts with positional tuples and fix a ProvideSharedDependency version/request swap. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21201](https://github.com/webpack/webpack/pull/21201)) - Speed up buildChunkGraph by deriving block modules from the first runtime. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21166](https://github.com/webpack/webpack/pull/21166)) - Cache re-export target resolution in SideEffectsFlagPlugin for faster builds. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21085](https://github.com/webpack/webpack/pull/21085)) - Skip pure single-star passthrough modules for `export *` re-exports. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21085](https://github.com/webpack/webpack/pull/21085)) - Skip dependency error/warning reporting for unchanged modules on rebuilds. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21154](https://github.com/webpack/webpack/pull/21154)) - Use value descriptors instead of getters for const export bindings. (by [@&#8203;xiaoxiaojx](https://github.com/xiaoxiaojx) in [#&#8203;21021](https://github.com/webpack/webpack/pull/21021)) - Apply CSS hot updates on the Node side of a universal target. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21217](https://github.com/webpack/webpack/pull/21217)) - Guard CSS `style` export-type injection so it no-ops when there is no `document`. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21193](https://github.com/webpack/webpack/pull/21193)) - Avoid building warning stats objects when counting warnings without a filter. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21198](https://github.com/webpack/webpack/pull/21198)) - Recognize forward-slash Windows absolute paths (e.g. C:/dir) consistently. (by [@&#8203;alexander-akait](https://github.com/alexander-akait) in [#&#8203;21223](https://github.com/webpack/webpack/pull/21223)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi41Mi44IiwidXBkYXRlZEluVmVyIjoiNDIuNTIuOCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJyZW5vdmF0ZS1ib3QiXX0=-->
Author
Member

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: yarn.lock
Unknown Syntax Error: Unsupported option name ("--ignore-platform").

$ yarn install [--json] [--immutable] [--immutable-cache] [--refresh-lockfile] [--check-cache] [--check-resolutions] [--inline-builds] [--mode #0]

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: yarn.lock ``` Unknown Syntax Error: Unsupported option name ("--ignore-platform"). $ yarn install [--json] [--immutable] [--immutable-cache] [--refresh-lockfile] [--check-cache] [--check-resolutions] [--inline-builds] [--mode #0] ```
renovate-bot force-pushed renovate/webpack-5.x-lockfile from 6ae6a7e9a4
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
to 01e92a12b3
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
2026-06-26 19:11:45 +05:30
Compare
renovate-bot changed title from chore(deps): update dependency webpack to v5.108.0 to chore(deps): update dependency webpack to v5.108.1 2026-06-26 19:11:48 +05:30
renovate-bot force-pushed renovate/webpack-5.x-lockfile from 01e92a12b3
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
to 10b589f693
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
2026-07-06 05:16:08 +05:30
Compare
renovate-bot changed title from chore(deps): update dependency webpack to v5.108.1 to chore(deps): update dependency webpack to v5.108.4 2026-07-06 05:16:17 +05:30
renovate-bot force-pushed renovate/webpack-5.x-lockfile from 10b589f693
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
to 10f1f3fa29
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
2026-07-27 05:19:16 +05:30
Compare
renovate-bot changed title from chore(deps): update dependency webpack to v5.108.4 to chore(deps): update dependency webpack to v5.109.0 2026-07-27 05:19:26 +05:30
renovate-bot force-pushed renovate/webpack-5.x-lockfile from 10f1f3fa29
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
to c3513e8e35
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
2026-08-03 05:18:18 +05:30
Compare
renovate-bot changed title from chore(deps): update dependency webpack to v5.109.0 to chore(deps): update dependency webpack to v5.109.2 2026-08-03 05:18:26 +05:30
Some checks failed
renovate/artifacts Artifact file update failure
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
ci/woodpecker/pull_request_metadata/woodpecker Pipeline was successful
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/webpack-5.x-lockfile:renovate/webpack-5.x-lockfile
git switch renovate/webpack-5.x-lockfile

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch master
git merge --no-ff renovate/webpack-5.x-lockfile
git switch renovate/webpack-5.x-lockfile
git rebase master
git switch master
git merge --ff-only renovate/webpack-5.x-lockfile
git switch renovate/webpack-5.x-lockfile
git rebase master
git switch master
git merge --no-ff renovate/webpack-5.x-lockfile
git switch master
git merge --squash renovate/webpack-5.x-lockfile
git switch master
git merge --ff-only renovate/webpack-5.x-lockfile
git switch master
git merge renovate/webpack-5.x-lockfile
git push origin master
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
mCaptcha/pow_sha256-polyfill!144
No description provided.