Skip to content

chore(deps): update dependency eslint to v10#1571

Open
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-eslint-monorepo
Open

chore(deps): update dependency eslint to v10#1571
renovate[bot] wants to merge 1 commit intomainfrom
renovate/major-eslint-monorepo

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Feb 7, 2026

This PR contains the following updates:

Package Change Age Confidence
eslint (source) 9.39.210.0.0 age confidence

Release Notes

eslint/eslint (eslint)

v10.0.0

Compare Source


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) February 7, 2026 02:03
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 7, 2026 02:03 Destroyed
@railway-app
Copy link

railway-app bot commented Feb 7, 2026

🚅 Deployed to the simon.dev-pr-1571 environment in simon.dev

Service Status Web Updated (UTC)
simon.dev ✅ Success (View Logs) Web Feb 19, 2026 at 5:14 am

@claude
Copy link
Contributor

claude bot commented Feb 7, 2026

Claude finished @renovate[bot]'s task in 2m 6s —— View job


Review: ESLint v9 → v10 Upgrade

  • Gather context and analyze PR changes
  • Check compatibility status
  • Review package.json and pnpm-lock.yaml changes
  • Provide comprehensive review

🚨 BLOCKING: ESLint 10 Breaks Linting (Confirmed Again)

CI continues to fail on every run of this PR. The incompatibility is unchanged since the first review on Feb 7.

CI Error (from current run):

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function
Occurred while linting app/actions/chat.test.ts
    at resolveBasedir (.../eslint-plugin-react@7.37.5.../util/version.js:31:100)

Root Cause

Two transitive dependencies from eslint-config-next@16.1.6 do not support ESLint 10:

Package Installed ESLint Peer Dep
eslint-plugin-react 7.37.5 ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
eslint-plugin-react-hooks 7.0.1 ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.0

Note that eslint-config-next@16.1.6 itself declares eslint: '>=9.0.0' as its peer dependency, which is misleading — it implies ESLint 10 compatibility, but its own plugin dependencies are not compatible.

Impact

  • ❌ Linting completely broken (pnpm lint fails with exit code 1)
  • ❌ CI pipeline fails at lint step (TypeScript and Prettier checks pass)
  • ❌ Pre-commit hooks would fail locally
  • ❌ Automerge cannot complete due to failing checks

Recommendation: Block ESLint 10 in Renovate

The current .github/renovate.json5 includes :automergeLinters which auto-merges this PR. A blocking rule should be added until the ecosystem catches up:

// .github/renovate.json5
{
  // ... existing config ...
  packageRules: [
    { matchDepTypes: ["packageManager"], automerge: true },
    {
      matchPackageNames: ["eslint"],
      allowedVersions: "<10",
      description: "Block ESLint 10 until eslint-plugin-react@8.x is released"
    }
  ],
}

Add this Renovate config rule →

What to Watch For

  • eslint-plugin-react@8.x — tracking issue for ESLint 10 support
  • eslint-config-next release that bumps eslint-plugin-react to a compatible version

Do not merge this PR.

@codecov
Copy link

codecov bot commented Feb 7, 2026

⚠️ JUnit XML file not found

The CLI was unable to find any JUnit XML files to upload.
For more help, visit our troubleshooting guide.

"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Breaking Change: ESLint 10 Incompatibility

This upgrade to ESLint 10.0.0 introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) is not compatible with ESLint 10.0.0.

Error:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why it happens: ESLint 10 changed the context API, and eslint-plugin-react@7.37.5 was only tested up to ESLint 9.7.

Recommendation: Do not merge this PR. Instead:

  1. Wait for eslint-config-next to release a version compatible with ESLint 10, OR
  2. Pin ESLint to ^9.39.2 and block ESLint 10 upgrades in Renovate config until ecosystem support catches up

See full review for detailed analysis and options →

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from de475f3 to c16d7d2 Compare February 8, 2026 00:23
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 8, 2026 00:23 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from c16d7d2 to 867bb91 Compare February 8, 2026 05:16
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 8, 2026 05:16 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Breaking Change: ESLint 10 Incompatibility

This upgrade introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) does not support ESLint 10.

Error:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why: ESLint 10 changed the context API. eslint-plugin-react@7.37.5 only supports eslint ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7.

Recommendation: Keep ESLint at ^9.39.2 until Next.js releases an ESLint 10-compatible version of eslint-config-next.

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 867bb91 to 2a57e7f Compare February 8, 2026 06:22
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 8, 2026 06:22 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Breaking Change: ESLint 10 Incompatibility

This upgrade introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) does not support ESLint 10.

Error:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why: ESLint 10 changed the context API. eslint-plugin-react@7.37.5 only supports eslint ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7.

