Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 30, 2026

Bumps eslint from 7.22.0 to 9.26.0.

Release notes

Sourced from eslint's releases.

v9.26.0

Features

  • e9754e7 feat: add reportGlobalThis to no-shadow-restricted-names (#19670) (sethamus)
  • 0fa2b7a feat: add suggestions for eqeqeq rule (#19640) (Nitin Kumar)
  • dcbdcc9 feat: Add MCP server (#19592) (Nicholas C. Zakas)
  • 2dfd83e feat: add ignoreDirectives option in no-unused-expressions (#19645) (sethamus)

Bug Fixes

  • 96e84de fix: check cache file existence before deletion (#19648) (sethamus)
  • d683aeb fix: don't crash on tests with circular references in RuleTester (#19664) (Milos Djermanovic)
  • 9736d5d fix: add namespace to Plugin.meta type (#19661) (Milos Djermanovic)
  • 17bae69 fix: update RuleTester.run() type (#19634) (Nitin Kumar)

Documentation

  • dd98d63 docs: Update README (GitHub Actions Bot)
  • c25e858 docs: Update README (GitHub Actions Bot)
  • b2397e9 docs: Update README (GitHub Actions Bot)
  • addd0a6 docs: fix formatting of unordered lists in Markdown (#19660) (Milos Djermanovic)
  • a21b38d docs: Update README (GitHub Actions Bot)
  • c0721a7 docs: fix double space in command (#19657) (CamWass)

Chores

  • 5b247c8 chore: upgrade to @eslint/js@9.26.0 (#19681) (Francesco Trotta)
  • d6fa4ac chore: package.json update for @​eslint/js release (Jenkins)
  • 0958690 chore: disambiguate internal types LanguageOptions and Rule (#19669) (Francesco Trotta)
  • f1c858e chore: fix internal type references to Plugin and Rule (#19665) (Francesco Trotta)
  • 40dd299 refactor: One-shot ESQuery selector analysis (#19652) (Nicholas C. Zakas)
  • 1cfd702 chore: update dependency @​eslint/json to ^0.12.0 (#19656) (renovate[bot])

v9.25.1

Bug Fixes

  • cdc8e8c fix: revert directive detection in no-unused-expressions (#19639) (sethamus)

Chores

  • 1f2b057 chore: upgrade @​eslint/js@​9.25.1 (#19642) (Milos Djermanovic)
  • 771317f chore: package.json update for @​eslint/js release (Jenkins)

v9.25.0

Features

  • dcd95aa feat: support TypeScript syntax in no-empty-function rule (#19551) (sethamus)
  • 77d6d5b feat: support TS syntax in no-unused-expressions (#19564) (Sweta Tanwar)
  • 90228e5 feat: support JSRuleDefinition type (#19604) (루밀LuMir)
  • 59ba6b7 feat: add allowObjects option to no-restricted-properties (#19607) (sethamus)
  • db650a0 feat: support TypeScript syntax in no-invalid-this rule (#19532) (Tanuj Kanti)
  • 9535cff feat: support TS syntax in no-loop-func (#19559) (Nitin Kumar)

Bug Fixes

  • 910bd13 fix: nodeTypeKey not being used in NodeEventGenerator (#19631) (StyleShit)

Documentation

... (truncated)

Changelog

Sourced from eslint's changelog.

v9.26.0 - May 2, 2025

  • 5b247c8 chore: upgrade to @eslint/js@9.26.0 (#19681) (Francesco Trotta)
  • d6fa4ac chore: package.json update for @​eslint/js release (Jenkins)
  • e9754e7 feat: add reportGlobalThis to no-shadow-restricted-names (#19670) (sethamus)
  • 0fa2b7a feat: add suggestions for eqeqeq rule (#19640) (Nitin Kumar)
  • dd98d63 docs: Update README (GitHub Actions Bot)
  • 96e84de fix: check cache file existence before deletion (#19648) (sethamus)
  • c25e858 docs: Update README (GitHub Actions Bot)
  • 0958690 chore: disambiguate internal types LanguageOptions and Rule (#19669) (Francesco Trotta)
  • dcbdcc9 feat: Add MCP server (#19592) (Nicholas C. Zakas)
  • b2397e9 docs: Update README (GitHub Actions Bot)
  • d683aeb fix: don't crash on tests with circular references in RuleTester (#19664) (Milos Djermanovic)
  • f1c858e chore: fix internal type references to Plugin and Rule (#19665) (Francesco Trotta)
  • 9736d5d fix: add namespace to Plugin.meta type (#19661) (Milos Djermanovic)
  • 40dd299 refactor: One-shot ESQuery selector analysis (#19652) (Nicholas C. Zakas)
  • addd0a6 docs: fix formatting of unordered lists in Markdown (#19660) (Milos Djermanovic)
  • a21b38d docs: Update README (GitHub Actions Bot)
  • c0721a7 docs: fix double space in command (#19657) (CamWass)
  • 1cfd702 chore: update dependency @​eslint/json to ^0.12.0 (#19656) (renovate[bot])
  • 2dfd83e feat: add ignoreDirectives option in no-unused-expressions (#19645) (sethamus)
  • 17bae69 fix: update RuleTester.run() type (#19634) (Nitin Kumar)

v9.25.1 - April 21, 2025

  • 1f2b057 chore: upgrade @​eslint/js@​9.25.1 (#19642) (Milos Djermanovic)
  • 771317f chore: package.json update for @​eslint/js release (Jenkins)
  • cdc8e8c fix: revert directive detection in no-unused-expressions (#19639) (sethamus)

v9.25.0 - April 18, 2025

  • 88dc196 chore: upgrade @​eslint/js@​9.25.0 (#19636) (Milos Djermanovic)
  • 345288d chore: package.json update for @​eslint/js release (Jenkins)
  • 910bd13 fix: nodeTypeKey not being used in NodeEventGenerator (#19631) (StyleShit)
  • ca7a735 docs: update no-undef-init when not to use section (#19624) (Tanuj Kanti)
  • affe6be chore: upgrade trunk (#19628) (sethamus)
  • 1b870c9 docs: use eslint-config-xo in the getting started guide (#19629) (Nitin Kumar)
  • 5d4af16 docs: add types for multiple rule options (#19616) (Tanuj Kanti)
  • e8f8d57 docs: Update README (GitHub Actions Bot)
  • a40348f docs: no-use-before-define tweaks (#19622) (Kirk Waiblinger)
  • 0ba3ae3 docs: Update README (GitHub Actions Bot)
  • 865dbfe docs: ensure "learn more" deprecation links point to useful resource (#19590) (Kirk Waiblinger)
  • dcd95aa feat: support TypeScript syntax in no-empty-function rule (#19551) (sethamus)
  • 77d6d5b feat: support TS syntax in no-unused-expressions (#19564) (Sweta Tanwar)
  • 90228e5 feat: support JSRuleDefinition type (#19604) (루밀LuMir)
  • f80b746 docs: add known limitations for no-self-compare (#19612) (Nitin Kumar)
  • 59ba6b7 feat: add allowObjects option to no-restricted-properties (#19607) (sethamus)
  • db650a0 feat: support TypeScript syntax in no-invalid-this rule (#19532) (Tanuj Kanti)
  • dd20cf2 test: fix no-loop-func test with duplicate variable reports (#19610) (Milos Djermanovic)
  • 9535cff feat: support TS syntax in no-loop-func (#19559) (Nitin Kumar)

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by eslintbot, a new releaser for eslint since your current version.


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [eslint](https://github.com/eslint/eslint) from 7.22.0 to 9.26.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/v9.26.0/CHANGELOG.md)
- [Commits](eslint/eslint@v7.22.0...v9.26.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 9.26.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jan 30, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 30, 2026

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • 🔍 Trigger a full review

Comment @coderabbitai help to get the list of available commands and usage tips.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Jan 30, 2026

Greptile Overview

Greptile Summary

This PR upgrades ESLint from version 7.22.0 to 9.26.0, spanning two major version bumps. However, this upgrade introduces critical breaking changes that will prevent ESLint from functioning:

  • Configuration format incompatibility: ESLint 9 no longer supports .eslintrc* configuration files by default. The repository uses .eslintrc files throughout (root and multiple packages), which require migration to the new flat config format (eslint.config.js) or setting ESLINT_USE_FLAT_CONFIG=false as a temporary workaround.

  • TypeScript ESLint incompatibility: The installed @typescript-eslint/eslint-plugin v4.18.0 and @typescript-eslint/parser v4.18.0 are incompatible with ESLint 9. These packages need to be upgraded to v8.x or v9.x to work with ESLint 9.

  • Plugin incompatibility: All ESLint plugins (eslint-config-prettier v8.1.0, eslint-plugin-import v2.22.1, eslint-plugin-jsdoc v32.3.0, eslint-plugin-monorepo v0.3.2, eslint-plugin-prefer-arrow v1.2.3) are severely outdated and may not support ESLint 9's API changes.

Required actions before merging:

  1. Upgrade all TypeScript ESLint packages to v8.x or v9.x
  2. Upgrade all ESLint plugins to ESLint 9-compatible versions
  3. Either migrate all .eslintrc files to flat config format or verify the temporary compatibility layer works
  4. Run full lint checks to ensure no runtime errors occur

Confidence Score: 0/5

  • This PR will break the linting pipeline due to multiple critical incompatibilities
  • ESLint 9 introduces breaking changes that make it incompatible with the existing configuration format (.eslintrc) and all installed ESLint-related packages. The TypeScript ESLint packages and all plugins are outdated and will not work with ESLint 9, causing linting to fail immediately when executed.
  • package.json requires updating all TypeScript ESLint packages and plugins to ESLint 9-compatible versions, plus migration to flat config

Important Files Changed

Filename Overview
package.json Upgraded ESLint from 7.22.0 to 9.26.0, but this breaks compatibility with existing TypeScript ESLint packages and plugins, and the .eslintrc configuration format is no longer supported
yarn.lock Lockfile updated with ESLint 9.26.0 dependencies, but incompatible plugin versions remain unchanged

Sequence Diagram

sequenceDiagram
    participant Dev as Developer
    participant Dep as Dependabot
    participant CI as CI/Lint Pipeline
    participant ESL as ESLint 9.26.0
    participant Plugins as ESLint Plugins
    participant Config as .eslintrc Config

    Dep->>Dep: Detect ESLint 7.22.0 → 9.26.0 update
    Dep->>Dev: Create PR #1693
    Dev->>CI: Trigger lint check
    CI->>ESL: Execute lint command
    ESL->>Config: Load .eslintrc configuration
    Config-->>ESL: ❌ Error: .eslintrc not supported (flat config required)
    ESL->>Plugins: Load @typescript-eslint/parser v4.18.0
    Plugins-->>ESL: ❌ Error: Incompatible with ESLint 9
    ESL->>Plugins: Load eslint-plugin-* packages
    Plugins-->>ESL: ❌ Error: Outdated plugin versions
    ESL-->>CI: ❌ Linting fails
    CI-->>Dev: ❌ Build/lint failure
    
    Note over Dev,Config: Required fixes:<br/>1. Upgrade TS ESLint to v8/v9<br/>2. Upgrade all plugins<br/>3. Migrate to flat config
Loading

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

2 files reviewed, 3 comments

Edit Code Review Agent Settings | Greptile

Comment on lines 42 to 43
"@typescript-eslint/eslint-plugin": "4.18.0",
"@typescript-eslint/parser": "4.18.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

ESLint 9 introduces breaking changes: @typescript-eslint/eslint-plugin v4.18.0 and @typescript-eslint/parser v4.18.0 are incompatible with ESLint 9. These TypeScript ESLint packages require upgrade to v8.x or v9.x to work with ESLint 9.

Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 42:43

Comment:
ESLint 9 introduces breaking changes: `@typescript-eslint/eslint-plugin` v4.18.0 and `@typescript-eslint/parser` v4.18.0 are incompatible with ESLint 9. These TypeScript ESLint packages require upgrade to v8.x or v9.x to work with ESLint 9.

How can I resolve this? If you propose a fix, please make it concise.

"@typescript-eslint/eslint-plugin": "4.18.0",
"@typescript-eslint/parser": "4.18.0",
"eslint": "7.22.0",
"eslint": "9.26.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

ESLint 9 deprecated .eslintrc* configuration files in favor of flat config (eslint.config.js). The repository uses .eslintrc files which will not work with ESLint 9 by default unless ESLINT_USE_FLAT_CONFIG=false environment variable is set, but this is only a temporary compatibility layer.

Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 44:44

Comment:
ESLint 9 deprecated `.eslintrc*` configuration files in favor of flat config (`eslint.config.js`). The repository uses `.eslintrc` files which will not work with ESLint 9 by default unless `ESLINT_USE_FLAT_CONFIG=false` environment variable is set, but this is only a temporary compatibility layer.

How can I resolve this? If you propose a fix, please make it concise.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Jan 30, 2026

Additional Comments (1)

package.json
ESLint 9 no longer supports these plugin versions. eslint-config-prettier v8.1.0, eslint-plugin-import v2.22.1, eslint-plugin-jsdoc v32.3.0, eslint-plugin-monorepo v0.3.2, and eslint-plugin-prefer-arrow v1.2.3 are all outdated and may not work with ESLint 9's flat config system.

Prompt To Fix With AI
This is a comment left during a code review.
Path: package.json
Line: 45:49

Comment:
ESLint 9 no longer supports these plugin versions. `eslint-config-prettier` v8.1.0, `eslint-plugin-import` v2.22.1, `eslint-plugin-jsdoc` v32.3.0, `eslint-plugin-monorepo` v0.3.2, and `eslint-plugin-prefer-arrow` v1.2.3 are all outdated and may not work with ESLint 9's flat config system.

How can I resolve this? If you propose a fix, please make it concise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants