Skip to content

feat: output full actual location in rule tester if different#19904

Merged
nzakas merged 7 commits into
eslint:mainfrom
ST-DDT:rule-tester/full-location
Jul 7, 2025
Merged

feat: output full actual location in rule tester if different#19904
nzakas merged 7 commits into
eslint:mainfrom
ST-DDT:rule-tester/full-location

Conversation

@ST-DDT

@ST-DDT ST-DDT commented Jul 1, 2025

Copy link
Copy Markdown
Contributor

Prerequisites checklist

What is the purpose of this pull request? (put an "X" next to an item)

[ ] Documentation update
[ ] Bug fix (template)
[ ] New rule (template)
[ ] Changes an existing rule (template)
[ ] Add autofix to a rule
[ ] Add a CLI option
[ ] Add something to the core
[x] Other, please explain: Output the full actual location in rule-tester

What changes did you make? (Give an overview)

This PR changes the rule-tester error output to contain the actual error location in addition to the expected location.
In most cases, if one location property is wrong, then the others likely are as well, so outputing them all at once helps with updating all information in a single test run. This is especially useful for new rule tests or making existing tests more strict.

Old

AssertionError [ERR_ASSERTION]: Error endLine should be 8

7 !== 8

+ expected - actual

-7
+8

New

AssertionError [ERR_ASSERTION]: Actual error location does not match expected error location.
+ actual - expected

{
+   column: 11,
+   endColumn: 16,
+   endLine: 1,
+   line: 1
-   column: 0,
-   endColumn: 0,
-   endLine: 0,
-   line: 0
}

+ expected - actual

{
-  "column": 11
-  "endColumn": 16
-  "endLine": 1
-  "line": 1
+  "column": 0
+  "endColumn": 0
+  "endLine": 0
+  "line": 0
}

The actual format is in JSON to make it easier to copy and paste, but I can beautify it, if you like.

Maybe: .replaceAll('"', '').replaceAll(':', ': ').replaceAll(',', ', ')

Is there anything you'd like reviewers to focus on?

@ST-DDT ST-DDT requested a review from a team as a code owner July 1, 2025 08:31
@github-project-automation github-project-automation Bot moved this to Needs Triage in Triage Jul 1, 2025
@eslint-github-bot eslint-github-bot Bot added the feature This change adds a new feature to ESLint label Jul 1, 2025
@netlify

netlify Bot commented Jul 1, 2025

Copy link
Copy Markdown

Deploy Preview for docs-eslint canceled.

Name Link
🔨 Latest commit 3c8e6a4
🔍 Latest deploy log https://app.netlify.com/projects/docs-eslint/deploys/6867f317c32e23000857bdce

@github-actions github-actions Bot added the core Relates to ESLint's core APIs and features label Jul 1, 2025
@mdjermanovic mdjermanovic moved this from Needs Triage to Triaging in Triage Jul 1, 2025
@mdjermanovic

Copy link
Copy Markdown
Member

I'm not sure if I would agree with the described motivation since I believe the expected values should be specified based on expectations for the test case rather than copied from the actual values, but I'm fine with this change as I think it can be helpful for debugging to output the full actual location when at least one part of it doesn't match the expected value.

@eslint/eslint-team thoughts?

@mdjermanovic mdjermanovic moved this from Triaging to Feedback Needed in Triage Jul 1, 2025
@mdjermanovic mdjermanovic added the evaluating The team will evaluate this issue to decide whether it meets the criteria for inclusion label Jul 1, 2025
@JoshuaKGoldberg

Copy link
Copy Markdown
Contributor

Oh! I actually like this a lot. Agreed that the expected values should be specified based on expectations for the test case rather than copied from the actual values. But also, changes to a rule's report range are quite tedious to reflect in tests. I've had to repeatedly go through passes of changing first one property, then another, etc. This would help.

@lumirlumir

Copy link
Copy Markdown
Member

I'm personally 👍 to this change.

I usually use Node.js's native test runner for my custom packages, and it shows less verbose error messages than mocha.

So, I think this change would help users who use less verbose test runners for their tests.


In my opinion, it would be nice to slightly beautify and summarize the newly added error message.

@ST-DDT

ST-DDT commented Jul 1, 2025

Copy link
Copy Markdown
Contributor Author

In my opinion, it would be nice to slightly beautify and summarize the newly added error message.

Any suggestions?

Maybe:

AssertionError [ERR_ASSERTION]: Error endLine should be 8 - Actual: { line: 7, column: 16, endLine: 7, endColumn: 20 }

?

@nzakas

nzakas commented Jul 1, 2025

Copy link
Copy Markdown
Member

If the desire here is to treat the location as one atomic unit then I don't think this is the right solution. Here, we're still checking the location one field at a time and the only difference is outputting all four fields...but you're still only telling people that one field is incorrect. Including the other three fields in the message doesn't mean anything because they could all be correct, all be incorrect, or something in between.

If we really want to make a change here, then it should be to treat the four fields as one unit that are validated together and the failed assertions are shown together.

@snitin315

Copy link
Copy Markdown
Contributor

I agree with @nzakas — the correct approach should be to treat the location fields as a single unit and validate them together, showing the actual vs expected values. That said, I'm unsure whether this change would be considered breaking or not.

@ST-DDT

ST-DDT commented Jul 2, 2025

Copy link
Copy Markdown
Contributor Author

Treating it as a single unit would require validating all or none fields.

assert.equals(
  { line: message.line, column: message.column, endLine: message.endLine, endColumn: message.endColumn },
  { line: error.line, column: error.column, endLine: error.endLine, endColumn: error.endColumn }
)

I'm fine with that, but that would probably be more breaking than the error message of the method used to validate errors/messages.
I assume, nobody is checking the failure messages, only whether the rule tester passes or fails.
However, I think quite a few tests/devs only verify a few/subset of the location properties.

@nzakas

nzakas commented Jul 2, 2025

Copy link
Copy Markdown
Member

@ST-DDT that's not a problem, we can always check to see which of the location properties is present and only check those properties.

Changing the assertion message output isn't a breaking change. It would only be breaking if we ended up checking a value that wasn't previously checked, which is not what we're doing.

@ST-DDT

ST-DDT commented Jul 2, 2025

Copy link
Copy Markdown
Contributor Author

Do we still show all actual location properties?
Or only those that are already present?
I would prefer showing all.

@nzakas

nzakas commented Jul 2, 2025

Copy link
Copy Markdown
Member

Only those that are present. What we should do is create an object with the properties that are defined in the test case, then create an object with the expected values for each property, then run assert.deepStrictEqual() on those objects to get the desired output.

@ST-DDT ST-DDT left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

I havent updated the example in the PR description yet, but I expect it to change a bit after reviews anyway.

Comment thread lib/rule-tester/rule-tester.js Outdated
@ST-DDT

ST-DDT commented Jul 3, 2025

Copy link
Copy Markdown
Contributor Author

Switched to the default assertion output.

Comment thread lib/rule-tester/rule-tester.js
@ST-DDT

ST-DDT commented Jul 4, 2025

Copy link
Copy Markdown
Contributor Author

Side question: What is the contributor pool? The label doesn't have a description.

@mdjermanovic

Copy link
Copy Markdown
Member

Side question: What is the contributor pool? The label doesn't have a description.

We use this label to mark PRs that are considered for payment to contributors. For example:

https://github.com/eslint/tsc-meetings/blob/main/notes/2025/2025-06-12.md#contributor-pool-may-2025

@mdjermanovic mdjermanovic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks! Leaving open for @nzakas to verify.

@mdjermanovic mdjermanovic moved this from Feedback Needed to Second Review Needed in Triage Jul 4, 2025
@mdjermanovic mdjermanovic added accepted There is consensus among the team that this change meets the criteria for inclusion and removed evaluating The team will evaluate this issue to decide whether it meets the criteria for inclusion labels Jul 4, 2025

@nzakas nzakas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

In the future, please be sure to open an issue when proposing features instead of immediately opening a pull request.