Recommendation: Keep ESLint at ^9.39.2 until Next.js releases an ESLint 10-compatible version of eslint-config-next.

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 2a57e7f to 77c679e Compare February 9, 2026 00:53
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 9, 2026 00:53 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 77c679e to 91a318c Compare February 9, 2026 06:05
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 9, 2026 06:05 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Critical Breaking Change: ESLint 10 Incompatibility

This upgrade to ESLint 10.0.0 introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) does not support ESLint 10.

Error from CI:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why: ESLint 10 changed the context API. eslint-plugin-react@7.37.5 only supports:

eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7

Impact:

  • ❌ Linting completely broken
  • ❌ CI/CD pipeline fails
  • ❌ Pre-commit hooks fail
  • ❌ Cannot enforce code quality standards

Recommendation:

Keep ESLint at ^9.39.2 and configure Renovate to block ESLint 10 upgrades until the ecosystem catches up:

{
  "packageRules": [
    {
      "matchPackageNames": ["eslint"],
      "allowedVersions": "< 10"
    }
  ]
}

Monitor for updates to either:

  • eslint-plugin-react v8.x (with ESLint 10 support)
  • eslint-config-next v16.2+ (with updated dependencies)

Expected timeline: Late February 2026

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 91a318c to 1551d48 Compare February 9, 2026 10:36
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 9, 2026 10:36 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 Critical Breaking Change: ESLint 10 Incompatibility

This upgrade to ESLint 10.0.0 introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) does not support ESLint 10.

Error from CI:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why: ESLint 10 changed the context API. eslint-plugin-react@7.37.5 only supports:

eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7

Impact:

  • ❌ Linting completely broken
  • ❌ CI/CD pipeline fails
  • ❌ Pre-commit hooks fail
  • ❌ Cannot enforce code quality standards

Recommendation:

Keep ESLint at ^9.39.2 and configure Renovate to block ESLint 10 upgrades until the ecosystem catches up:

{
  "packageRules": [
    {
      "matchPackageNames": ["eslint"],
      "allowedVersions": "< 10"
    }
  ]
}

Monitor for updates to either:

  • eslint-plugin-react v8.x (with ESLint 10 support)
  • eslint-config-next v16.2+ (with updated dependencies)

Expected timeline: Late February 2026

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 1551d48 to 015a8aa Compare February 9, 2026 20:29
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 9, 2026 20:29 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 Critical Breaking Change: ESLint 10 Incompatibility

This upgrade to ESLint 10.0.0 introduces a critical compatibility issue:

Problem: eslint-plugin-react@7.37.5 (transitive dependency from eslint-config-next@16.1.6) does not support ESLint 10.

Error from CI:

TypeError: Error while loading rule 'react/display-name': contextOrFilename.getFilename is not a function

Why: ESLint 10 changed the context API. eslint-plugin-react@7.37.5 only supports:

eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7

Impact:

  • ❌ Linting completely broken
  • ❌ CI/CD pipeline fails
  • ❌ Pre-commit hooks fail
  • ❌ Cannot enforce code quality standards

Recommendation:

Keep ESLint at ^9.39.2 and configure Renovate to block ESLint 10 upgrades until the ecosystem catches up:

{
  packageRules: [
    {
      matchPackageNames: ["eslint"],
      allowedVersions: "<10",
      description: "eslint-plugin-react doesn't support ESLint 10 yet"
    }
  ]
}

Monitor for updates to either:

  • eslint-plugin-react v8.x (with ESLint 10 support)
  • eslint-config-next v16.2+ (with updated dependencies)

Expected timeline: Late February 2026

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 015a8aa to 2a448bb Compare February 10, 2026 03:36
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 10, 2026 03:36 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BREAKING: ESLint 10 Incompatibility

Critical Issue: This version upgrade breaks linting completely.

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause: eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6) only supports ESLint ≤9.7.

Required Action: Keep ESLint at ^9.39.2 until:

  • eslint-plugin-react@8.x releases with ESLint 10 support, OR
  • eslint-config-next@16.2+ updates to compatible plugins

Block in Renovate:

{
  "packageRules": [{
    "matchPackageNames": ["eslint"],
    "allowedVersions": "<10"
  }]
}

Expected Timeline: March-April 2026

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 2a448bb to a0a0e4b Compare February 10, 2026 04:30
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 10, 2026 04:30 Destroyed
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 11, 2026 10:28 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BLOCKING: ESLint 10 Breaking Change

This version upgrade breaks linting completely due to an incompatible transitive dependency.

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause:

  • eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6) only supports eslint ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 (see pnpm-lock.yaml:1699)
  • ESLint 10 changed the context API, breaking compatibility

Impact:

  • ❌ Linting completely broken
  • ❌ CI/CD pipeline fails
  • ❌ Pre-commit hooks fail
  • ⚠️ Security rules not enforceable

Recommendation:

Keep ESLint at ^9.39.2 until the Next.js ecosystem adds ESLint 10 support.

