dependabot[bot] opened a new pull request, #67733: URL: https://github.com/apache/airflow/pull/67733
Bumps the fab-ui-package-updates group with 5 updates in the /providers/fab/src/airflow/providers/fab/www directory: | Package | From | To | | --- | --- | --- | | [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) | `7.29.0` | `7.29.7` | | [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) | `7.28.6` | `7.29.7` | | [@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime) | `7.29.0` | `7.29.7` | | [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) | `7.29.5` | `7.29.7` | | [webpack](https://github.com/webpack/webpack) | `5.107.1` | `5.107.2` | Updates `@babel/core` from 7.29.0 to 7.29.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/babel/babel/releases">@babel/core's releases</a>.</em></p> <blockquote> <h2>v7.29.7 (2026-05-25)</h2> <p>Re-release all packages with npm provenance attestations</p> <h2>v7.29.6 (2026-05-25)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18014">#18014</a> Catchup source map position in preserveFormat (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> </li> <li><code>babel-core</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18001">#18001</a> [7.x packport]Improve input source map handling (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-core</code>, <code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17998">#17998</a> Preserve original identifier names from input sourcemaps (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17992">#17992</a>) (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> </ul> </li> </ul> <h4>Committers: 3</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> <li>Mateusz Burzyński (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> <li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> <h2>v7.29.5 (2026-05-05)</h2> <h4>:house: Internal</h4> <ul> <li><code>babel-preset-env</code> <ul> <li>Update <code>@babel/*</code> dependencies</li> </ul> </li> </ul> <h2>v7.29.4 (2026-05-05)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-plugin-transform-modules-systemjs</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17974">#17974</a> [7.x backport]fix(systemjs): improve module string name support (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>Committers: 1</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> <h2>v7.29.3 (2026-04-30)</h2> <h4>:eyeglasses: Spec Compliance</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17923">#17923</a> Support flow extends bound (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-helper-create-class-features-plugin</code>, <code>babel-plugin-proposal-decorators</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17931">#17931</a> fix(decorators): replace super within all removed static elements (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-register</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17915">#17915</a> Fix thread synchronization issues in <code>@babel/register</code> (<a href="https://github.com/liuxingbaoyu"><code>@liuxingbaoyu</code></a>)</li> </ul> </li> <li><code>babel-compat-data</code>, <code>babel-plugin-bugfix-safari-rest-destructuring-rhs-array</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17788">#17788</a> Add bugfix plugin for Safari array rest destructuring bug (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:nail_care: Polish</h4> <ul> <li><code>babel-parser</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/babel/babel/commit/4fba7541180bf5f58256d8e358b544e3831ad090"><code>4fba754</code></a> v7.29.7</li> <li><a href="https://github.com/babel/babel/commit/04ea6b27fdac8f40c3481aec2080ac9678779509"><code>04ea6b2</code></a> v7.29.6</li> <li><a href="https://github.com/babel/babel/commit/99f498a9b9fa0b900d603fbe8f6601bb3b9e42bb"><code>99f498a</code></a> [7.x packport]Improve input source map handling (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/18001">#18001</a>)</li> <li><a href="https://github.com/babel/babel/commit/feba0a3654c596bd369d1ef1231f5d56666d56dc"><code>feba0a3</code></a> Preserve original identifier names from input sourcemaps (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17992">#17992</a>) (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17998">#17998</a>)</li> <li>See full diff in <a href="https://github.com/babel/babel/commits/v7.29.7/packages/babel-core">compare view</a></li> </ul> </details> <br /> Updates `@babel/eslint-parser` from 7.28.6 to 7.29.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/babel/babel/releases">@babel/eslint-parser's releases</a>.</em></p> <blockquote> <h2>v7.29.7 (2026-05-25)</h2> <p>Re-release all packages with npm provenance attestations</p> <h2>v7.29.6 (2026-05-25)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18014">#18014</a> Catchup source map position in preserveFormat (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> </li> <li><code>babel-core</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18001">#18001</a> [7.x packport]Improve input source map handling (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-core</code>, <code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17998">#17998</a> Preserve original identifier names from input sourcemaps (<a href="https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser/issues/17992">#17992</a>) (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> </ul> </li> </ul> <h4>Committers: 3</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> <li>Mateusz Burzyński (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> <li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> <h2>v7.29.5 (2026-05-05)</h2> <h4>:house: Internal</h4> <ul> <li><code>babel-preset-env</code> <ul> <li>Update <code>@babel/*</code> dependencies</li> </ul> </li> </ul> <h2>v7.29.4 (2026-05-05)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-plugin-transform-modules-systemjs</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17974">#17974</a> [7.x backport]fix(systemjs): improve module string name support (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>Committers: 1</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> <h2>v7.29.3 (2026-04-30)</h2> <h4>:eyeglasses: Spec Compliance</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17923">#17923</a> Support flow extends bound (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-helper-create-class-features-plugin</code>, <code>babel-plugin-proposal-decorators</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17931">#17931</a> fix(decorators): replace super within all removed static elements (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-register</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17915">#17915</a> Fix thread synchronization issues in <code>@babel/register</code> (<a href="https://github.com/liuxingbaoyu"><code>@liuxingbaoyu</code></a>)</li> </ul> </li> <li><code>babel-compat-data</code>, <code>babel-plugin-bugfix-safari-rest-destructuring-rhs-array</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17788">#17788</a> Add bugfix plugin for Safari array rest destructuring bug (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:nail_care: Polish</h4> <ul> <li><code>babel-parser</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/babel/babel/commit/4fba7541180bf5f58256d8e358b544e3831ad090"><code>4fba754</code></a> v7.29.7</li> <li>See full diff in <a href="https://github.com/babel/babel/commits/v7.29.7/eslint/babel-eslint-parser">compare view</a></li> </ul> </details> <br /> Updates `@babel/plugin-transform-runtime` from 7.29.0 to 7.29.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/babel/babel/releases">@babel/plugin-transform-runtime's releases</a>.</em></p> <blockquote> <h2>v7.29.7 (2026-05-25)</h2> <p>Re-release all packages with npm provenance attestations</p> <h2>v7.29.6 (2026-05-25)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18014">#18014</a> Catchup source map position in preserveFormat (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> </li> <li><code>babel-core</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18001">#18001</a> [7.x packport]Improve input source map handling (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-core</code>, <code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17998">#17998</a> Preserve original identifier names from input sourcemaps (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime/issues/17992">#17992</a>) (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> </ul> </li> </ul> <h4>Committers: 3</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> <li>Mateusz Burzyński (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> <li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> <h2>v7.29.5 (2026-05-05)</h2> <h4>:house: Internal</h4> <ul> <li><code>babel-preset-env</code> <ul> <li>Update <code>@babel/*</code> dependencies</li> </ul> </li> </ul> <h2>v7.29.4 (2026-05-05)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-plugin-transform-modules-systemjs</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17974">#17974</a> [7.x backport]fix(systemjs): improve module string name support (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>Committers: 1</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> <h2>v7.29.3 (2026-04-30)</h2> <h4>:eyeglasses: Spec Compliance</h4> <ul> <li><code>babel-parser</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17923">#17923</a> Support flow extends bound (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-helper-create-class-features-plugin</code>, <code>babel-plugin-proposal-decorators</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17931">#17931</a> fix(decorators): replace super within all removed static elements (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-register</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17915">#17915</a> Fix thread synchronization issues in <code>@babel/register</code> (<a href="https://github.com/liuxingbaoyu"><code>@liuxingbaoyu</code></a>)</li> </ul> </li> <li><code>babel-compat-data</code>, <code>babel-plugin-bugfix-safari-rest-destructuring-rhs-array</code>, <code>babel-preset-env</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17788">#17788</a> Add bugfix plugin for Safari array rest destructuring bug (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> </ul> <h4>:nail_care: Polish</h4> <ul> <li><code>babel-parser</code></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/babel/babel/commit/4fba7541180bf5f58256d8e358b544e3831ad090"><code>4fba754</code></a> v7.29.7</li> <li>See full diff in <a href="https://github.com/babel/babel/commits/v7.29.7/packages/babel-plugin-transform-runtime">compare view</a></li> </ul> </details> <br /> Updates `@babel/preset-env` from 7.29.5 to 7.29.7 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/babel/babel/releases">@babel/preset-env's releases</a>.</em></p> <blockquote> <h2>v7.29.7 (2026-05-25)</h2> <p>Re-release all packages with npm provenance attestations</p> <h2>v7.29.6 (2026-05-25)</h2> <h4>:bug: Bug Fix</h4> <ul> <li><code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18014">#18014</a> Catchup source map position in preserveFormat (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> </li> <li><code>babel-core</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/18001">#18001</a> [7.x packport]Improve input source map handling (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> </ul> </li> <li><code>babel-core</code>, <code>babel-generator</code> <ul> <li><a href="https://redirect.github.com/babel/babel/pull/17998">#17998</a> Preserve original identifier names from input sourcemaps (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env/issues/17992">#17992</a>) (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> </ul> </li> </ul> <h4>Committers: 3</h4> <ul> <li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@JLHwung</code></a>)</li> <li>Mateusz Burzyński (<a href="https://github.com/Andarist"><code>@Andarist</code></a>)</li> <li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@nicolo-ribaudo</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/babel/babel/commit/4fba7541180bf5f58256d8e358b544e3831ad090"><code>4fba754</code></a> v7.29.7</li> <li>See full diff in <a href="https://github.com/babel/babel/commits/v7.29.7/packages/babel-preset-env">compare view</a></li> </ul> </details> <br /> Updates `webpack` from 5.107.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> </blockquote> </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> </blockquote> </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/v5.107.1...v5.107.2">compare view</a></li> </ul> </details> <br /> 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 <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </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]