@nzakas nzakas merged commit 35cf44c into eslint:main Jul 7, 2025
30 checks passed
@github-project-automation github-project-automation Bot moved this from Second Review Needed to Complete in Triage Jul 7, 2025
@ST-DDT ST-DDT deleted the rule-tester/full-location branch July 7, 2025 18:42
736-c41-2c1-e464fc974 pushed a commit to Swiss-Armed-Forces/Loom that referenced this pull request Dec 30, 2025
This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@eslint/compat](https://github.com/eslint/rewrite/tree/main/packages/compat#readme) ([source](https://github.com/eslint/rewrite/tree/HEAD/packages/compat)) | devDependencies | minor | [`1.3.2` → `1.4.1`](https://renovatebot.com/diffs/npm/@eslint%2fcompat/1.3.2/1.4.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/rewrite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/rewrite) |
| [@eslint/js](https://eslint.org) ([source](https://github.com/eslint/eslint/tree/HEAD/packages/js)) | devDependencies | minor | [`9.29.0` → `9.39.2`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.29.0/9.39.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/eslint) |
| [@mui/icons-material](https://mui.com/material-ui/material-icons/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material)) | dependencies | minor | [`7.1.2` → `7.3.6`](https://renovatebot.com/diffs/npm/@mui%2ficons-material/7.1.2/7.3.6) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/material](https://mui.com/material-ui/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material)) | dependencies | minor | [`7.1.2` → `7.3.6`](https://renovatebot.com/diffs/npm/@mui%2fmaterial/7.1.2/7.3.6) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | minor | [`8.5.3` → `8.23.0`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.5.3/8.23.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@mui/x-tree-view](https://mui.com/x/react-tree-view/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-tree-view)) | dependencies | minor | [`8.5.3` → `8.23.0`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.5.3/8.23.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@openapitools/openapi-generator-cli](https://github.com/OpenAPITools/openapi-generator-cli) | devDependencies | minor | [`2.23.4` → `2.26.0`](https://renovatebot.com/diffs/npm/@openapitools%2fopenapi-generator-cli/2.23.4/2.26.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/OpenAPITools/openapi-generator-cli/badge)](https://securityscorecards.dev/viewer/?uri=github.com/OpenAPITools/openapi-generator-cli) |
| [@reduxjs/toolkit](https://redux-toolkit.js.org) ([source](https://github.com/reduxjs/redux-toolkit)) | dependencies | minor | [`2.8.2` → `2.11.2`](https://renovatebot.com/diffs/npm/@reduxjs%2ftoolkit/2.8.2/2.11.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/reduxjs/redux-toolkit/badge)](https://securityscorecards.dev/viewer/?uri=github.com/reduxjs/redux-toolkit) |
| [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) | devDependencies | minor | [`6.6.4` → `6.9.1`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-dom/6.6.4/6.9.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/testing-library/jest-dom/badge)](https://securityscorecards.dev/viewer/?uri=github.com/testing-library/jest-dom) |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | devDependencies | minor | [`19.1.17` → `19.2.7`](https://renovatebot.com/diffs/npm/@types%2freact/19.1.17/19.2.7) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | devDependencies | minor | [`19.1.11` → `19.2.3`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.1.11/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | devDependencies | minor | [`8.39.1` → `8.51.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/8.39.1/8.51.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@typescript-eslint/parser](https://typescript-eslint.io/packages/parser) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | devDependencies | minor | [`8.39.1` → `8.51.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/8.39.1/8.51.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react#readme) ([source](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react)) | devDependencies | minor | [`4.5.2` → `4.7.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react/4.5.2/4.7.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite-plugin-react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite-plugin-react) |
| [ace-builds](https://github.com/ajaxorg/ace-builds) | dependencies | minor | [`1.42.0` → `1.43.5`](https://renovatebot.com/diffs/npm/ace-builds/1.42.0/1.43.5) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ajaxorg/ace-builds/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ajaxorg/ace-builds) |
| [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | devDependencies | minor | [`9.32.0` → `9.39.2`](https://renovatebot.com/diffs/npm/eslint/9.32.0/9.39.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/eslint) |
| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | devDependencies | minor | [`4.1.4` → `4.3.0`](https://renovatebot.com/diffs/npm/eslint-plugin-unused-imports/4.1.4/4.3.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/sweepline/eslint-plugin-unused-imports/badge)](https://securityscorecards.dev/viewer/?uri=github.com/sweepline/eslint-plugin-unused-imports) |
| [globals](https://github.com/sindresorhus/globals) | devDependencies | minor | [`16.2.0` → `16.5.0`](https://renovatebot.com/diffs/npm/globals/16.2.0/16.5.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/sindresorhus/globals/badge)](https://securityscorecards.dev/viewer/?uri=github.com/sindresorhus/globals) |
| [i18next](https://www.i18next.com) ([source](https://github.com/i18next/i18next)) | dependencies | minor | [`25.2.1` → `25.7.3`](https://renovatebot.com/diffs/npm/i18next/25.2.1/25.7.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/i18next/i18next/badge)](https://securityscorecards.dev/viewer/?uri=github.com/i18next/i18next) |
| [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`3.5.3` → `3.7.4`](https://renovatebot.com/diffs/npm/prettier/3.5.3/3.7.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/prettier) |
| [react](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react)) | dependencies | minor | [`19.1.1` → `19.2.3`](https://renovatebot.com/diffs/npm/react/19.1.1/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-dom](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react-dom)) | dependencies | minor | [`19.1.1` → `19.2.3`](https://renovatebot.com/diffs/npm/react-dom/19.1.1/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-i18next](https://github.com/i18next/react-i18next) | dependencies | minor | [`15.5.3` → `15.7.4`](https://renovatebot.com/diffs/npm/react-i18next/15.5.3/15.7.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/i18next/react-i18next/badge)](https://securityscorecards.dev/viewer/?uri=github.com/i18next/react-i18next) |
| [react-router-dom](https://github.com/remix-run/react-router) ([source](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | dependencies | minor | [`7.6.3` → `7.11.0`](https://renovatebot.com/diffs/npm/react-router-dom/7.6.3/7.11.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/remix-run/react-router/badge)](https://securityscorecards.dev/viewer/?uri=github.com/remix-run/react-router) |
| [typescript](https://www.typescriptlang.org/) ([source](https://github.com/microsoft/TypeScript)) | devDependencies | minor | [`5.8.3` → `5.9.3`](https://renovatebot.com/diffs/npm/typescript/5.8.3/5.9.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/microsoft/TypeScript/badge)](https://securityscorecards.dev/viewer/?uri=github.com/microsoft/TypeScript) |
| [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | devDependencies | minor | [`6.3.7` → `6.4.1`](https://renovatebot.com/diffs/npm/vite/6.3.7/6.4.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) |
| [vite-plugin-svgr](https://github.com/pd4d10/vite-plugin-svgr) | devDependencies | minor | [`4.3.0` → `4.5.0`](https://renovatebot.com/diffs/npm/vite-plugin-svgr/4.3.0/4.5.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/pd4d10/vite-plugin-svgr/badge)](https://securityscorecards.dev/viewer/?uri=github.com/pd4d10/vite-plugin-svgr) |

---

### Release Notes

<details>
<summary>eslint/rewrite (@&#8203;eslint/compat)</summary>

### [`v1.4.1`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#141-2025-10-27)

[Compare Source](https://github.com/eslint/rewrite/compare/7f592e3b60dd0a3b38d891a80aeeb92cf78d8e86...f5ecc7e945634a173af677d2d597d583bd2704e6)

##### Dependencies

- The following workspace dependencies were updated
  - dependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.16.0 to ^0.17.0

### [`v1.4.0`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#140-2025-09-16)

[Compare Source](https://github.com/eslint/rewrite/compare/9e68ab61df9c4ebc082b603fb5e3dfe2dcf98666...7f592e3b60dd0a3b38d891a80aeeb92cf78d8e86)

##### Features

- Add config types in [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;237](https://github.com/eslint/rewrite/issues/237)) ([7b6dd37](https://github.com/eslint/rewrite/commit/7b6dd370a598ea7fc94fba427a2579342b50b90f))

##### Dependencies

- The following workspace dependencies were updated
  - dependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.15.2 to ^0.16.0

</details>

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

### [`v9.39.2`](https://github.com/eslint/eslint/releases/tag/v9.39.2)

[Compare Source](https://github.com/eslint/eslint/compare/v9.39.1...v9.39.2)

##### Bug Fixes

- [`5705833`](https://github.com/eslint/eslint/commit/57058331946568164449c5caabe2cf206e4fb5d9) fix: warn when `eslint-env` configuration comments are found ([#&#8203;20381](https://github.com/eslint/eslint/issues/20381)) (sethamus)

##### Build Related

- [`506f154`](https://github.com/eslint/eslint/commit/506f1549a64aa65bdddc75c71cb62f0ab94b5a23) build: add .scss files entry to knip ([#&#8203;20391](https://github.com/eslint/eslint/issues/20391)) (Milos Djermanovic)

##### Chores

- [`7ca0af7`](https://github.com/eslint/eslint/commit/7ca0af7f9f89dd4a01736dae01931c45d528171b) chore: upgrade to `@eslint/js@9.39.2` ([#&#8203;20394](https://github.com/eslint/eslint/issues/20394)) (Francesco Trotta)
- [`c43ce24`](https://github.com/eslint/eslint/commit/c43ce24ff0ce073ec4ad691cd5a50171dfe6cf1e) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`4c9858e`](https://github.com/eslint/eslint/commit/4c9858e47bb9146cf20f546a562bc58a9ee3dae1) ci: add `v9.x-dev` branch ([#&#8203;20382](https://github.com/eslint/eslint/issues/20382)) (Milos Djermanovic)

### [`v9.39.1`](https://github.com/eslint/eslint/releases/tag/v9.39.1)

[Compare Source](https://github.com/eslint/eslint/compare/v9.39.0...v9.39.1)

##### Bug Fixes

- [`650753e`](https://github.com/eslint/eslint/commit/650753ee3976784343ceb40170619dab1aa9fe0d) fix: Only pass node to JS lang visitor methods ([#&#8203;20283](https://github.com/eslint/eslint/issues/20283)) (Nicholas C. Zakas)

##### Documentation

- [`51b51f4`](https://github.com/eslint/eslint/commit/51b51f4f1ce82ef63264c4e45d9ef579bcd73f8e) docs: add a section on when to use extends vs cascading ([#&#8203;20268](https://github.com/eslint/eslint/issues/20268)) (Tanuj Kanti)
- [`b44d426`](https://github.com/eslint/eslint/commit/b44d42699dcd1729b7ecb50ca70e4c1c17f551f1) docs: Update README (GitHub Actions Bot)

##### Chores

- [`92db329`](https://github.com/eslint/eslint/commit/92db329211c8da5ce8340a4d4c05ce9c12845381) chore: update `@eslint/js` version to 9.39.1 ([#&#8203;20284](https://github.com/eslint/eslint/issues/20284)) (Francesco Trotta)
- [`c7ebefc`](https://github.com/eslint/eslint/commit/c7ebefc9eaf99b76b30b0d3cf9960807a47367c4) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`61778f6`](https://github.com/eslint/eslint/commit/61778f6ca33c0f63962a91d6a75a4fa5db9f47d2) chore: update eslint-config-eslint dependency [@&#8203;eslint/js](https://github.com/eslint/js) to ^9.39.0 ([#&#8203;20275](https://github.com/eslint/eslint/issues/20275)) (renovate\[bot])
- [`d9ca2fc`](https://github.com/eslint/eslint/commit/d9ca2fcd9ad63331bfd329a69534e1ff04f231e8) ci: Add rangeStrategy to eslint group in renovate config ([#&#8203;20266](https://github.com/eslint/eslint/issues/20266)) (唯然)
- [`009e507`](https://github.com/eslint/eslint/commit/009e5076ff5a4bd845f55e17676e3bb88f47c280) test: fix version tests for ESLint v10 ([#&#8203;20274](https://github.com/eslint/eslint/issues/20274)) (Milos Djermanovic)

### [`v9.39.0`](https://github.com/eslint/eslint/releases/tag/v9.39.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.38.0...v9.39.0)

##### Features

- [`cc57d87`](https://github.com/eslint/eslint/commit/cc57d87a3f119e9d39c55e044e526ae067fa31ce) feat: update error loc to key in `no-dupe-class-members` ([#&#8203;20259](https://github.com/eslint/eslint/issues/20259)) (Tanuj Kanti)
- [`126552f`](https://github.com/eslint/eslint/commit/126552fcf35da3ddcefa527db06dabc54c04041c) feat: update error location in `for-direction` and `no-dupe-args` ([#&#8203;20258](https://github.com/eslint/eslint/issues/20258)) (Tanuj Kanti)
- [`167d097`](https://github.com/eslint/eslint/commit/167d0970d3802a66910e9820f31dcd717fab0b2a) feat: update `complexity` rule to highlight only static block header ([#&#8203;20245](https://github.com/eslint/eslint/issues/20245)) (jaymarvelz)

##### Bug Fixes

- [`15f5c7c`](https://github.com/eslint/eslint/commit/15f5c7c168d0698683943f51dd617f14a5e6815c) fix: forward traversal `step.args` to visitors ([#&#8203;20253](https://github.com/eslint/eslint/issues/20253)) (jaymarvelz)
- [`5a1a534`](https://github.com/eslint/eslint/commit/5a1a534e877f7c4c992885867f923df307c3929d) fix: allow JSDoc comments in object-shorthand rule ([#&#8203;20167](https://github.com/eslint/eslint/issues/20167)) (Nitin Kumar)
- [`e86b813`](https://github.com/eslint/eslint/commit/e86b813eb660f1a5adc8e143a70d9b683cd12362) fix: Use more types from [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;20257](https://github.com/eslint/eslint/issues/20257)) (Nicholas C. Zakas)
- [`927272d`](https://github.com/eslint/eslint/commit/927272d1f0d5683b029b729d368a96527f283323) fix: correct `Scope` typings ([#&#8203;20198](https://github.com/eslint/eslint/issues/20198)) (jaymarvelz)
- [`37f76d9`](https://github.com/eslint/eslint/commit/37f76d9c539bb6fc816fedb7be4486b71a58620a) fix: use `AST.Program` type for Program node ([#&#8203;20244](https://github.com/eslint/eslint/issues/20244)) (Francesco Trotta)
- [`ae07f0b`](https://github.com/eslint/eslint/commit/ae07f0b3334ebd22ae2e7b09bca5973b96aa9768) fix: unify timing report for concurrent linting ([#&#8203;20188](https://github.com/eslint/eslint/issues/20188)) (jaymarvelz)
- [`b165d47`](https://github.com/eslint/eslint/commit/b165d471be6062f4475b972155b02654a974a0e9) fix: correct `Rule` typings ([#&#8203;20199](https://github.com/eslint/eslint/issues/20199)) (jaymarvelz)
- [`fb97cda`](https://github.com/eslint/eslint/commit/fb97cda70d87286a7dbd2457f578ef578d6905e8) fix: improve error message for missing fix function in suggestions ([#&#8203;20218](https://github.com/eslint/eslint/issues/20218)) (jaymarvelz)

##### Documentation

- [`d3e81e3`](https://github.com/eslint/eslint/commit/d3e81e30ee6be5a21151b7a17ef10a714b6059c0) docs: Always recommend to include a files property ([#&#8203;20158](https://github.com/eslint/eslint/issues/20158)) (Percy Ma)
- [`0f0385f`](https://github.com/eslint/eslint/commit/0f0385f1404dcadaba4812120b1ad02334dbd66a) docs: use consistent naming recommendation ([#&#8203;20250](https://github.com/eslint/eslint/issues/20250)) (Alex M. Spieslechner)
- [`a3b1456`](https://github.com/eslint/eslint/commit/a3b145609ac649fac837c8c0515cbb2a9321ca40) docs: Update README (GitHub Actions Bot)
- [`cf5f2dd`](https://github.com/eslint/eslint/commit/cf5f2dd58dd98084a21da04fe7b9054b9478d552) docs: fix correct tag of `no-useless-constructor` ([#&#8203;20255](https://github.com/eslint/eslint/issues/20255)) (Tanuj Kanti)
- [`10b995c`](https://github.com/eslint/eslint/commit/10b995c8e5473de8d66d3cd99d816e046f35e3ec) docs: add TS options and examples for `nofunc` in `no-use-before-define` ([#&#8203;20249](https://github.com/eslint/eslint/issues/20249)) (Tanuj Kanti)
- [`2584187`](https://github.com/eslint/eslint/commit/2584187e4a305ea7a98e1a5bd4dca2a60ad132f8) docs: remove repetitive word in comment ([#&#8203;20242](https://github.com/eslint/eslint/issues/20242)) (reddaisyy)
- [`637216b`](https://github.com/eslint/eslint/commit/637216bd4f2aae7c928ad04a4e40eecffb50c9e5) docs: update CLI flags migration instructions ([#&#8203;20238](https://github.com/eslint/eslint/issues/20238)) (jaymarvelz)
- [`e7cda3b`](https://github.com/eslint/eslint/commit/e7cda3bdf1bdd664e6033503a3315ad81736b200) docs: Update README (GitHub Actions Bot)
- [`7b9446f`](https://github.com/eslint/eslint/commit/7b9446f7cc2054aa2cdf8e6225f4ac15a03671a8) docs: handle empty flags sections on the feature flags page ([#&#8203;20222](https://github.com/eslint/eslint/issues/20222)) (sethamus)

##### Chores

- [`dfe3c1b`](https://github.com/eslint/eslint/commit/dfe3c1b2034228765c48c8a445554223767dd16d) chore: update `@eslint/js` version to 9.39.0 ([#&#8203;20270](https://github.com/eslint/eslint/issues/20270)) (Francesco Trotta)
- [`2375a6d`](https://github.com/eslint/eslint/commit/2375a6de8263393c129d41cac1b407b40111a73c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`a1f4e52`](https://github.com/eslint/eslint/commit/a1f4e52d67c94bef61edd1607dcd130047c1baf0) chore: update `@eslint` dependencies ([#&#8203;20265](https://github.com/eslint/eslint/issues/20265)) (Francesco Trotta)
- [`c7d3229`](https://github.com/eslint/eslint/commit/c7d32298482752eeac9fb46378d4f1ea095f3836) chore: update dependency [@&#8203;eslint/core](https://github.com/eslint/core) to ^0.17.0 ([#&#8203;20256](https://github.com/eslint/eslint/issues/20256)) (renovate\[bot])
- [`27549bc`](https://github.com/eslint/eslint/commit/27549bc774c7c2dc5c569070a3e87c62f602bf7d) chore: update fuzz testing to not error if code sample minimizer fails ([#&#8203;20252](https://github.com/eslint/eslint/issues/20252)) (Milos Djermanovic)
- [`a1370ee`](https://github.com/eslint/eslint/commit/a1370ee40e9d8e0e41843f3278cd745fc1ad543f) ci: bump actions/setup-node from 5 to 6 ([#&#8203;20230](https://github.com/eslint/eslint/issues/20230)) (dependabot\[bot])
- [`9e7fad4`](https://github.com/eslint/eslint/commit/9e7fad4a1867709060686d03e0ec1d0d69671cfb) chore: add script to auto-generate eslint:recommended configuration ([#&#8203;20208](https://github.com/eslint/eslint/issues/20208)) (唯然)

### [`v9.38.0`](https://github.com/eslint/eslint/releases/tag/v9.38.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.37.0...v9.38.0)

##### Features

- [`ce40f74`](https://github.com/eslint/eslint/commit/ce40f74efd45f66d9fbfc6f78ce622ee72008485) feat: update `complexity` rule to only highlight function header ([#&#8203;20048](https://github.com/eslint/eslint/issues/20048)) (Atul Nair)
- [`e37e590`](https://github.com/eslint/eslint/commit/e37e590aae2a7fcca4d3a9adc1379ad466e5c5d1) feat: correct `no-loss-of-precision` false positives with `e` notation ([#&#8203;20187](https://github.com/eslint/eslint/issues/20187)) (Francesco Trotta)

##### Bug Fixes

- [`50c3dfd`](https://github.com/eslint/eslint/commit/50c3dfd98065622765a51a8ddb1e70c44fc5a4cb) fix: improve type support for isolated dependencies in pnpm ([#&#8203;20201](https://github.com/eslint/eslint/issues/20201)) (Francesco Trotta)
- [`a1f06a3`](https://github.com/eslint/eslint/commit/a1f06a350c4155c4dbf39bf932a38d71d70f1b65) fix: correct SourceCode typings ([#&#8203;20114](https://github.com/eslint/eslint/issues/20114)) (Pixel998)

##### Documentation

- [`462675a`](https://github.com/eslint/eslint/commit/462675af8a811f9ca984efaedbdc5b46b13ced7a) docs: improve web accessibility by hiding non-semantic character ([#&#8203;20205](https://github.com/eslint/eslint/issues/20205)) (루밀LuMir)
- [`c070e65`](https://github.com/eslint/eslint/commit/c070e65f6bb9e38d06a89ba2b3261781bec3d397) docs: correct formatting in `no-irregular-whitespace` rule documentation ([#&#8203;20203](https://github.com/eslint/eslint/issues/20203)) (루밀LuMir)
- [`b39e71a`](https://github.com/eslint/eslint/commit/b39e71a2130ae1ea3fbc19b19f5b951eb625722a) docs: Update README (GitHub Actions Bot)
- [`cd39983`](https://github.com/eslint/eslint/commit/cd3998314876a4fad6463d9011bc73778ccc1fd9) docs: move `custom-formatters` type descriptions to `nodejs-api` ([#&#8203;20190](https://github.com/eslint/eslint/issues/20190)) (Percy Ma)

##### Chores

- [`d17c795`](https://github.com/eslint/eslint/commit/d17c795bf1624e0604998482b98e6bb6bff39045) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).38.0 ([#&#8203;20221](https://github.com/eslint/eslint/issues/20221)) (Milos Djermanovic)
- [`25d0e33`](https://github.com/eslint/eslint/commit/25d0e33270e08baed09dbee2cdd56a8e5cd9da0f) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`c82b5ef`](https://github.com/eslint/eslint/commit/c82b5efa1fc91900e029efa23e688fad67fc17fa) refactor: Use types from [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;20168](https://github.com/eslint/eslint/issues/20168)) (Nicholas C. Zakas)
- [`ff31609`](https://github.com/eslint/eslint/commit/ff31609f195654d448954210ba4d31e921d463e8) ci: add Node.js 25 to `ci.yml` ([#&#8203;20220](https://github.com/eslint/eslint/issues/20220)) (루밀LuMir)
- [`004577e`](https://github.com/eslint/eslint/commit/004577eda2f2f4b2829e0364f8b41893cebfc859) ci: bump github/codeql-action from 3 to 4 ([#&#8203;20211](https://github.com/eslint/eslint/issues/20211)) (dependabot\[bot])
- [`eac71fb`](https://github.com/eslint/eslint/commit/eac71fb77113de7bf199ff20c6ee44cefcb59848) test: remove use of `nodejsScope` option of eslint-scope from tests ([#&#8203;20206](https://github.com/eslint/eslint/issues/20206)) (Milos Djermanovic)
- [`4168a18`](https://github.com/eslint/eslint/commit/4168a18b7efd8facbbd71cd44a62942a9f656a30) chore: fix typo in legacy-eslint.js ([#&#8203;20202](https://github.com/eslint/eslint/issues/20202)) (Sweta Tanwar)
- [`205dbd2`](https://github.com/eslint/eslint/commit/205dbd2d9272e761574c478e3b0181f7b89ed0f6) chore: fix typos ([#&#8203;20200](https://github.com/eslint/eslint/issues/20200)) (ntnyq)
- [`dbb200e`](https://github.com/eslint/eslint/commit/dbb200e3604e63bba23a18d40089ca44604835ed) chore: use team member's username when name is not available in data ([#&#8203;20194](https://github.com/eslint/eslint/issues/20194)) (Milos Djermanovic)
- [`8962089`](https://github.com/eslint/eslint/commit/8962089edbd978b43513576387a134036b8e2d36) chore: mark deprecated rules as available until v11.0.0 ([#&#8203;20184](https://github.com/eslint/eslint/issues/20184)) (Pixel998)

### [`v9.37.0`](https://github.com/eslint/eslint/releases/tag/v9.37.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.36.0...v9.37.0)

##### Features

- [`39f7fb4`](https://github.com/eslint/eslint/commit/39f7fb493a6924ff7dc638fd4d6e7b3d8eb95383) feat: `preserve-caught-error` should recognize all static "cause" keys ([#&#8203;20163](https://github.com/eslint/eslint/issues/20163)) (Pixel998)
- [`f81eabc`](https://github.com/eslint/eslint/commit/f81eabc5849ece98b8ca054f96b29f038a69bcf8) feat: support TS syntax in `no-restricted-imports` ([#&#8203;19562](https://github.com/eslint/eslint/issues/19562)) (Nitin Kumar)

##### Bug Fixes

- [`a129cce`](https://github.com/eslint/eslint/commit/a129cced7a86ea2518eb9be6990fa18af39694ca) fix: correct `no-loss-of-precision` false positives for leading zeros ([#&#8203;20164](https://github.com/eslint/eslint/issues/20164)) (Francesco Trotta)
- [`09e04fc`](https://github.com/eslint/eslint/commit/09e04fcc3f4cc963eea7c9c579391de5e231595b) fix: add missing AST token types ([#&#8203;20172](https://github.com/eslint/eslint/issues/20172)) (Pixel998)
- [`861c6da`](https://github.com/eslint/eslint/commit/861c6da2bd2796414e6eed782155ec34e2ed6344) fix: correct `ESLint` typings ([#&#8203;20122](https://github.com/eslint/eslint/issues/20122)) (Pixel998)

##### Documentation

- [`b950359`](https://github.com/eslint/eslint/commit/b950359c5f39085483c3137a6a160e582ef32007) docs: fix typos across the docs ([#&#8203;20182](https://github.com/eslint/eslint/issues/20182)) (루밀LuMir)
- [`42498a2`](https://github.com/eslint/eslint/commit/42498a27981d50750dd15ae8660dbe85c4f4587c) docs: improve ToC accessibility by hiding non-semantic character ([#&#8203;20181](https://github.com/eslint/eslint/issues/20181)) (Percy Ma)
- [`29ea092`](https://github.com/eslint/eslint/commit/29ea092b93608756350b1e9c5a4f29c8a49264ab) docs: Update README (GitHub Actions Bot)
- [`5c97a04`](https://github.com/eslint/eslint/commit/5c97a04578e6280c2395f642c2d8d6bdf30eec18) docs: show `availableUntil` in deprecated rule banner ([#&#8203;20170](https://github.com/eslint/eslint/issues/20170)) (Pixel998)
- [`90a71bf`](https://github.com/eslint/eslint/commit/90a71bf5024a86fc232cd2e05f96811e2a18fd0f) docs: update `README` files to add badge and instructions ([#&#8203;20115](https://github.com/eslint/eslint/issues/20115)) (루밀LuMir)
- [`1603ae1`](https://github.com/eslint/eslint/commit/1603ae1526d9b6f557c7d5534a4f40f46842edd6) docs: update references from `master` to `main` ([#&#8203;20153](https://github.com/eslint/eslint/issues/20153)) (루밀LuMir)

##### Chores

- [`afe8a13`](https://github.com/eslint/eslint/commit/afe8a1346958242031fea66fdfbb239e8bf408b7) chore: update `@eslint/js` dependency to version 9.37.0 ([#&#8203;20183](https://github.com/eslint/eslint/issues/20183)) (Francesco Trotta)
- [`abee4ca`](https://github.com/eslint/eslint/commit/abee4ca1fa10da733b1cc4a7d5e765b912a9de82) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`fc9381f`](https://github.com/eslint/eslint/commit/fc9381f6ca57b824e82d118c14631c17bea79d7e) chore: fix typos in comments ([#&#8203;20175](https://github.com/eslint/eslint/issues/20175)) (overlookmotel)
- [`e1574a2`](https://github.com/eslint/eslint/commit/e1574a22d38fd7e1891f86f8db0b09053f8963cb) chore: unpin jiti ([#&#8203;20173](https://github.com/eslint/eslint/issues/20173)) (renovate\[bot])
- [`e1ac05e`](https://github.com/eslint/eslint/commit/e1ac05e2fae779e738f85bd47dda1cc2b7099346) refactor: mark `ESLint.findConfigFile()` as `async`, add missing docs ([#&#8203;20157](https://github.com/eslint/eslint/issues/20157)) (Pixel998)
- [`347906d`](https://github.com/eslint/eslint/commit/347906d627c53bf45d63ba831d2fd2b83fb0a749) chore: update eslint ([#&#8203;20149](https://github.com/eslint/eslint/issues/20149)) (renovate\[bot])
- [`0cb5897`](https://github.com/eslint/eslint/commit/0cb5897e24059bacadb8d2e6458184904759fda1) test: remove tmp dir created for circular fixes in multithread mode test ([#&#8203;20146](https://github.com/eslint/eslint/issues/20146)) (Milos Djermanovic)
- [`bb99566`](https://github.com/eslint/eslint/commit/bb995665e32b3a958e78006c9fd75744c5604f1b) ci: pin `jiti` to version 2.5.1 ([#&#8203;20151](https://github.com/eslint/eslint/issues/20151)) (Pixel998)
- [`177f669`](https://github.com/eslint/eslint/commit/177f669adc0f96d14ae1a71cde7786f327515863) perf: improve worker count calculation for `"auto"` concurrency ([#&#8203;20067](https://github.com/eslint/eslint/issues/20067)) (Francesco Trotta)
- [`448b57b`](https://github.com/eslint/eslint/commit/448b57bca3406ee12c4e44e9298fc0c99d3ee10c) chore: Mark deprecated formatting rules as available until v11.0.0 ([#&#8203;20144](https://github.com/eslint/eslint/issues/20144)) (Milos Djermanovic)

### [`v9.36.0`](https://github.com/eslint/eslint/releases/tag/v9.36.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.35.0...v9.36.0)

##### Features

- [`47afcf6`](https://github.com/eslint/eslint/commit/47afcf668df65eac68d7b04145d037037010a076) feat: correct `preserve-caught-error` edge cases ([#&#8203;20109](https://github.com/eslint/eslint/issues/20109)) (Francesco Trotta)

##### Bug Fixes

- [`75b74d8`](https://github.com/eslint/eslint/commit/75b74d865d3b8e7fa3bcf5ad29f4bf6d18d1310e) fix: add missing rule option types ([#&#8203;20127](https://github.com/eslint/eslint/issues/20127)) (ntnyq)
- [`1c0d850`](https://github.com/eslint/eslint/commit/1c0d85049e3f30a8809340c1abc881c63b7812ff) fix: update `eslint-all.js` to use `Object.freeze` for `rules` object ([#&#8203;20116](https://github.com/eslint/eslint/issues/20116)) (루밀LuMir)
- [`7d61b7f`](https://github.com/eslint/eslint/commit/7d61b7fadc9c5c6f2b131e37e8a3cffa5aae8ee6) fix: add missing scope types to `Scope.type` ([#&#8203;20110](https://github.com/eslint/eslint/issues/20110)) (Pixel998)
- [`7a670c3`](https://github.com/eslint/eslint/commit/7a670c301b58609017ce8cfda99ee81f95de3898) fix: correct rule option typings in `rules.d.ts` ([#&#8203;20084](https://github.com/eslint/eslint/issues/20084)) (Pixel998)

##### Documentation

- [`b73ab12`](https://github.com/eslint/eslint/commit/b73ab12acd3e87f8d8173cda03499f6cd1f26db6) docs: update examples to use `defineConfig` ([#&#8203;20131](https://github.com/eslint/eslint/issues/20131)) (sethamus)
- [`31d9392`](https://github.com/eslint/eslint/commit/31d93926990fba536846ec727d7a2625fc844649) docs: fix typos ([#&#8203;20118](https://github.com/eslint/eslint/issues/20118)) (Pixel998)
- [`c7f861b`](https://github.com/eslint/eslint/commit/c7f861b3f8c1ac961b4cd4f22483798f3324c62b) docs: Update README (GitHub Actions Bot)
- [`6b0c08b`](https://github.com/eslint/eslint/commit/6b0c08b106aa66f2e9fa484282f0eb63c64a1215) docs: Update README (GitHub Actions Bot)
- [`91f97c5`](https://github.com/eslint/eslint/commit/91f97c50468fbdc089c91e99c2ea0fe821911df2) docs: Update README (GitHub Actions Bot)

##### Chores

- [`12411e8`](https://github.com/eslint/eslint/commit/12411e8d450ed26a5f7cca6a78ec05323c9323e8) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).36.0 ([#&#8203;20139](https://github.com/eslint/eslint/issues/20139)) (Milos Djermanovic)
- [`488cba6`](https://github.com/eslint/eslint/commit/488cba6b391b97b2cfc74bbb46fdeacb1361949e) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`bac82a2`](https://github.com/eslint/eslint/commit/bac82a2a9c80a3f69087852758d7737aea371f09) ci: simplify renovate configuration ([#&#8203;19907](https://github.com/eslint/eslint/issues/19907)) (唯然)
- [`c00bb37`](https://github.com/eslint/eslint/commit/c00bb37d62c1bcc0a37f094371be9c40064009f1) ci: bump actions/labeler from 5 to 6 ([#&#8203;20090](https://github.com/eslint/eslint/issues/20090)) (dependabot\[bot])
- [`fee751d`](https://github.com/eslint/eslint/commit/fee751dc8aeab54547af4538332ea5c069ef28b6) refactor: use `defaultOptions` in rules ([#&#8203;20121](https://github.com/eslint/eslint/issues/20121)) (Pixel998)
- [`1ace67d`](https://github.com/eslint/eslint/commit/1ace67d9f7903adc3d3f09868aa05b673e7d3f3b) chore: update example to use `defineConfig` ([#&#8203;20111](https://github.com/eslint/eslint/issues/20111)) (루밀LuMir)
- [`4821963`](https://github.com/eslint/eslint/commit/4821963bf765532069c49e9da9ecbe9485b073fc) test: add missing loc information to error objects in rule tests ([#&#8203;20112](https://github.com/eslint/eslint/issues/20112)) (루밀LuMir)
- [`b42c42e`](https://github.com/eslint/eslint/commit/b42c42e7cd3ac9ee1b5a15f16ff25b325d0482e4) chore: disallow use of deprecated `type` property in core rule tests ([#&#8203;20094](https://github.com/eslint/eslint/issues/20094)) (Milos Djermanovic)
- [`7bb498d`](https://github.com/eslint/eslint/commit/7bb498d720dcd054cc042ca4b60b138d8485f07c) test: remove deprecated `type` property from core rule tests ([#&#8203;20093](https://github.com/eslint/eslint/issues/20093)) (Pixel998)
- [`e10cf2a`](https://github.com/eslint/eslint/commit/e10cf2ab42fe5b481d980dc652f7504414747733) ci: bump actions/setup-node from 4 to 5 ([#&#8203;20089](https://github.com/eslint/eslint/issues/20089)) (dependabot\[bot])
- [`5cb0ce4`](https://github.com/eslint/eslint/commit/5cb0ce48ef6cfbbe6d09131c33a53f9d66fe9bd4) refactor: use `meta.defaultOptions` in `preserve-caught-error` ([#&#8203;20080](https://github.com/eslint/eslint/issues/20080)) (Pixel998)
- [`f9f7cb5`](https://github.com/eslint/eslint/commit/f9f7cb578dced3c14f635e17c75aa6744d291f4d) chore: package.json update for eslint-config-eslint release (Jenkins)
- [`81764b2`](https://github.com/eslint/eslint/commit/81764b298065a328038cd067bc8fedef97e57500) chore: update `eslint` peer dependency in `eslint-config-eslint` ([#&#8203;20079](https://github.com/eslint/eslint/issues/20079)) (Milos Djermanovic)

### [`v9.35.0`](https://github.com/eslint/eslint/releases/tag/v9.35.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.34.0...v9.35.0)

##### Features

- [`42761fa`](https://github.com/eslint/eslint/commit/42761fa7c872fb9e14c144b692af6967b3662082) feat: implement suggestions for no-empty-function ([#&#8203;20057](https://github.com/eslint/eslint/issues/20057)) (jaymarvelz)
- [`102f444`](https://github.com/eslint/eslint/commit/102f44442ac9bf1fcd4ba6ab9fae43ce09199df6) feat: implement suggestions for no-empty-static-block ([#&#8203;20056](https://github.com/eslint/eslint/issues/20056)) (jaymarvelz)
- [`e51ffff`](https://github.com/eslint/eslint/commit/e51ffff737ca245b3a1d115cb11e1c99737249a3) feat: add `preserve-caught-error` rule ([#&#8203;19913](https://github.com/eslint/eslint/issues/19913)) (Amnish Singh Arora)

##### Bug Fixes

- [`10e7ae2`](https://github.com/eslint/eslint/commit/10e7ae23e30ea0834d9fdeb3a2a1db8103c36cd2) fix: update uncloneable options error message ([#&#8203;20059](https://github.com/eslint/eslint/issues/20059)) (soda-sorcery)
- [`bfa4601`](https://github.com/eslint/eslint/commit/bfa46013e7ea9a522c02f72250fa07160f96a6b8) fix: ignore empty switch statements with comments in no-empty rule ([#&#8203;20045](https://github.com/eslint/eslint/issues/20045)) (jaymarvelz)
- [`dfd11de`](https://github.com/eslint/eslint/commit/dfd11deb24fc733faa5db751a2f615eb04e48b15) fix: add `before` and `after` to test case types ([#&#8203;20049](https://github.com/eslint/eslint/issues/20049)) (Francesco Trotta)
- [`dabbe95`](https://github.com/eslint/eslint/commit/dabbe95c39671c5fa272da012ee1432aa088650f) fix: correct types for `no-restricted-imports` rule ([#&#8203;20034](https://github.com/eslint/eslint/issues/20034)) (Milos Djermanovic)
- [`ea789c7`](https://github.com/eslint/eslint/commit/ea789c7dd234c1a6be499a4644dd0f5c97615972) fix: no-loss-of-precision false positive with uppercase exponent ([#&#8203;20032](https://github.com/eslint/eslint/issues/20032)) (sethamus)

##### Documentation

- [`d265515`](https://github.com/eslint/eslint/commit/d265515642f65246bcd45c17979f67c2afb12f95) docs: improve phrasing - "if" → "even if" from getting-started section ([#&#8203;20074](https://github.com/eslint/eslint/issues/20074)) (jjangga0214)
- [`a355a0e`](https://github.com/eslint/eslint/commit/a355a0e5b2e6a47cda099b31dc7d112cfb5c4315) docs: invert comparison logic for example in `no-var` doc page ([#&#8203;20064](https://github.com/eslint/eslint/issues/20064)) (OTonGitHub)
- [`5082fc2`](https://github.com/eslint/eslint/commit/5082fc206de6946d9d4c20e57301f78839b3b9f2) docs: Update README (GitHub Actions Bot)
- [`99cfd7e`](https://github.com/eslint/eslint/commit/99cfd7e056e1703941c9eb8ca1ae7fdb1987ba9d) docs: add missing "the" in rule deprecation docs ([#&#8203;20050](https://github.com/eslint/eslint/issues/20050)) (Josh Goldberg ✨)
- [`6ad8973`](https://github.com/eslint/eslint/commit/6ad8973e5d3c94b8e100b7266f55f8eb0757eb00) docs: update `--no-ignore` and `--ignore-pattern` documentation ([#&#8203;20036](https://github.com/eslint/eslint/issues/20036)) (Francesco Trotta)
- [`8033b19`](https://github.com/eslint/eslint/commit/8033b195299a1eaa4a0ed6553d9e034a457bb577) docs: add documentation for `--no-config-lookup` ([#&#8203;20033](https://github.com/eslint/eslint/issues/20033)) (Francesco Trotta)

##### Chores

- [`da87f2f`](https://github.com/eslint/eslint/commit/da87f2fe792cab5b69b62bf5c15e69ab4f433087) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).35.0 ([#&#8203;20077](https://github.com/eslint/eslint/issues/20077)) (Milos Djermanovic)
- [`af2a087`](https://github.com/eslint/eslint/commit/af2a0870fdc646091d027516601888923e5bc202) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`7055764`](https://github.com/eslint/eslint/commit/70557649e3111c55d8cddf678b6c4079aa6f0ccc) test: remove `tests/lib/eslint/eslint.config.js` ([#&#8203;20065](https://github.com/eslint/eslint/issues/20065)) (Milos Djermanovic)
- [`84ffb96`](https://github.com/eslint/eslint/commit/84ffb9680b15e45bfd8c8a5db4731576ddd16fc4) chore: update `@eslint-community/eslint-utils` ([#&#8203;20069](https://github.com/eslint/eslint/issues/20069)) (Francesco Trotta)
- [`d5ef939`](https://github.com/eslint/eslint/commit/d5ef9397150cc178e1f9891c3ff49ac4871ec786) refactor: remove deprecated `context.parserOptions` usage across rules ([#&#8203;20060](https://github.com/eslint/eslint/issues/20060)) (sethamus)
- [`1b3881d`](https://github.com/eslint/eslint/commit/1b3881d7e859bec9589e39888656c33c914a8302) chore: remove redundant word ([#&#8203;20058](https://github.com/eslint/eslint/issues/20058)) (pxwanglu)

### [`v9.34.0`](https://github.com/eslint/eslint/releases/tag/v9.34.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.33.0...v9.34.0)

##### Features

- [`0bb777a`](https://github.com/eslint/eslint/commit/0bb777a82b533df595cd520d9c89d291efa14a33) feat: multithread linting ([#&#8203;19794](https://github.com/eslint/eslint/issues/19794)) (Francesco Trotta)
- [`43a5f9e`](https://github.com/eslint/eslint/commit/43a5f9e36f1aade16f81fc49ef4b333660faadab) feat: add eslint-plugin-regexp to eslint-config-eslint base config ([#&#8203;19951](https://github.com/eslint/eslint/issues/19951)) (Pixel998)

##### Bug Fixes

- [`9b89903`](https://github.com/eslint/eslint/commit/9b8990397b2d2ed70771bb0e2070261a0c41782c) fix: default value of accessor-pairs option in rule.d.ts file ([#&#8203;20024](https://github.com/eslint/eslint/issues/20024)) (Tanuj Kanti)
- [`6c07420`](https://github.com/eslint/eslint/commit/6c074206ae0eae4816197a57648b415832a20e1d) fix: fix spurious failure in neostandard integration test ([#&#8203;20023](https://github.com/eslint/eslint/issues/20023)) (Kirk Waiblinger)
- [`676f4ac`](https://github.com/eslint/eslint/commit/676f4acaaed6e4f6ffe0c2e21272d4702b311a7b) fix: allow scientific notation with trailing zeros matching exponent ([#&#8203;20002](https://github.com/eslint/eslint/issues/20002)) (Sweta Tanwar)

##### Documentation

- [`0b4a590`](https://github.com/eslint/eslint/commit/0b4a590333b73a21b9e0ddc98462680e09fe3232) docs: make rulesdir deprecation clearer ([#&#8203;20018](https://github.com/eslint/eslint/issues/20018)) (Domenico Gemoli)
- [`327c672`](https://github.com/eslint/eslint/commit/327c67256fbeaf9d5e365802c2a11f5d32a16522) docs: Update README (GitHub Actions Bot)
- [`bf26229`](https://github.com/eslint/eslint/commit/bf2622991f5b892610a8c3343ff16519e5fd7a79) docs: Fix typo in core-concepts/index.md ([#&#8203;20009](https://github.com/eslint/eslint/issues/20009)) (Tobias Hernstig)
- [`2309327`](https://github.com/eslint/eslint/commit/2309327554acbf011f0d17e7b36fdd68e43adf3a) docs: fix typo in the "Configuring Rules" section ([#&#8203;20001](https://github.com/eslint/eslint/issues/20001)) (ghazi-git)
- [`2b87e21`](https://github.com/eslint/eslint/commit/2b87e21321422c120c2248dae25cac7f9eec0f29) docs: \[no-else-return] clarify sample code. ([#&#8203;19991](https://github.com/eslint/eslint/issues/19991)) (Yuki Takada (Yukinosuke Takada))
- [`c36570c`](https://github.com/eslint/eslint/commit/c36570c6657c2a92dbb4f09a8166a4d9909a091a) docs: Update README (GitHub Actions Bot)

##### Chores

- [`f19ad94`](https://github.com/eslint/eslint/commit/f19ad9493e0ca04c2c1455fbb3402eaad993a8be) chore: upgrade to `@eslint/js@9.34.0` ([#&#8203;20030](https://github.com/eslint/eslint/issues/20030)) (Francesco Trotta)
- [`b48fa20`](https://github.com/eslint/eslint/commit/b48fa20034e53bc65d1a58f3d834705e3087b00c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`4bce8a2`](https://github.com/eslint/eslint/commit/4bce8a250262ec47207bc260581f979e40c86bda) chore: package.json update for eslint-config-eslint release (Jenkins)
- [`0c9999c`](https://github.com/eslint/eslint/commit/0c9999c2a682151cf13bb3a4f8916930678c2f9b) refactor: prefer default options in `grouped-accessor-pairs` ([#&#8203;20028](https://github.com/eslint/eslint/issues/20028)) (루밀LuMir)
- [`d503f19`](https://github.com/eslint/eslint/commit/d503f1981354c7b86e423879846c61e0405af8fe) ci: fix `stale.yml` ([#&#8203;20010](https://github.com/eslint/eslint/issues/20010)) (루밀LuMir)
- [`e2dc67d`](https://github.com/eslint/eslint/commit/e2dc67d8b028147de4da35c64efe1d74c9f6a883) ci: centralize `stale.yml` ([#&#8203;19994](https://github.com/eslint/eslint/issues/19994)) (루밀LuMir)
- [`7093cb8`](https://github.com/eslint/eslint/commit/7093cb8f590ec2a1b5364d7b5687e9b5f4e06f8a) ci: bump actions/checkout from 4 to 5 ([#&#8203;20005](https://github.com/eslint/eslint/issues/20005)) (dependabot\[bot])

### [`v9.33.0`](https://github.com/eslint/eslint/releases/tag/v9.33.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.32.0...v9.33.0)

##### Features

- [`e07820e`](https://github.com/eslint/eslint/commit/e07820e66fd1fceaf2620dc931154955a706cc0f) feat: add global object access detection to no-restricted-globals ([#&#8203;19939](https://github.com/eslint/eslint/issues/19939)) (sethamus)
- [`90b050e`](https://github.com/eslint/eslint/commit/90b050ec11557cab08b6be9f05fabf97dba6a63d) feat: support explicit resource management in `one-var` ([#&#8203;19941](https://github.com/eslint/eslint/issues/19941)) (Sweta Tanwar)

##### Bug Fixes

- [`732433c`](https://github.com/eslint/eslint/commit/732433c4fb023f45154b825cdc8cdaf1979d4336) fix: allow any type for `meta.docs.recommended` in custom rules ([#&#8203;19995](https://github.com/eslint/eslint/issues/19995)) (Francesco Trotta)
- [`e8a6914`](https://github.com/eslint/eslint/commit/e8a6914a249d036e12494004e586b2a2b6e104d1) fix: Fixed potential bug in check-emfile-handling.js ([#&#8203;19975](https://github.com/eslint/eslint/issues/19975)) (諏訪原慶斗)

##### Documentation

- [`34f0723`](https://github.com/eslint/eslint/commit/34f0723e2d0faf8ac8dc95ec56e6d181bd6b67f2) docs: playground button for TypeScript code example ([#&#8203;19671](https://github.com/eslint/eslint/issues/19671)) (Tanuj Kanti)
- [`dc942a4`](https://github.com/eslint/eslint/commit/dc942a47daf41228d69072c52f1be20789426862) docs: Update README (GitHub Actions Bot)
- [`5a4b6f7`](https://github.com/eslint/eslint/commit/5a4b6f74320b72f9b6ad8b30f5c463b2b71315af) docs: Update no-multi-assign.md ([#&#8203;19979](https://github.com/eslint/eslint/issues/19979)) (Yuki Takada (Yukinosuke Takada))
- [`247e156`](https://github.com/eslint/eslint/commit/247e15698e34919a0cd411842fb3e14ac7a8f1ba) docs: add missing let declarations in `no-plusplus` ([#&#8203;19980](https://github.com/eslint/eslint/issues/19980)) (Yuki Takada (Yukinosuke Takada))
- [`0d17242`](https://github.com/eslint/eslint/commit/0d17242b3c25c2ddf8363f4560641acd1ae82ca9) docs: Update README (GitHub Actions Bot)
- [`fa20b9d`](https://github.com/eslint/eslint/commit/fa20b9db8ff90ea9f0527118114dda17c656d095) docs: Clarify when to open an issue for a MR ([#&#8203;19974](https://github.com/eslint/eslint/issues/19974)) (Nicholas C. Zakas)

##### Build Related

- [`27fa865`](https://github.com/eslint/eslint/commit/27fa86551bd173387e29a139293de78b0e14f0f3) build: use `ESLint` class to generate formatter examples ([#&#8203;19972](https://github.com/eslint/eslint/issues/19972)) (Milos Djermanovic)

##### Chores

- [`4258046`](https://github.com/eslint/eslint/commit/425804602ecb9ee5f54d1c38a473cf20538420c5) chore: update dependency [@&#8203;eslint/js](https://github.com/eslint/js) to v9.33.0 ([#&#8203;19998](https://github.com/eslint/eslint/issues/19998)) (renovate\[bot])
- [`ad28371`](https://github.com/eslint/eslint/commit/ad283717ed4764a171120ca7c6cba82a78fa024c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`06a22f1`](https://github.com/eslint/eslint/commit/06a22f154c08ea044b3172b357b226d34dfefc6a) test: resolve flakiness in --mcp flag test ([#&#8203;19993](https://github.com/eslint/eslint/issues/19993)) (Pixel998)
- [`54920ed`](https://github.com/eslint/eslint/commit/54920ed229693f23650dace6e567bf44413aaf98) test: switch to `Linter.Config` in `ESLintRules` type tests ([#&#8203;19977](https://github.com/eslint/eslint/issues/19977)) (Francesco Trotta)

### [`v9.32.0`](https://github.com/eslint/eslint/releases/tag/v9.32.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.31.0...v9.32.0)

#### Features

- [`1245000`](https://github.com/eslint/eslint/commit/1245000c5a81954d42f0c7eb670efe450c3bbad5) feat: support explicit resource management in core rules ([#&#8203;19828](https://github.com/eslint/eslint/issues/19828)) (fnx)
- [`0e957a7`](https://github.com/eslint/eslint/commit/0e957a7b5528f375a51e7c1a2fd1b03cdcd2af2d) feat: support typescript types in accessor rules ([#&#8203;19882](https://github.com/eslint/eslint/issues/19882)) (fnx)

#### Bug Fixes

- [`960fd40`](https://github.com/eslint/eslint/commit/960fd40dfd204af30726b49b6bec714fe49a606e) fix: Upgrade [@&#8203;eslint/js](https://github.com/eslint/js) ([#&#8203;19971](https://github.com/eslint/eslint/issues/19971)) (Nicholas C. Zakas)
- [`bbf23fa`](https://github.com/eslint/eslint/commit/bbf23fa2f1c6058f6cb5c9f2f32460a15e75e596) fix: Refactor reporting into FileReport ([#&#8203;19877](https://github.com/eslint/eslint/issues/19877)) (Nicholas C. Zakas)
- [`d498887`](https://github.com/eslint/eslint/commit/d4988872f375890bf677ce1a1d92a505085b51fa) fix: bump [@&#8203;eslint/plugin-kit](https://github.com/eslint/plugin-kit) to 0.3.4 to resolve vulnerability ([#&#8203;19965](https://github.com/eslint/eslint/issues/19965)) (Milos Djermanovic)
- [`f46fc6c`](https://github.com/eslint/eslint/commit/f46fc6c137c951bc73cf3bd9446053c1b11f769b) fix: report only global references in no-implied-eval ([#&#8203;19932](https://github.com/eslint/eslint/issues/19932)) (Nitin Kumar)
- [`7863d26`](https://github.com/eslint/eslint/commit/7863d26b7cfb03a81ec86f93439757ff60bf6afb) fix: remove outdated types in `ParserOptions.ecmaFeatures` ([#&#8203;19944](https://github.com/eslint/eslint/issues/19944)) (ntnyq)
- [`3173305`](https://github.com/eslint/eslint/commit/317330552e2d276221c7f2dd9c1516ad8b41cc3c) fix: update execScript message in no-implied-eval rule ([#&#8203;19937](https://github.com/eslint/eslint/issues/19937)) (TKDev7)

#### Documentation

- [`86e7426`](https://github.com/eslint/eslint/commit/86e7426e4463ca49ffa5c82e825ecb6aa19ca8a0) docs: Update README (GitHub Actions Bot)

#### Chores

- [`50de1ce`](https://github.com/eslint/eslint/commit/50de1ced9df2b1ee48ee6843c8cfe0f5d8edbc27) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`74f01a3`](https://github.com/eslint/eslint/commit/74f01a3f5905aaa0902837ced2425209c09c048f) ci: unpin `jiti` to version `^2.5.1` ([#&#8203;19970](https://github.com/eslint/eslint/issues/19970)) (루밀LuMir)
- [`2ab1381`](https://github.com/eslint/eslint/commit/2ab13813a7e7f3014c35490b351447ec43229951) ci: pin `jiti` to version 2.4.2 ([#&#8203;19964](https://github.com/eslint/eslint/issues/19964)) (Francesco Trotta)
- [`b7f7545`](https://github.com/eslint/eslint/commit/b7f75454695079f54b77fcdc9ebe3b9199d5ad30) test: switch to flat config mode in `SourceCode` tests ([#&#8203;19953](https://github.com/eslint/eslint/issues/19953)) (Milos Djermanovic)
- [`f5a35e3`](https://github.com/eslint/eslint/commit/f5a35e3b7cee17cd31fc02c24c3e74b42ee202bc) test: switch to flat config mode in eslint-fuzzer ([#&#8203;19960](https://github.com/eslint/eslint/issues/19960)) (Milos Djermanovic)
- [`e22af8c`](https://github.com/eslint/eslint/commit/e22af8c42d622d8d912ee7bedf49bf4283247fdc) refactor: use `CustomRuleDefinitionType` in `JSRuleDefinition` ([#&#8203;19949](https://github.com/eslint/eslint/issues/19949)) (Francesco Trotta)
- [`e855717`](https://github.com/eslint/eslint/commit/e85571730f1360464b7ee00695c678d551f9c643) chore: switch performance tests to hyperfine ([#&#8203;19919](https://github.com/eslint/eslint/issues/19919)) (Francesco Trotta)
- [`2f73a23`](https://github.com/eslint/eslint/commit/2f73a23655092a41780859ffe0a07c44a2f1b5f5) test: switch to flat config mode in `ast-utils` tests ([#&#8203;19948](https://github.com/eslint/eslint/issues/19948)) (Milos Djermanovic)
- [`c565a53`](https://github.com/eslint/eslint/commit/c565a530f50c96dacd44e096f7d531b073aa4dc7) chore: exclude `further_reading_links.json` from Prettier formatting ([#&#8203;19943](https://github.com/eslint/eslint/issues/19943)) (Milos Djermanovic)

### [`v9.31.0`](https://github.com/eslint/eslint/releases/tag/v9.31.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.30.1...v9.31.0)

#### Features

- [`35cf44c`](https://github.com/eslint/eslint/commit/35cf44c22e36b1554486e7a75c870e86c10b83f8) feat: output full actual location in rule tester if different ([#&#8203;19904](https://github.com/eslint/eslint/issues/19904)) (ST-DDT)
- [`a6a6325`](https://github.com/eslint/eslint/commit/a6a63259de6cb5642f69c7be429554bbcedca4c0) feat: support explicit resource management in `no-loop-func` ([#&#8203;19895](https://github.com/eslint/eslint/issues/19895)) (Milos Djermanovic)
- [`4682cdc`](https://github.com/eslint/eslint/commit/4682cdc6960279ee17f23899fbab6f58d881eadf) feat: support explicit resource management in `no-undef-init` ([#&#8203;19894](https://github.com/eslint/eslint/issues/19894)) (Milos Djermanovic)
- [`5848216`](https://github.com/eslint/eslint/commit/58482165eaf597cc5c58216a956c301ae87520b3) feat: support explicit resource management in `init-declarations` ([#&#8203;19893](https://github.com/eslint/eslint/issues/19893)) (Milos Djermanovic)
- [`bb370b8`](https://github.com/eslint/eslint/commit/bb370b8e79f65ee32d9d89ecf249fb74a141ad22) feat: support explicit resource management in `no-const-assign` ([#&#8203;19892](https://github.com/eslint/eslint/issues/19892)) (Milos Djermanovic)

#### Bug Fixes

- [`07fac6c`](https://github.com/eslint/eslint/commit/07fac6cafa0426b4d1ea12d9001f3955f19b286d) fix: retry on EMFILE when writing autofix results ([#&#8203;19926](https://github.com/eslint/eslint/issues/19926)) (TKDev7)
- [`28cc7ab`](https://github.com/eslint/eslint/commit/28cc7abbb72b29b1cac6fc4253646a7839586064) fix: Remove incorrect RuleContext types ([#&#8203;19910](https://github.com/eslint/eslint/issues/19910)) (Nicholas C. Zakas)

#### Documentation

- [`664cb44`](https://github.com/eslint/eslint/commit/664cb44ab03785bd200a792607a7e20faa2d4b28) docs: Update README (GitHub Actions Bot)
- [`40dbe2a`](https://github.com/eslint/eslint/commit/40dbe2a43f83d366e9026faec70293512fb61ca2) docs: fix mismatch between `globalIgnores()` code and text ([#&#8203;19914](https://github.com/eslint/eslint/issues/19914)) (MaoShizhong)
- [`5a0069d`](https://github.com/eslint/eslint/commit/5a0069d60815246cf24e1c96125540792c2507ef) docs: Update README (GitHub Actions Bot)
- [`fef04b5`](https://github.com/eslint/eslint/commit/fef04b5c7fea99362d67b31b8e98cd4914020ed3) docs: Update working on issues info ([#&#8203;19902](https://github.com/eslint/eslint/issues/19902)) (Nicholas C. Zakas)

#### Chores

- [`3ddd454`](https://github.com/eslint/eslint/commit/3ddd454c1c73294e5af7905d60d03fac162f1b3e) chore: upgrade to `@eslint/js@9.31.0` ([#&#8203;19935](https://github.com/eslint/eslint/issues/19935)) (Francesco Trotta)
- [`d5054e5`](https://github.com/eslint/eslint/commit/d5054e5454a537e9ade238c768c262c6c592cbc1) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`0f4a378`](https://github.com/eslint/eslint/commit/0f4a3781fe7c11fad7b206c3c694655486ddd187) chore: update eslint ([#&#8203;19933](https://github.com/eslint/eslint/issues/19933)) (renovate\[bot])
- [`76c2340`](https://github.com/eslint/eslint/commit/76c2340c368f96db77439b5cd1df0196cc39bf3e) chore: bump mocha to v11 ([#&#8203;19917](https://github.com/eslint/eslint/issues/19917)) (루밀LuMir)

### [`v9.30.1`](https://github.com/eslint/eslint/releases/tag/v9.30.1)

[Compare Source](https://github.com/eslint/eslint/compare/v9.30.0...v9.30.1)

#### Bug Fixes

- [`e91bb87`](https://github.com/eslint/eslint/commit/e91bb870f8c6e38baa508f18048cd2a2d04b8b9c) fix: allow separate default and named type imports ([#&#8203;19899](https://github.com/eslint/eslint/issues/19899)) (xbinaryx)

#### Documentation

- [`ab7c625`](https://github.com/eslint/eslint/commit/ab7c62598a9fca498e495d45029ae92fd5fb9bf3) docs: Update README (GitHub Actions Bot)
- [`dae1e5b`](https://github.com/eslint/eslint/commit/dae1e5bb27db0e846efbe3026210013b42817838) docs: update jsdoc's link ([#&#8203;19896](https://github.com/eslint/eslint/issues/19896)) (JamesVanWaza)

#### Chores

- [`b035f74`](https://github.com/eslint/eslint/commit/b035f747c6e6d1c7a299c90b0ed0b8109cf24a53) chore: upgrade to `@eslint/js@9.30.1` ([#&#8203;19906](https://github.com/eslint/eslint/issues/19906)) (Francesco Trotta)
- [`b3dbc16`](https://github.com/eslint/eslint/commit/b3dbc16563cb7036d75edff9814e17053a645321) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)

### [`v9.30.0`](https://github.com/eslint/eslint/releases/tag/v9.30.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.29.0...v9.30.0)

#### Features

- [`52a5fca`](https://github.com/eslint/eslint/commit/52a5fcaa4e0bb4e55c014c20ed47d6c93b107635) feat: Support `basePath` property in config objects ([#&#8203;19879](https://github.com/eslint/eslint/issues/19879)) (Milos Djermanovic)
- [`4ab4482`](https://github.com/eslint/eslint/commit/4ab44823df4d4b47d3650da949077a0551e7579e) feat: add `allowSeparateTypeImports` option to `no-duplicate-imports` ([#&#8203;19872](https://github.com/eslint/eslint/issues/19872)) (sethamus)
- [`b8a7e7a`](https://github.com/eslint/eslint/commit/b8a7e7aeb5f0ed2e1670771ab4dda6fd723d96eb) feat: throw error when column is negative in `getIndexFromLoc` ([#&#8203;19831](https://github.com/eslint/eslint/issues/19831)) (루밀LuMir)

#### Bug Fixes

- [`6a0f164`](https://github.com/eslint/eslint/commit/6a0f164543bf8461d6a27a740c9e08aa77cbe42d) fix: handle `null` type `loc` in `getIndexFromLoc` method ([#&#8203;19862](https://github.com/eslint/eslint/issues/19862)) (루밀LuMir)
- [`3fbcd70`](https://github.com/eslint/eslint/commit/3fbcd704a0b2aef2a6c1fc34d2bc4b35f6425067) fix: update error message for `no-restricted-properties` ([#&#8203;19855](https://github.com/eslint/eslint/issues/19855)) (Tanuj Kanti)
- [`7ef4cf7`](https://github.com/eslint/eslint/commit/7ef4cf76610d42727a404e495ac6d47868cf5040) fix: remove unnecessary semicolon from fixes ([#&#8203;19857](https://github.com/eslint/eslint/issues/19857)) (Francesco Trotta)
- [`7dabc38`](https://github.com/eslint/eslint/commit/7dabc38a8406d470fb2389eec2f0ad1ad214173e) fix: use `process.version` in `--env-info` ([#&#8203;19865](https://github.com/eslint/eslint/issues/19865)) (TKDev7)

#### Documentation

- [`8662ed1`](https://github.com/eslint/eslint/commit/8662ed1f6debc358e22812b145e117aa4a907d78) docs: adopt eslint-stylistic sub packages related changes ([#&#8203;19887](https://github.com/eslint/eslint/issues/19887)) (ntnyq)
- [`20158b0`](https://github.com/eslint/eslint/commit/20158b09db3430cf00b202ba8c25ce874bbaf00a) docs: typo in comment for unused variables handling ([#&#8203;19870](https://github.com/eslint/eslint/issues/19870)) (leopardracer)
- [`ebfb5b4`](https://github.com/eslint/eslint/commit/ebfb5b46136c4d737c9783333e3057421d1a0bef) docs: Fixed Typo in configuration-files.md ([#&#8203;19873](https://github.com/eslint/eslint/issues/19873)) (0-20)
- [`4112fd0`](https://github.com/eslint/eslint/commit/4112fd09531092e9651e9981205bcd603dc56acf) docs: clarify that boolean is still allowed for rule `meta.deprecated` ([#&#8203;19866](https://github.com/eslint/eslint/issues/19866)) (Bryan Mishkin)

#### Chores

- [`2b6491c`](https://github.com/eslint/eslint/commit/2b6491cd4b8eec44d4a3f8dea1b71151e8dd0230) chore: upgrade to `@eslint/js@9.30.0` ([#&#8203;19889](https://github.com/eslint/eslint/issues/19889)) (Francesco Trotta)
- [`5a5d526`](https://github.com/eslint/eslint/commit/5a5d5261037fdf84a91f2f22d3726d58572453f4) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`eaf8a41`](https://github.com/eslint/eslint/commit/eaf8a418af32b3190494e4a2284533353c28ccfa) chore: Correct typos in linter tests ([#&#8203;19878](https://github.com/eslint/eslint/issues/19878)) (kilavvy)

</details>

<details>
<summary>mui/material-ui (@&#8203;mui/icons-material)</summary>

### [`v7.3.6`](https://github.com/mui/material-ui/blob/HEAD/CHANGELOG.md#736)

[Compare Source](https://github.com/mui/material-ui/compare/v7.3.5...v7.3.6)

<!-- generated comparing v7.3.5..master -->

*Dec 3, 2025*

A big thanks to the 22 contributors who made this release possible.

##### [@&#8203;mui/material](https://github.com/mui/material)@&#8203;7.3.6

- \[Accordion] Move properties to the AccordionOwnProps interface ([#&#8203;47348](https://github.com/mui/material-ui/issues/47348)) [@&#8203;Aleksan4e3](https://github.com/Aleksan4e3)
- \[Autocomplete] Remove unnecessary `filterSelectedOptions` dependency from `syncHighlightedIndex` useCallback ([#&#8203;47378](https://github.com/mui/material-ui/issues/47378)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[Autocomplete] Fix input caret not showing when focusing after chip navigation ([#&#8203;47249](https://github.com/mui/material-ui/issues/47249)) [@&#8203;vrachuri28](https://github.com/vrachuri28)
- \[Autocomplete] Fix ArrowLeft crash when value is not set with single-value rendering ([#&#8203;47214](https://github.com/mui/material-ui/issues/47214)) [@&#8203;rithik56](https://github.com/rithik56)
- \[Button] Fix running formAction when passed ([#&#8203;47185](https://github.com/mui/material-ui/issues/47185)) [@&#8203;sai6855](https://github.com/sai6855)
- \[Chip] Remove leftover closing parenthesis in CSS class key ([#&#8203;47345](https://github.com/mui/material-ui/issues/47345)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[ListItem] Add `secondaryAction` slot to `ListItem` ([#&#8203;47399](https://github.com/mui/material-ui/issues/47399)) [@&#8203;sai6855](https://github.com/sai6855)
- \[NumberField] Fix scroll behavior ([#&#8203;47397](https://github.com/mui/material-ui/issues/47397)) [@&#8203;oliviertassinari](https://github.com/oliviertassinari)
- \[Select] Fix keyboard navigation while rendering in shadow DOM ([#&#8203;47380](https://github.com/mui/material-ui/issues/47380)) [@&#8203;xBlizZer](https://github.com/xBlizZer)
- \[Select] Fix cannot pass certain event handlers ([#&#8203;47366](https://github.com/mui/material-ui/issues/47366)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[Slider] Accept readonly array for `marks` prop ([#&#8203;47370](https://github.com/mui/material-ui/issues/47370)) [@&#8203;pcorpet](https://github.com/pcorpet)
- \[Snackbar] Avoid unnecessary `ownerState` spread into `useSnackbar` ([#&#8203;47373](https://github.com/mui/material-ui/issues/47373)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[TextField] Allow custom props in slot props via TS module augmentation ([#&#8203;47367](https://github.com/mui/material-ui/issues/47367)) [@&#8203;kumarvishwajeettrivedi](https://github.com/kumarvishwajeettrivedi)
- \[Tabs] Fix Arrow key navigation failing when component is rendered in shadow DOM ([#&#8203;47178](https://github.com/mui/material-ui/issues/47178)) [@&#8203;sai6855](https://github.com/sai6855)
- Fix typings for theme `applyStyles` with custom color schemes ([#&#8203;47242](https://github.com/mui/material-ui/issues/47242)) [@&#8203;akankshahu](https://github.com/akankshahu)

##### [@&#8203;mui/system](https://github.com/mui/system)@&#8203;7.3.6

- Fix unwanted attribute on DOM from InitColorSchemeScript `class` attribute ([#&#8203;47200](https://github.com/mui/material-ui/issues/47200)) [@&#8203;siriwatknp](https://github.com/siriwatknp)

##### [@&#8203;mui/lab](https://github.com/mui/lab)@&#8203;7.3.6

- \[Masonry] Fix layout flicker and single column issue ([#&#8203;43903](https://github.com/mui/material-ui/issues/43903)) [@&#8203;Fanzzzd](https://github.com/Fanzzzd)

##### Docs

- Fix default theme viewer styling ([#&#8203;47400](https://github.com/mui/material-ui/issues/47400)) [@&#8203;sai6855](https://github.com/sai6855)
- Remove repetitive words ([#&#8203;47384](https://github.com/mui/material-ui/issues/47384)) [@&#8203;rifeplight](https://github.com/rifeplight)
- Fix link to Portal API docs ([#&#8203;47383](https://github.com/mui/material-ui/issues/47383)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- Remove mentions of MUI Base from Material UI docs ([#&#8203;47324](https://github.com/mui/material-ui/issues/47324)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- Update CSP guidance ([#&#8203;47342](https://github.com/mui/material-ui/issues/47342)) [@&#8203;rossdakin](https://github.com/rossdakin)
- Fix pathname collision in LLMs docs generator…
736-c41-2c1-e464fc974 added a commit to Swiss-Armed-Forces/Loom that referenced this pull request Dec 30, 2025
chore(deps): update frontend dependencies (minor) (minor)

This MR contains the following updates:

| Package | Type | Update | Change | OpenSSF |
|---|---|---|---|---|
| [@eslint/compat](https://github.com/eslint/rewrite/tree/main/packages/compat#readme) ([source](https://github.com/eslint/rewrite/tree/HEAD/packages/compat)) | devDependencies | minor | [`1.3.2` → `1.4.1`](https://renovatebot.com/diffs/npm/@eslint%2fcompat/1.3.2/1.4.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/rewrite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/rewrite) |
| [@eslint/js](https://eslint.org) ([source](https://github.com/eslint/eslint/tree/HEAD/packages/js)) | devDependencies | minor | [`9.29.0` → `9.39.2`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.29.0/9.39.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/eslint) |
| [@mui/icons-material](https://mui.com/material-ui/material-icons/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material)) | dependencies | minor | [`7.1.2` → `7.3.6`](https://renovatebot.com/diffs/npm/@mui%2ficons-material/7.1.2/7.3.6) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/material](https://mui.com/material-ui/) ([source](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material)) | dependencies | minor | [`7.1.2` → `7.3.6`](https://renovatebot.com/diffs/npm/@mui%2fmaterial/7.1.2/7.3.6) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/material-ui/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/material-ui) |
| [@mui/x-charts](https://mui.com/x/react-charts/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-charts)) | dependencies | minor | [`8.5.3` → `8.23.0`](https://renovatebot.com/diffs/npm/@mui%2fx-charts/8.5.3/8.23.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@mui/x-tree-view](https://mui.com/x/react-tree-view/) ([source](https://github.com/mui/mui-x/tree/HEAD/packages/x-tree-view)) | dependencies | minor | [`8.5.3` → `8.23.0`](https://renovatebot.com/diffs/npm/@mui%2fx-tree-view/8.5.3/8.23.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/mui/mui-x/badge)](https://securityscorecards.dev/viewer/?uri=github.com/mui/mui-x) |
| [@openapitools/openapi-generator-cli](https://github.com/OpenAPITools/openapi-generator-cli) | devDependencies | minor | [`2.23.4` → `2.26.0`](https://renovatebot.com/diffs/npm/@openapitools%2fopenapi-generator-cli/2.23.4/2.26.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/OpenAPITools/openapi-generator-cli/badge)](https://securityscorecards.dev/viewer/?uri=github.com/OpenAPITools/openapi-generator-cli) |
| [@reduxjs/toolkit](https://redux-toolkit.js.org) ([source](https://github.com/reduxjs/redux-toolkit)) | dependencies | minor | [`2.8.2` → `2.11.2`](https://renovatebot.com/diffs/npm/@reduxjs%2ftoolkit/2.8.2/2.11.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/reduxjs/redux-toolkit/badge)](https://securityscorecards.dev/viewer/?uri=github.com/reduxjs/redux-toolkit) |
| [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) | devDependencies | minor | [`6.6.4` → `6.9.1`](https://renovatebot.com/diffs/npm/@testing-library%2fjest-dom/6.6.4/6.9.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/testing-library/jest-dom/badge)](https://securityscorecards.dev/viewer/?uri=github.com/testing-library/jest-dom) |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | devDependencies | minor | [`19.1.17` → `19.2.7`](https://renovatebot.com/diffs/npm/@types%2freact/19.1.17/19.2.7) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | devDependencies | minor | [`19.1.11` → `19.2.3`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.1.11/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/DefinitelyTyped/DefinitelyTyped/badge)](https://securityscorecards.dev/viewer/?uri=github.com/DefinitelyTyped/DefinitelyTyped) |
| [@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | devDependencies | minor | [`8.39.1` → `8.51.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/8.39.1/8.51.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@typescript-eslint/parser](https://typescript-eslint.io/packages/parser) ([source](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | devDependencies | minor | [`8.39.1` → `8.51.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/8.39.1/8.51.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/typescript-eslint/typescript-eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/typescript-eslint/typescript-eslint) |
| [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react#readme) ([source](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react)) | devDependencies | minor | [`4.5.2` → `4.7.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react/4.5.2/4.7.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite-plugin-react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite-plugin-react) |
| [ace-builds](https://github.com/ajaxorg/ace-builds) | dependencies | minor | [`1.42.0` → `1.43.5`](https://renovatebot.com/diffs/npm/ace-builds/1.42.0/1.43.5) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/ajaxorg/ace-builds/badge)](https://securityscorecards.dev/viewer/?uri=github.com/ajaxorg/ace-builds) |
| [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | devDependencies | minor | [`9.32.0` → `9.39.2`](https://renovatebot.com/diffs/npm/eslint/9.32.0/9.39.2) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/eslint/eslint/badge)](https://securityscorecards.dev/viewer/?uri=github.com/eslint/eslint) |
| [eslint-plugin-unused-imports](https://github.com/sweepline/eslint-plugin-unused-imports) | devDependencies | minor | [`4.1.4` → `4.3.0`](https://renovatebot.com/diffs/npm/eslint-plugin-unused-imports/4.1.4/4.3.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/sweepline/eslint-plugin-unused-imports/badge)](https://securityscorecards.dev/viewer/?uri=github.com/sweepline/eslint-plugin-unused-imports) |
| [globals](https://github.com/sindresorhus/globals) | devDependencies | minor | [`16.2.0` → `16.5.0`](https://renovatebot.com/diffs/npm/globals/16.2.0/16.5.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/sindresorhus/globals/badge)](https://securityscorecards.dev/viewer/?uri=github.com/sindresorhus/globals) |
| [i18next](https://www.i18next.com) ([source](https://github.com/i18next/i18next)) | dependencies | minor | [`25.2.1` → `25.7.3`](https://renovatebot.com/diffs/npm/i18next/25.2.1/25.7.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/i18next/i18next/badge)](https://securityscorecards.dev/viewer/?uri=github.com/i18next/i18next) |
| [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`3.5.3` → `3.7.4`](https://renovatebot.com/diffs/npm/prettier/3.5.3/3.7.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/prettier/prettier/badge)](https://securityscorecards.dev/viewer/?uri=github.com/prettier/prettier) |
| [react](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react)) | dependencies | minor | [`19.1.1` → `19.2.3`](https://renovatebot.com/diffs/npm/react/19.1.1/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-dom](https://react.dev/) ([source](https://github.com/facebook/react/tree/HEAD/packages/react-dom)) | dependencies | minor | [`19.1.1` → `19.2.3`](https://renovatebot.com/diffs/npm/react-dom/19.1.1/19.2.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/facebook/react/badge)](https://securityscorecards.dev/viewer/?uri=github.com/facebook/react) |
| [react-i18next](https://github.com/i18next/react-i18next) | dependencies | minor | [`15.5.3` → `15.7.4`](https://renovatebot.com/diffs/npm/react-i18next/15.5.3/15.7.4) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/i18next/react-i18next/badge)](https://securityscorecards.dev/viewer/?uri=github.com/i18next/react-i18next) |
| [react-router-dom](https://github.com/remix-run/react-router) ([source](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | dependencies | minor | [`7.6.3` → `7.11.0`](https://renovatebot.com/diffs/npm/react-router-dom/7.6.3/7.11.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/remix-run/react-router/badge)](https://securityscorecards.dev/viewer/?uri=github.com/remix-run/react-router) |
| [typescript](https://www.typescriptlang.org/) ([source](https://github.com/microsoft/TypeScript)) | devDependencies | minor | [`5.8.3` → `5.9.3`](https://renovatebot.com/diffs/npm/typescript/5.8.3/5.9.3) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/microsoft/TypeScript/badge)](https://securityscorecards.dev/viewer/?uri=github.com/microsoft/TypeScript) |
| [vite](https://vite.dev) ([source](https://github.com/vitejs/vite/tree/HEAD/packages/vite)) | devDependencies | minor | [`6.3.7` → `6.4.1`](https://renovatebot.com/diffs/npm/vite/6.3.7/6.4.1) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/vitejs/vite/badge)](https://securityscorecards.dev/viewer/?uri=github.com/vitejs/vite) |
| [vite-plugin-svgr](https://github.com/pd4d10/vite-plugin-svgr) | devDependencies | minor | [`4.3.0` → `4.5.0`](https://renovatebot.com/diffs/npm/vite-plugin-svgr/4.3.0/4.5.0) | [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/pd4d10/vite-plugin-svgr/badge)](https://securityscorecards.dev/viewer/?uri=github.com/pd4d10/vite-plugin-svgr) |

---

### Release Notes

<details>
<summary>eslint/rewrite (@&#8203;eslint/compat)</summary>

### [`v1.4.1`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#141-2025-10-27)

[Compare Source](https://github.com/eslint/rewrite/compare/7f592e3b60dd0a3b38d891a80aeeb92cf78d8e86...f5ecc7e945634a173af677d2d597d583bd2704e6)

##### Dependencies

- The following workspace dependencies were updated
  - dependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.16.0 to ^0.17.0

### [`v1.4.0`](https://github.com/eslint/rewrite/blob/HEAD/packages/compat/CHANGELOG.md#140-2025-09-16)

[Compare Source](https://github.com/eslint/rewrite/compare/9e68ab61df9c4ebc082b603fb5e3dfe2dcf98666...7f592e3b60dd0a3b38d891a80aeeb92cf78d8e86)

##### Features

- Add config types in [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;237](https://github.com/eslint/rewrite/issues/237)) ([7b6dd37](https://github.com/eslint/rewrite/commit/7b6dd370a598ea7fc94fba427a2579342b50b90f))

##### Dependencies

- The following workspace dependencies were updated
  - dependencies
    - [@&#8203;eslint/core](https://github.com/eslint/core) bumped from ^0.15.2 to ^0.16.0

</details>

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

### [`v9.39.2`](https://github.com/eslint/eslint/releases/tag/v9.39.2)

[Compare Source](https://github.com/eslint/eslint/compare/v9.39.1...v9.39.2)

##### Bug Fixes

- [`5705833`](https://github.com/eslint/eslint/commit/57058331946568164449c5caabe2cf206e4fb5d9) fix: warn when `eslint-env` configuration comments are found ([#&#8203;20381](https://github.com/eslint/eslint/issues/20381)) (sethamus)

##### Build Related

- [`506f154`](https://github.com/eslint/eslint/commit/506f1549a64aa65bdddc75c71cb62f0ab94b5a23) build: add .scss files entry to knip ([#&#8203;20391](https://github.com/eslint/eslint/issues/20391)) (Milos Djermanovic)

##### Chores

- [`7ca0af7`](https://github.com/eslint/eslint/commit/7ca0af7f9f89dd4a01736dae01931c45d528171b) chore: upgrade to `@eslint/js@9.39.2` ([#&#8203;20394](https://github.com/eslint/eslint/issues/20394)) (Francesco Trotta)
- [`c43ce24`](https://github.com/eslint/eslint/commit/c43ce24ff0ce073ec4ad691cd5a50171dfe6cf1e) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`4c9858e`](https://github.com/eslint/eslint/commit/4c9858e47bb9146cf20f546a562bc58a9ee3dae1) ci: add `v9.x-dev` branch ([#&#8203;20382](https://github.com/eslint/eslint/issues/20382)) (Milos Djermanovic)

### [`v9.39.1`](https://github.com/eslint/eslint/releases/tag/v9.39.1)

[Compare Source](https://github.com/eslint/eslint/compare/v9.39.0...v9.39.1)

##### Bug Fixes

- [`650753e`](https://github.com/eslint/eslint/commit/650753ee3976784343ceb40170619dab1aa9fe0d) fix: Only pass node to JS lang visitor methods ([#&#8203;20283](https://github.com/eslint/eslint/issues/20283)) (Nicholas C. Zakas)

##### Documentation

- [`51b51f4`](https://github.com/eslint/eslint/commit/51b51f4f1ce82ef63264c4e45d9ef579bcd73f8e) docs: add a section on when to use extends vs cascading ([#&#8203;20268](https://github.com/eslint/eslint/issues/20268)) (Tanuj Kanti)
- [`b44d426`](https://github.com/eslint/eslint/commit/b44d42699dcd1729b7ecb50ca70e4c1c17f551f1) docs: Update README (GitHub Actions Bot)

##### Chores

- [`92db329`](https://github.com/eslint/eslint/commit/92db329211c8da5ce8340a4d4c05ce9c12845381) chore: update `@eslint/js` version to 9.39.1 ([#&#8203;20284](https://github.com/eslint/eslint/issues/20284)) (Francesco Trotta)
- [`c7ebefc`](https://github.com/eslint/eslint/commit/c7ebefc9eaf99b76b30b0d3cf9960807a47367c4) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`61778f6`](https://github.com/eslint/eslint/commit/61778f6ca33c0f63962a91d6a75a4fa5db9f47d2) chore: update eslint-config-eslint dependency [@&#8203;eslint/js](https://github.com/eslint/js) to ^9.39.0 ([#&#8203;20275](https://github.com/eslint/eslint/issues/20275)) (renovate\[bot])
- [`d9ca2fc`](https://github.com/eslint/eslint/commit/d9ca2fcd9ad63331bfd329a69534e1ff04f231e8) ci: Add rangeStrategy to eslint group in renovate config ([#&#8203;20266](https://github.com/eslint/eslint/issues/20266)) (唯然)
- [`009e507`](https://github.com/eslint/eslint/commit/009e5076ff5a4bd845f55e17676e3bb88f47c280) test: fix version tests for ESLint v10 ([#&#8203;20274](https://github.com/eslint/eslint/issues/20274)) (Milos Djermanovic)

### [`v9.39.0`](https://github.com/eslint/eslint/releases/tag/v9.39.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.38.0...v9.39.0)

##### Features

- [`cc57d87`](https://github.com/eslint/eslint/commit/cc57d87a3f119e9d39c55e044e526ae067fa31ce) feat: update error loc to key in `no-dupe-class-members` ([#&#8203;20259](https://github.com/eslint/eslint/issues/20259)) (Tanuj Kanti)
- [`126552f`](https://github.com/eslint/eslint/commit/126552fcf35da3ddcefa527db06dabc54c04041c) feat: update error location in `for-direction` and `no-dupe-args` ([#&#8203;20258](https://github.com/eslint/eslint/issues/20258)) (Tanuj Kanti)
- [`167d097`](https://github.com/eslint/eslint/commit/167d0970d3802a66910e9820f31dcd717fab0b2a) feat: update `complexity` rule to highlight only static block header ([#&#8203;20245](https://github.com/eslint/eslint/issues/20245)) (jaymarvelz)

##### Bug Fixes

- [`15f5c7c`](https://github.com/eslint/eslint/commit/15f5c7c168d0698683943f51dd617f14a5e6815c) fix: forward traversal `step.args` to visitors ([#&#8203;20253](https://github.com/eslint/eslint/issues/20253)) (jaymarvelz)
- [`5a1a534`](https://github.com/eslint/eslint/commit/5a1a534e877f7c4c992885867f923df307c3929d) fix: allow JSDoc comments in object-shorthand rule ([#&#8203;20167](https://github.com/eslint/eslint/issues/20167)) (Nitin Kumar)
- [`e86b813`](https://github.com/eslint/eslint/commit/e86b813eb660f1a5adc8e143a70d9b683cd12362) fix: Use more types from [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;20257](https://github.com/eslint/eslint/issues/20257)) (Nicholas C. Zakas)
- [`927272d`](https://github.com/eslint/eslint/commit/927272d1f0d5683b029b729d368a96527f283323) fix: correct `Scope` typings ([#&#8203;20198](https://github.com/eslint/eslint/issues/20198)) (jaymarvelz)
- [`37f76d9`](https://github.com/eslint/eslint/commit/37f76d9c539bb6fc816fedb7be4486b71a58620a) fix: use `AST.Program` type for Program node ([#&#8203;20244](https://github.com/eslint/eslint/issues/20244)) (Francesco Trotta)
- [`ae07f0b`](https://github.com/eslint/eslint/commit/ae07f0b3334ebd22ae2e7b09bca5973b96aa9768) fix: unify timing report for concurrent linting ([#&#8203;20188](https://github.com/eslint/eslint/issues/20188)) (jaymarvelz)
- [`b165d47`](https://github.com/eslint/eslint/commit/b165d471be6062f4475b972155b02654a974a0e9) fix: correct `Rule` typings ([#&#8203;20199](https://github.com/eslint/eslint/issues/20199)) (jaymarvelz)
- [`fb97cda`](https://github.com/eslint/eslint/commit/fb97cda70d87286a7dbd2457f578ef578d6905e8) fix: improve error message for missing fix function in suggestions ([#&#8203;20218](https://github.com/eslint/eslint/issues/20218)) (jaymarvelz)

##### Documentation

- [`d3e81e3`](https://github.com/eslint/eslint/commit/d3e81e30ee6be5a21151b7a17ef10a714b6059c0) docs: Always recommend to include a files property ([#&#8203;20158](https://github.com/eslint/eslint/issues/20158)) (Percy Ma)
- [`0f0385f`](https://github.com/eslint/eslint/commit/0f0385f1404dcadaba4812120b1ad02334dbd66a) docs: use consistent naming recommendation ([#&#8203;20250](https://github.com/eslint/eslint/issues/20250)) (Alex M. Spieslechner)
- [`a3b1456`](https://github.com/eslint/eslint/commit/a3b145609ac649fac837c8c0515cbb2a9321ca40) docs: Update README (GitHub Actions Bot)
- [`cf5f2dd`](https://github.com/eslint/eslint/commit/cf5f2dd58dd98084a21da04fe7b9054b9478d552) docs: fix correct tag of `no-useless-constructor` ([#&#8203;20255](https://github.com/eslint/eslint/issues/20255)) (Tanuj Kanti)
- [`10b995c`](https://github.com/eslint/eslint/commit/10b995c8e5473de8d66d3cd99d816e046f35e3ec) docs: add TS options and examples for `nofunc` in `no-use-before-define` ([#&#8203;20249](https://github.com/eslint/eslint/issues/20249)) (Tanuj Kanti)
- [`2584187`](https://github.com/eslint/eslint/commit/2584187e4a305ea7a98e1a5bd4dca2a60ad132f8) docs: remove repetitive word in comment ([#&#8203;20242](https://github.com/eslint/eslint/issues/20242)) (reddaisyy)
- [`637216b`](https://github.com/eslint/eslint/commit/637216bd4f2aae7c928ad04a4e40eecffb50c9e5) docs: update CLI flags migration instructions ([#&#8203;20238](https://github.com/eslint/eslint/issues/20238)) (jaymarvelz)
- [`e7cda3b`](https://github.com/eslint/eslint/commit/e7cda3bdf1bdd664e6033503a3315ad81736b200) docs: Update README (GitHub Actions Bot)
- [`7b9446f`](https://github.com/eslint/eslint/commit/7b9446f7cc2054aa2cdf8e6225f4ac15a03671a8) docs: handle empty flags sections on the feature flags page ([#&#8203;20222](https://github.com/eslint/eslint/issues/20222)) (sethamus)

##### Chores

- [`dfe3c1b`](https://github.com/eslint/eslint/commit/dfe3c1b2034228765c48c8a445554223767dd16d) chore: update `@eslint/js` version to 9.39.0 ([#&#8203;20270](https://github.com/eslint/eslint/issues/20270)) (Francesco Trotta)
- [`2375a6d`](https://github.com/eslint/eslint/commit/2375a6de8263393c129d41cac1b407b40111a73c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`a1f4e52`](https://github.com/eslint/eslint/commit/a1f4e52d67c94bef61edd1607dcd130047c1baf0) chore: update `@eslint` dependencies ([#&#8203;20265](https://github.com/eslint/eslint/issues/20265)) (Francesco Trotta)
- [`c7d3229`](https://github.com/eslint/eslint/commit/c7d32298482752eeac9fb46378d4f1ea095f3836) chore: update dependency [@&#8203;eslint/core](https://github.com/eslint/core) to ^0.17.0 ([#&#8203;20256](https://github.com/eslint/eslint/issues/20256)) (renovate\[bot])
- [`27549bc`](https://github.com/eslint/eslint/commit/27549bc774c7c2dc5c569070a3e87c62f602bf7d) chore: update fuzz testing to not error if code sample minimizer fails ([#&#8203;20252](https://github.com/eslint/eslint/issues/20252)) (Milos Djermanovic)
- [`a1370ee`](https://github.com/eslint/eslint/commit/a1370ee40e9d8e0e41843f3278cd745fc1ad543f) ci: bump actions/setup-node from 5 to 6 ([#&#8203;20230](https://github.com/eslint/eslint/issues/20230)) (dependabot\[bot])
- [`9e7fad4`](https://github.com/eslint/eslint/commit/9e7fad4a1867709060686d03e0ec1d0d69671cfb) chore: add script to auto-generate eslint:recommended configuration ([#&#8203;20208](https://github.com/eslint/eslint/issues/20208)) (唯然)

### [`v9.38.0`](https://github.com/eslint/eslint/releases/tag/v9.38.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.37.0...v9.38.0)

##### Features

- [`ce40f74`](https://github.com/eslint/eslint/commit/ce40f74efd45f66d9fbfc6f78ce622ee72008485) feat: update `complexity` rule to only highlight function header ([#&#8203;20048](https://github.com/eslint/eslint/issues/20048)) (Atul Nair)
- [`e37e590`](https://github.com/eslint/eslint/commit/e37e590aae2a7fcca4d3a9adc1379ad466e5c5d1) feat: correct `no-loss-of-precision` false positives with `e` notation ([#&#8203;20187](https://github.com/eslint/eslint/issues/20187)) (Francesco Trotta)

##### Bug Fixes

- [`50c3dfd`](https://github.com/eslint/eslint/commit/50c3dfd98065622765a51a8ddb1e70c44fc5a4cb) fix: improve type support for isolated dependencies in pnpm ([#&#8203;20201](https://github.com/eslint/eslint/issues/20201)) (Francesco Trotta)
- [`a1f06a3`](https://github.com/eslint/eslint/commit/a1f06a350c4155c4dbf39bf932a38d71d70f1b65) fix: correct SourceCode typings ([#&#8203;20114](https://github.com/eslint/eslint/issues/20114)) (Pixel998)

##### Documentation

- [`462675a`](https://github.com/eslint/eslint/commit/462675af8a811f9ca984efaedbdc5b46b13ced7a) docs: improve web accessibility by hiding non-semantic character ([#&#8203;20205](https://github.com/eslint/eslint/issues/20205)) (루밀LuMir)
- [`c070e65`](https://github.com/eslint/eslint/commit/c070e65f6bb9e38d06a89ba2b3261781bec3d397) docs: correct formatting in `no-irregular-whitespace` rule documentation ([#&#8203;20203](https://github.com/eslint/eslint/issues/20203)) (루밀LuMir)
- [`b39e71a`](https://github.com/eslint/eslint/commit/b39e71a2130ae1ea3fbc19b19f5b951eb625722a) docs: Update README (GitHub Actions Bot)
- [`cd39983`](https://github.com/eslint/eslint/commit/cd3998314876a4fad6463d9011bc73778ccc1fd9) docs: move `custom-formatters` type descriptions to `nodejs-api` ([#&#8203;20190](https://github.com/eslint/eslint/issues/20190)) (Percy Ma)

##### Chores

- [`d17c795`](https://github.com/eslint/eslint/commit/d17c795bf1624e0604998482b98e6bb6bff39045) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).38.0 ([#&#8203;20221](https://github.com/eslint/eslint/issues/20221)) (Milos Djermanovic)
- [`25d0e33`](https://github.com/eslint/eslint/commit/25d0e33270e08baed09dbee2cdd56a8e5cd9da0f) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`c82b5ef`](https://github.com/eslint/eslint/commit/c82b5efa1fc91900e029efa23e688fad67fc17fa) refactor: Use types from [@&#8203;eslint/core](https://github.com/eslint/core) ([#&#8203;20168](https://github.com/eslint/eslint/issues/20168)) (Nicholas C. Zakas)
- [`ff31609`](https://github.com/eslint/eslint/commit/ff31609f195654d448954210ba4d31e921d463e8) ci: add Node.js 25 to `ci.yml` ([#&#8203;20220](https://github.com/eslint/eslint/issues/20220)) (루밀LuMir)
- [`004577e`](https://github.com/eslint/eslint/commit/004577eda2f2f4b2829e0364f8b41893cebfc859) ci: bump github/codeql-action from 3 to 4 ([#&#8203;20211](https://github.com/eslint/eslint/issues/20211)) (dependabot\[bot])
- [`eac71fb`](https://github.com/eslint/eslint/commit/eac71fb77113de7bf199ff20c6ee44cefcb59848) test: remove use of `nodejsScope` option of eslint-scope from tests ([#&#8203;20206](https://github.com/eslint/eslint/issues/20206)) (Milos Djermanovic)
- [`4168a18`](https://github.com/eslint/eslint/commit/4168a18b7efd8facbbd71cd44a62942a9f656a30) chore: fix typo in legacy-eslint.js ([#&#8203;20202](https://github.com/eslint/eslint/issues/20202)) (Sweta Tanwar)
- [`205dbd2`](https://github.com/eslint/eslint/commit/205dbd2d9272e761574c478e3b0181f7b89ed0f6) chore: fix typos ([#&#8203;20200](https://github.com/eslint/eslint/issues/20200)) (ntnyq)
- [`dbb200e`](https://github.com/eslint/eslint/commit/dbb200e3604e63bba23a18d40089ca44604835ed) chore: use team member's username when name is not available in data ([#&#8203;20194](https://github.com/eslint/eslint/issues/20194)) (Milos Djermanovic)
- [`8962089`](https://github.com/eslint/eslint/commit/8962089edbd978b43513576387a134036b8e2d36) chore: mark deprecated rules as available until v11.0.0 ([#&#8203;20184](https://github.com/eslint/eslint/issues/20184)) (Pixel998)

### [`v9.37.0`](https://github.com/eslint/eslint/releases/tag/v9.37.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.36.0...v9.37.0)

##### Features

- [`39f7fb4`](https://github.com/eslint/eslint/commit/39f7fb493a6924ff7dc638fd4d6e7b3d8eb95383) feat: `preserve-caught-error` should recognize all static "cause" keys ([#&#8203;20163](https://github.com/eslint/eslint/issues/20163)) (Pixel998)
- [`f81eabc`](https://github.com/eslint/eslint/commit/f81eabc5849ece98b8ca054f96b29f038a69bcf8) feat: support TS syntax in `no-restricted-imports` ([#&#8203;19562](https://github.com/eslint/eslint/issues/19562)) (Nitin Kumar)

##### Bug Fixes

- [`a129cce`](https://github.com/eslint/eslint/commit/a129cced7a86ea2518eb9be6990fa18af39694ca) fix: correct `no-loss-of-precision` false positives for leading zeros ([#&#8203;20164](https://github.com/eslint/eslint/issues/20164)) (Francesco Trotta)
- [`09e04fc`](https://github.com/eslint/eslint/commit/09e04fcc3f4cc963eea7c9c579391de5e231595b) fix: add missing AST token types ([#&#8203;20172](https://github.com/eslint/eslint/issues/20172)) (Pixel998)
- [`861c6da`](https://github.com/eslint/eslint/commit/861c6da2bd2796414e6eed782155ec34e2ed6344) fix: correct `ESLint` typings ([#&#8203;20122](https://github.com/eslint/eslint/issues/20122)) (Pixel998)

##### Documentation

- [`b950359`](https://github.com/eslint/eslint/commit/b950359c5f39085483c3137a6a160e582ef32007) docs: fix typos across the docs ([#&#8203;20182](https://github.com/eslint/eslint/issues/20182)) (루밀LuMir)
- [`42498a2`](https://github.com/eslint/eslint/commit/42498a27981d50750dd15ae8660dbe85c4f4587c) docs: improve ToC accessibility by hiding non-semantic character ([#&#8203;20181](https://github.com/eslint/eslint/issues/20181)) (Percy Ma)
- [`29ea092`](https://github.com/eslint/eslint/commit/29ea092b93608756350b1e9c5a4f29c8a49264ab) docs: Update README (GitHub Actions Bot)
- [`5c97a04`](https://github.com/eslint/eslint/commit/5c97a04578e6280c2395f642c2d8d6bdf30eec18) docs: show `availableUntil` in deprecated rule banner ([#&#8203;20170](https://github.com/eslint/eslint/issues/20170)) (Pixel998)
- [`90a71bf`](https://github.com/eslint/eslint/commit/90a71bf5024a86fc232cd2e05f96811e2a18fd0f) docs: update `README` files to add badge and instructions ([#&#8203;20115](https://github.com/eslint/eslint/issues/20115)) (루밀LuMir)
- [`1603ae1`](https://github.com/eslint/eslint/commit/1603ae1526d9b6f557c7d5534a4f40f46842edd6) docs: update references from `master` to `main` ([#&#8203;20153](https://github.com/eslint/eslint/issues/20153)) (루밀LuMir)

##### Chores

- [`afe8a13`](https://github.com/eslint/eslint/commit/afe8a1346958242031fea66fdfbb239e8bf408b7) chore: update `@eslint/js` dependency to version 9.37.0 ([#&#8203;20183](https://github.com/eslint/eslint/issues/20183)) (Francesco Trotta)
- [`abee4ca`](https://github.com/eslint/eslint/commit/abee4ca1fa10da733b1cc4a7d5e765b912a9de82) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`fc9381f`](https://github.com/eslint/eslint/commit/fc9381f6ca57b824e82d118c14631c17bea79d7e) chore: fix typos in comments ([#&#8203;20175](https://github.com/eslint/eslint/issues/20175)) (overlookmotel)
- [`e1574a2`](https://github.com/eslint/eslint/commit/e1574a22d38fd7e1891f86f8db0b09053f8963cb) chore: unpin jiti ([#&#8203;20173](https://github.com/eslint/eslint/issues/20173)) (renovate\[bot])
- [`e1ac05e`](https://github.com/eslint/eslint/commit/e1ac05e2fae779e738f85bd47dda1cc2b7099346) refactor: mark `ESLint.findConfigFile()` as `async`, add missing docs ([#&#8203;20157](https://github.com/eslint/eslint/issues/20157)) (Pixel998)
- [`347906d`](https://github.com/eslint/eslint/commit/347906d627c53bf45d63ba831d2fd2b83fb0a749) chore: update eslint ([#&#8203;20149](https://github.com/eslint/eslint/issues/20149)) (renovate\[bot])
- [`0cb5897`](https://github.com/eslint/eslint/commit/0cb5897e24059bacadb8d2e6458184904759fda1) test: remove tmp dir created for circular fixes in multithread mode test ([#&#8203;20146](https://github.com/eslint/eslint/issues/20146)) (Milos Djermanovic)
- [`bb99566`](https://github.com/eslint/eslint/commit/bb995665e32b3a958e78006c9fd75744c5604f1b) ci: pin `jiti` to version 2.5.1 ([#&#8203;20151](https://github.com/eslint/eslint/issues/20151)) (Pixel998)
- [`177f669`](https://github.com/eslint/eslint/commit/177f669adc0f96d14ae1a71cde7786f327515863) perf: improve worker count calculation for `"auto"` concurrency ([#&#8203;20067](https://github.com/eslint/eslint/issues/20067)) (Francesco Trotta)
- [`448b57b`](https://github.com/eslint/eslint/commit/448b57bca3406ee12c4e44e9298fc0c99d3ee10c) chore: Mark deprecated formatting rules as available until v11.0.0 ([#&#8203;20144](https://github.com/eslint/eslint/issues/20144)) (Milos Djermanovic)

### [`v9.36.0`](https://github.com/eslint/eslint/releases/tag/v9.36.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.35.0...v9.36.0)

##### Features

- [`47afcf6`](https://github.com/eslint/eslint/commit/47afcf668df65eac68d7b04145d037037010a076) feat: correct `preserve-caught-error` edge cases ([#&#8203;20109](https://github.com/eslint/eslint/issues/20109)) (Francesco Trotta)

##### Bug Fixes

- [`75b74d8`](https://github.com/eslint/eslint/commit/75b74d865d3b8e7fa3bcf5ad29f4bf6d18d1310e) fix: add missing rule option types ([#&#8203;20127](https://github.com/eslint/eslint/issues/20127)) (ntnyq)
- [`1c0d850`](https://github.com/eslint/eslint/commit/1c0d85049e3f30a8809340c1abc881c63b7812ff) fix: update `eslint-all.js` to use `Object.freeze` for `rules` object ([#&#8203;20116](https://github.com/eslint/eslint/issues/20116)) (루밀LuMir)
- [`7d61b7f`](https://github.com/eslint/eslint/commit/7d61b7fadc9c5c6f2b131e37e8a3cffa5aae8ee6) fix: add missing scope types to `Scope.type` ([#&#8203;20110](https://github.com/eslint/eslint/issues/20110)) (Pixel998)
- [`7a670c3`](https://github.com/eslint/eslint/commit/7a670c301b58609017ce8cfda99ee81f95de3898) fix: correct rule option typings in `rules.d.ts` ([#&#8203;20084](https://github.com/eslint/eslint/issues/20084)) (Pixel998)

##### Documentation

- [`b73ab12`](https://github.com/eslint/eslint/commit/b73ab12acd3e87f8d8173cda03499f6cd1f26db6) docs: update examples to use `defineConfig` ([#&#8203;20131](https://github.com/eslint/eslint/issues/20131)) (sethamus)
- [`31d9392`](https://github.com/eslint/eslint/commit/31d93926990fba536846ec727d7a2625fc844649) docs: fix typos ([#&#8203;20118](https://github.com/eslint/eslint/issues/20118)) (Pixel998)
- [`c7f861b`](https://github.com/eslint/eslint/commit/c7f861b3f8c1ac961b4cd4f22483798f3324c62b) docs: Update README (GitHub Actions Bot)
- [`6b0c08b`](https://github.com/eslint/eslint/commit/6b0c08b106aa66f2e9fa484282f0eb63c64a1215) docs: Update README (GitHub Actions Bot)
- [`91f97c5`](https://github.com/eslint/eslint/commit/91f97c50468fbdc089c91e99c2ea0fe821911df2) docs: Update README (GitHub Actions Bot)

##### Chores

- [`12411e8`](https://github.com/eslint/eslint/commit/12411e8d450ed26a5f7cca6a78ec05323c9323e8) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).36.0 ([#&#8203;20139](https://github.com/eslint/eslint/issues/20139)) (Milos Djermanovic)
- [`488cba6`](https://github.com/eslint/eslint/commit/488cba6b391b97b2cfc74bbb46fdeacb1361949e) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`bac82a2`](https://github.com/eslint/eslint/commit/bac82a2a9c80a3f69087852758d7737aea371f09) ci: simplify renovate configuration ([#&#8203;19907](https://github.com/eslint/eslint/issues/19907)) (唯然)
- [`c00bb37`](https://github.com/eslint/eslint/commit/c00bb37d62c1bcc0a37f094371be9c40064009f1) ci: bump actions/labeler from 5 to 6 ([#&#8203;20090](https://github.com/eslint/eslint/issues/20090)) (dependabot\[bot])
- [`fee751d`](https://github.com/eslint/eslint/commit/fee751dc8aeab54547af4538332ea5c069ef28b6) refactor: use `defaultOptions` in rules ([#&#8203;20121](https://github.com/eslint/eslint/issues/20121)) (Pixel998)
- [`1ace67d`](https://github.com/eslint/eslint/commit/1ace67d9f7903adc3d3f09868aa05b673e7d3f3b) chore: update example to use `defineConfig` ([#&#8203;20111](https://github.com/eslint/eslint/issues/20111)) (루밀LuMir)
- [`4821963`](https://github.com/eslint/eslint/commit/4821963bf765532069c49e9da9ecbe9485b073fc) test: add missing loc information to error objects in rule tests ([#&#8203;20112](https://github.com/eslint/eslint/issues/20112)) (루밀LuMir)
- [`b42c42e`](https://github.com/eslint/eslint/commit/b42c42e7cd3ac9ee1b5a15f16ff25b325d0482e4) chore: disallow use of deprecated `type` property in core rule tests ([#&#8203;20094](https://github.com/eslint/eslint/issues/20094)) (Milos Djermanovic)
- [`7bb498d`](https://github.com/eslint/eslint/commit/7bb498d720dcd054cc042ca4b60b138d8485f07c) test: remove deprecated `type` property from core rule tests ([#&#8203;20093](https://github.com/eslint/eslint/issues/20093)) (Pixel998)
- [`e10cf2a`](https://github.com/eslint/eslint/commit/e10cf2ab42fe5b481d980dc652f7504414747733) ci: bump actions/setup-node from 4 to 5 ([#&#8203;20089](https://github.com/eslint/eslint/issues/20089)) (dependabot\[bot])
- [`5cb0ce4`](https://github.com/eslint/eslint/commit/5cb0ce48ef6cfbbe6d09131c33a53f9d66fe9bd4) refactor: use `meta.defaultOptions` in `preserve-caught-error` ([#&#8203;20080](https://github.com/eslint/eslint/issues/20080)) (Pixel998)
- [`f9f7cb5`](https://github.com/eslint/eslint/commit/f9f7cb578dced3c14f635e17c75aa6744d291f4d) chore: package.json update for eslint-config-eslint release (Jenkins)
- [`81764b2`](https://github.com/eslint/eslint/commit/81764b298065a328038cd067bc8fedef97e57500) chore: update `eslint` peer dependency in `eslint-config-eslint` ([#&#8203;20079](https://github.com/eslint/eslint/issues/20079)) (Milos Djermanovic)

### [`v9.35.0`](https://github.com/eslint/eslint/releases/tag/v9.35.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.34.0...v9.35.0)

##### Features

- [`42761fa`](https://github.com/eslint/eslint/commit/42761fa7c872fb9e14c144b692af6967b3662082) feat: implement suggestions for no-empty-function ([#&#8203;20057](https://github.com/eslint/eslint/issues/20057)) (jaymarvelz)
- [`102f444`](https://github.com/eslint/eslint/commit/102f44442ac9bf1fcd4ba6ab9fae43ce09199df6) feat: implement suggestions for no-empty-static-block ([#&#8203;20056](https://github.com/eslint/eslint/issues/20056)) (jaymarvelz)
- [`e51ffff`](https://github.com/eslint/eslint/commit/e51ffff737ca245b3a1d115cb11e1c99737249a3) feat: add `preserve-caught-error` rule ([#&#8203;19913](https://github.com/eslint/eslint/issues/19913)) (Amnish Singh Arora)

##### Bug Fixes

- [`10e7ae2`](https://github.com/eslint/eslint/commit/10e7ae23e30ea0834d9fdeb3a2a1db8103c36cd2) fix: update uncloneable options error message ([#&#8203;20059](https://github.com/eslint/eslint/issues/20059)) (soda-sorcery)
- [`bfa4601`](https://github.com/eslint/eslint/commit/bfa46013e7ea9a522c02f72250fa07160f96a6b8) fix: ignore empty switch statements with comments in no-empty rule ([#&#8203;20045](https://github.com/eslint/eslint/issues/20045)) (jaymarvelz)
- [`dfd11de`](https://github.com/eslint/eslint/commit/dfd11deb24fc733faa5db751a2f615eb04e48b15) fix: add `before` and `after` to test case types ([#&#8203;20049](https://github.com/eslint/eslint/issues/20049)) (Francesco Trotta)
- [`dabbe95`](https://github.com/eslint/eslint/commit/dabbe95c39671c5fa272da012ee1432aa088650f) fix: correct types for `no-restricted-imports` rule ([#&#8203;20034](https://github.com/eslint/eslint/issues/20034)) (Milos Djermanovic)
- [`ea789c7`](https://github.com/eslint/eslint/commit/ea789c7dd234c1a6be499a4644dd0f5c97615972) fix: no-loss-of-precision false positive with uppercase exponent ([#&#8203;20032](https://github.com/eslint/eslint/issues/20032)) (sethamus)

##### Documentation

- [`d265515`](https://github.com/eslint/eslint/commit/d265515642f65246bcd45c17979f67c2afb12f95) docs: improve phrasing - "if" → "even if" from getting-started section ([#&#8203;20074](https://github.com/eslint/eslint/issues/20074)) (jjangga0214)
- [`a355a0e`](https://github.com/eslint/eslint/commit/a355a0e5b2e6a47cda099b31dc7d112cfb5c4315) docs: invert comparison logic for example in `no-var` doc page ([#&#8203;20064](https://github.com/eslint/eslint/issues/20064)) (OTonGitHub)
- [`5082fc2`](https://github.com/eslint/eslint/commit/5082fc206de6946d9d4c20e57301f78839b3b9f2) docs: Update README (GitHub Actions Bot)
- [`99cfd7e`](https://github.com/eslint/eslint/commit/99cfd7e056e1703941c9eb8ca1ae7fdb1987ba9d) docs: add missing "the" in rule deprecation docs ([#&#8203;20050](https://github.com/eslint/eslint/issues/20050)) (Josh Goldberg ✨)
- [`6ad8973`](https://github.com/eslint/eslint/commit/6ad8973e5d3c94b8e100b7266f55f8eb0757eb00) docs: update `--no-ignore` and `--ignore-pattern` documentation ([#&#8203;20036](https://github.com/eslint/eslint/issues/20036)) (Francesco Trotta)
- [`8033b19`](https://github.com/eslint/eslint/commit/8033b195299a1eaa4a0ed6553d9e034a457bb577) docs: add documentation for `--no-config-lookup` ([#&#8203;20033](https://github.com/eslint/eslint/issues/20033)) (Francesco Trotta)

##### Chores

- [`da87f2f`](https://github.com/eslint/eslint/commit/da87f2fe792cab5b69b62bf5c15e69ab4f433087) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)[@&#8203;9](https://github.com/9).35.0 ([#&#8203;20077](https://github.com/eslint/eslint/issues/20077)) (Milos Djermanovic)
- [`af2a087`](https://github.com/eslint/eslint/commit/af2a0870fdc646091d027516601888923e5bc202) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`7055764`](https://github.com/eslint/eslint/commit/70557649e3111c55d8cddf678b6c4079aa6f0ccc) test: remove `tests/lib/eslint/eslint.config.js` ([#&#8203;20065](https://github.com/eslint/eslint/issues/20065)) (Milos Djermanovic)
- [`84ffb96`](https://github.com/eslint/eslint/commit/84ffb9680b15e45bfd8c8a5db4731576ddd16fc4) chore: update `@eslint-community/eslint-utils` ([#&#8203;20069](https://github.com/eslint/eslint/issues/20069)) (Francesco Trotta)
- [`d5ef939`](https://github.com/eslint/eslint/commit/d5ef9397150cc178e1f9891c3ff49ac4871ec786) refactor: remove deprecated `context.parserOptions` usage across rules ([#&#8203;20060](https://github.com/eslint/eslint/issues/20060)) (sethamus)
- [`1b3881d`](https://github.com/eslint/eslint/commit/1b3881d7e859bec9589e39888656c33c914a8302) chore: remove redundant word ([#&#8203;20058](https://github.com/eslint/eslint/issues/20058)) (pxwanglu)

### [`v9.34.0`](https://github.com/eslint/eslint/releases/tag/v9.34.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.33.0...v9.34.0)

##### Features

- [`0bb777a`](https://github.com/eslint/eslint/commit/0bb777a82b533df595cd520d9c89d291efa14a33) feat: multithread linting ([#&#8203;19794](https://github.com/eslint/eslint/issues/19794)) (Francesco Trotta)
- [`43a5f9e`](https://github.com/eslint/eslint/commit/43a5f9e36f1aade16f81fc49ef4b333660faadab) feat: add eslint-plugin-regexp to eslint-config-eslint base config ([#&#8203;19951](https://github.com/eslint/eslint/issues/19951)) (Pixel998)

##### Bug Fixes

- [`9b89903`](https://github.com/eslint/eslint/commit/9b8990397b2d2ed70771bb0e2070261a0c41782c) fix: default value of accessor-pairs option in rule.d.ts file ([#&#8203;20024](https://github.com/eslint/eslint/issues/20024)) (Tanuj Kanti)
- [`6c07420`](https://github.com/eslint/eslint/commit/6c074206ae0eae4816197a57648b415832a20e1d) fix: fix spurious failure in neostandard integration test ([#&#8203;20023](https://github.com/eslint/eslint/issues/20023)) (Kirk Waiblinger)
- [`676f4ac`](https://github.com/eslint/eslint/commit/676f4acaaed6e4f6ffe0c2e21272d4702b311a7b) fix: allow scientific notation with trailing zeros matching exponent ([#&#8203;20002](https://github.com/eslint/eslint/issues/20002)) (Sweta Tanwar)

##### Documentation

- [`0b4a590`](https://github.com/eslint/eslint/commit/0b4a590333b73a21b9e0ddc98462680e09fe3232) docs: make rulesdir deprecation clearer ([#&#8203;20018](https://github.com/eslint/eslint/issues/20018)) (Domenico Gemoli)
- [`327c672`](https://github.com/eslint/eslint/commit/327c67256fbeaf9d5e365802c2a11f5d32a16522) docs: Update README (GitHub Actions Bot)
- [`bf26229`](https://github.com/eslint/eslint/commit/bf2622991f5b892610a8c3343ff16519e5fd7a79) docs: Fix typo in core-concepts/index.md ([#&#8203;20009](https://github.com/eslint/eslint/issues/20009)) (Tobias Hernstig)
- [`2309327`](https://github.com/eslint/eslint/commit/2309327554acbf011f0d17e7b36fdd68e43adf3a) docs: fix typo in the "Configuring Rules" section ([#&#8203;20001](https://github.com/eslint/eslint/issues/20001)) (ghazi-git)
- [`2b87e21`](https://github.com/eslint/eslint/commit/2b87e21321422c120c2248dae25cac7f9eec0f29) docs: \[no-else-return] clarify sample code. ([#&#8203;19991](https://github.com/eslint/eslint/issues/19991)) (Yuki Takada (Yukinosuke Takada))
- [`c36570c`](https://github.com/eslint/eslint/commit/c36570c6657c2a92dbb4f09a8166a4d9909a091a) docs: Update README (GitHub Actions Bot)

##### Chores

- [`f19ad94`](https://github.com/eslint/eslint/commit/f19ad9493e0ca04c2c1455fbb3402eaad993a8be) chore: upgrade to `@eslint/js@9.34.0` ([#&#8203;20030](https://github.com/eslint/eslint/issues/20030)) (Francesco Trotta)
- [`b48fa20`](https://github.com/eslint/eslint/commit/b48fa20034e53bc65d1a58f3d834705e3087b00c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`4bce8a2`](https://github.com/eslint/eslint/commit/4bce8a250262ec47207bc260581f979e40c86bda) chore: package.json update for eslint-config-eslint release (Jenkins)
- [`0c9999c`](https://github.com/eslint/eslint/commit/0c9999c2a682151cf13bb3a4f8916930678c2f9b) refactor: prefer default options in `grouped-accessor-pairs` ([#&#8203;20028](https://github.com/eslint/eslint/issues/20028)) (루밀LuMir)
- [`d503f19`](https://github.com/eslint/eslint/commit/d503f1981354c7b86e423879846c61e0405af8fe) ci: fix `stale.yml` ([#&#8203;20010](https://github.com/eslint/eslint/issues/20010)) (루밀LuMir)
- [`e2dc67d`](https://github.com/eslint/eslint/commit/e2dc67d8b028147de4da35c64efe1d74c9f6a883) ci: centralize `stale.yml` ([#&#8203;19994](https://github.com/eslint/eslint/issues/19994)) (루밀LuMir)
- [`7093cb8`](https://github.com/eslint/eslint/commit/7093cb8f590ec2a1b5364d7b5687e9b5f4e06f8a) ci: bump actions/checkout from 4 to 5 ([#&#8203;20005](https://github.com/eslint/eslint/issues/20005)) (dependabot\[bot])

### [`v9.33.0`](https://github.com/eslint/eslint/releases/tag/v9.33.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.32.0...v9.33.0)

##### Features

- [`e07820e`](https://github.com/eslint/eslint/commit/e07820e66fd1fceaf2620dc931154955a706cc0f) feat: add global object access detection to no-restricted-globals ([#&#8203;19939](https://github.com/eslint/eslint/issues/19939)) (sethamus)
- [`90b050e`](https://github.com/eslint/eslint/commit/90b050ec11557cab08b6be9f05fabf97dba6a63d) feat: support explicit resource management in `one-var` ([#&#8203;19941](https://github.com/eslint/eslint/issues/19941)) (Sweta Tanwar)

##### Bug Fixes

- [`732433c`](https://github.com/eslint/eslint/commit/732433c4fb023f45154b825cdc8cdaf1979d4336) fix: allow any type for `meta.docs.recommended` in custom rules ([#&#8203;19995](https://github.com/eslint/eslint/issues/19995)) (Francesco Trotta)
- [`e8a6914`](https://github.com/eslint/eslint/commit/e8a6914a249d036e12494004e586b2a2b6e104d1) fix: Fixed potential bug in check-emfile-handling.js ([#&#8203;19975](https://github.com/eslint/eslint/issues/19975)) (諏訪原慶斗)

##### Documentation

- [`34f0723`](https://github.com/eslint/eslint/commit/34f0723e2d0faf8ac8dc95ec56e6d181bd6b67f2) docs: playground button for TypeScript code example ([#&#8203;19671](https://github.com/eslint/eslint/issues/19671)) (Tanuj Kanti)
- [`dc942a4`](https://github.com/eslint/eslint/commit/dc942a47daf41228d69072c52f1be20789426862) docs: Update README (GitHub Actions Bot)
- [`5a4b6f7`](https://github.com/eslint/eslint/commit/5a4b6f74320b72f9b6ad8b30f5c463b2b71315af) docs: Update no-multi-assign.md ([#&#8203;19979](https://github.com/eslint/eslint/issues/19979)) (Yuki Takada (Yukinosuke Takada))
- [`247e156`](https://github.com/eslint/eslint/commit/247e15698e34919a0cd411842fb3e14ac7a8f1ba) docs: add missing let declarations in `no-plusplus` ([#&#8203;19980](https://github.com/eslint/eslint/issues/19980)) (Yuki Takada (Yukinosuke Takada))
- [`0d17242`](https://github.com/eslint/eslint/commit/0d17242b3c25c2ddf8363f4560641acd1ae82ca9) docs: Update README (GitHub Actions Bot)
- [`fa20b9d`](https://github.com/eslint/eslint/commit/fa20b9db8ff90ea9f0527118114dda17c656d095) docs: Clarify when to open an issue for a MR ([#&#8203;19974](https://github.com/eslint/eslint/issues/19974)) (Nicholas C. Zakas)

##### Build Related

- [`27fa865`](https://github.com/eslint/eslint/commit/27fa86551bd173387e29a139293de78b0e14f0f3) build: use `ESLint` class to generate formatter examples ([#&#8203;19972](https://github.com/eslint/eslint/issues/19972)) (Milos Djermanovic)

##### Chores

- [`4258046`](https://github.com/eslint/eslint/commit/425804602ecb9ee5f54d1c38a473cf20538420c5) chore: update dependency [@&#8203;eslint/js](https://github.com/eslint/js) to v9.33.0 ([#&#8203;19998](https://github.com/eslint/eslint/issues/19998)) (renovate\[bot])
- [`ad28371`](https://github.com/eslint/eslint/commit/ad283717ed4764a171120ca7c6cba82a78fa024c) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`06a22f1`](https://github.com/eslint/eslint/commit/06a22f154c08ea044b3172b357b226d34dfefc6a) test: resolve flakiness in --mcp flag test ([#&#8203;19993](https://github.com/eslint/eslint/issues/19993)) (Pixel998)
- [`54920ed`](https://github.com/eslint/eslint/commit/54920ed229693f23650dace6e567bf44413aaf98) test: switch to `Linter.Config` in `ESLintRules` type tests ([#&#8203;19977](https://github.com/eslint/eslint/issues/19977)) (Francesco Trotta)

### [`v9.32.0`](https://github.com/eslint/eslint/releases/tag/v9.32.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.31.0...v9.32.0)

#### Features

- [`1245000`](https://github.com/eslint/eslint/commit/1245000c5a81954d42f0c7eb670efe450c3bbad5) feat: support explicit resource management in core rules ([#&#8203;19828](https://github.com/eslint/eslint/issues/19828)) (fnx)
- [`0e957a7`](https://github.com/eslint/eslint/commit/0e957a7b5528f375a51e7c1a2fd1b03cdcd2af2d) feat: support typescript types in accessor rules ([#&#8203;19882](https://github.com/eslint/eslint/issues/19882)) (fnx)

#### Bug Fixes

- [`960fd40`](https://github.com/eslint/eslint/commit/960fd40dfd204af30726b49b6bec714fe49a606e) fix: Upgrade [@&#8203;eslint/js](https://github.com/eslint/js) ([#&#8203;19971](https://github.com/eslint/eslint/issues/19971)) (Nicholas C. Zakas)
- [`bbf23fa`](https://github.com/eslint/eslint/commit/bbf23fa2f1c6058f6cb5c9f2f32460a15e75e596) fix: Refactor reporting into FileReport ([#&#8203;19877](https://github.com/eslint/eslint/issues/19877)) (Nicholas C. Zakas)
- [`d498887`](https://github.com/eslint/eslint/commit/d4988872f375890bf677ce1a1d92a505085b51fa) fix: bump [@&#8203;eslint/plugin-kit](https://github.com/eslint/plugin-kit) to 0.3.4 to resolve vulnerability ([#&#8203;19965](https://github.com/eslint/eslint/issues/19965)) (Milos Djermanovic)
- [`f46fc6c`](https://github.com/eslint/eslint/commit/f46fc6c137c951bc73cf3bd9446053c1b11f769b) fix: report only global references in no-implied-eval ([#&#8203;19932](https://github.com/eslint/eslint/issues/19932)) (Nitin Kumar)
- [`7863d26`](https://github.com/eslint/eslint/commit/7863d26b7cfb03a81ec86f93439757ff60bf6afb) fix: remove outdated types in `ParserOptions.ecmaFeatures` ([#&#8203;19944](https://github.com/eslint/eslint/issues/19944)) (ntnyq)
- [`3173305`](https://github.com/eslint/eslint/commit/317330552e2d276221c7f2dd9c1516ad8b41cc3c) fix: update execScript message in no-implied-eval rule ([#&#8203;19937](https://github.com/eslint/eslint/issues/19937)) (TKDev7)

#### Documentation

- [`86e7426`](https://github.com/eslint/eslint/commit/86e7426e4463ca49ffa5c82e825ecb6aa19ca8a0) docs: Update README (GitHub Actions Bot)

#### Chores

- [`50de1ce`](https://github.com/eslint/eslint/commit/50de1ced9df2b1ee48ee6843c8cfe0f5d8edbc27) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`74f01a3`](https://github.com/eslint/eslint/commit/74f01a3f5905aaa0902837ced2425209c09c048f) ci: unpin `jiti` to version `^2.5.1` ([#&#8203;19970](https://github.com/eslint/eslint/issues/19970)) (루밀LuMir)
- [`2ab1381`](https://github.com/eslint/eslint/commit/2ab13813a7e7f3014c35490b351447ec43229951) ci: pin `jiti` to version 2.4.2 ([#&#8203;19964](https://github.com/eslint/eslint/issues/19964)) (Francesco Trotta)
- [`b7f7545`](https://github.com/eslint/eslint/commit/b7f75454695079f54b77fcdc9ebe3b9199d5ad30) test: switch to flat config mode in `SourceCode` tests ([#&#8203;19953](https://github.com/eslint/eslint/issues/19953)) (Milos Djermanovic)
- [`f5a35e3`](https://github.com/eslint/eslint/commit/f5a35e3b7cee17cd31fc02c24c3e74b42ee202bc) test: switch to flat config mode in eslint-fuzzer ([#&#8203;19960](https://github.com/eslint/eslint/issues/19960)) (Milos Djermanovic)
- [`e22af8c`](https://github.com/eslint/eslint/commit/e22af8c42d622d8d912ee7bedf49bf4283247fdc) refactor: use `CustomRuleDefinitionType` in `JSRuleDefinition` ([#&#8203;19949](https://github.com/eslint/eslint/issues/19949)) (Francesco Trotta)
- [`e855717`](https://github.com/eslint/eslint/commit/e85571730f1360464b7ee00695c678d551f9c643) chore: switch performance tests to hyperfine ([#&#8203;19919](https://github.com/eslint/eslint/issues/19919)) (Francesco Trotta)
- [`2f73a23`](https://github.com/eslint/eslint/commit/2f73a23655092a41780859ffe0a07c44a2f1b5f5) test: switch to flat config mode in `ast-utils` tests ([#&#8203;19948](https://github.com/eslint/eslint/issues/19948)) (Milos Djermanovic)
- [`c565a53`](https://github.com/eslint/eslint/commit/c565a530f50c96dacd44e096f7d531b073aa4dc7) chore: exclude `further_reading_links.json` from Prettier formatting ([#&#8203;19943](https://github.com/eslint/eslint/issues/19943)) (Milos Djermanovic)

### [`v9.31.0`](https://github.com/eslint/eslint/releases/tag/v9.31.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.30.1...v9.31.0)

#### Features

- [`35cf44c`](https://github.com/eslint/eslint/commit/35cf44c22e36b1554486e7a75c870e86c10b83f8) feat: output full actual location in rule tester if different ([#&#8203;19904](https://github.com/eslint/eslint/issues/19904)) (ST-DDT)
- [`a6a6325`](https://github.com/eslint/eslint/commit/a6a63259de6cb5642f69c7be429554bbcedca4c0) feat: support explicit resource management in `no-loop-func` ([#&#8203;19895](https://github.com/eslint/eslint/issues/19895)) (Milos Djermanovic)
- [`4682cdc`](https://github.com/eslint/eslint/commit/4682cdc6960279ee17f23899fbab6f58d881eadf) feat: support explicit resource management in `no-undef-init` ([#&#8203;19894](https://github.com/eslint/eslint/issues/19894)) (Milos Djermanovic)
- [`5848216`](https://github.com/eslint/eslint/commit/58482165eaf597cc5c58216a956c301ae87520b3) feat: support explicit resource management in `init-declarations` ([#&#8203;19893](https://github.com/eslint/eslint/issues/19893)) (Milos Djermanovic)
- [`bb370b8`](https://github.com/eslint/eslint/commit/bb370b8e79f65ee32d9d89ecf249fb74a141ad22) feat: support explicit resource management in `no-const-assign` ([#&#8203;19892](https://github.com/eslint/eslint/issues/19892)) (Milos Djermanovic)

#### Bug Fixes

- [`07fac6c`](https://github.com/eslint/eslint/commit/07fac6cafa0426b4d1ea12d9001f3955f19b286d) fix: retry on EMFILE when writing autofix results ([#&#8203;19926](https://github.com/eslint/eslint/issues/19926)) (TKDev7)
- [`28cc7ab`](https://github.com/eslint/eslint/commit/28cc7abbb72b29b1cac6fc4253646a7839586064) fix: Remove incorrect RuleContext types ([#&#8203;19910](https://github.com/eslint/eslint/issues/19910)) (Nicholas C. Zakas)

#### Documentation

- [`664cb44`](https://github.com/eslint/eslint/commit/664cb44ab03785bd200a792607a7e20faa2d4b28) docs: Update README (GitHub Actions Bot)
- [`40dbe2a`](https://github.com/eslint/eslint/commit/40dbe2a43f83d366e9026faec70293512fb61ca2) docs: fix mismatch between `globalIgnores()` code and text ([#&#8203;19914](https://github.com/eslint/eslint/issues/19914)) (MaoShizhong)
- [`5a0069d`](https://github.com/eslint/eslint/commit/5a0069d60815246cf24e1c96125540792c2507ef) docs: Update README (GitHub Actions Bot)
- [`fef04b5`](https://github.com/eslint/eslint/commit/fef04b5c7fea99362d67b31b8e98cd4914020ed3) docs: Update working on issues info ([#&#8203;19902](https://github.com/eslint/eslint/issues/19902)) (Nicholas C. Zakas)

#### Chores

- [`3ddd454`](https://github.com/eslint/eslint/commit/3ddd454c1c73294e5af7905d60d03fac162f1b3e) chore: upgrade to `@eslint/js@9.31.0` ([#&#8203;19935](https://github.com/eslint/eslint/issues/19935)) (Francesco Trotta)
- [`d5054e5`](https://github.com/eslint/eslint/commit/d5054e5454a537e9ade238c768c262c6c592cbc1) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`0f4a378`](https://github.com/eslint/eslint/commit/0f4a3781fe7c11fad7b206c3c694655486ddd187) chore: update eslint ([#&#8203;19933](https://github.com/eslint/eslint/issues/19933)) (renovate\[bot])
- [`76c2340`](https://github.com/eslint/eslint/commit/76c2340c368f96db77439b5cd1df0196cc39bf3e) chore: bump mocha to v11 ([#&#8203;19917](https://github.com/eslint/eslint/issues/19917)) (루밀LuMir)

### [`v9.30.1`](https://github.com/eslint/eslint/releases/tag/v9.30.1)

[Compare Source](https://github.com/eslint/eslint/compare/v9.30.0...v9.30.1)

#### Bug Fixes

- [`e91bb87`](https://github.com/eslint/eslint/commit/e91bb870f8c6e38baa508f18048cd2a2d04b8b9c) fix: allow separate default and named type imports ([#&#8203;19899](https://github.com/eslint/eslint/issues/19899)) (xbinaryx)

#### Documentation

- [`ab7c625`](https://github.com/eslint/eslint/commit/ab7c62598a9fca498e495d45029ae92fd5fb9bf3) docs: Update README (GitHub Actions Bot)
- [`dae1e5b`](https://github.com/eslint/eslint/commit/dae1e5bb27db0e846efbe3026210013b42817838) docs: update jsdoc's link ([#&#8203;19896](https://github.com/eslint/eslint/issues/19896)) (JamesVanWaza)

#### Chores

- [`b035f74`](https://github.com/eslint/eslint/commit/b035f747c6e6d1c7a299c90b0ed0b8109cf24a53) chore: upgrade to `@eslint/js@9.30.1` ([#&#8203;19906](https://github.com/eslint/eslint/issues/19906)) (Francesco Trotta)
- [`b3dbc16`](https://github.com/eslint/eslint/commit/b3dbc16563cb7036d75edff9814e17053a645321) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)

### [`v9.30.0`](https://github.com/eslint/eslint/releases/tag/v9.30.0)

[Compare Source](https://github.com/eslint/eslint/compare/v9.29.0...v9.30.0)

#### Features

- [`52a5fca`](https://github.com/eslint/eslint/commit/52a5fcaa4e0bb4e55c014c20ed47d6c93b107635) feat: Support `basePath` property in config objects ([#&#8203;19879](https://github.com/eslint/eslint/issues/19879)) (Milos Djermanovic)
- [`4ab4482`](https://github.com/eslint/eslint/commit/4ab44823df4d4b47d3650da949077a0551e7579e) feat: add `allowSeparateTypeImports` option to `no-duplicate-imports` ([#&#8203;19872](https://github.com/eslint/eslint/issues/19872)) (sethamus)
- [`b8a7e7a`](https://github.com/eslint/eslint/commit/b8a7e7aeb5f0ed2e1670771ab4dda6fd723d96eb) feat: throw error when column is negative in `getIndexFromLoc` ([#&#8203;19831](https://github.com/eslint/eslint/issues/19831)) (루밀LuMir)

#### Bug Fixes

- [`6a0f164`](https://github.com/eslint/eslint/commit/6a0f164543bf8461d6a27a740c9e08aa77cbe42d) fix: handle `null` type `loc` in `getIndexFromLoc` method ([#&#8203;19862](https://github.com/eslint/eslint/issues/19862)) (루밀LuMir)
- [`3fbcd70`](https://github.com/eslint/eslint/commit/3fbcd704a0b2aef2a6c1fc34d2bc4b35f6425067) fix: update error message for `no-restricted-properties` ([#&#8203;19855](https://github.com/eslint/eslint/issues/19855)) (Tanuj Kanti)
- [`7ef4cf7`](https://github.com/eslint/eslint/commit/7ef4cf76610d42727a404e495ac6d47868cf5040) fix: remove unnecessary semicolon from fixes ([#&#8203;19857](https://github.com/eslint/eslint/issues/19857)) (Francesco Trotta)
- [`7dabc38`](https://github.com/eslint/eslint/commit/7dabc38a8406d470fb2389eec2f0ad1ad214173e) fix: use `process.version` in `--env-info` ([#&#8203;19865](https://github.com/eslint/eslint/issues/19865)) (TKDev7)

#### Documentation

- [`8662ed1`](https://github.com/eslint/eslint/commit/8662ed1f6debc358e22812b145e117aa4a907d78) docs: adopt eslint-stylistic sub packages related changes ([#&#8203;19887](https://github.com/eslint/eslint/issues/19887)) (ntnyq)
- [`20158b0`](https://github.com/eslint/eslint/commit/20158b09db3430cf00b202ba8c25ce874bbaf00a) docs: typo in comment for unused variables handling ([#&#8203;19870](https://github.com/eslint/eslint/issues/19870)) (leopardracer)
- [`ebfb5b4`](https://github.com/eslint/eslint/commit/ebfb5b46136c4d737c9783333e3057421d1a0bef) docs: Fixed Typo in configuration-files.md ([#&#8203;19873](https://github.com/eslint/eslint/issues/19873)) (0-20)
- [`4112fd0`](https://github.com/eslint/eslint/commit/4112fd09531092e9651e9981205bcd603dc56acf) docs: clarify that boolean is still allowed for rule `meta.deprecated` ([#&#8203;19866](https://github.com/eslint/eslint/issues/19866)) (Bryan Mishkin)

#### Chores

- [`2b6491c`](https://github.com/eslint/eslint/commit/2b6491cd4b8eec44d4a3f8dea1b71151e8dd0230) chore: upgrade to `@eslint/js@9.30.0` ([#&#8203;19889](https://github.com/eslint/eslint/issues/19889)) (Francesco Trotta)
- [`5a5d526`](https://github.com/eslint/eslint/commit/5a5d5261037fdf84a91f2f22d3726d58572453f4) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`eaf8a41`](https://github.com/eslint/eslint/commit/eaf8a418af32b3190494e4a2284533353c28ccfa) chore: Correct typos in linter tests ([#&#8203;19878](https://github.com/eslint/eslint/issues/19878)) (kilavvy)

</details>

<details>
<summary>mui/material-ui (@&#8203;mui/icons-material)</summary>

### [`v7.3.6`](https://github.com/mui/material-ui/blob/HEAD/CHANGELOG.md#736)

[Compare Source](https://github.com/mui/material-ui/compare/v7.3.5...v7.3.6)

<!-- generated comparing v7.3.5..master -->

*Dec 3, 2025*

A big thanks to the 22 contributors who made this release possible.

##### [@&#8203;mui/material](https://github.com/mui/material)@&#8203;7.3.6

- \[Accordion] Move properties to the AccordionOwnProps interface ([#&#8203;47348](https://github.com/mui/material-ui/issues/47348)) [@&#8203;Aleksan4e3](https://github.com/Aleksan4e3)
- \[Autocomplete] Remove unnecessary `filterSelectedOptions` dependency from `syncHighlightedIndex` useCallback ([#&#8203;47378](https://github.com/mui/material-ui/issues/47378)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[Autocomplete] Fix input caret not showing when focusing after chip navigation ([#&#8203;47249](https://github.com/mui/material-ui/issues/47249)) [@&#8203;vrachuri28](https://github.com/vrachuri28)
- \[Autocomplete] Fix ArrowLeft crash when value is not set with single-value rendering ([#&#8203;47214](https://github.com/mui/material-ui/issues/47214)) [@&#8203;rithik56](https://github.com/rithik56)
- \[Button] Fix running formAction when passed ([#&#8203;47185](https://github.com/mui/material-ui/issues/47185)) [@&#8203;sai6855](https://github.com/sai6855)
- \[Chip] Remove leftover closing parenthesis in CSS class key ([#&#8203;47345](https://github.com/mui/material-ui/issues/47345)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[ListItem] Add `secondaryAction` slot to `ListItem` ([#&#8203;47399](https://github.com/mui/material-ui/issues/47399)) [@&#8203;sai6855](https://github.com/sai6855)
- \[NumberField] Fix scroll behavior ([#&#8203;47397](https://github.com/mui/material-ui/issues/47397)) [@&#8203;oliviertassinari](https://github.com/oliviertassinari)
- \[Select] Fix keyboard navigation while rendering in shadow DOM ([#&#8203;47380](https://github.com/mui/material-ui/issues/47380)) [@&#8203;xBlizZer](https://github.com/xBlizZer)
- \[Select] Fix cannot pass certain event handlers ([#&#8203;47366](https://github.com/mui/material-ui/issues/47366)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[Slider] Accept readonly array for `marks` prop ([#&#8203;47370](https://github.com/mui/material-ui/issues/47370)) [@&#8203;pcorpet](https://github.com/pcorpet)
- \[Snackbar] Avoid unnecessary `ownerState` spread into `useSnackbar` ([#&#8203;47373](https://github.com/mui/material-ui/issues/47373)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- \[TextField] Allow custom props in slot props via TS module augmentation ([#&#8203;47367](https://github.com/mui/material-ui/issues/47367)) [@&#8203;kumarvishwajeettrivedi](https://github.com/kumarvishwajeettrivedi)
- \[Tabs] Fix Arrow key navigation failing when component is rendered in shadow DOM ([#&#8203;47178](https://github.com/mui/material-ui/issues/47178)) [@&#8203;sai6855](https://github.com/sai6855)
- Fix typings for theme `applyStyles` with custom color schemes ([#&#8203;47242](https://github.com/mui/material-ui/issues/47242)) [@&#8203;akankshahu](https://github.com/akankshahu)

##### [@&#8203;mui/system](https://github.com/mui/system)@&#8203;7.3.6

- Fix unwanted attribute on DOM from InitColorSchemeScript `class` attribute ([#&#8203;47200](https://github.com/mui/material-ui/issues/47200)) [@&#8203;siriwatknp](https://github.com/siriwatknp)

##### [@&#8203;mui/lab](https://github.com/mui/lab)@&#8203;7.3.6

- \[Masonry] Fix layout flicker and single column issue ([#&#8203;43903](https://github.com/mui/material-ui/issues/43903)) [@&#8203;Fanzzzd](https://github.com/Fanzzzd)

##### Docs

- Fix default theme viewer styling ([#&#8203;47400](https://github.com/mui/material-ui/issues/47400)) [@&#8203;sai6855](https://github.com/sai6855)
- Remove repetitive words ([#&#8203;47384](https://github.com/mui/material-ui/issues/47384)) [@&#8203;rifeplight](https://github.com/rifeplight)
- Fix link to Portal API docs ([#&#8203;47383](https://github.com/mui/material-ui/issues/47383)) [@&#8203;ZeeshanTamboli](https://github.com/ZeeshanTamboli)
- Remove mentions of MUI Base from Material UI docs ([#&#8203;47324](https://github.com/mui/material-ui/issues/47324)) [@&#8203;mapache-salvaje](https://github.com/mapache-salvaje)
- Update CSP guidance ([#&#8203;47342](https://github.com/mui/material-ui/issues/47342)) [@&#8203;rossdakin](https://github.com…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

accepted There is consensus among the team that this change meets the criteria for inclusion contributor pool core Relates to ESLint's core APIs and features feature This change adds a new feature to ESLint

Projects

Status: Complete

Development

Successfully merging this pull request may close these issues.

6 participants