Repository: nodejs/node
Pull request: tools: bump the eslint group in /tools/eslint with 5 updates

Bumps the eslint group in /tools/eslint with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) | `7.26.7` | `7.26.9` |
| [@babel/eslint-parser](https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser) | `7.26.5` | `7.26.8` |
| [@stylistic/eslint-plugin-js](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js) | `3.0.1` | `4.1.0` |
| [eslint](https://github.com/eslint/eslint) | `9.19.0` | `9.21.0` |
| [globals](https://github.com/sindresorhus/globals) | `15.14.0` | `16.0.0` |

Updates `@babel/core` from 7.26.7 to 7.26.9
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/babel/babel/releases"><code>@​babel/core</code>'s releases</a>.</em></p>
<blockquote>
<h2>v7.26.9 (2025-02-14)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17103">#17103</a> fix: Definition for <code>TSPropertySignature.kind</code> (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-generator</code>, <code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17062">#17062</a> Print TypeScript optional/definite in ClassPrivateProperty (<a href="https://github.com/jamiebuilds-signal"><code>@​jamiebuilds-signal</code></a>)</li>
</ul>
</li>
</ul>
<h4>:house: Internal</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17130">#17130</a> Use <code>.ts</code> files with explicit reexports to solve name conflicts (<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/17127">#17127</a> Do not depend on <code>@types/gensync</code> in Babel 7 (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 5</h4>
<ul>
<li>Babel Bot (<a href="https://github.com/babel-bot"><code>@​babel-bot</code></a>)</li>
<li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@​JLHwung</code></a>)</li>
<li>Jamie Kyle (<a href="https://github.com/jamiebuilds-signal"><code>@​jamiebuilds-signal</code></a>)</li>
<li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
<li><a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a></li>
</ul>
<h2>v7.26.8 (2025-02-08)</h2>
<h4>:house: Internal</h4>
<ul>
<li><code>babel-preset-env</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17097">#17097</a> Update dependency babel-plugin-polyfill-corejs3 to ^0.11.0</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/babel/babel/blob/main/CHANGELOG.md"><code>@​babel/core</code>'s changelog</a>.</em></p>
<blockquote>
<h2>v7.26.9 (2025-02-14)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17103">#17103</a> fix: Definition for <code>TSPropertySignature.kind</code> (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-generator</code>, <code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17062">#17062</a> Print TypeScript optional/definite in ClassPrivateProperty (<a href="https://github.com/jamiebuilds-signal"><code>@​jamiebuilds-signal</code></a>)</li>
</ul>
</li>
</ul>
<h4>:house: Internal</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17130">#17130</a> Use <code>.ts</code> files with explicit reexports to solve name conflicts (<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/17127">#17127</a> Do not depend on <code>@types/gensync</code> in Babel 7 (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/babel/babel/commit/64bca7b5f308cd52c192a5c821a57f6d1b0475f4"><code>64bca7b</code></a> v7.26.9</li>
<li><a href="https://github.com/babel/babel/commit/4cf5c9e0fbe8899bb9eb0dac7c615406a4fe926d"><code>4cf5c9e</code></a> [babel 8] Use <code>@babel/types</code> for parser's return type (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17117">#17117</a>)</li>
<li><a href="https://github.com/babel/babel/commit/fd3f0a81b816aae4541976b55bcd6a04ccac9316"><code>fd3f0a8</code></a> Do not depend on <code>@types/gensync</code> in Babel 7 (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17127">#17127</a>)</li>
<li><a href="https://github.com/babel/babel/commit/5315446a9a9348bd9646464bfa7b0e4381647e04"><code>5315446</code></a> [babel 8] Remove babel 7-specific imports (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17111">#17111</a>)</li>
<li><a href="https://github.com/babel/babel/commit/059394159de3af74446be6fba896dd4ce178333c"><code>0593941</code></a> v7.26.8</li>
<li><a href="https://github.com/babel/babel/commit/1bdb1a4175ed1fc40751fb84dc4ad1900260f28f"><code>1bdb1a4</code></a> Move <code>@types/gensync</code> to dependencies (<a href="https://github.com/babel/babel/tree/HEAD/packages/babel-core/issues/17105">#17105</a>)</li>
<li>See full diff in <a href="https://github.com/babel/babel/commits/v7.26.9/packages/babel-core">compare view</a></li>
</ul>
</details>
<br />

Updates `@babel/eslint-parser` from 7.26.5 to 7.26.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/babel/babel/releases"><code>@​babel/eslint-parser</code>'s releases</a>.</em></p>
<blockquote>
<h2>v7.26.8 (2025-02-08)</h2>
<h4>:house: Internal</h4>
<ul>
<li><code>babel-preset-env</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17097">#17097</a> Update dependency babel-plugin-polyfill-corejs3 to ^0.11.0</li>
</ul>
</li>
</ul>
<h2>v7.26.7 (2025-01-24)</h2>
<p>Thanks <a href="https://github.com/branchseer"><code>@​branchseer</code></a> and <a href="https://github.com/tquetano-netflix"><code>@​tquetano-netflix</code></a> for your first PRs!</p>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-helpers</code>, <code>babel-preset-env</code>, <code>babel-runtime-corejs3</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17086">#17086</a> Make &quot;object without properties&quot; helpers ES6-compatible (<a href="https://github.com/tquetano-netflix"><code>@​tquetano-netflix</code></a>)</li>
</ul>
</li>
<li><code>babel-plugin-transform-typeof-symbol</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17085">#17085</a> fix: Correctly handle <code>typeof</code> in arrow functions (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-parser</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17079">#17079</a> Respect <code>ranges</code> option in estree method value (<a href="https://github.com/JLHwung"><code>@​JLHwung</code></a>)</li>
</ul>
</li>
<li><code>babel-core</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17052">#17052</a> Do not try to parse .ts configs as JSON if natively supported (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
</ul>
</li>
<li><code>babel-plugin-transform-typescript</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17050">#17050</a> fix: correctly resolve references to non-constant enum members (<a href="https://github.com/branchseer"><code>@​branchseer</code></a>)</li>
</ul>
</li>
<li><code>babel-plugin-transform-typescript</code>, <code>babel-traverse</code>, <code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17025">#17025</a> fix: Remove type-only <code>import x = y.z</code> (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 6</h4>
<ul>
<li>Babel Bot (<a href="https://github.com/babel-bot"><code>@​babel-bot</code></a>)</li>
<li>Huáng Jùnliàng (<a href="https://github.com/JLHwung"><code>@​JLHwung</code></a>)</li>
<li>Nicolò Ribaudo (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
<li>Tony Quetano (<a href="https://github.com/tquetano-netflix"><code>@​tquetano-netflix</code></a>)</li>
<li><a href="https://github.com/branchseer"><code>@​branchseer</code></a></li>
<li><a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a></li>
</ul>
<h2>v7.26.6 (2025-01-13)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-plugin-transform-nullish-coalescing-operator</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17061">#17061</a> fix: Chaining nullish coalescing operators output size regression (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
</ul>
<h4>Committers: 1</h4>
<ul>
<li><a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/babel/babel/blob/main/CHANGELOG.md"><code>@​babel/eslint-parser</code>'s changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<blockquote>
<p><strong>Tags:</strong></p>
<ul>
<li>:boom: [Breaking Change]</li>
<li>:eyeglasses: [Spec Compliance]</li>
<li>:rocket: [New Feature]</li>
<li>:bug: [Bug Fix]</li>
<li>:memo: [Documentation]</li>
<li>:house: [Internal]</li>
<li>:nail_care: [Polish]</li>
</ul>
</blockquote>
<p><em>Note: Gaps between patch versions are faulty, broken or test releases.</em></p>
<p>This file contains the changelog starting from v7.15.0.</p>
<ul>
<li>See <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-v7.0.0-v7.14.9.md">CHANGELOG - v7.0.0 to v7.14.9</a> for v7.0.0 to v7.14.9 changes.</li>
<li>See <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-v7-prereleases.md">CHANGELOG - v7 prereleases</a> for v7.0.0-alpha.1 to v7.0.0-rc.4 changes.</li>
<li>See <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-v4.md">CHANGELOG - v4</a>, <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-v5.md">CHANGELOG - v5</a>, and <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-v6.md">CHANGELOG - v6</a> for v4.x-v6.x changes.</li>
<li>See <a href="https://github.com/babel/babel/blob/main/.github/CHANGELOG-6to5.md">CHANGELOG - 6to5</a> for the pre-4.0.0 version changelog.</li>
<li>See <a href="https://github.com/babel/babel/blob/main/packages/babel-parser/CHANGELOG.md">Babylon's CHANGELOG</a> for the Babylon pre-7.0.0-beta.29 version changelog.</li>
<li>See <a href="https://github.com/babel/babel-eslint/releases"><code>babel-eslint</code>'s releases</a> for the changelog before <code>@babel/eslint-parser</code> 7.8.0.</li>
<li>See <a href="https://github.com/babel/eslint-plugin-babel/releases"><code>eslint-plugin-babel</code>'s releases</a> for the changelog before <code>@babel/eslint-plugin</code> 7.8.0.</li>
</ul>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
<h2>v7.26.9 (2025-02-14)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17103">#17103</a> fix: Definition for <code>TSPropertySignature.kind</code> (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-generator</code>, <code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17062">#17062</a> Print TypeScript optional/definite in ClassPrivateProperty (<a href="https://github.com/jamiebuilds-signal"><code>@​jamiebuilds-signal</code></a>)</li>
</ul>
</li>
</ul>
<h4>:house: Internal</h4>
<ul>
<li><code>babel-types</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17130">#17130</a> Use <code>.ts</code> files with explicit reexports to solve name conflicts (<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/17127">#17127</a> Do not depend on <code>@types/gensync</code> in Babel 7 (<a href="https://github.com/nicolo-ribaudo"><code>@​nicolo-ribaudo</code></a>)</li>
</ul>
</li>
</ul>
<h2>v7.26.7 (2025-01-24)</h2>
<h4>:bug: Bug Fix</h4>
<ul>
<li><code>babel-helpers</code>, <code>babel-preset-env</code>, <code>babel-runtime-corejs3</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17086">#17086</a> Make &quot;object without properties&quot; helpers ES6-compatible (<a href="https://github.com/tquetano-netflix"><code>@​tquetano-netflix</code></a>)</li>
</ul>
</li>
<li><code>babel-plugin-transform-typeof-symbol</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17085">#17085</a> fix: Correctly handle <code>typeof</code> in arrow functions (<a href="https://github.com/liuxingbaoyu"><code>@​liuxingbaoyu</code></a>)</li>
</ul>
</li>
<li><code>babel-parser</code>
<ul>
<li><a href="https://redirect.github.com/babel/babel/pull/17079">#17079</a> Respect <code>ranges</code> option in estree method value (<a href="https://github.com/JLHwung"><code>@​JLHwung</code></a>)</li>
</ul>
</li>
<li><code>babel-core</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/059394159de3af74446be6fba896dd4ce178333c"><code>0593941</code></a> v7.26.8</li>
<li><a href="https://github.com/babel/babel/commit/e02b0ffd871ab07a47947956f39698346b200b1f"><code>e02b0ff</code></a> [Babel 8] Create TSTemplateLiteralType (<a href="https://github.com/babel/babel/tree/HEAD/eslint/babel-eslint-parser/issues/17066">#17066</a>)</li>
<li>See full diff in <a href="https://github.com/babel/babel/commits/v7.26.8/eslint/babel-eslint-parser">compare view</a></li>
</ul>
</details>
<br />

Updates `@stylistic/eslint-plugin-js` from 3.0.1 to 4.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/eslint-stylistic/eslint-stylistic/releases"><code>@​stylistic/eslint-plugin-js</code>'s releases</a>.</em></p>
<blockquote>
<h2>v4.1.0</h2>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.1...v4.1.0">4.1.0</a> (2025-02-26)</h2>
<h3>Features</h3>
<ul>
<li>add <code>module.exports</code> named export for <code>require(esm)</code> compatibility (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/700">#700</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/668c9556212423702dad4b73685c2299ece2527a">668c955</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>update merged note (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/07b08f1c7d74de0fe2cb6886b4f49baae574a71b">07b08f1</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>merge <code>lines-around-comment</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/691">#691</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/f59605b9d1967357e9507998b0f7649c20094d55">f59605b</a>)</li>
<li>merge <code>space-before-blocks</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/698">#698</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/6e8554dbcb4dc87814c7131d3a235f3c68dee16e">6e8554d</a>)</li>
<li>merge <code>space-infix-ops</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/697">#697</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/1a1b3886c42baeb15f113a8129256d1e0d9c23a6">1a1b388</a>)</li>
<li>remove unnecessary ternary expression (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/695">#695</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/66a4b18d46979a1a51e350a0f547d28900a078dc">66a4b18</a>)</li>
</ul>
<h2>v4.0.1</h2>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.0...v4.0.1">4.0.1</a> (2025-02-19)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>indent-binary-ops:</strong> handle <code>{</code> for left token check (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/693">#693</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/7f2740e824b621c07fe373f81bdd7dac093f2422">7f2740e</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>merge <code>block-spacing</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/690">#690</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/b239b717bb6dc9eb0632ce9d3bb3379501b72471">b239b71</a>)</li>
</ul>
<h2>v4.0.0</h2>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.0-beta.1...v4.0.0">4.0.0</a> (2025-02-18)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li>migrate to ESM-only, requires ESLint v9+ (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/670">#670</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>semi-spacing:</strong> support handling typescript (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/687">#687</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/8b76c931178b705523bb130eb2d8e154071ea7ff">8b76c93</a>)</li>
<li><strong>space-infix-ops:</strong> allow to ignore types in ts variant (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/684">#684</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/c83ce20633966e6abfc181ee667ff4a9ea7d8c79">c83ce20</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>release-please-mark (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/b894a75f8d38ab9af6ae419d69447a2de0ff337e">b894a75</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/eslint-stylistic/eslint-stylistic/blob/main/CHANGELOG.md"><code>@​stylistic/eslint-plugin-js</code>'s changelog</a>.</em></p>
<blockquote>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.1...v4.1.0">4.1.0</a> (2025-02-26)</h2>
<h3>Features</h3>
<ul>
<li>add <code>module.exports</code> named export for <code>require(esm)</code> compatibility (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/700">#700</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/668c9556212423702dad4b73685c2299ece2527a">668c955</a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>update merged note (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/07b08f1c7d74de0fe2cb6886b4f49baae574a71b">07b08f1</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>merge <code>lines-around-comment</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/691">#691</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/f59605b9d1967357e9507998b0f7649c20094d55">f59605b</a>)</li>
<li>merge <code>space-before-blocks</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/698">#698</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/6e8554dbcb4dc87814c7131d3a235f3c68dee16e">6e8554d</a>)</li>
<li>merge <code>space-infix-ops</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/697">#697</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/1a1b3886c42baeb15f113a8129256d1e0d9c23a6">1a1b388</a>)</li>
<li>remove unnecessary ternary expression (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/695">#695</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/66a4b18d46979a1a51e350a0f547d28900a078dc">66a4b18</a>)</li>
</ul>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.0...v4.0.1">4.0.1</a> (2025-02-19)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>indent-binary-ops:</strong> handle <code>{</code> for left token check (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/693">#693</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/7f2740e824b621c07fe373f81bdd7dac093f2422">7f2740e</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>merge <code>block-spacing</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/690">#690</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/b239b717bb6dc9eb0632ce9d3bb3379501b72471">b239b71</a>)</li>
</ul>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v4.0.0-beta.1...v4.0.0">4.0.0</a> (2025-02-18)</h2>
<h3>Features</h3>
<ul>
<li><strong>semi-spacing:</strong> support handling typescript (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/687">#687</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/8b76c931178b705523bb130eb2d8e154071ea7ff">8b76c93</a>)</li>
<li><strong>space-infix-ops:</strong> allow to ignore types in ts variant (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/684">#684</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/c83ce20633966e6abfc181ee667ff4a9ea7d8c79">c83ce20</a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li>release-please-mark (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/b894a75f8d38ab9af6ae419d69447a2de0ff337e">b894a75</a>)</li>
</ul>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v3.1.0...v4.0.0-beta.1">4.0.0-beta.1</a> (2025-02-10)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/d3ee9e54b942b91d0a97e5449d1059553c149647"><code>d3ee9e5</code></a> chore: release v4.1.0 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/701">#701</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/668c9556212423702dad4b73685c2299ece2527a"><code>668c955</code></a> feat: add <code>module.exports</code> named export for <code>require(esm)</code> compatibility (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/700">#700</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/e6dbb9d8e01a26ac3e0c2c94f33a6b9c5cfe187b"><code>e6dbb9d</code></a> chore: release v4.0.1 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/694">#694</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/522e55f4b8f232f051e9d3eea3194b5aa1859ad9"><code>522e55f</code></a> chore: release v4.0.0 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/688">#688</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/c83ce20633966e6abfc181ee667ff4a9ea7d8c79"><code>c83ce20</code></a> feat(space-infix-ops): allow to ignore types in ts variant (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/684">#684</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/7cee5eb8f52ed22e7a6fecf0a310bedb900d9756"><code>7cee5eb</code></a> chore: Update utils for ESM changes (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/685">#685</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/481d54b6521b8705570132424c78d320dec57610"><code>481d54b</code></a> chore: release v4.0.0-beta.1 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/679">#679</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/3145d5082191505f319e576cc30da51b907c380e"><code>3145d50</code></a> feat!: migrate to ESM-only, requires ESLint v9+ (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/670">#670</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/6b4297304af897437df1cbaa931cd8613a227e26"><code>6b42973</code></a> chore: release v3.1.0 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/678">#678</a>)</li>
<li>See full diff in <a href="https://github.com/eslint-stylistic/eslint-stylistic/commits/v4.1.0/packages/eslint-plugin-js">compare view</a></li>
</ul>
</details>
<br />

Updates `eslint` from 9.19.0 to 9.21.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/eslint/eslint/releases">eslint's releases</a>.</em></p>
<blockquote>
<h2>v9.21.0</h2>
<h2>Features</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/418717f1150bb794c40014eca60c9116de2b0488"><code>418717f</code></a> feat: introduce new deprecated types for rules (<a href="https://redirect.github.com/eslint/eslint/issues/19238">#19238</a>) (fnx)</li>
<li><a href="https://github.com/eslint/eslint/commit/5c5b8025d3e2a2a796909bdf7866fdce2a2f334c"><code>5c5b802</code></a> feat: Add <code>--ext</code> CLI option (<a href="https://redirect.github.com/eslint/eslint/issues/19405">#19405</a>) (Milos Djermanovic)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/db5340d57bff6b6e3a148f0f2bb56c7da6614ec0"><code>db5340d</code></a> fix: update missing plugin message template (<a href="https://redirect.github.com/eslint/eslint/issues/19445">#19445</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/d8ffdd4e51ac46cef51b4118aa3d97195b38de63"><code>d8ffdd4</code></a> fix: do not exit process on rule crash (<a href="https://redirect.github.com/eslint/eslint/issues/19436">#19436</a>) (Francesco Trotta)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/c5561ea7fcc9d48f7c8017f51fb64fcdf13ff832"><code>c5561ea</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/80b048535e1d951692e838fe502fb0edb72c837f"><code>80b0485</code></a> docs: replace <code>var</code> with <code>let</code> and <code>const</code> in rule example (<a href="https://redirect.github.com/eslint/eslint/issues/19434">#19434</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/f67d5e875324a9d899598b11807a9c7624021432"><code>f67d5e8</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/75afc61ff89c8c38a31877d1302584af9266f6d3"><code>75afc61</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/0636caba7dd7c77c1845a69257bda68d5287a097"><code>0636cab</code></a> docs: Update Eleventy from v2 to v3 (<a href="https://redirect.github.com/eslint/eslint/issues/19415">#19415</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/dd7d93063418a9a9064a0e7cb7f556f5b8b6e96b"><code>dd7d930</code></a> docs: Update README (GitHub Actions Bot)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/a8c9a9f1b30db08094b145dd79921ae302b6ae24"><code>a8c9a9f</code></a> chore: update <code>@eslint/eslintrc</code> and <code>@eslint/js</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19453">#19453</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/265e0cf6d03df44f0e65ce5bcb0bac382189486a"><code>265e0cf</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/3401b85faaf75629900b7592433169fc00d8b224"><code>3401b85</code></a> test: add test for <code>Rule.ReportDescriptor</code> type (<a href="https://redirect.github.com/eslint/eslint/issues/19449">#19449</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/e497aa75f5441406985d417303081944f24acf6f"><code>e497aa7</code></a> chore: update rewrite dependencies (<a href="https://redirect.github.com/eslint/eslint/issues/19448">#19448</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/dab5478e8628447dbf9eaaa8b6f36d7ca253ed48"><code>dab5478</code></a> chore: better error message for missing plugin in config (<a href="https://redirect.github.com/eslint/eslint/issues/19402">#19402</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/ebfe2ebc3d8b8f2d84caf309b2fc6bc8fd66fc22"><code>ebfe2eb</code></a> chore: set js language for bug report issue config block (<a href="https://redirect.github.com/eslint/eslint/issues/19439">#19439</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/5fd211d00b6f0fc58cf587196a432325b7b88ec2"><code>5fd211d</code></a> test: processors can return subpaths (<a href="https://redirect.github.com/eslint/eslint/issues/19425">#19425</a>) (Milos Djermanovic)</li>
</ul>
<h2>v9.20.1</h2>
<h2>Bug Fixes</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/274f054f19f5f490d9496c6eee4bcd8620d2f4be"><code>274f054</code></a> fix: fix <code>RuleContext</code> type (<a href="https://redirect.github.com/eslint/eslint/issues/19417">#19417</a>) (Francesco Trotta)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/fe3ccb2ff43a9f20a7801c679f7d41f6a7ed3ddc"><code>fe3ccb2</code></a> docs: allow typing in search box while dropdown is open (<a href="https://redirect.github.com/eslint/eslint/issues/19424">#19424</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/93c78a5c58edb7ead9bff87c874d2ff9b824ec04"><code>93c78a5</code></a> docs: Add instructions for pnpm compat (<a href="https://redirect.github.com/eslint/eslint/issues/19422">#19422</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/b476a930bb3a6d644c482747d985f5da0d89e1e9"><code>b476a93</code></a> docs: Fix Keyboard Navigation for Search Results (<a href="https://redirect.github.com/eslint/eslint/issues/19416">#19416</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/ccb60c0b1452e73750e3734c9cd7c7b12c473827"><code>ccb60c0</code></a> docs: Update README (GitHub Actions Bot)</li>
</ul>
<h2>v9.20.0</h2>
<h2>Features</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/e89a54a3090f3503daf5e36b02b0035c993e3fd1"><code>e89a54a</code></a> feat: change behavior of inactive flags (<a href="https://redirect.github.com/eslint/eslint/issues/19386">#19386</a>) (Milos Djermanovic)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/91d4d9f62095e302c71595cc04c47073f366315c"><code>91d4d9f</code></a> fix: Bring types in sync with <code>@​eslint/core</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19157">#19157</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/fa25c7a79edee280f275fbc35b83bcde906d1480"><code>fa25c7a</code></a> fix: Emit warning when empty config file is used (<a href="https://redirect.github.com/eslint/eslint/issues/19399">#19399</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/31a9fd03d23aecf2b1e0c9b3df27554aff245723"><code>31a9fd0</code></a> fix: Clearer error message for wrong plugin format (<a href="https://redirect.github.com/eslint/eslint/issues/19380">#19380</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/61d99e38f248f4d9abc09d970c4eebddd1af86ca"><code>61d99e3</code></a> fix: Better error message for unserializable parser (<a href="https://redirect.github.com/eslint/eslint/issues/19384">#19384</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/db1b9a66e387e573f45885687dfefc04ab2877fe"><code>db1b9a6</code></a> fix: Ensure module scope is checked for references in <code>consistent-this</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19383">#19383</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/8bcd820f37f2361e4f7261a9876f52d21bd9de8f"><code>8bcd820</code></a> fix: <code>arrow-body-style</code> crash with single-token body (<a href="https://redirect.github.com/eslint/eslint/issues/19379">#19379</a>) (Milos Djermanovic)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/b7012c85f3c0f683baeffb6d856faf86c4d41702"><code>b7012c8</code></a> docs: rewrite examples with var using let and const (<a href="https://redirect.github.com/eslint/eslint/issues/19407">#19407</a>) (Mueez Javaid Hashmi)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/eslint/eslint/blob/main/CHANGELOG.md">eslint's changelog</a>.</em></p>
<blockquote>
<p>v9.21.0 - February 21, 2025</p>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/a8c9a9f1b30db08094b145dd79921ae302b6ae24"><code>a8c9a9f</code></a> chore: update <code>@eslint/eslintrc</code> and <code>@eslint/js</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19453">#19453</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/265e0cf6d03df44f0e65ce5bcb0bac382189486a"><code>265e0cf</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/418717f1150bb794c40014eca60c9116de2b0488"><code>418717f</code></a> feat: introduce new deprecated types for rules (<a href="https://redirect.github.com/eslint/eslint/issues/19238">#19238</a>) (fnx)</li>
<li><a href="https://github.com/eslint/eslint/commit/3401b85faaf75629900b7592433169fc00d8b224"><code>3401b85</code></a> test: add test for <code>Rule.ReportDescriptor</code> type (<a href="https://redirect.github.com/eslint/eslint/issues/19449">#19449</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/e497aa75f5441406985d417303081944f24acf6f"><code>e497aa7</code></a> chore: update rewrite dependencies (<a href="https://redirect.github.com/eslint/eslint/issues/19448">#19448</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/c5561ea7fcc9d48f7c8017f51fb64fcdf13ff832"><code>c5561ea</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/db5340d57bff6b6e3a148f0f2bb56c7da6614ec0"><code>db5340d</code></a> fix: update missing plugin message template (<a href="https://redirect.github.com/eslint/eslint/issues/19445">#19445</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/d8ffdd4e51ac46cef51b4118aa3d97195b38de63"><code>d8ffdd4</code></a> fix: do not exit process on rule crash (<a href="https://redirect.github.com/eslint/eslint/issues/19436">#19436</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/dab5478e8628447dbf9eaaa8b6f36d7ca253ed48"><code>dab5478</code></a> chore: better error message for missing plugin in config (<a href="https://redirect.github.com/eslint/eslint/issues/19402">#19402</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/80b048535e1d951692e838fe502fb0edb72c837f"><code>80b0485</code></a> docs: replace <code>var</code> with <code>let</code> and <code>const</code> in rule example (<a href="https://redirect.github.com/eslint/eslint/issues/19434">#19434</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/ebfe2ebc3d8b8f2d84caf309b2fc6bc8fd66fc22"><code>ebfe2eb</code></a> chore: set js language for bug report issue config block (<a href="https://redirect.github.com/eslint/eslint/issues/19439">#19439</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/f67d5e875324a9d899598b11807a9c7624021432"><code>f67d5e8</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/75afc61ff89c8c38a31877d1302584af9266f6d3"><code>75afc61</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/5fd211d00b6f0fc58cf587196a432325b7b88ec2"><code>5fd211d</code></a> test: processors can return subpaths (<a href="https://redirect.github.com/eslint/eslint/issues/19425">#19425</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/0636caba7dd7c77c1845a69257bda68d5287a097"><code>0636cab</code></a> docs: Update Eleventy from v2 to v3 (<a href="https://redirect.github.com/eslint/eslint/issues/19415">#19415</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/5c5b8025d3e2a2a796909bdf7866fdce2a2f334c"><code>5c5b802</code></a> feat: Add <code>--ext</code> CLI option (<a href="https://redirect.github.com/eslint/eslint/issues/19405">#19405</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/dd7d93063418a9a9064a0e7cb7f556f5b8b6e96b"><code>dd7d930</code></a> docs: Update README (GitHub Actions Bot)</li>
</ul>
<p>v9.20.1 - February 11, 2025</p>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/fe3ccb2ff43a9f20a7801c679f7d41f6a7ed3ddc"><code>fe3ccb2</code></a> docs: allow typing in search box while dropdown is open (<a href="https://redirect.github.com/eslint/eslint/issues/19424">#19424</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/274f054f19f5f490d9496c6eee4bcd8620d2f4be"><code>274f054</code></a> fix: fix <code>RuleContext</code> type (<a href="https://redirect.github.com/eslint/eslint/issues/19417">#19417</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/93c78a5c58edb7ead9bff87c874d2ff9b824ec04"><code>93c78a5</code></a> docs: Add instructions for pnpm compat (<a href="https://redirect.github.com/eslint/eslint/issues/19422">#19422</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/b476a930bb3a6d644c482747d985f5da0d89e1e9"><code>b476a93</code></a> docs: Fix Keyboard Navigation for Search Results (<a href="https://redirect.github.com/eslint/eslint/issues/19416">#19416</a>) (Amaresh  S M)</li>
<li><a href="https://github.com/eslint/eslint/commit/ccb60c0b1452e73750e3734c9cd7c7b12c473827"><code>ccb60c0</code></a> docs: Update README (GitHub Actions Bot)</li>
</ul>
<p>v9.20.0 - February 7, 2025</p>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/979097a3b4c656e2d9faabd4a52010d6647911f6"><code>979097a</code></a> chore: upgrade <code>@​eslint/js</code><a href="https://github.com/9"><code>@​9</code></a>.20.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19412">#19412</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/031734efcb27e0d800da7ec32f5d5dae55f80564"><code>031734e</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/91d4d9f62095e302c71595cc04c47073f366315c"><code>91d4d9f</code></a> fix: Bring types in sync with <code>@​eslint/core</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19157">#19157</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/b7012c85f3c0f683baeffb6d856faf86c4d41702"><code>b7012c8</code></a> docs: rewrite examples with var using let and const (<a href="https://redirect.github.com/eslint/eslint/issues/19407">#19407</a>) (Mueez Javaid Hashmi)</li>
<li><a href="https://github.com/eslint/eslint/commit/d4c47c3738f2bf53b4f6a1cf505861b35875ac5f"><code>d4c47c3</code></a> test: avoid empty config warning in test output (<a href="https://redirect.github.com/eslint/eslint/issues/19408">#19408</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/e89a54a3090f3503daf5e36b02b0035c993e3fd1"><code>e89a54a</code></a> feat: change behavior of inactive flags (<a href="https://redirect.github.com/eslint/eslint/issues/19386">#19386</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/fa25c7a79edee280f275fbc35b83bcde906d1480"><code>fa25c7a</code></a> fix: Emit warning when empty config file is used (<a href="https://redirect.github.com/eslint/eslint/issues/19399">#19399</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/64063765afa5bf29855d996ccabfaa93b19bd458"><code>6406376</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/350f2b9349bc8d2230cd953c14b77071f2961f47"><code>350f2b9</code></a> docs: rewrite some examples with var using let and const (<a href="https://redirect.github.com/eslint/eslint/issues/19404">#19404</a>) (Mueez Javaid Hashmi)</li>
<li><a href="https://github.com/eslint/eslint/commit/93c325a7a841d0fe4b5bf79efdec832e7c8f805f"><code>93c325a</code></a> docs: rewrite examples with var using let and const (<a href="https://redirect.github.com/eslint/eslint/issues/19398">#19398</a>) (Mueez Javaid Hashmi)</li>
<li><a href="https://github.com/eslint/eslint/commit/56ff4048e053374db39201e7e880bde4c930e19f"><code>56ff404</code></a> docs: replace var with let or const in rules docs (<a href="https://redirect.github.com/eslint/eslint/issues/19396">#19396</a>) (Daniel Harbrueger)</li>
<li><a href="https://github.com/eslint/eslint/commit/4053226996bbdec1ffdef8af1b9d7f5aa4b11b86"><code>4053226</code></a> docs: change <code>sourceType</code> in <code>no-eval</code> examples (<a href="https://redirect.github.com/eslint/eslint/issues/19393">#19393</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/1324af027986d655848ee1a9dcb89a527917ea3e"><code>1324af0</code></a> docs: replace var with let and const in rules docs (<a href="https://redirect.github.com/eslint/eslint/issues/19392">#19392</a>) (Daniel Harbrueger)</li>
<li><a href="https://github.com/eslint/eslint/commit/8b87e007bb2ba59b73061d22ef34baffb5656b79"><code>8b87e00</code></a> docs: replace <code>var</code> with <code>const</code> and <code>let</code> in rules (<a href="https://redirect.github.com/eslint/eslint/issues/19389">#19389</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/31a9fd03d23aecf2b1e0c9b3df27554aff245723"><code>31a9fd0</code></a> fix: Clearer error message for wrong plugin format (<a href="https://redirect.github.com/eslint/eslint/issues/19380">#19380</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/61d99e38f248f4d9abc09d970c4eebddd1af86ca"><code>61d99e3</code></a> fix: Better error message for unserializable parser (<a href="https://redirect.github.com/eslint/eslint/issues/19384">#19384</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/758c66bc8d83cd4eda9639b0745f0d0fb70f04f4"><code>758c66b</code></a> docs: Explain what frozen rules mean (<a href="https://redirect.github.com/eslint/eslint/issues/19382">#19382</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/67dd82ab88d784b6f36e471b6a5c6f64e37f9485"><code>67dd82a</code></a> chore: update dependency <code>@​eslint/json</code> to ^0.10.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19387">#19387</a>) (renovate[bot])</li>
<li><a href="https://github.com/eslint/eslint/commit/db1b9a66e387e573f45885687dfefc04ab2877fe"><code>db1b9a6</code></a> fix: Ensure module scope is checked for references in <code>consistent-this</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19383">#19383</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/8bcd820f37f2361e4f7261a9876f52d21bd9de8f"><code>8bcd820</code></a> fix: <code>arrow-body-style</code> crash with single-token body (<a href="https://redirect.github.com/eslint/eslint/issues/19379">#19379</a>) (Milos Djermanovic)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/ecd0ede7fd2ccbb4c0daf0e4732e97ea0f49db1b"><code>ecd0ede</code></a> 9.21.0</li>
<li><a href="https://github.com/eslint/eslint/commit/a7ef4c7ecc0882b35ff9df88ab024f9cd2c4c500"><code>a7ef4c7</code></a> Build: changelog update for 9.21.0</li>
<li><a href="https://github.com/eslint/eslint/commit/a8c9a9f1b30db08094b145dd79921ae302b6ae24"><code>a8c9a9f</code></a> chore: update <code>@eslint/eslintrc</code> and <code>@eslint/js</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19453">#19453</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/265e0cf6d03df44f0e65ce5bcb0bac382189486a"><code>265e0cf</code></a> chore: package.json update for <code>@​eslint/js</code> release</li>
<li><a href="https://github.com/eslint/eslint/commit/418717f1150bb794c40014eca60c9116de2b0488"><code>418717f</code></a> feat: introduce new deprecated types for rules (<a href="https://redirect.github.com/eslint/eslint/issues/19238">#19238</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/3401b85faaf75629900b7592433169fc00d8b224"><code>3401b85</code></a> test: add test for <code>Rule.ReportDescriptor</code> type (<a href="https://redirect.github.com/eslint/eslint/issues/19449">#19449</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/e497aa75f5441406985d417303081944f24acf6f"><code>e497aa7</code></a> chore: update rewrite dependencies (<a href="https://redirect.github.com/eslint/eslint/issues/19448">#19448</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/c5561ea7fcc9d48f7c8017f51fb64fcdf13ff832"><code>c5561ea</code></a> docs: Update README</li>
<li><a href="https://github.com/eslint/eslint/commit/db5340d57bff6b6e3a148f0f2bb56c7da6614ec0"><code>db5340d</code></a> fix: update missing plugin message template (<a href="https://redirect.github.com/eslint/eslint/issues/19445">#19445</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/d8ffdd4e51ac46cef51b4118aa3d97195b38de63"><code>d8ffdd4</code></a> fix: do not exit process on rule crash (<a href="https://redirect.github.com/eslint/eslint/issues/19436">#19436</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/eslint/eslint/compare/v9.19.0...v9.21.0">compare view</a></li>
</ul>
</details>
<br />

Updates `globals` from 15.14.0 to 16.0.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/sindresorhus/globals/releases">globals's releases</a>.</em></p>
<blockquote>
<h2>v16.0.0</h2>
<h3>Breaking</h3>
<ul>
<li>The <code>serviceworker</code> globals are now generated from browsers (<a href="https://redirect.github.com/sindresorhus/globals/issues/281">#281</a>)  039ed51
<ul>
<li>It's a breaking change as a few globals have been removed.</li>
</ul>
</li>
</ul>
<hr />
<p><a href="https://github.com/sindresorhus/globals/compare/v15.15.0...v16.0.0">https://github.com/sindresorhus/globals/compare/v15.15.0...v16.0.0</a></p>
<h2>v15.15.0</h2>
<ul>
<li>Regenerate vitest globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/279">#279</a>)  445df81</li>
</ul>
<hr />
<p><a href="https://github.com/sindresorhus/globals/compare/v15.14.0...v15.15.0">https://github.com/sindresorhus/globals/compare/v15.14.0...v15.15.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/sindresorhus/globals/commit/efb324782720e6f97d13651fa73ae32ef4ca01b4"><code>efb3247</code></a> 16.0.0</li>
<li><a href="https://github.com/sindresorhus/globals/commit/75cb90a671f899c2a1e578888a9cc14a3f4e3d83"><code>75cb90a</code></a> Update globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/285">#285</a>)</li>
<li><a href="https://github.com/sindresorhus/globals/commit/d018eeb8eb441db9530b40865dd7fd0cf4dfc818"><code>d018eeb</code></a> Fix <code>serviceworker</code> environment name (<a href="https://redirect.github.com/sindresorhus/globals/issues/284">#284</a>)</li>
<li><a href="https://github.com/sindresorhus/globals/commit/f9dd68399d2197953612ced8c35f8f78132b45e0"><code>f9dd683</code></a> Fix filename case</li>
<li><a href="https://github.com/sindresorhus/globals/commit/039ed515af5ae6c387f1fbc66baef72d8636bfe1"><code>039ed51</code></a> Add script to get service worker globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/281">#281</a>)</li>
<li><a href="https://github.com/sindresorhus/globals/commit/8a43ab65056483c0248c7be3a69fdb2866d859a2"><code>8a43ab6</code></a> 15.15.0</li>
<li><a href="https://github.com/sindresorhus/globals/commit/445df813ad61b475be210fe12be155b144310462"><code>445df81</code></a> Regenerate vitest globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/279">#279</a>)</li>
<li><a href="https://github.com/sindresorhus/globals/commit/504276b5f1f6475720a3b9b7f6158d72f2bd6ad8"><code>504276b</code></a> Fix &quot;Update&quot; job (<a href="https://redirect.github.com/sindresorhus/globals/issues/277">#277</a>)</li>
<li>See full diff in <a href="https://github.com/sindresorhus/globals/compare/v15.14.0...v16.0.0">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 merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@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>

Changed files:
filename: tools/eslint/package-lock.json
patch: @@ -8,16 +8,16 @@
       "name": "eslint-tools",
       "version": "0.0.0",
       "dependencies": {
-        "@babel/core": "^7.26.7",
-        "@babel/eslint-parser": "^7.26.5",
+        "@babel/core": "^7.26.9",
+        "@babel/eslint-parser": "^7.26.8",
         "@babel/plugin-syntax-import-attributes": "^7.26.0",
         "@babel/plugin-syntax-import-source": "^7.25.9",
-        "@stylistic/eslint-plugin-js": "^3.0.1",
-        "eslint": "^9.19.0",
+        "@stylistic/eslint-plugin-js": "^4.1.0",
+        "eslint": "^9.21.0",
         "eslint-formatter-tap": "^8.40.0",
         "eslint-plugin-jsdoc": "^50.6.3",
         "eslint-plugin-markdown": "^5.1.0",
-        "globals": "^15.14.0"
+        "globals": "^16.0.0"
       }
     },
     "node_modules/@ampproject/remapping": {
@@ -56,21 +56,21 @@
       }
     },
     "node_modules/@babel/core": {
-      "version": "7.26.7",
-      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.7.tgz",
-      "integrity": "sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz",
+      "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==",
       "license": "MIT",
       "dependencies": {
         "@ampproject/remapping": "^2.2.0",
         "@babel/code-frame": "^7.26.2",
-        "@babel/generator": "^7.26.5",
+        "@babel/generator": "^7.26.9",
         "@babel/helper-compilation-targets": "^7.26.5",
         "@babel/helper-module-transforms": "^7.26.0",
-        "@babel/helpers": "^7.26.7",
-        "@babel/parser": "^7.26.7",
-        "@babel/template": "^7.25.9",
-        "@babel/traverse": "^7.26.7",
-        "@babel/types": "^7.26.7",
+        "@babel/helpers": "^7.26.9",
+        "@babel/parser": "^7.26.9",
+        "@babel/template": "^7.26.9",
+        "@babel/traverse": "^7.26.9",
+        "@babel/types": "^7.26.9",
         "convert-source-map": "^2.0.0",
         "debug": "^4.1.0",
         "gensync": "^1.0.0-beta.2",
@@ -86,9 +86,9 @@
       }
     },
     "node_modules/@babel/eslint-parser": {
-      "version": "7.26.5",
-      "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.26.5.tgz",
-      "integrity": "sha512-Kkm8C8uxI842AwQADxl0GbcG1rupELYLShazYEZO/2DYjhyWXJIOUVOE3tBYm6JXzUCNJOZEzqc4rCW/jsEQYQ==",
+      "version": "7.26.8",
+      "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.26.8.tgz",
+      "integrity": "sha512-3tBctaHRW6xSub26z7n8uyOTwwUsCdvIug/oxBH9n6yCO5hMj2vwDJAo7RbBMKrM7P+W2j61zLKviJQFGOYKMg==",
       "license": "MIT",
       "dependencies": {
         "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1",
@@ -104,13 +104,13 @@
       }
     },
     "node_modules/@babel/generator": {
-      "version": "7.26.5",
-      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.5.tgz",
-      "integrity": "sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz",
+      "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==",
       "license": "MIT",
       "dependencies": {
-        "@babel/parser": "^7.26.5",
-        "@babel/types": "^7.26.5",
+        "@babel/parser": "^7.26.9",
+        "@babel/types": "^7.26.9",
         "@jridgewell/gen-mapping": "^0.3.5",
         "@jridgewell/trace-mapping": "^0.3.25",
         "jsesc": "^3.0.2"
@@ -197,25 +197,25 @@
       }
     },
     "node_modules/@babel/helpers": {
-      "version": "7.26.7",
-      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.7.tgz",
-      "integrity": "sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz",
+      "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==",
       "license": "MIT",
       "dependencies": {
-        "@babel/template": "^7.25.9",
-        "@babel/types": "^7.26.7"
+        "@babel/template": "^7.26.9",
+        "@babel/types": "^7.26.9"
       },
       "engines": {
         "node": ">=6.9.0"
       }
     },
     "node_modules/@babel/parser": {
-      "version": "7.26.7",
-      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.7.tgz",
-      "integrity": "sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz",
+      "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==",
       "license": "MIT",
       "dependencies": {
-        "@babel/types": "^7.26.7"
+        "@babel/types": "^7.26.9"
       },
       "bin": {
         "parser": "bin/babel-parser.js"
@@ -254,29 +254,30 @@
       }
     },
     "node_modules/@babel/template": {
-      "version": "7.25.9",
-      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz",
-      "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz",
+      "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==",
+      "license": "MIT",
       "dependencies": {
-        "@babel/code-frame": "^7.25.9",
-        "@babel/parser": "^7.25.9",
-        "@babel/types": "^7.25.9"
+        "@babel/code-frame": "^7.26.2",
+        "@babel/parser": "^7.26.9",
+        "@babel/types": "^7.26.9"
       },
       "engines": {
         "node": ">=6.9.0"
       }
     },
     "node_modules/@babel/traverse": {
-      "version": "7.26.7",
-      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.7.tgz",
-      "integrity": "sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz",
+      "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==",
       "license": "MIT",
       "dependencies": {
         "@babel/code-frame": "^7.26.2",
-        "@babel/generator": "^7.26.5",
-        "@babel/parser": "^7.26.7",
-        "@babel/template": "^7.25.9",
-        "@babel/types": "^7.26.7",
+        "@babel/generator": "^7.26.9",
+        "@babel/parser": "^7.26.9",
+        "@babel/template": "^7.26.9",
+        "@babel/types": "^7.26.9",
         "debug": "^4.3.1",
         "globals": "^11.1.0"
       },
@@ -293,9 +294,9 @@
       }
     },
     "node_modules/@babel/types": {
-      "version": "7.26.7",
-      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.7.tgz",
-      "integrity": "sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==",
+      "version": "7.26.9",
+      "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz",
+      "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==",
       "license": "MIT",
       "dependencies": {
         "@babel/helper-string-parser": "^7.25.9",
@@ -354,11 +355,12 @@
       }
     },
     "node_modules/@eslint/config-array": {
-      "version": "0.19.0",
-      "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.0.tgz",
-      "integrity": "sha512-zdHg2FPIFNKPdcHWtiNT+jEFCHYVplAXRDlQDyqy0zGx/q2parwh7brGJSiTxRk/TSMkbM//zt/f5CHgyTyaSQ==",
+      "version": "0.19.2",
+      "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.19.2.tgz",
+      "integrity": "sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==",
+      "license": "Apache-2.0",
       "dependencies": {
-        "@eslint/object-schema": "^2.1.4",
+        "@eslint/object-schema": "^2.1.6",
         "debug": "^4.3.1",
         "minimatch": "^3.1.2"
       },
@@ -367,9 +369,9 @@
       }
     },
     "node_modules/@eslint/core": {
-      "version": "0.10.0",
-      "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz",
-      "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==",
+      "version": "0.12.0",
+      "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz",
+      "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==",
       "license": "Apache-2.0",
       "dependencies": {
         "@types/json-schema": "^7.0.15"
@@ -379,9 +381,10 @@
       }
     },
     "node_modules/@eslint/eslintrc": {
-      "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
-      "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.0.tgz",
+      "integrity": "sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==",
+      "license": "MIT",
       "dependencies": {
         "ajv": "^6.12.4",
         "debug": "^4.3.2",
@@ -404,6 +407,7 @@
       "version": "14.0.0",
       "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
       "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==",
+      "license": "MIT",
       "engines": {
         "node": ">=18"
       },
@@ -412,29 +416,30 @@
       }
     },
     "node_modules/@eslint/js": {
-      "version": "9.19.0",
-      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.19.0.tgz",
-      "integrity": "sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==",
+      "version": "9.21.0",
+      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.21.0.tgz",
+      "integrity": "sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==",
       "license": "MIT",
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
       }
     },
     "node_modules/@eslint/object-schema": {
-      "version": "2.1.4",
-      "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz",
-      "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==",
+      "version": "2.1.6",
+      "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz",
+      "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==",
+      "license": "Apache-2.0",
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
       }
     },
     "node_modules/@eslint/plugin-kit": {
-      "version": "0.2.5",
-      "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz",
-      "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==",
+      "version": "0.2.7",
+      "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.7.tgz",
+      "integrity": "sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==",
       "license": "Apache-2.0",
       "dependencies": {
-        "@eslint/core": "^0.10.0",
+        "@eslint/core": "^0.12.0",
         "levn": "^0.4.1"
       },
       "engines": {
@@ -487,9 +492,10 @@
       }
     },
     "node_modules/@humanwhocodes/retry": {
-      "version": "0.4.1",
-      "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz",
-      "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==",
+      "version": "0.4.2",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz",
+      "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==",
+      "license": "Apache-2.0",
       "engines": {
         "node": ">=18.18"
       },
@@ -568,9 +574,9 @@
       }
     },
     "node_modules/@stylistic/eslint-plugin-js": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-3.0.1.tgz",
-      "integrity": "sha512-hjp6BKXSUdlY4l20pDb0EjIB5PtQDGihk2EUKCjJ5gaRVfcmMMkaIyVd/yK3oH7OLxWWBxJ8qSSo+zEdkmpnYA==",
+      "version": "4.1.0",
+      "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-4.1.0.tgz",
+      "integrity": "sha512-YOe+dChNoR26JVVt+7BjyebsPIQF05OLNmHCXivq8lLZ4ZeVs4+wXaW+pREVboDiAaSRznauAdAU8f+iQouw6Q==",
       "license": "MIT",
       "dependencies": {
         "eslint-visitor-keys": "^4.2.0",
@@ -580,7 +586,7 @@
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
       },
       "peerDependencies": {
-        "eslint": ">=8.40.0"
+        "eslint": ">=9.0.0"
       }
     },
     "node_modules/@stylistic/eslint-plugin-js/node_modules/eslint-visitor-keys": {
@@ -602,7 +608,8 @@
     "node_modules/@types/json-schema": {
       "version": "7.0.15",
       "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
-      "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
+      "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+      "license": "MIT"
     },
     "node_modules/@types/mdast": {
       "version": "3.0.15",
@@ -643,6 +650,7 @@
       "version": "6.12.6",
       "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
       "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+      "license": "MIT",
       "dependencies": {
         "fast-deep-equal": "^3.1.1",
         "fast-json-stable-stringify": "^2.0.0",
@@ -672,12 +680,14 @@
     "node_modules/balanced-match": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
-      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
+      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+      "license": "MIT"
     },
     "node_modules/brace-expansion": {
       "version": "1.1.11",
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "license": "MIT",
       "dependencies": {
         "balanced-match": "^1.0.0",
         "concat-map": "0.0.1"
@@ -719,6 +729,7 @@
       "version": "3.1.0",
       "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
       "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+      "license": "MIT",
       "engines": {
         "node": ">=6"
       }
@@ -784,7 +795,8 @@
     "node_modules/concat-map": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
+      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+      "license": "MIT"
     },
     "node_modules/convert-source-map": {
       "version": "2.0.0",
@@ -850,21 +862,21 @@
       }
     },
     "node_modules/eslint": {
-      "version": "9.19.0",
-      "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.19.0.tgz",
-      "integrity": "sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==",
+      "version": "9.21.0",
+      "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.21.0.tgz",
+      "integrity": "sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==",
       "license": "MIT",
       "dependencies": {
         "@eslint-community/eslint-utils": "^4.2.0",
         "@eslint-community/regexpp": "^4.12.1",
-        "@eslint/config-array": "^0.19.0",
-        "@eslint/core": "^0.10.0",
-        "@eslint/eslintrc": "^3.2.0",
-        "@eslint/js": "9.19.0",
-        "@eslint/plugin-kit": "^0.2.5",
+        "@eslint/config-array": "^0.19.2",
+        "@eslint/core": "^0.12.0",
+        "@eslint/eslintrc": "^3.3.0",
+        "@eslint/js": "9.21.0",
+        "@eslint/plugin-kit": "^0.2.7",
         "@humanfs/node": "^0.16.6",
         "@humanwhocodes/module-importer": "^1.0.1",
-        "@humanwhocodes/retry": "^0.4.1",
+        "@humanwhocodes/retry": "^0.4.2",
         "@types/estree": "^1.0.6",
         "@types/json-schema": "^7.0.15",
         "ajv": "^6.12.4",
@@ -1212,12 +1224,14 @@
     "node_modules/fast-deep-equal": {
       "version": "3.1.3",
       "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
-      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+      "license": "MIT"
     },
     "node_modules/fast-json-stable-stringify": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
-      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
+      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+      "license": "MIT"
     },
     "node_modules/fast-levenshtein": {
       "version": "2.0.6",
@@ -1294,9 +1308,10 @@
       }
     },
     "node_modules/globals": {
-      "version": "15.14.0",
-      "resolved": "https://registry.npmjs.org/globals/-/globals-15.14.0.tgz",
-      "integrity": "sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==",
+      "version": "16.0.0",
+      "resolved": "https://registry.npmjs.org/globals/-/globals-16.0.0.tgz",
+      "integrity": "sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==",
+      "license": "MIT",
       "engines": {
         "node": ">=18"
       },
@@ -1308,14 +1323,16 @@
       "version": "5.3.2",
       "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
       "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
+      "license": "MIT",
       "engines": {
         "node": ">= 4"
       }
     },
     "node_modules/import-fresh": {
-      "version": "3.3.0",
-      "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
-      "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+      "version": "3.3.1",
+      "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz",
+      "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==",
+      "license": "MIT",
       "dependencies": {
         "parent-module": "^1.0.0",
         "resolve-from": "^4.0.0"
@@ -1451,7 +1468,8 @@
     "node_modules/json-schema-traverse": {
       "version": "0.4.1",
       "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
-      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
+      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+      "license": "MIT"
     },
     "node_modules/json-stable-stringify-without-jsonify": {
       "version": "1.0.1",
@@ -1574,6 +1592,7 @@
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
       "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+      "license": "ISC",
       "dependencies": {
         "brace-expansion": "^1.1.7"
       },
@@ -1650,6 +1669,7 @@
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
       "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+      "license": "MIT",
       "dependencies": {
         "callsites": "^3.0.0"
       },
@@ -1723,6 +1743,7 @@
       "version": "2.3.1",
       "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
       "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+      "license": "MIT",
       "engines": {
         "node": ">=6"
       }
@@ -1731,6 +1752,7 @@
       "version": "4.0.0",
       "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
       "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+      "license": "MIT",
       "engines": {
         "node": ">=4"
       }
@@ -1795,6 +1817,7 @@
       "version": "3.1.1",
       "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
       "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+      "license": "MIT",
       "engines": {
         "node": ">=8"
       },
@@ -1883,6 +1906,7 @@
       "version": "4.4.1",
       "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
       "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+      "license": "BSD-2-Clause",
       "dependencies": {
         "punycode": "^2.1.0"
       }

filename: tools/eslint/package.json
patch: @@ -3,15 +3,15 @@
   "version": "0.0.0",
   "private": true,
   "dependencies": {
-    "@babel/core": "^7.26.7",
-    "@babel/eslint-parser": "^7.26.5",
+    "@babel/core": "^7.26.9",
+    "@babel/eslint-parser": "^7.26.8",
     "@babel/plugin-syntax-import-attributes": "^7.26.0",
     "@babel/plugin-syntax-import-source": "^7.25.9",
-    "@stylistic/eslint-plugin-js": "^3.0.1",
-    "eslint": "^9.19.0",
+    "@stylistic/eslint-plugin-js": "^4.1.0",
+    "eslint": "^9.21.0",
     "eslint-formatter-tap": "^8.40.0",
     "eslint-plugin-jsdoc": "^50.6.3",
     "eslint-plugin-markdown": "^5.1.0",
-    "globals": "^15.14.0"
+    "globals": "^16.0.0"
   }
 }