-
-
Notifications
You must be signed in to change notification settings - Fork 4.8k
feat: Implement modified cyclomatic complexity #18896
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Implements an option to use the modified cyclomatic complexity, where a switch statement only increases the value by 1 regardless of how many case statements it contains. Fixes eslint#18885
✅ Deploy Preview for docs-eslint ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
Marking as a draft because #18885 has not yet been accepted. |
lib/rules/complexity.js
Outdated
if (Object.hasOwn(option, "modifiedComplexity")) { | ||
IS_MODIFIED_COMPLEXITY = option.modifiedComplexity; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if (Object.hasOwn(option, "modifiedComplexity")) { | |
IS_MODIFIED_COMPLEXITY = option.modifiedComplexity; | |
} |
@dpashk-figma can you please sign CLA? |
"SwitchCase[test]": () => IS_MODIFIED_COMPLEXITY || increaseComplexity(), | ||
SwitchStatement: () => IS_MODIFIED_COMPLEXITY && increaseComplexity(), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By default (classic cyclomatic complexity), empty switch statements and switch statements with only default
clause count as 0, but with modified cyclomatic complexity they would count as 1?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a very good question. Logic would suggest that if there is no branching at all, the complexity should be 0, but it seems like other analysis tools that support modified complexity always just give it a score of 1
without analyzing its contents. Here are my findings from the internet:
- I was able to verify that that's how it works in lizard
- I don't have access to Understand, but here's what their docs say:
Modified Cyclomatic Complexity: Each decision in a multi-decision structure statement (switch in C/C++) is not counted and instead the entire structure counts as 1
(there's also more detailed documentation in a PDF with an illustration, see page 53)
- I don't have access to MatLab, but there is a detailed table in its docs that describe how its
cyclomaticTest
module works, and I'm inferring from it that it also just gives the wholeswitch
statement a score of 1. - Project Metrics' docs also say "+1 for an entire Select Case"
It is a bit odd, and it wouldn't be hard to analyze the contents of switch in AST, but I think we should stay consistent with other implementations.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed.
docs/src/rules/complexity.md
Outdated
"complexity": ["error", 2] | ||
``` | ||
|
||
### modifiedComplexity |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm curious if there are other forms of cyclomatic complexity, too?
If so, it might be better to make this a string option like form: "modified"
vs form: "mccabe"
to allow for future expansion?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also good question. There seem to be at least three common implementations, in addition to the classic one. From Understand's docs:
Modified Cyclomatic Complexity: Each decision in a multi-decision structure statement (switch in C/C++) is not counted and instead the entire structure counts as 1
Strict Cyclomatic Complexity: Logical ANDs and ORs in conditional expressions also add 1 to the complexity for each of their occurrences.
i.e. The statement if (a && b || c) would have a Cyclomatic of 1 but a Strict Cyclomatic of 3
Essential Complexity: Iteratively replaces all well structured control structures with a single statement. Structures such as if-then-else and while loops are considered well structured.
I've also come across these in other sources, although the the ones besides the Modified Complexity are even less common. I don't have a strong opinion, but I'm slightly leaning towards keeping the modifiedComplexity
option as is and deprecating it in favor of something like form: "..."
if/when we want to support more models.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm generally not a fan of adding things if we think there's a reasonable chance we'll need to deprecate it in the future. Deprecations cause a lot confusion and we end up needing to support more than one way of doing things for a while, which gets messy. So given that there are other forms, my vote is to go with form
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I agree with the downsides of a potential deprecation. I was just trying to not over-engineer upfront. Switched to using variant
. I like that word better than form
in this context, and these metrics are often referred to as "variations" of (the classic) cyclomatic complexity.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works for me.
Yes, working with my employer on that! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Leaving open for @mdjermanovic to verify and to wait for CLA signature.
}, | ||
variant: { | ||
type: "string", | ||
enum: ["classic", "modified"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way why can't we use the default
property in JSONSchema?
If I add e.g. default: "classic"
here, all the tests fail with:
Error: Schema for rule complexity is invalid: default is ignored for: data1.variant
Would be nice to specify defaults at schema level
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because default
doesn't work the way people think it does in ESLint. We're working on an alternate way to deal with default options: #17656
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As in, the current option schema validator merely validates the input against the schema and does not fill in the default values?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It fills in the default values but only if there's an object to fill in. For example, if the rule is configured as ["error", { someOtherProperty: "foo" }]
or even just ["error", {}]
. But it will not add an object if the configuration is just ["error"]
. So overall, it's not very useful.
Also, it doesn't fill in the default values if the object is under anyOf
or oneOf
(that's the error you're getting).
The CI error looks like a flake unrelated to my changes. Can someone kick off another run, please?
|
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
##### [v9.18.0](eslint/eslint@v9.17.0...1c87b41) ##### [v9.17.0](eslint/eslint@v9.16.0...90c1db9) ##### [v9.16.0](https://github.com/eslint/eslint/releases/tag/v9.16.0) #### Features - [`8f70eb1`](eslint/eslint@8f70eb1) feat: Add `ignoreComputedKeys` option in `sort-keys` rule ([#19162](eslint/eslint#19162)) (Milos Djermanovic) #### Documentation - [`9eefc8f`](eslint/eslint@9eefc8f) docs: fix typos in `use-isnan` ([#19190](eslint/eslint#19190)) (루밀LuMir) - [`0c8cea8`](eslint/eslint@0c8cea8) docs: switch the order of words in `no-unreachable` ([#19189](eslint/eslint#19189)) (루밀LuMir) - [`0c19417`](eslint/eslint@0c19417) docs: add missing backtick to `no-async-promise-executor` ([#19188](eslint/eslint#19188)) (루밀LuMir) - [`8df9276`](eslint/eslint@8df9276) docs: add backtick in `-0` in `description` of `no-compare-neg-zero` ([#19186](eslint/eslint#19186)) (루밀LuMir) - [`7e16e3f`](eslint/eslint@7e16e3f) docs: fix `caseSensitive` option's title of `sort-keys` ([#19183](eslint/eslint#19183)) (Tanuj Kanti) - [`0c6b842`](eslint/eslint@0c6b842) docs: fix typos in `migration-guide.md` ([#19180](eslint/eslint#19180)) (루밀LuMir) - [`353266e`](eslint/eslint@353266e) docs: fix a typo in `debug.md` ([#19179](eslint/eslint#19179)) (루밀LuMir) - [`5ff318a`](eslint/eslint@5ff318a) docs: delete unnecessary horizontal rule(`---`) in `nodejs-api` ([#19175](eslint/eslint#19175)) (루밀LuMir) - [`576bcc5`](eslint/eslint@576bcc5) docs: mark more rules as handled by TypeScript ([#19164](eslint/eslint#19164)) (Tanuj Kanti) - [`742d054`](eslint/eslint@742d054) docs: note that `no-restricted-syntax` can be used with any language ([#19148](eslint/eslint#19148)) (Milos Djermanovic) #### Chores - [`feb703b`](eslint/eslint@feb703b) chore: upgrade to `@eslint/js@9.16.0` ([#19195](eslint/eslint#19195)) (Francesco Trotta) - [`df9bf95`](eslint/eslint@df9bf95) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`f831893`](eslint/eslint@f831893) chore: add type for `ignoreComputedKeys` option of `sort-keys` ([#19184](eslint/eslint#19184)) (Tanuj Kanti) - [`3afb8a1`](eslint/eslint@3afb8a1) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.8.0 ([#19177](eslint/eslint#19177)) (Milos Djermanovic) - [`1f77c53`](eslint/eslint@1f77c53) chore: add `repository.directory` property to `package.json` ([#19165](eslint/eslint#19165)) (루밀LuMir) - [`d460594`](eslint/eslint@d460594) chore: update dependency [@arethetypeswrong/cli](https://github.com/arethetypeswrong/cli) to ^0.17.0 ([#19147](eslint/eslint#19147)) (renovate\[bot]) - [`45cd4ea`](eslint/eslint@45cd4ea) refactor: update default options in rules ([#19136](eslint/eslint#19136)) (Milos Djermanovic) ##### [v9.15.0](eslint/eslint@v9.14.0...6f37b07) ##### [v9.14.0](eslint/eslint@v9.13.0...db0b844) ##### [v9.13.0](eslint/eslint@v9.12.0...1a7cdbf) ##### [v9.12.0](https://github.com/eslint/eslint/releases/tag/v9.12.0) #### Features - [`5a6a053`](eslint/eslint@5a6a053) feat: update to `jiti` v2 ([#18954](eslint/eslint#18954)) (Arya Emami) - [`17a07fb`](eslint/eslint@17a07fb) feat: Hooks for test cases (RuleTester) ([#18771](eslint/eslint#18771)) (Anna Bocharova) - [`2ff0e51`](eslint/eslint@2ff0e51) feat: Implement alternate config lookup ([#18742](eslint/eslint#18742)) (Nicholas C. Zakas) - [`2d17453`](eslint/eslint@2d17453) feat: Implement modified cyclomatic complexity ([#18896](eslint/eslint#18896)) (Dmitry Pashkevich) #### Bug Fixes - [`ea380ca`](eslint/eslint@ea380ca) fix: Upgrade retry to avoid EMFILE errors ([#18986](eslint/eslint#18986)) (Nicholas C. Zakas) - [`fdd6319`](eslint/eslint@fdd6319) fix: Issues with type definitions ([#18940](eslint/eslint#18940)) (Arya Emami) #### Documentation - [`ecbd522`](eslint/eslint@ecbd522) docs: Mention code explorer ([#18978](eslint/eslint#18978)) (Nicholas C. Zakas) - [`7ea4ecc`](eslint/eslint@7ea4ecc) docs: Clarifying the Use of Meta Objects ([#18697](eslint/eslint#18697)) (Amaresh S M) - [`d3e4b2e`](eslint/eslint@d3e4b2e) docs: Clarify how to exclude `.js` files ([#18976](eslint/eslint#18976)) (Milos Djermanovic) - [`57232ff`](eslint/eslint@57232ff) docs: Mention plugin-kit in language docs ([#18973](eslint/eslint#18973)) (Nicholas C. Zakas) - [`b80ed00`](eslint/eslint@b80ed00) docs: Update README (GitHub Actions Bot) - [`cb69ab3`](eslint/eslint@cb69ab3) docs: Update README (GitHub Actions Bot) - [`7fb0d95`](eslint/eslint@7fb0d95) docs: Update README (GitHub Actions Bot) - [`493348a`](eslint/eslint@493348a) docs: Update README (GitHub Actions Bot) - [`87a582c`](eslint/eslint@87a582c) docs: fix typo in `id-match` rule ([#18944](eslint/eslint#18944)) (Jay) #### Chores - [`555aafd`](eslint/eslint@555aafd) chore: upgrade to `@eslint/js@9.12.0` ([#18987](eslint/eslint#18987)) (Francesco Trotta) - [`873ae60`](eslint/eslint@873ae60) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`d0a5414`](eslint/eslint@d0a5414) refactor: replace strip-ansi with native module ([#18982](eslint/eslint#18982)) (Cristopher) - [`b827029`](eslint/eslint@b827029) chore: Enable JSON5 linting ([#18979](eslint/eslint#18979)) (Milos Djermanovic) - [`8f55ca2`](eslint/eslint@8f55ca2) chore: Upgrade espree, eslint-visitor-keys, eslint-scope ([#18962](eslint/eslint#18962)) (Nicholas C. Zakas) - [`c1a2725`](eslint/eslint@c1a2725) chore: update dependency mocha to ^10.7.3 ([#18945](eslint/eslint#18945)) (Milos Djermanovic) ##### [v9.11.1](eslint/eslint@v9.11.0...69e9459) ##### [v9.11.0](https://github.com/eslint/eslint/releases/tag/v9.11.0) #### Features - [`ec30c73`](eslint/eslint@ec30c73) feat: add "eslint/universal" to export `Linter` ([#18883](eslint/eslint#18883)) (唯然) - [`c591da6`](eslint/eslint@c591da6) feat: Add language to types ([#18917](eslint/eslint#18917)) (Nicholas C. Zakas) - [`492eb8f`](eslint/eslint@492eb8f) feat: limit the name given to `ImportSpecifier` in `id-length` ([#18861](eslint/eslint#18861)) (Tanuj Kanti) - [`19c6856`](eslint/eslint@19c6856) feat: Add `no-useless-constructor` suggestion ([#18799](eslint/eslint#18799)) (Jordan Thomson) - [`a48f8c2`](eslint/eslint@a48f8c2) feat: add type `FormatterFunction`, update `LoadedFormatter` ([#18872](eslint/eslint#18872)) (Francesco Trotta) #### Bug Fixes - [`5e5f39b`](eslint/eslint@5e5f39b) fix: add missing types for `no-restricted-exports` rule ([#18914](eslint/eslint#18914)) (Kristóf Poduszló) - [`8f630eb`](eslint/eslint@8f630eb) fix: add missing types for `no-param-reassign` options ([#18906](eslint/eslint#18906)) (Kristóf Poduszló) - [`d715781`](eslint/eslint@d715781) fix: add missing types for `no-extra-boolean-cast` options ([#18902](eslint/eslint#18902)) (Kristóf Poduszló) - [`2de5742`](eslint/eslint@2de5742) fix: add missing types for `no-misleading-character-class` options ([#18905](eslint/eslint#18905)) (Kristóf Poduszló) - [`c153084`](eslint/eslint@c153084) fix: add missing types for `no-implicit-coercion` options ([#18903](eslint/eslint#18903)) (Kristóf Poduszló) - [`fa11b2e`](eslint/eslint@fa11b2e) fix: add missing types for `no-empty-function` options ([#18901](eslint/eslint#18901)) (Kristóf Poduszló) - [`a0deed1`](eslint/eslint@a0deed1) fix: add missing types for `camelcase` options ([#18897](eslint/eslint#18897)) (Kristóf Poduszló) #### Documentation - [`e4e5709`](eslint/eslint@e4e5709) docs: correct `prefer-object-has-own` type definition comment ([#18924](eslint/eslint#18924)) (Nitin Kumar) - [`91cbd18`](eslint/eslint@91cbd18) docs: add unicode abbreviations in no-irregular-whitespace rule ([#18894](eslint/eslint#18894)) (Alix Royere) - [`59cfc0f`](eslint/eslint@59cfc0f) docs: clarify `resultsMeta` in `LoadedFormatter` type ([#18881](eslint/eslint#18881)) (Milos Djermanovic) - [`adcc50d`](eslint/eslint@adcc50d) docs: Update README (GitHub Actions Bot) - [`4edac1a`](eslint/eslint@4edac1a) docs: Update README (GitHub Actions Bot) #### Build Related - [`959d360`](eslint/eslint@959d360) build: Support updates to previous major versions ([#18871](eslint/eslint#18871)) (Milos Djermanovic) #### Chores - [`ca21a64`](eslint/eslint@ca21a64) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).11.0 ([#18927](eslint/eslint#18927)) (Milos Djermanovic) - [`a10f90a`](eslint/eslint@a10f90a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`e4e02cc`](eslint/eslint@e4e02cc) refactor: Extract processor logic into ProcessorService ([#18818](eslint/eslint#18818)) (Nicholas C. Zakas) - [`6d4484d`](eslint/eslint@6d4484d) chore: updates for v8.57.1 release (Jenkins) - [`71f37c5`](eslint/eslint@71f37c5) refactor: use optional chaining when validating config rules ([#18893](eslint/eslint#18893)) (lucasrmendonca) - [`2c2805f`](eslint/eslint@2c2805f) chore: Add PR note to all templates ([#18892](eslint/eslint#18892)) (Nicholas C. Zakas) - [`7b852ce`](eslint/eslint@7b852ce) refactor: use `Directive` class from `@eslint/plugin-kit` ([#18884](eslint/eslint#18884)) (Milos Djermanovic) - [`d594ddd`](eslint/eslint@d594ddd) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.6.0 ([#18863](eslint/eslint#18863)) (renovate\[bot]) - [`78b2421`](eslint/eslint@78b2421) chore: Update change.yml ([#18882](eslint/eslint#18882)) (Nicholas C. Zakas) - [`a416f0a`](eslint/eslint@a416f0a) chore: enable `$ExpectType` comments in .ts files ([#18869](eslint/eslint#18869)) (Francesco Trotta) ##### [v9.10.0](eslint/eslint@v9.9.1...6448f32) ##### [v9.9.1](eslint/eslint@v9.9.0...8781e6f) ##### [v9.9.0](https://github.com/eslint/eslint/releases/tag/v9.9.0) #### Features - [`41d0206`](eslint/eslint@41d0206) feat: Add support for TS config files ([#18134](eslint/eslint#18134)) (Arya Emami) - [`3a4eaf9`](eslint/eslint@3a4eaf9) feat: add suggestion to `require-await` to remove `async` keyword ([#18716](eslint/eslint#18716)) (Dave) #### Documentation - [`9fe068c`](eslint/eslint@9fe068c) docs: how to author plugins with configs that extend other configs ([#18753](eslint/eslint#18753)) (Alec Gibson) - [`48117b2`](eslint/eslint@48117b2) docs: add version support page in the side navbar ([#18738](eslint/eslint#18738)) (Amaresh S M) - [`fec2951`](eslint/eslint@fec2951) docs: add version support page to the dropdown ([#18730](eslint/eslint#18730)) (Amaresh S M) - [`38a0661`](eslint/eslint@38a0661) docs: Fix typo ([#18735](eslint/eslint#18735)) (Zaina Al Habash) - [`3c32a9e`](eslint/eslint@3c32a9e) docs: Update yarn command for creating ESLint config ([#18739](eslint/eslint#18739)) (Temitope Ogunleye) - [`f9ac978`](eslint/eslint@f9ac978) docs: Update README (GitHub Actions Bot) #### Chores - [`461b2c3`](eslint/eslint@461b2c3) chore: upgrade to `@eslint/js@9.9.0` ([#18765](eslint/eslint#18765)) (Francesco Trotta) - [`59dba1b`](eslint/eslint@59dba1b) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`fea8563`](eslint/eslint@fea8563) chore: update dependency [@eslint/core](https://github.com/eslint/core) to ^0.3.0 ([#18724](eslint/eslint#18724)) (renovate\[bot]) - [`aac191e`](eslint/eslint@aac191e) chore: update dependency [@eslint/json](https://github.com/eslint/json) to ^0.3.0 ([#18760](eslint/eslint#18760)) (renovate\[bot]) - [`b97fa05`](eslint/eslint@b97fa05) chore: update wdio dependencies for more stable tests ([#18759](eslint/eslint#18759)) (Christian Bromann) ##### [v9.8.0](eslint/eslint@v9.7.0...63881dc) ##### [v9.7.0](https://github.com/eslint/eslint/releases/tag/v9.7.0) #### Features - [`7bd9839`](eslint/eslint@7bd9839) feat: add support for es2025 duplicate named capturing groups ([#18630](eslint/eslint#18630)) (Yosuke Ota) - [`1381394`](eslint/eslint@1381394) feat: add `regex` option in `no-restricted-imports` ([#18622](eslint/eslint#18622)) (Nitin Kumar) #### Bug Fixes - [`14e9f81`](eslint/eslint@14e9f81) fix: destructuring in catch clause in `no-unused-vars` ([#18636](eslint/eslint#18636)) (Francesco Trotta) #### Documentation - [`9f416db`](eslint/eslint@9f416db) docs: Add Powered by Algolia label to the search. ([#18633](eslint/eslint#18633)) (Amaresh S M) - [`c8d26cb`](eslint/eslint@c8d26cb) docs: Open JS Foundation -> OpenJS Foundation ([#18649](eslint/eslint#18649)) (Milos Djermanovic) - [`6e79ac7`](eslint/eslint@6e79ac7) docs: `loadESLint` does not support option `cwd` ([#18641](eslint/eslint#18641)) (Francesco Trotta) #### Chores - [`793b718`](eslint/eslint@793b718) chore: upgrade [@eslint/js](https://github.com/eslint/js)[@9](https://github.com/9).7.0 ([#18680](eslint/eslint#18680)) (Francesco Trotta) - [`7ed6f9a`](eslint/eslint@7ed6f9a) chore: package.json update for [@eslint/js](https://github.com/eslint/js) release (Jenkins) - [`7bcda76`](eslint/eslint@7bcda76) refactor: Add type references ([#18652](eslint/eslint#18652)) (Nicholas C. Zakas) - [`51bf57c`](eslint/eslint@51bf57c) chore: add tech sponsors through actions ([#18624](eslint/eslint#18624)) (Strek) - [`6320732`](eslint/eslint@6320732) refactor: don't use `parent` property in `NodeEventGenerator` ([#18653](eslint/eslint#18653)) (Milos Djermanovic) - [`9e6d640`](eslint/eslint@9e6d640) refactor: move "Parsing error" prefix adding to Linter ([#18650](eslint/eslint#18650)) (Milos Djermanovic) ##### [v9.6.0](eslint/eslint@v9.5.0...473d1bb) ##### [v9.5.0](eslint/eslint@v9.4.0...5352357) ##### [v9.4.0](eslint/eslint@v9.3.0...a5f7e58) ##### [v9.3.0](eslint/eslint@v9.2.0...41a871c) ##### [v9.2.0](eslint/eslint@v9.1.1...271e7ab) ##### [v9.1.1](eslint/eslint@v9.1.0...b4d2512) ##### [v9.1.0](eslint/eslint@v9.0.0...b78d831) ##### [v9.0.0](eslint/eslint@v8.57.0...e0cbc50)
Implements an option to use the modified cyclomatic complexity, where a switch statement only increases the value by 1 regardless of how many case statements it contains.
Fixes #18885
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)
[x] Changes an existing rule (template)
[ ] Add autofix to a rule
[ ] Add a CLI option
[ ] Add something to the core
[ ] Other, please explain:
See proposal in #18885
What changes did you make? (Give an overview)
Implements an option to use the modified cyclomatic complexity, where a switch statement only increases the value by 1 regardless of how many case statements it contains. The new behavior is opt-in so it's backwards-compatible and shouldn't affect existing setups.
I reorganized the rule option documentation a bit now that there's more than one option. I was following the example of the max-lines option docs.
Is there anything you'd like reviewers to focus on?
Nothing in particular.