dependabot[bot] opened a new pull request, #124:
URL: https://github.com/apache/airavata-portals/pull/124

   Bumps [webpack](https://github.com/webpack/webpack) from 4.42.1 to 5.107.2.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/webpack/webpack/releases";>webpack's 
releases</a>.</em></p>
   <blockquote>
   <h2>v5.107.2</h2>
   <h3>Patch Changes</h3>
   <ul>
   <li>
   <p>Reduce per-file overhead in 
<code>ContextModuleFactory.resolveDependencies</code> by batching 
<code>alternativeRequests</code> hook calls. Previously the hook was invoked 
once per file in the context (with a single-item array), paying per-call 
overhead (closure allocation, <code>resolverFactory.get</code>, intermediate 
arrays in <code>RequireContextPlugin</code>) for every file. The hook is now 
invoked once per directory with all matched files in one batch — 
<code>RequireContextPlugin</code>'s tap already iterates the items array, so 
the output is unchanged. Steady-state rebuild on a 4000-file 
<code>require.context</code> drops a further ~15 ms (after the watch-mode purge 
fix in the same release). (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21020";>#21020</a>)</p>
   </li>
   <li>
   <p>Include each external info's <code>runtimeCondition</code> in 
<code>ConcatenatedModule#updateHash</code> so changes to a concatenated 
external's runtime condition invalidate persistent caches instead of slipping 
through with the module id alone. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21023";>#21023</a>)</p>
   </li>
   <li>
   <p>Fix HTML <code>[contenthash]</code> for referenced asset and inline-style 
URL changes. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21018";>#21018</a>)</p>
   </li>
   <li>
   <p>Resolve chunk-hash placeholders in chunk URLs embedded into extracted 
HTML. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21018";>#21018</a>)</p>
   </li>
   <li>
   <p>Remove unnecessary <code>__webpack_require__</code> runtime helpers in 
ESM library output with multi-module chunks. (by <a 
href="https://github.com/xiaoxiaojx";><code>@​xiaoxiaojx</code></a> in <a 
href="https://redirect.github.com/webpack/webpack/pull/21032";>#21032</a>)</p>
   </li>
   <li>
   <p>Rewrite <code>NormalModule#getSideEffectsConnectionState</code> walk as 
an allocation-light iterative loop instead of a generator trampoline, restoring 
rebuild performance lost in <a 
href="https://redirect.github.com/webpack/webpack/issues/20993";>#20993</a> 
while keeping deep import chains stack-safe. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21014";>#21014</a>)</p>
   </li>
   <li>
   <p>Fix runtime <code>ReferenceError</code> on the first activation of a 
lazy-compiled module when <code>output.library.type</code> produces a 
closure-wrapped bundle (<code>umd</code>, <code>umd2</code>, <code>amd</code>, 
<code>amd-require</code>, <code>system</code>). (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21013";>#21013</a>)</p>
   <p>External modules of these types reference closure-bound identifiers like 
<code>__WEBPACK_EXTERNAL_MODULE_react__</code>, supplied by the library wrapper 
that is generated once per chunk. When <code>lazyCompilation</code> activates 
an entry or import for the first time, any external dependency the lazily-built 
module pulls in arrives in a hot-update chunk that lives outside the original 
wrapper closure, so its factory body cannot resolve the closure identifier and 
only a manual page refresh recovers.</p>
   <p>The inactive <code>LazyCompilationProxyModule</code> now declares 
statically-enumerable externals (string and object forms of 
<code>externals</code>) as its own dependencies, so the initial entry chunk's 
library wrapper already exposes their closure identifiers. When activation 
later pulls in those externals through the lazily-compiled module, they resolve 
to the already-installed factories instead of throwing. Function and RegExp 
externals are not pre-populated because their effective request set isn't 
knowable up front.</p>
   </li>
   <li>
   <p>Fill in missing <code>entryOptions</code> when an async block joins an 
existing entrypoint. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21026";>#21026</a>)</p>
   </li>
   <li>
   <p>Release per-child <code>codeGenerationResults</code> in 
<code>MultiCompiler</code> and at <code>Compiler.close</code> to reduce memory 
retention. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21015";>#21015</a>)</p>
   </li>
   <li>
   <p>Reduce peak memory of <code>SourceMapDevToolPlugin</code> on large builds 
(closes <a 
href="https://redirect.github.com/webpack/webpack/issues/20961";>#20961</a>). 
(by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20963";>#20963</a>)</p>
   </li>
   <li>
   <p>Fix slow <code>require.context()</code> / dynamic <code>import()</code> 
rebuilds in watch mode (<a 
href="https://redirect.github.com/webpack/webpack/issues/13636";>#13636</a>). 
When a file inside a watched context directory changed, 
<code>NodeWatchFileSystem</code> would call 
<code>inputFileSystem.purge(contextDir)</code>. The enhanced-resolve 
<code>purge</code> implementation matches cache keys with 
<code>key.startsWith(contextDir)</code>, so the stat cache of every file under 
the directory was discarded on every rebuild — 
<code>ContextModuleFactory.resolveDependencies</code> then 
re-<code>stat</code>-ed the whole tree on each rebuild. Single-file rebuilds on 
a 4000-file context now reuse the warm stat cache, dropping median rebuild from 
~1260 ms to ~650 ms in a local reproduction (≈49%). For directory items that 
are explicitly watched contexts, <code>purge</code> is now called with <code>{ 
exact: true }</code> (added in <code>[email protected]</code>) so only 
the dir
 ectory's own entry is invalidated; file-level changes in the same aggregated 
event continue to purge file stats and the parent <code>readdir</code> as 
before. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21020";>#21020</a>)</p>
   </li>
   </ul>
   <h2>v5.107.1</h2>
   <h3>Patch Changes</h3>
   <ul>
   <li>
   <p>Align the experimental HTML tokenizer with the WHATWG spec: fix 
offset-range bugs in the script-data, content-mode end-tag, attribute-value, 
and EOF states; surface tokenizer parse errors to consumers via a new 
<code>parseError</code> callback (<code>&quot;warning&quot;</code> when the 
tokenizer recovers and the emitted token is still well-formed, 
<code>&quot;error&quot;</code> when the offset range is incomplete — e.g. 
<code>eof-in-tag</code>); and add the full WHATWG named character references 
table so <code>decodeHtmlEntities</code> handles all named entities (including 
legacy bare forms like <code>&amp;AMP</code> and multi-code-point entities like 
<code>&amp;NotEqualTilde;</code>) with proper longest-prefix backtracking. (by 
<a href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> 
in <a 
href="https://redirect.github.com/webpack/webpack/pull/21000";>#21000</a>)</p>
   </li>
   <li>
   <p>Tree-shake CommonJS modules imported through a <code>const NAME = 
require(LITERAL)</code> binding when only static members of <code>NAME</code> 
are read. Previously webpack treated every export of such modules as referenced 
(because the bare <code>require()</code> dependency reports 
<code>EXPORTS_OBJECT_REFERENCED</code>), so unused <code>exports.x = ...</code> 
assignments remained in the bundle even with <code>usedExports</code> enabled. 
The parser now forwards <code>NAME.x</code> / <code>NAME.x()</code> / 
<code>NAME[&quot;x&quot;]</code> accesses to the underlying 
<code>CommonJsRequireDependency</code> as referenced exports, falling back to 
the full exports object the moment <code>NAME</code> is read in any other 
context (passed by value, destructured later, accessed with a dynamic key, …). 
This brings the binding form to parity with the existing destructuring form 
(<code>const { x } = require(...)</code>). (by <a 
href="https://github.com/alexander-akait";><code>@​alexande
 r-akait</code></a> in <a 
href="https://redirect.github.com/webpack/webpack/pull/21003";>#21003</a>)</p>
   </li>
   <li>
   <p>Fix <code>RangeError: Maximum call stack size exceeded</code> thrown from 
<code>HarmonyImportSideEffectDependency.getModuleEvaluationSideEffectsState</code>
 on long linear chains of side-effect-free imports. 
<code>NormalModule.getSideEffectsConnectionState</code> previously descended 
through 
<code>HarmonyImportSideEffectDependency.getModuleEvaluationSideEffectsState</code>
 recursively, adding two stack frames per module, which overflowed V8's stack 
at a few thousand modules deep. The traversal is now iterative. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20993";>#20993</a>)</p>
   </li>
   <li>
   <p>Fix <code>NormalModuleFactory</code> parser/generator types: (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20999";>#20999</a>)</p>
   <ul>
   <li><code>module.generator.html</code> now uses 
<code>HtmlGeneratorOptions</code> instead of <code>EmptyGeneratorOptions</code> 
(the <code>extract</code> option was hidden from the 
<code>createGenerator</code> / <code>generator</code> hook types).</li>
   <li>WebAssembly (<code>webassembly/async</code>, 
<code>webassembly/sync</code>) generator hooks now use 
<code>EmptyGeneratorOptions</code> instead of 
<code>EmptyParserOptions</code>.</li>
   <li><code>NormalModuleFactory#getParser</code> / <code>createParser</code> / 
<code>getGenerator</code> / <code>createGenerator</code> are now generic over 
the module-type string, returning the specific parser/generator class for known 
types (e.g. <code>JavascriptParser</code> for 
<code>&quot;javascript/auto&quot;</code>, <code>CssGenerator</code> for 
<code>&quot;css&quot;</code>, etc.) instead of always returning the base 
<code>Parser</code> / <code>Generator</code>.</li>
   <li><code>NormalModuleCreateData</code> is now generic over the module type 
so <code>parser</code>, <code>parserOptions</code>, <code>generator</code>, and 
<code>generatorOptions</code> are narrowed to the specific class / options for 
the given <code>type</code>.</li>
   </ul>
   </li>
   <li>
   <p>Link import bindings used inside <code>define(...)</code> callbacks in ES 
modules. Previously, <code>HarmonyDetectionParserPlugin</code> skipped walking 
the arguments of <code>define</code> calls in harmony modules, so references to 
imported bindings inside an inline AMD <code>define</code> factory (e.g. 
<code>define(function () { console.log(foo); })</code>) were not rewritten to 
their imported references and could cause <code>ReferenceError</code> at 
runtime. Inner graph usage analysis is also fixed for the related pattern 
<code>const fn = function () { foo; }; define(fn);</code>. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20990";>#20990</a>)</p>
   </li>
   <li>
   <p>HTML-entry pipeline (<code>experiments.html</code> + 
<code>experiments.css</code>): emit <code>&lt;link 
rel=&quot;stylesheet&quot;&gt;</code> tags for CSS chunks reachable from a 
<code>&lt;script src&gt;</code> entry. Previously when the bundled JS imported 
CSS, the resulting <code>.css</code> file was emitted to disk but never 
referenced from the extracted HTML (no <code>&lt;link&gt;</code> tag), and when 
<code>splitChunks</code> extracted CSS into sibling chunks the HTML cloned the 
originating <code>&lt;script&gt;</code> for each one — producing 
<code>&lt;script src=&quot;style.js&quot;&gt;</code> pointing at non-existent 
JS filenames instead of <code>&lt;link rel=&quot;stylesheet&quot; 
href=&quot;style.css&quot;&gt;</code>. CSS chunks are now sorted by the 
entrypoint's module post-order index so the <code>&lt;link&gt;</code> tags also 
appear in source import order, fixing the cascade ordering issue documented in 
<code>html-webpack-plugin#1838</code> and <code>webpack/mini-
 css-extract-plugin#959</code> for HTML-entry builds. 
<code>nonce</code>/<code>crossorigin</code>/<code>referrerpolicy</code> are 
copied from the originating tag onto the emitted <code>&lt;link&gt;</code>. (by 
<a href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> 
in <a 
href="https://redirect.github.com/webpack/webpack/pull/21002";>#21002</a>)</p>
   </li>
   <li>
   <p>Allow <code>devtool</code> and <code>SourceMapDevToolPlugin</code> (or 
multiple <code>SourceMapDevToolPlugin</code> instances) to coexist on the same 
asset. Previously the second instance would silently skip any asset whose 
<code>info.related.sourceMap</code> had already been set by an earlier 
instance, and even when it ran the asset had been rewrapped as a 
<code>RawSource</code> so no source map could be recovered — producing an empty 
<code>.map</code> file. The plugin now keeps a per-compilation stash of 
pristine source maps, namespaces its persistent cache entries by the options 
that affect output, and appends additional <code>related.sourceMap</code> 
entries instead of overwriting them. The classic workaround of pairing 
<code>devtool: 'hidden-source-map'</code> with a <code>new 
webpack.SourceMapDevToolPlugin({ filename: '[file].secondary.map', noSources: 
true })</code> now produces both maps in a single build. (by <a 
href="https://github.com/alexander-akait";><code>@​ale
 xander-akait</code></a> in <a 
href="https://redirect.github.com/webpack/webpack/pull/21001";>#21001</a>)</p>
   </li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Changelog</summary>
   <p><em>Sourced from <a 
href="https://github.com/webpack/webpack/blob/main/CHANGELOG.md";>webpack's 
changelog</a>.</em></p>
   <blockquote>
   <h2>5.107.2</h2>
   <h3>Patch Changes</h3>
   <ul>
   <li>
   <p>Reduce per-file overhead in 
<code>ContextModuleFactory.resolveDependencies</code> by batching 
<code>alternativeRequests</code> hook calls. Previously the hook was invoked 
once per file in the context (with a single-item array), paying per-call 
overhead (closure allocation, <code>resolverFactory.get</code>, intermediate 
arrays in <code>RequireContextPlugin</code>) for every file. The hook is now 
invoked once per directory with all matched files in one batch — 
<code>RequireContextPlugin</code>'s tap already iterates the items array, so 
the output is unchanged. Steady-state rebuild on a 4000-file 
<code>require.context</code> drops a further ~15 ms (after the watch-mode purge 
fix in the same release). (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21020";>#21020</a>)</p>
   </li>
   <li>
   <p>Include each external info's <code>runtimeCondition</code> in 
<code>ConcatenatedModule#updateHash</code> so changes to a concatenated 
external's runtime condition invalidate persistent caches instead of slipping 
through with the module id alone. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21023";>#21023</a>)</p>
   </li>
   <li>
   <p>Fix HTML <code>[contenthash]</code> for referenced asset and inline-style 
URL changes. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21018";>#21018</a>)</p>
   </li>
   <li>
   <p>Resolve chunk-hash placeholders in chunk URLs embedded into extracted 
HTML. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21018";>#21018</a>)</p>
   </li>
   <li>
   <p>Remove unnecessary <code>__webpack_require__</code> runtime helpers in 
ESM library output with multi-module chunks. (by <a 
href="https://github.com/xiaoxiaojx";><code>@​xiaoxiaojx</code></a> in <a 
href="https://redirect.github.com/webpack/webpack/pull/21032";>#21032</a>)</p>
   </li>
   <li>
   <p>Rewrite <code>NormalModule#getSideEffectsConnectionState</code> walk as 
an allocation-light iterative loop instead of a generator trampoline, restoring 
rebuild performance lost in <a 
href="https://redirect.github.com/webpack/webpack/issues/20993";>#20993</a> 
while keeping deep import chains stack-safe. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21014";>#21014</a>)</p>
   </li>
   <li>
   <p>Fix runtime <code>ReferenceError</code> on the first activation of a 
lazy-compiled module when <code>output.library.type</code> produces a 
closure-wrapped bundle (<code>umd</code>, <code>umd2</code>, <code>amd</code>, 
<code>amd-require</code>, <code>system</code>). (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21013";>#21013</a>)</p>
   <p>External modules of these types reference closure-bound identifiers like 
<code>__WEBPACK_EXTERNAL_MODULE_react__</code>, supplied by the library wrapper 
that is generated once per chunk. When <code>lazyCompilation</code> activates 
an entry or import for the first time, any external dependency the lazily-built 
module pulls in arrives in a hot-update chunk that lives outside the original 
wrapper closure, so its factory body cannot resolve the closure identifier and 
only a manual page refresh recovers.</p>
   <p>The inactive <code>LazyCompilationProxyModule</code> now declares 
statically-enumerable externals (string and object forms of 
<code>externals</code>) as its own dependencies, so the initial entry chunk's 
library wrapper already exposes their closure identifiers. When activation 
later pulls in those externals through the lazily-compiled module, they resolve 
to the already-installed factories instead of throwing. Function and RegExp 
externals are not pre-populated because their effective request set isn't 
knowable up front.</p>
   </li>
   <li>
   <p>Fill in missing <code>entryOptions</code> when an async block joins an 
existing entrypoint. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21026";>#21026</a>)</p>
   </li>
   <li>
   <p>Release per-child <code>codeGenerationResults</code> in 
<code>MultiCompiler</code> and at <code>Compiler.close</code> to reduce memory 
retention. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21015";>#21015</a>)</p>
   </li>
   <li>
   <p>Reduce peak memory of <code>SourceMapDevToolPlugin</code> on large builds 
(closes <a 
href="https://redirect.github.com/webpack/webpack/issues/20961";>#20961</a>). 
(by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20963";>#20963</a>)</p>
   </li>
   <li>
   <p>Fix slow <code>require.context()</code> / dynamic <code>import()</code> 
rebuilds in watch mode (<a 
href="https://redirect.github.com/webpack/webpack/issues/13636";>#13636</a>). 
When a file inside a watched context directory changed, 
<code>NodeWatchFileSystem</code> would call 
<code>inputFileSystem.purge(contextDir)</code>. The enhanced-resolve 
<code>purge</code> implementation matches cache keys with 
<code>key.startsWith(contextDir)</code>, so the stat cache of every file under 
the directory was discarded on every rebuild — 
<code>ContextModuleFactory.resolveDependencies</code> then 
re-<code>stat</code>-ed the whole tree on each rebuild. Single-file rebuilds on 
a 4000-file context now reuse the warm stat cache, dropping median rebuild from 
~1260 ms to ~650 ms in a local reproduction (≈49%). For directory items that 
are explicitly watched contexts, <code>purge</code> is now called with <code>{ 
exact: true }</code> (added in <code>[email protected]</code>) so only 
the dir
 ectory's own entry is invalidated; file-level changes in the same aggregated 
event continue to purge file stats and the parent <code>readdir</code> as 
before. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/21020";>#21020</a>)</p>
   </li>
   </ul>
   <h2>5.107.1</h2>
   <h3>Patch Changes</h3>
   <ul>
   <li>
   <p>Align the experimental HTML tokenizer with the WHATWG spec: fix 
offset-range bugs in the script-data, content-mode end-tag, attribute-value, 
and EOF states; surface tokenizer parse errors to consumers via a new 
<code>parseError</code> callback (<code>&quot;warning&quot;</code> when the 
tokenizer recovers and the emitted token is still well-formed, 
<code>&quot;error&quot;</code> when the offset range is incomplete — e.g. 
<code>eof-in-tag</code>); and add the full WHATWG named character references 
table so <code>decodeHtmlEntities</code> handles all named entities (including 
legacy bare forms like <code>&amp;AMP</code> and multi-code-point entities like 
<code>&amp;NotEqualTilde;</code>) with proper longest-prefix backtracking. (by 
<a href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> 
in <a 
href="https://redirect.github.com/webpack/webpack/pull/21000";>#21000</a>)</p>
   </li>
   <li>
   <p>Tree-shake CommonJS modules imported through a <code>const NAME = 
require(LITERAL)</code> binding when only static members of <code>NAME</code> 
are read. Previously webpack treated every export of such modules as referenced 
(because the bare <code>require()</code> dependency reports 
<code>EXPORTS_OBJECT_REFERENCED</code>), so unused <code>exports.x = ...</code> 
assignments remained in the bundle even with <code>usedExports</code> enabled. 
The parser now forwards <code>NAME.x</code> / <code>NAME.x()</code> / 
<code>NAME[&quot;x&quot;]</code> accesses to the underlying 
<code>CommonJsRequireDependency</code> as referenced exports, falling back to 
the full exports object the moment <code>NAME</code> is read in any other 
context (passed by value, destructured later, accessed with a dynamic key, …). 
This brings the binding form to parity with the existing destructuring form 
(<code>const { x } = require(...)</code>). (by <a 
href="https://github.com/alexander-akait";><code>@​alexande
 r-akait</code></a> in <a 
href="https://redirect.github.com/webpack/webpack/pull/21003";>#21003</a>)</p>
   </li>
   <li>
   <p>Fix <code>RangeError: Maximum call stack size exceeded</code> thrown from 
<code>HarmonyImportSideEffectDependency.getModuleEvaluationSideEffectsState</code>
 on long linear chains of side-effect-free imports. 
<code>NormalModule.getSideEffectsConnectionState</code> previously descended 
through 
<code>HarmonyImportSideEffectDependency.getModuleEvaluationSideEffectsState</code>
 recursively, adding two stack frames per module, which overflowed V8's stack 
at a few thousand modules deep. The traversal is now iterative. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20993";>#20993</a>)</p>
   </li>
   <li>
   <p>Fix <code>NormalModuleFactory</code> parser/generator types: (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20999";>#20999</a>)</p>
   <ul>
   <li><code>module.generator.html</code> now uses 
<code>HtmlGeneratorOptions</code> instead of <code>EmptyGeneratorOptions</code> 
(the <code>extract</code> option was hidden from the 
<code>createGenerator</code> / <code>generator</code> hook types).</li>
   <li>WebAssembly (<code>webassembly/async</code>, 
<code>webassembly/sync</code>) generator hooks now use 
<code>EmptyGeneratorOptions</code> instead of 
<code>EmptyParserOptions</code>.</li>
   <li><code>NormalModuleFactory#getParser</code> / <code>createParser</code> / 
<code>getGenerator</code> / <code>createGenerator</code> are now generic over 
the module-type string, returning the specific parser/generator class for known 
types (e.g. <code>JavascriptParser</code> for 
<code>&quot;javascript/auto&quot;</code>, <code>CssGenerator</code> for 
<code>&quot;css&quot;</code>, etc.) instead of always returning the base 
<code>Parser</code> / <code>Generator</code>.</li>
   <li><code>NormalModuleCreateData</code> is now generic over the module type 
so <code>parser</code>, <code>parserOptions</code>, <code>generator</code>, and 
<code>generatorOptions</code> are narrowed to the specific class / options for 
the given <code>type</code>.</li>
   </ul>
   </li>
   <li>
   <p>Link import bindings used inside <code>define(...)</code> callbacks in ES 
modules. Previously, <code>HarmonyDetectionParserPlugin</code> skipped walking 
the arguments of <code>define</code> calls in harmony modules, so references to 
imported bindings inside an inline AMD <code>define</code> factory (e.g. 
<code>define(function () { console.log(foo); })</code>) were not rewritten to 
their imported references and could cause <code>ReferenceError</code> at 
runtime. Inner graph usage analysis is also fixed for the related pattern 
<code>const fn = function () { foo; }; define(fn);</code>. (by <a 
href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> in 
<a href="https://redirect.github.com/webpack/webpack/pull/20990";>#20990</a>)</p>
   </li>
   <li>
   <p>HTML-entry pipeline (<code>experiments.html</code> + 
<code>experiments.css</code>): emit <code>&lt;link 
rel=&quot;stylesheet&quot;&gt;</code> tags for CSS chunks reachable from a 
<code>&lt;script src&gt;</code> entry. Previously when the bundled JS imported 
CSS, the resulting <code>.css</code> file was emitted to disk but never 
referenced from the extracted HTML (no <code>&lt;link&gt;</code> tag), and when 
<code>splitChunks</code> extracted CSS into sibling chunks the HTML cloned the 
originating <code>&lt;script&gt;</code> for each one — producing 
<code>&lt;script src=&quot;style.js&quot;&gt;</code> pointing at non-existent 
JS filenames instead of <code>&lt;link rel=&quot;stylesheet&quot; 
href=&quot;style.css&quot;&gt;</code>. CSS chunks are now sorted by the 
entrypoint's module post-order index so the <code>&lt;link&gt;</code> tags also 
appear in source import order, fixing the cascade ordering issue documented in 
<code>html-webpack-plugin#1838</code> and <code>webpack/mini-
 css-extract-plugin#959</code> for HTML-entry builds. 
<code>nonce</code>/<code>crossorigin</code>/<code>referrerpolicy</code> are 
copied from the originating tag onto the emitted <code>&lt;link&gt;</code>. (by 
<a href="https://github.com/alexander-akait";><code>@​alexander-akait</code></a> 
in <a 
href="https://redirect.github.com/webpack/webpack/pull/21002";>#21002</a>)</p>
   </li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/webpack/webpack/commit/cfb24a4af6ea68034b25f80e14f95aaeaad6d596";><code>cfb24a4</code></a>
 chore(release): new release (<a 
href="https://redirect.github.com/webpack/webpack/issues/21019";>#21019</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/c7d8a3a7f411dd9910cf66ef0d09a3a1bf6686bd";><code>c7d8a3a</code></a>
 fix: release per-child Compilation heap pressure in MultiCompiler (<a 
href="https://redirect.github.com/webpack/webpack/issues/21015";>#21015</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/d6cdebe5e67008cfd717953634449ad283fd0334";><code>d6cdebe</code></a>
 fix: regression in types for ProgressPlugin (<a 
href="https://redirect.github.com/webpack/webpack/issues/21036";>#21036</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/c07389012566fe5d2cb56bd64ee76fb185a1bbb2";><code>c073890</code></a>
 fix: gap-fill entryOptions when an async block reuses an existing entrypoint 
...</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/78158f087641803b7b5b20296b729861cdef7840";><code>78158f0</code></a>
 docs: streamline AGENTS.md to reduce AI hallucination (<a 
href="https://redirect.github.com/webpack/webpack/issues/21033";>#21033</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/c61c6499cc0b89ddbfc52a96cd4be081fb530d0f";><code>c61c649</code></a>
 test: fail on missing per-kind snapshot instead of auto-writing it (<a 
href="https://redirect.github.com/webpack/webpack/issues/21027";>#21027</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/a514897fcac61b8bc7aa13e32fae456bffdcd080";><code>a514897</code></a>
 docs: update examples (<a 
href="https://redirect.github.com/webpack/webpack/issues/21031";>#21031</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/cc4035b460ff15065af52360cb40baad4fbb8851";><code>cc4035b</code></a>
 fix: remove unnecessary <strong>webpack_require</strong> in ESM library output 
(<a 
href="https://redirect.github.com/webpack/webpack/issues/21032";>#21032</a>)</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/12cb8251190cd481d78ea4252d652e75b0427f42";><code>12cb825</code></a>
 docs(buildChunkGraph): explain why blocksWithNestedBlocks gates the skip (<a 
href="https://redirect.github.com/webpack/webpack/issues/21";>#21</a>...</li>
   <li><a 
href="https://github.com/webpack/webpack/commit/75f60f6b7f25b70d25aaf5cfa55d212b7a845120";><code>75f60f6</code></a>
 fix(ConcatenatedModule): include runtimeCondition of external infos in 
update...</li>
   <li>Additional commits viewable in <a 
href="https://github.com/webpack/webpack/compare/v4.42.1...v5.107.2";>compare 
view</a></li>
   </ul>
   </details>
   <details>
   <summary>Maintainer changes</summary>
   <p>This version was pushed to npm by <a 
href="https://www.npmjs.com/~GitHub%20Actions";>GitHub Actions</a>, a new 
releaser for webpack since your current version.</p>
   </details>
   <details>
   <summary>Install script changes</summary>
   <p>This version adds <code>prepare</code> script that runs during 
installation. Review the package contents before updating.</p>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpack&package-manager=npm_and_yarn&previous-version=4.42.1&new-version=5.107.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   Dependabot will resolve any conflicts with this PR as long as you don't 
alter it yourself. You can also trigger a rebase manually by commenting 
`@dependabot rebase`.
   
   [//]: # (dependabot-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   You can trigger Dependabot actions by commenting on this PR:
   - `@dependabot rebase` will rebase this PR
   - `@dependabot recreate` will recreate this PR, overwriting any edits that 
have been made to it
   - `@dependabot show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@dependabot ignore this major version` will close this PR and stop 
Dependabot creating any more for this major version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop 
Dependabot creating any more for this minor version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop 
Dependabot creating any more for this dependency (unless you reopen the PR or 
upgrade to it yourself)
   You can disable automated security fix PRs for this repo from the [Security 
Alerts page](https://github.com/apache/airavata-portals/network/alerts).
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to