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

Bumps the eslint group in /tools/eslint with 4 updates: [@stylistic/eslint-plugin-js](https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js), [eslint](https://github.com/eslint/eslint), [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) and [globals](https://github.com/sindresorhus/globals).

Updates `@stylistic/eslint-plugin-js` from 2.10.1 to 2.11.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>v2.11.0</h2>
<h2><a href="https://github.com/eslint-stylistic/eslint-stylistic/compare/v2.10.1...v2.11.0">2.11.0</a> (2024-11-19)</h2>
<h3>Features</h3>
<ul>
<li><strong>comma-dangle:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/586">#586</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/4c177c35057652e3872f65756fa62dc05b34cf93">4c177c3</a>)</li>
<li><strong>comma-style:</strong> add support for more syntax (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/597">#597</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/922151c98b2dc75ad4a135f082050b9dd1b26d11">922151c</a>)</li>
<li><strong>function-call-argument-newline:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/603">#603</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/8ee0c24da827c36da3df2e9724744b88fc3aa988">8ee0c24</a>)</li>
<li><strong>function-call-spacing:</strong> add <code>optionalChain</code> to control the space around the <code>optional chain</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/605">#605</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/f73279887c755db71e47cb3248fea746fb34e783">f732798</a>)</li>
<li><strong>function-paren-newline:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/585">#585</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/4ede153af46af01ed3250e16365975e034631455">4ede153</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li>fix the <code>update</code> script in <code>Windows</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/604">#604</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/dede11938e3e15a9e36efefeb548eaa1f3cb1484">dede119</a>)</li>
</ul>
<h3>Build Related</h3>
<ul>
<li><strong>deps:</strong> bump codecov/codecov-action from 4 to 5 (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/612">#612</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/047a3840e43bea3731c5bef629e18a06b10c55a8">047a384</a>)</li>
</ul>
</blockquote>
</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/v2.10.1...v2.11.0">2.11.0</a> (2024-11-19)</h2>
<h3>Features</h3>
<ul>
<li><strong>comma-dangle:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/586">#586</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/4c177c35057652e3872f65756fa62dc05b34cf93">4c177c3</a>)</li>
<li><strong>comma-style:</strong> add support for more syntax (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/597">#597</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/922151c98b2dc75ad4a135f082050b9dd1b26d11">922151c</a>)</li>
<li><strong>function-call-argument-newline:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/603">#603</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/8ee0c24da827c36da3df2e9724744b88fc3aa988">8ee0c24</a>)</li>
<li><strong>function-call-spacing:</strong> add <code>optionalChain</code> to control the space around the <code>optional chain</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/605">#605</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/f73279887c755db71e47cb3248fea746fb34e783">f732798</a>)</li>
<li><strong>function-paren-newline:</strong> add support for Import Attributes (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/585">#585</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/4ede153af46af01ed3250e16365975e034631455">4ede153</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li>fix the <code>update</code> script in <code>Windows</code> (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/604">#604</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/dede11938e3e15a9e36efefeb548eaa1f3cb1484">dede119</a>)</li>
</ul>
<h3>Build Related</h3>
<ul>
<li><strong>deps:</strong> bump codecov/codecov-action from 4 to 5 (<a href="https://redirect.github.com/eslint-stylistic/eslint-stylistic/issues/612">#612</a>) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/047a3840e43bea3731c5bef629e18a06b10c55a8">047a384</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/11e83d8adbd9e92c3ed443236f525a342056d36b"><code>11e83d8</code></a> chore: release v2.11.0 (main) (<a href="https://github.com/eslint-stylistic/eslint-stylistic/tree/HEAD/packages/eslint-plugin-js/issues/613">#613</a>)</li>
<li><a href="https://github.com/eslint-stylistic/eslint-stylistic/commit/f73279887c755db71e47cb3248fea746fb34e783"><code>f732798</code></a> feat(function-call-spacing): add <code>optionalChain</code> to control the space around ...</li>
<li>See full diff in <a href="https://github.com/eslint-stylistic/eslint-stylistic/commits/v2.11.0/packages/eslint-plugin-js">compare view</a></li>
</ul>
</details>
<br />

Updates `eslint` from 9.14.0 to 9.16.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.16.0</h2>
<h2>Features</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/8f70eb142cce025e7040d016a959eff0f51eb672"><code>8f70eb1</code></a> feat: Add <code>ignoreComputedKeys</code> option in <code>sort-keys</code> rule (<a href="https://redirect.github.com/eslint/eslint/issues/19162">#19162</a>) (Milos Djermanovic)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/9eefc8f813b5c31f49fbbd9a36f439b365bea180"><code>9eefc8f</code></a> docs: fix typos in <code>use-isnan</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19190">#19190</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c8cea8c803962a4358032fde5c117a1e9c41ca0"><code>0c8cea8</code></a> docs: switch the order of words in <code>no-unreachable</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19189">#19189</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c19417c644a29b5113d3a2b94ce00640117574b"><code>0c19417</code></a> docs: add missing backtick to <code>no-async-promise-executor</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19188">#19188</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/8df927646cadaa70263914c62f2f76fccb8c46fd"><code>8df9276</code></a> docs: add backtick in <code>-0</code> in <code>description</code> of <code>no-compare-neg-zero</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19186">#19186</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/7e16e3fb8594e361b3e121d2d4059dc26e30c407"><code>7e16e3f</code></a> docs: fix <code>caseSensitive</code> option's title of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19183">#19183</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c6b84212144da3238693fa56500b02bd4a9f05a"><code>0c6b842</code></a> docs: fix typos in <code>migration-guide.md</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19180">#19180</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/353266edf827d4e63e9efef321f5d128748bc74d"><code>353266e</code></a> docs: fix a typo in <code>debug.md</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19179">#19179</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/5ff318a528e3f6b8b9c6a62ea949d66ebb7f0716"><code>5ff318a</code></a> docs: delete unnecessary horizontal rule(<code>---</code>) in <code>nodejs-api</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19175">#19175</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/576bcc5461c0c00c30dfceec9abcddb99e559c74"><code>576bcc5</code></a> docs: mark more rules as handled by TypeScript (<a href="https://redirect.github.com/eslint/eslint/issues/19164">#19164</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/742d054ac1124d4e53c84234dd6960d4e272d490"><code>742d054</code></a> docs: note that <code>no-restricted-syntax</code> can be used with any language (<a href="https://redirect.github.com/eslint/eslint/issues/19148">#19148</a>) (Milos Djermanovic)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/feb703b3dc198cda03fb69c75a31d56d999b9d2e"><code>feb703b</code></a> chore: upgrade to <code>@eslint/js@9.16.0</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19195">#19195</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/df9bf9519a302e284700ad300463ecdf2ebf9f25"><code>df9bf95</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/f831893b6e2951f56ce8b9ff12e4a16913b72b47"><code>f831893</code></a> chore: add type for <code>ignoreComputedKeys</code> option of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19184">#19184</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/3afb8a1dcf12ad12df480db014042a51403ff672"><code>3afb8a1</code></a> chore: update dependency <code>@​eslint/json</code> to ^0.8.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19177">#19177</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/1f77c53b12d00403b88a0e02c8d2432278abcf52"><code>1f77c53</code></a> chore: add <code>repository.directory</code> property to <code>package.json</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19165">#19165</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/d46059410a0e02b98067aa31975c25fd8d0d1c2b"><code>d460594</code></a> chore: update dependency <code>@​arethetypeswrong/cli</code> to ^0.17.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19147">#19147</a>) (renovate[bot])</li>
<li><a href="https://github.com/eslint/eslint/commit/45cd4ead9c4fc354a2542b806ec82afb67cb54fc"><code>45cd4ea</code></a> refactor: update default options in rules (<a href="https://redirect.github.com/eslint/eslint/issues/19136">#19136</a>) (Milos Djermanovic)</li>
</ul>
<h2>v9.15.0</h2>
<h2>Features</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/01557cec24203be72222858a3912da0a474ac75c"><code>01557ce</code></a> feat: Implement Language#normalizeLanguageOptions() (<a href="https://redirect.github.com/eslint/eslint/issues/19104">#19104</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/2edc0e2bdc40c4a6da8d526c82c0b6c582bae419"><code>2edc0e2</code></a> feat: add meta.defaultOptions (<a href="https://redirect.github.com/eslint/eslint/issues/17656">#17656</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/bdec50e91baf9d5eefa07d97d2059fdebb53cdaa"><code>bdec50e</code></a> feat: fix <code>no-useless-computed-key</code> false negative with <code>__proto__</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19123">#19123</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/3087c9e95094cad1354aca2e4ae48c7bd2381184"><code>3087c9e</code></a> feat: add <code>meta</code> object to <code>@eslint/js</code> plugin (<a href="https://redirect.github.com/eslint/eslint/issues/19095">#19095</a>) (Francesco Trotta)</li>
</ul>
<h2>Bug Fixes</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/fd33f1315ac59b1b3828dbab8e1e056a1585eff0"><code>fd33f13</code></a> fix: update types for <code>no-restricted-imports</code> rule (<a href="https://redirect.github.com/eslint/eslint/issues/19060">#19060</a>) (Nitin Kumar)</li>
<li><a href="https://github.com/eslint/eslint/commit/bd35098f5b949ecb83e8c7e287524b28b2a3dd71"><code>bd35098</code></a> fix: switch away from Node.js node:assert and AssertionError (<a href="https://redirect.github.com/eslint/eslint/issues/19082">#19082</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/9db5b152c325a930130d49ca967013471c3ba0dc"><code>9db5b15</code></a> fix: unsafe report for <code>no-lonely-if</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19087">#19087</a>) (Abraham Guo)</li>
<li><a href="https://github.com/eslint/eslint/commit/68fa497f6a11f1738dce85bb2bdd7a5f8b9f5d6d"><code>68fa497</code></a> fix: ignore files on a different drive on Windows (<a href="https://redirect.github.com/eslint/eslint/issues/19069">#19069</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/4ce625a230778a41b856162df9ebcc57c25cc103"><code>4ce625a</code></a> fix: upgrade <code>@​humanwhocodes/retry</code><a href="https://github.com/0"><code>@​0</code></a>.4.1 to avoid debug logs (<a href="https://redirect.github.com/eslint/eslint/issues/19102">#19102</a>) (Milos Djermanovic)</li>
</ul>
<h2>Documentation</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/d9279202e7d15452e44adf38451d33d4aaad3bd4"><code>d927920</code></a> docs: fix styles in no-js mode (<a href="https://redirect.github.com/eslint/eslint/issues/18916">#18916</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/09bc2a88c00aa9a93c7de505795fc4e85b2e6357"><code>09bc2a8</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/39089c80a7af09494fce86a6574bf012cbe46d10"><code>39089c8</code></a> docs: add <code>no-useless-computed-key</code> examples with object patterns (<a href="https://redirect.github.com/eslint/eslint/issues/19109">#19109</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/895c60f7fe09f59df1e9490006220d3ec4b9d5b0"><code>895c60f</code></a> docs: add missing messageId property and suggestion properties (<a href="https://redirect.github.com/eslint/eslint/issues/19122">#19122</a>) (fnx)</li>
<li><a href="https://github.com/eslint/eslint/commit/298625eb65dc00bfa0a877ea46faada22021c23e"><code>298625e</code></a> docs: Change CLI -c to use flat config (<a href="https://redirect.github.com/eslint/eslint/issues/19103">#19103</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/522d8a32f326c52886c531f43cf6a1ff15af8286"><code>522d8a3</code></a> docs: add deprecation on <code>indent</code>, <code>quotes</code> and <code>semi</code> rule types (<a href="https://redirect.github.com/eslint/eslint/issues/19090">#19090</a>) (Marco Pasqualetti)</li>
</ul>
<h2>Chores</h2>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/2967d91037ad670ea3a67fdb9c171b60d9af138b"><code>2967d91</code></a> chore: upgrade <code>@​eslint/js</code><a href="https://github.com/9"><code>@​9</code></a>.15.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19133">#19133</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/b441bee6ad9807fef614bd071e6bd3e8b3307b2d"><code>b441bee</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</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.16.0 - November 29, 2024</p>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/feb703b3dc198cda03fb69c75a31d56d999b9d2e"><code>feb703b</code></a> chore: upgrade to <code>@eslint/js@9.16.0</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19195">#19195</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/df9bf9519a302e284700ad300463ecdf2ebf9f25"><code>df9bf95</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/9eefc8f813b5c31f49fbbd9a36f439b365bea180"><code>9eefc8f</code></a> docs: fix typos in <code>use-isnan</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19190">#19190</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c8cea8c803962a4358032fde5c117a1e9c41ca0"><code>0c8cea8</code></a> docs: switch the order of words in <code>no-unreachable</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19189">#19189</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c19417c644a29b5113d3a2b94ce00640117574b"><code>0c19417</code></a> docs: add missing backtick to <code>no-async-promise-executor</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19188">#19188</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/8df927646cadaa70263914c62f2f76fccb8c46fd"><code>8df9276</code></a> docs: add backtick in <code>-0</code> in <code>description</code> of <code>no-compare-neg-zero</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19186">#19186</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/7e16e3fb8594e361b3e121d2d4059dc26e30c407"><code>7e16e3f</code></a> docs: fix <code>caseSensitive</code> option's title of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19183">#19183</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/f831893b6e2951f56ce8b9ff12e4a16913b72b47"><code>f831893</code></a> chore: add type for <code>ignoreComputedKeys</code> option of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19184">#19184</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/8f70eb142cce025e7040d016a959eff0f51eb672"><code>8f70eb1</code></a> feat: Add <code>ignoreComputedKeys</code> option in <code>sort-keys</code> rule (<a href="https://redirect.github.com/eslint/eslint/issues/19162">#19162</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c6b84212144da3238693fa56500b02bd4a9f05a"><code>0c6b842</code></a> docs: fix typos in <code>migration-guide.md</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19180">#19180</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/353266edf827d4e63e9efef321f5d128748bc74d"><code>353266e</code></a> docs: fix a typo in <code>debug.md</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19179">#19179</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/3afb8a1dcf12ad12df480db014042a51403ff672"><code>3afb8a1</code></a> chore: update dependency <code>@​eslint/json</code> to ^0.8.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19177">#19177</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/5ff318a528e3f6b8b9c6a62ea949d66ebb7f0716"><code>5ff318a</code></a> docs: delete unnecessary horizontal rule(<code>---</code>) in <code>nodejs-api</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19175">#19175</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/576bcc5461c0c00c30dfceec9abcddb99e559c74"><code>576bcc5</code></a> docs: mark more rules as handled by TypeScript (<a href="https://redirect.github.com/eslint/eslint/issues/19164">#19164</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/1f77c53b12d00403b88a0e02c8d2432278abcf52"><code>1f77c53</code></a> chore: add <code>repository.directory</code> property to <code>package.json</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19165">#19165</a>) (루밀LuMir)</li>
<li><a href="https://github.com/eslint/eslint/commit/d46059410a0e02b98067aa31975c25fd8d0d1c2b"><code>d460594</code></a> chore: update dependency <code>@​arethetypeswrong/cli</code> to ^0.17.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19147">#19147</a>) (renovate[bot])</li>
<li><a href="https://github.com/eslint/eslint/commit/45cd4ead9c4fc354a2542b806ec82afb67cb54fc"><code>45cd4ea</code></a> refactor: update default options in rules (<a href="https://redirect.github.com/eslint/eslint/issues/19136">#19136</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/742d054ac1124d4e53c84234dd6960d4e272d490"><code>742d054</code></a> docs: note that <code>no-restricted-syntax</code> can be used with any language (<a href="https://redirect.github.com/eslint/eslint/issues/19148">#19148</a>) (Milos Djermanovic)</li>
</ul>
<p>v9.15.0 - November 15, 2024</p>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/2967d91037ad670ea3a67fdb9c171b60d9af138b"><code>2967d91</code></a> chore: upgrade <code>@​eslint/js</code><a href="https://github.com/9"><code>@​9</code></a>.15.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19133">#19133</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/b441bee6ad9807fef614bd071e6bd3e8b3307b2d"><code>b441bee</code></a> chore: package.json update for <code>@​eslint/js</code> release (Jenkins)</li>
<li><a href="https://github.com/eslint/eslint/commit/7d6bf4a250f97d8ff1e2606e3d769e016a32f45b"><code>7d6bf4a</code></a> chore: upgrade <code>@​eslint/core</code><a href="https://github.com/0"><code>@​0</code></a>.9.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19131">#19131</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/01557cec24203be72222858a3912da0a474ac75c"><code>01557ce</code></a> feat: Implement Language#normalizeLanguageOptions() (<a href="https://redirect.github.com/eslint/eslint/issues/19104">#19104</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/902e70713de1ab67ede9ef8a3836fd2d09a759e5"><code>902e707</code></a> chore: upgrade <code>@​eslint/plugin-kit</code><a href="https://github.com/0"><code>@​0</code></a>.2.3 (<a href="https://redirect.github.com/eslint/eslint/issues/19130">#19130</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/2edc0e2bdc40c4a6da8d526c82c0b6c582bae419"><code>2edc0e2</code></a> feat: add meta.defaultOptions (<a href="https://redirect.github.com/eslint/eslint/issues/17656">#17656</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/fd33f1315ac59b1b3828dbab8e1e056a1585eff0"><code>fd33f13</code></a> fix: update types for <code>no-restricted-imports</code> rule (<a href="https://redirect.github.com/eslint/eslint/issues/19060">#19060</a>) (Nitin Kumar)</li>
<li><a href="https://github.com/eslint/eslint/commit/5ff6c1dd09f32b56c05ab97f328741fc8ffb1f64"><code>5ff6c1d</code></a> chore: bump cross-spawn (<a href="https://redirect.github.com/eslint/eslint/issues/19125">#19125</a>) (Ian Bobinac)</li>
<li><a href="https://github.com/eslint/eslint/commit/d9279202e7d15452e44adf38451d33d4aaad3bd4"><code>d927920</code></a> docs: fix styles in no-js mode (<a href="https://redirect.github.com/eslint/eslint/issues/18916">#18916</a>) (Tanuj Kanti)</li>
<li><a href="https://github.com/eslint/eslint/commit/bdec50e91baf9d5eefa07d97d2059fdebb53cdaa"><code>bdec50e</code></a> feat: fix <code>no-useless-computed-key</code> false negative with <code>__proto__</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19123">#19123</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/09bc2a88c00aa9a93c7de505795fc4e85b2e6357"><code>09bc2a8</code></a> docs: Update README (GitHub Actions Bot)</li>
<li><a href="https://github.com/eslint/eslint/commit/bd35098f5b949ecb83e8c7e287524b28b2a3dd71"><code>bd35098</code></a> fix: switch away from Node.js node:assert and AssertionError (<a href="https://redirect.github.com/eslint/eslint/issues/19082">#19082</a>) (Josh Goldberg ✨)</li>
<li><a href="https://github.com/eslint/eslint/commit/39089c80a7af09494fce86a6574bf012cbe46d10"><code>39089c8</code></a> docs: add <code>no-useless-computed-key</code> examples with object patterns (<a href="https://redirect.github.com/eslint/eslint/issues/19109">#19109</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/895c60f7fe09f59df1e9490006220d3ec4b9d5b0"><code>895c60f</code></a> docs: add missing messageId property and suggestion properties (<a href="https://redirect.github.com/eslint/eslint/issues/19122">#19122</a>) (fnx)</li>
<li><a href="https://github.com/eslint/eslint/commit/cceccc771631011e04b37122b990205f0e8b6925"><code>cceccc7</code></a> chore: update dependency <code>@​eslint/json</code> to ^0.6.0 (<a href="https://redirect.github.com/eslint/eslint/issues/19117">#19117</a>) (renovate[bot])</li>
<li><a href="https://github.com/eslint/eslint/commit/0da3f732fe1776f8f79dac829b2cab4cedd4b6d8"><code>0da3f73</code></a> chore: update algolia referrer (<a href="https://redirect.github.com/eslint/eslint/issues/19114">#19114</a>) (Strek)</li>
<li><a href="https://github.com/eslint/eslint/commit/9db5b152c325a930130d49ca967013471c3ba0dc"><code>9db5b15</code></a> fix: unsafe report for <code>no-lonely-if</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19087">#19087</a>) (Abraham Guo)</li>
<li><a href="https://github.com/eslint/eslint/commit/68fa497f6a11f1738dce85bb2bdd7a5f8b9f5d6d"><code>68fa497</code></a> fix: ignore files on a different drive on Windows (<a href="https://redirect.github.com/eslint/eslint/issues/19069">#19069</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/4f08332ac03e51002f8de6da5c5a362608205437"><code>4f08332</code></a> ci: unpin <code>trunk-io/trunk-action</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19108">#19108</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/3087c9e95094cad1354aca2e4ae48c7bd2381184"><code>3087c9e</code></a> feat: add <code>meta</code> object to <code>@eslint/js</code> plugin (<a href="https://redirect.github.com/eslint/eslint/issues/19095">#19095</a>) (Francesco Trotta)</li>
<li><a href="https://github.com/eslint/eslint/commit/298625eb65dc00bfa0a877ea46faada22021c23e"><code>298625e</code></a> docs: Change CLI -c to use flat config (<a href="https://redirect.github.com/eslint/eslint/issues/19103">#19103</a>) (Nicholas C. Zakas)</li>
<li><a href="https://github.com/eslint/eslint/commit/4ce625a230778a41b856162df9ebcc57c25cc103"><code>4ce625a</code></a> fix: upgrade <code>@​humanwhocodes/retry</code><a href="https://github.com/0"><code>@​0</code></a>.4.1 to avoid debug logs (<a href="https://redirect.github.com/eslint/eslint/issues/19102">#19102</a>) (Milos Djermanovic)</li>
<li><a href="https://github.com/eslint/eslint/commit/522d8a32f326c52886c531f43cf6a1ff15af8286"><code>522d8a3</code></a> docs: add deprecation on <code>indent</code>, <code>quotes</code> and <code>semi</code> rule types (<a href="https://redirect.github.com/eslint/eslint/issues/19090">#19090</a>) (Marco Pasqualetti)</li>
<li><a href="https://github.com/eslint/eslint/commit/6b75683b47c346faaeb6c1dac8e168d64338c7b3"><code>6b75683</code></a> perf: optimize <code>text-table</code> by replacing regex with <code>trimEnd</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19061">#19061</a>) (Nitin Kumar)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/eslint/eslint/commit/cbf7db0ddfa3b789f7ebc27a66993c08a83e72cd"><code>cbf7db0</code></a> 9.16.0</li>
<li><a href="https://github.com/eslint/eslint/commit/715ba8b5cb6638e4caa4952bf718f77fabc0010d"><code>715ba8b</code></a> Build: changelog update for 9.16.0</li>
<li><a href="https://github.com/eslint/eslint/commit/feb703b3dc198cda03fb69c75a31d56d999b9d2e"><code>feb703b</code></a> chore: upgrade to <code>@eslint/js@9.16.0</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19195">#19195</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/df9bf9519a302e284700ad300463ecdf2ebf9f25"><code>df9bf95</code></a> chore: package.json update for <code>@​eslint/js</code> release</li>
<li><a href="https://github.com/eslint/eslint/commit/9eefc8f813b5c31f49fbbd9a36f439b365bea180"><code>9eefc8f</code></a> docs: fix typos in <code>use-isnan</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19190">#19190</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c8cea8c803962a4358032fde5c117a1e9c41ca0"><code>0c8cea8</code></a> docs: switch the order of words in <code>no-unreachable</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19189">#19189</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/0c19417c644a29b5113d3a2b94ce00640117574b"><code>0c19417</code></a> docs: add missing backtick to <code>no-async-promise-executor</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19188">#19188</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/8df927646cadaa70263914c62f2f76fccb8c46fd"><code>8df9276</code></a> docs: add backtick in <code>-0</code> in <code>description</code> of <code>no-compare-neg-zero</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19186">#19186</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/7e16e3fb8594e361b3e121d2d4059dc26e30c407"><code>7e16e3f</code></a> docs: fix <code>caseSensitive</code> option's title of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19183">#19183</a>)</li>
<li><a href="https://github.com/eslint/eslint/commit/f831893b6e2951f56ce8b9ff12e4a16913b72b47"><code>f831893</code></a> chore: add type for <code>ignoreComputedKeys</code> option of <code>sort-keys</code> (<a href="https://redirect.github.com/eslint/eslint/issues/19184">#19184</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/eslint/eslint/compare/v9.14.0...v9.16.0">compare view</a></li>
</ul>
</details>
<br />

Updates `eslint-plugin-jsdoc` from 50.4.3 to 50.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/gajus/eslint-plugin-jsdoc/releases">eslint-plugin-jsdoc's releases</a>.</em></p>
<blockquote>
<h2>v50.6.0</h2>
<h1><a href="https://github.com/gajus/eslint-plugin-jsdoc/compare/v50.5.0...v50.6.0">50.6.0</a> (2024-11-26)</h1>
<h3>Features</h3>
<ul>
<li><strong>lines-before-block:</strong> move start-of-block checking behind off-by-default <code>checkBlockStarts</code> option (<a href="https://redirect.github.com/gajus/eslint-plugin-jsdoc/issues/1341">#1341</a>) (<a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/f9b102dec5cdf62b4c572d67a2514ba200d29668">f9b102d</a>)</li>
</ul>
<h2>v50.5.0</h2>
<h1><a href="https://github.com/gajus/eslint-plugin-jsdoc/compare/v50.4.3...v50.5.0">50.5.0</a> (2024-11-12)</h1>
<h3>Features</h3>
<ul>
<li>ability to import iterateJsdoc (<a href="https://redirect.github.com/gajus/eslint-plugin-jsdoc/issues/1338">#1338</a>) (<a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/b9091f8da90614a08738b13e0a26d97c357aa5c0">b9091f8</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/f9b102dec5cdf62b4c572d67a2514ba200d29668"><code>f9b102d</code></a> feat(lines-before-block): move start-of-block checking behind off-by-default ...</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/feba293e9c3172c411e967ec374fbc2b425fb369"><code>feba293</code></a> build(deps): bump cross-spawn from 7.0.3 to 7.0.6</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/d3c24f5b0bc647269bed5812bc331794d09563f0"><code>d3c24f5</code></a> chore(package): add bugs url</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/f9a313155e112d6e3340f56f6e9917d3059de6de"><code>f9a3131</code></a> chore(package): add homepage url</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/44142de5a01b5e629467e567fe39a1c0f881c24a"><code>44142de</code></a> chore(package): fix repository url</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/b9091f8da90614a08738b13e0a26d97c357aa5c0"><code>b9091f8</code></a> feat: ability to import iterateJsdoc (<a href="https://redirect.github.com/gajus/eslint-plugin-jsdoc/issues/1338">#1338</a>)</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/026fcc0ed5f0d4e5ad1625bbf3c1a173f5da270d"><code>026fcc0</code></a> run the create-docs script</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/873eae4fdd269e6b0aae35595d50244eb1a5a79f"><code>873eae4</code></a> docs: update rule docs to reflect if they are recommended correctly</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/a23977e45c55b4851e63351bced2a69679713c7c"><code>a23977e</code></a> docs: update doc files</li>
<li><a href="https://github.com/gajus/eslint-plugin-jsdoc/commit/e2aa8ff006fd4d4ffd2e3ef91493a00938c1d074"><code>e2aa8ff</code></a> docs: make rule docs reflect their recommended status correctly</li>
<li>See full diff in <a href="https://github.com/gajus/eslint-plugin-jsdoc/compare/v50.4.3...v50.6.0">compare view</a></li>
</ul>
</details>
<br />

Updates `globals` from 15.11.0 to 15.12.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>v15.12.0</h2>
<ul>
<li>Add <code>Iterator</code> to ES2025 (<a href="https://redirect.github.com/sindresorhus/globals/issues/272">#272</a>)  439b398</li>
<li>Update globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/271">#271</a>)  dd0a502</li>
</ul>
<p><a href="https://github.com/sindresorhus/globals/compare/v15.11.0...v15.12.0">https://github.com/sindresorhus/globals/compare/v15.11.0...v15.12.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/sindresorhus/globals/commit/ff4844d90c7639b1bd30a5705109bf4a30b6d896"><code>ff4844d</code></a> 15.12.0</li>
<li><a href="https://github.com/sindresorhus/globals/commit/439b398dc8bbad03a71069d60384e24956ab6606"><code>439b398</code></a> Add <code>Iterator</code> to ES2025 (<a href="https://redirect.github.com/sindresorhus/globals/issues/272">#272</a>)</li>
<li><a href="https://github.com/sindresorhus/globals/commit/dd0a50200236e15e415c1947c20ffb47b1bedd0c"><code>dd0a502</code></a> Update globals (<a href="https://redirect.github.com/sindresorhus/globals/issues/271">#271</a>)</li>
<li>See full diff in <a href="https://github.com/sindresorhus/globals/compare/v15.11.0...v15.12.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: @@ -11,12 +11,12 @@
         "@babel/core": "^7.26.0",
         "@babel/eslint-parser": "^7.25.9",
         "@babel/plugin-syntax-import-attributes": "^7.26.0",
-        "@stylistic/eslint-plugin-js": "^2.10.1",
-        "eslint": "^9.14.0",
+        "@stylistic/eslint-plugin-js": "^2.11.0",
+        "eslint": "^9.16.0",
         "eslint-formatter-tap": "^8.40.0",
-        "eslint-plugin-jsdoc": "^50.4.3",
+        "eslint-plugin-jsdoc": "^50.6.0",
         "eslint-plugin-markdown": "^5.1.0",
-        "globals": "^15.11.0"
+        "globals": "^15.12.0"
       }
     },
     "node_modules/@ampproject/remapping": {
@@ -328,9 +328,9 @@
       }
     },
     "node_modules/@eslint/config-array": {
-      "version": "0.18.0",
-      "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz",
-      "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==",
+      "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==",
       "dependencies": {
         "@eslint/object-schema": "^2.1.4",
         "debug": "^4.3.1",
@@ -341,18 +341,17 @@
       }
     },
     "node_modules/@eslint/core": {
-      "version": "0.7.0",
-      "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz",
-      "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==",
+      "version": "0.9.0",
+      "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.0.tgz",
+      "integrity": "sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==",
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
       }
     },
     "node_modules/@eslint/eslintrc": {
-      "version": "3.1.0",
-      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz",
-      "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==",
-      "license": "MIT",
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz",
+      "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==",
       "dependencies": {
         "ajv": "^6.12.4",
         "debug": "^4.3.2",
@@ -375,7 +374,6 @@
       "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"
       },
@@ -384,9 +382,9 @@
       }
     },
     "node_modules/@eslint/js": {
-      "version": "9.14.0",
-      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz",
-      "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==",
+      "version": "9.16.0",
+      "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.16.0.tgz",
+      "integrity": "sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==",
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
       }
@@ -456,9 +454,9 @@
       }
     },
     "node_modules/@humanwhocodes/retry": {
-      "version": "0.4.0",
-      "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.0.tgz",
-      "integrity": "sha512-xnRgu9DxZbkWak/te3fcytNyp8MTbuiZIaueg2rgEvBuN55n04nwLYLU9TX/VVlusc9L2ZNXi99nUFNkHXtr5g==",
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz",
+      "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==",
       "engines": {
         "node": ">=18.18"
       },
@@ -537,9 +535,9 @@
       }
     },
     "node_modules/@stylistic/eslint-plugin-js": {
-      "version": "2.10.1",
-      "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.10.1.tgz",
-      "integrity": "sha512-IikL/RKy9Sk2UMDUUpqrEcwDeYzUEt6SaL2/UVCFuVQxKACHSgStT0NxXkxZmBOUforaU52FPf2Su07FYH5s5g==",
+      "version": "2.11.0",
+      "resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-js/-/eslint-plugin-js-2.11.0.tgz",
+      "integrity": "sha512-btchD0P3iij6cIk5RR5QMdEhtCCV0+L6cNheGhGCd//jaHILZMTi/EOqgEDAf1s4ZoViyExoToM+S2Iwa3U9DA==",
       "dependencies": {
         "eslint-visitor-keys": "^4.2.0",
         "espree": "^10.3.0"
@@ -611,7 +609,6 @@
       "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",
@@ -641,14 +638,12 @@
     "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==",
-      "license": "MIT"
+      "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
     },
     "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"
@@ -689,7 +684,6 @@
       "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"
       }
@@ -754,8 +748,7 @@
     "node_modules/concat-map": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
-      "license": "MIT"
+      "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
     },
     "node_modules/convert-source-map": {
       "version": "2.0.0",
@@ -819,25 +812,25 @@
       }
     },
     "node_modules/eslint": {
-      "version": "9.14.0",
-      "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz",
-      "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==",
+      "version": "9.16.0",
+      "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.16.0.tgz",
+      "integrity": "sha512-whp8mSQI4C8VXd+fLgSM0lh3UlmcFtVwUQjyKCFfsp+2ItAIYhlq/hqGahGqHE6cv9unM41VlqKk2VtKYR2TaA==",
       "dependencies": {
         "@eslint-community/eslint-utils": "^4.2.0",
         "@eslint-community/regexpp": "^4.12.1",
-        "@eslint/config-array": "^0.18.0",
-        "@eslint/core": "^0.7.0",
-        "@eslint/eslintrc": "^3.1.0",
-        "@eslint/js": "9.14.0",
-        "@eslint/plugin-kit": "^0.2.0",
+        "@eslint/config-array": "^0.19.0",
+        "@eslint/core": "^0.9.0",
+        "@eslint/eslintrc": "^3.2.0",
+        "@eslint/js": "9.16.0",
+        "@eslint/plugin-kit": "^0.2.3",
         "@humanfs/node": "^0.16.6",
         "@humanwhocodes/module-importer": "^1.0.1",
-        "@humanwhocodes/retry": "^0.4.0",
+        "@humanwhocodes/retry": "^0.4.1",
         "@types/estree": "^1.0.6",
         "@types/json-schema": "^7.0.15",
         "ajv": "^6.12.4",
         "chalk": "^4.0.0",
-        "cross-spawn": "^7.0.2",
+        "cross-spawn": "^7.0.5",
         "debug": "^4.3.2",
         "escape-string-regexp": "^4.0.0",
         "eslint-scope": "^8.2.0",
@@ -856,8 +849,7 @@
         "lodash.merge": "^4.6.2",
         "minimatch": "^3.1.2",
         "natural-compare": "^1.4.0",
-        "optionator": "^0.9.3",
-        "text-table": "^0.2.0"
+        "optionator": "^0.9.3"
       },
       "bin": {
         "eslint": "bin/eslint.js"
@@ -890,9 +882,9 @@
       }
     },
     "node_modules/eslint-plugin-jsdoc": {
-      "version": "50.4.3",
-      "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.4.3.tgz",
-      "integrity": "sha512-uWtwFxGRv6B8sU63HZM5dAGDhgsatb+LONwmILZJhdRALLOkCX2HFZhdL/Kw2ls8SQMAVEfK+LmnEfxInRN8HA==",
+      "version": "50.6.0",
+      "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.0.tgz",
+      "integrity": "sha512-tCNp4fR79Le3dYTPB0dKEv7yFyvGkUCa+Z3yuTrrNGGOxBlXo9Pn0PEgroOZikUQOGjxoGMVKNjrOHcYEdfszg==",
       "dependencies": {
         "@es-joy/jsdoccomment": "~0.49.0",
         "are-docs-informative": "^0.0.2",
@@ -1180,14 +1172,12 @@
     "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==",
-      "license": "MIT"
+      "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
     },
     "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==",
-      "license": "MIT"
+      "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
     },
     "node_modules/fast-levenshtein": {
       "version": "2.0.6",
@@ -1264,9 +1254,9 @@
       }
     },
     "node_modules/globals": {
-      "version": "15.11.0",
-      "resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz",
-      "integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==",
+      "version": "15.12.0",
+      "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz",
+      "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==",
       "engines": {
         "node": ">=18"
       },
@@ -1275,10 +1265,9 @@
       }
     },
     "node_modules/ignore": {
-      "version": "5.3.1",
-      "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
-      "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
-      "license": "MIT",
+      "version": "5.3.2",
+      "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
+      "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
       "engines": {
         "node": ">= 4"
       }
@@ -1287,7 +1276,6 @@
       "version": "3.3.0",
       "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
       "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
-      "license": "MIT",
       "dependencies": {
         "parent-module": "^1.0.0",
         "resolve-from": "^4.0.0"
@@ -1424,8 +1412,7 @@
     "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==",
-      "license": "MIT"
+      "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
     },
     "node_modules/json-stable-stringify-without-jsonify": {
       "version": "1.0.1",
@@ -1547,7 +1534,6 @@
       "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"
       },
@@ -1623,7 +1609,6 @@
       "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"
       },
@@ -1698,7 +1683,6 @@
       "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"
       }
@@ -1707,7 +1691,6 @@
       "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"
       }
@@ -1774,7 +1757,6 @@
       "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"
       },
@@ -1798,12 +1780,6 @@
         "url": "https://opencollective.com/unts"
       }
     },
-    "node_modules/text-table": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
-      "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
-      "license": "MIT"
-    },
     "node_modules/tslib": {
       "version": "2.6.3",
       "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz",
@@ -1868,7 +1844,6 @@
       "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: @@ -6,11 +6,11 @@
     "@babel/core": "^7.26.0",
     "@babel/eslint-parser": "^7.25.9",
     "@babel/plugin-syntax-import-attributes": "^7.26.0",
-    "@stylistic/eslint-plugin-js": "^2.10.1",
-    "eslint": "^9.14.0",
+    "@stylistic/eslint-plugin-js": "^2.11.0",
+    "eslint": "^9.16.0",
     "eslint-formatter-tap": "^8.40.0",
-    "eslint-plugin-jsdoc": "^50.4.3",
+    "eslint-plugin-jsdoc": "^50.6.0",
     "eslint-plugin-markdown": "^5.1.0",
-    "globals": "^15.11.0"
+    "globals": "^15.12.0"
   }
 }