Block in Renovate:

{
  "packageRules": [{
    "matchPackageNames": ["eslint"],
    "allowedVersions": "<10",
    "description": "Block ESLint 10 until eslint-plugin-react@8.x is released"
  }]
}

Expected Timeline: March-April 2026

Tracking:

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 1a0e9db to 8882b7e Compare February 11, 2026 17:14
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 11, 2026 17:14 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BLOCKING: Incompatible Transitive Dependency

This ESLint upgrade breaks linting completely due to eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6).

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause:

  • eslint-plugin-react@7.37.5 peer dependency: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
  • ESLint 10 changed context API (getFilename()filename property)

Recommendation:
Block ESLint 10 in Renovate config until eslint-plugin-react@8.x or eslint-config-next@16.2+ releases with ESLint 10 support.

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 8882b7e to d98755c Compare February 11, 2026 21:50
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 11, 2026 21:50 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BLOCKING: Incompatible Transitive Dependency

This ESLint upgrade breaks linting completely due to eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6).

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause:

  • eslint-plugin-react@7.37.5 peer dependency: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 (see pnpm-lock.yaml:1699)
  • ESLint 10 changed context API (getFilename()filename property)

Recommendation:
Block ESLint 10 in Renovate config until eslint-plugin-react@8.x or eslint-config-next@16.2+ releases with ESLint 10 support.

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from d98755c to 2fd9ef4 Compare February 12, 2026 02:39
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 12, 2026 02:39 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 2fd9ef4 to 4b78234 Compare February 12, 2026 06:07
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 12, 2026 06:07 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 4b78234 to 0877aa9 Compare February 12, 2026 08:30
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 12, 2026 08:30 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 0877aa9 to 9db2f64 Compare February 12, 2026 22:46
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 12, 2026 22:46 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 9db2f64 to a775f90 Compare February 14, 2026 02:14
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 14, 2026 02:14 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BLOCKING: ESLint 10 Incompatibility

This version upgrade breaks linting completely due to an incompatible transitive dependency.

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause:

  • eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6) only supports eslint ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 (see pnpm-lock.yaml:1699)
  • ESLint 10 changed the context API (getFilename() method → filename property)

Impact:

  • ❌ Linting completely broken (CI fails at lint step)
  • ❌ Pre-commit hooks fail
  • ❌ Code quality standards not enforceable
  • ⚠️ Security rules disabled

Recommendation:

Keep ESLint at ^9.39.2 and block ESLint 10 upgrades in Renovate config:

{
  packageRules: [{
    matchPackageNames: ["eslint"],
    allowedVersions: "<10",
    description: "Block ESLint 10 until eslint-plugin-react@8.x is released"
  }]
}

Timeline: March-April 2026 (waiting for eslint-plugin-react@8.x or eslint-config-next@16.2+)

Tracking: jsx-eslint/eslint-plugin-react#3699

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from a775f90 to cadc79c Compare February 16, 2026 05:05
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 16, 2026 05:05 Destroyed
"babel-plugin-react-compiler": "1.0.0",
"concurrently": "9.2.1",
"eslint": "9.39.2",
"eslint": "10.0.0",
Copy link
Contributor

Choose a reason for hiding this comment

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

🚨 BLOCKING: ESLint 10 Breaking Change

This version upgrade breaks linting completely due to an incompatible transitive dependency.

Error:

TypeError: Error while loading rule 'react/display-name': 
contextOrFilename.getFilename is not a function

Root Cause:

  • eslint-plugin-react@7.37.5 (from eslint-config-next@16.1.6) only supports eslint ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 (see pnpm-lock.yaml:1703)
  • ESLint 10 changed the context API (getFilename()filename property)

Impact:

  • ❌ Linting completely broken
  • ❌ CI/CD pipeline fails
  • ❌ Pre-commit hooks fail
  • ⚠️ Security rules not enforceable

Recommendation:

Keep ESLint at ^9.39.2 and block ESLint 10 upgrades in Renovate config:

{
  "packageRules": [{
    "matchPackageNames": ["eslint"],
    "allowedVersions": "<10",
    "description": "Block ESLint 10 until eslint-plugin-react@8.x is released"
  }]
}

Expected Timeline: March-April 2026

Tracking:

@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from cadc79c to 7b1622b Compare February 17, 2026 06:16
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 17, 2026 06:16 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 7b1622b to e2fba81 Compare February 18, 2026 02:42
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 18, 2026 02:42 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from e2fba81 to 6ef7c2e Compare February 18, 2026 05:35
@railway-app railway-app bot temporarily deployed to simon.dev / simon.dev-pr-1571 February 18, 2026 05:35 Destroyed
@renovate renovate bot force-pushed the renovate/major-eslint-monorepo branch from 6ef7c2e to 63142b1 Compare February 19, 2026 05:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants

Comments