Bump eslint from 8.57.1 to 10.6.0#90
Conversation
Bumps [eslint](https://github.com/eslint/eslint) from 8.57.1 to 10.6.0. - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](eslint/eslint@v8.57.1...v10.6.0) --- updated-dependencies: - dependency-name: eslint dependency-version: 10.6.0 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
📝 WalkthroughSummary by CodeRabbit
WalkthroughThe Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@package.json`:
- Line 50: The dependency bump to eslint@^10.6.0 is blocked by the repo still
using .eslintrc.json and by plugin versions that are not ESLint 10 compatible.
Update the lint configuration to the new ESLint 10 config format and adjust the
related package versions in package.json for `@typescript-eslint/`*,
eslint-plugin-import, and eslint-plugin-vitest so they are compatible before
landing the eslint upgrade.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository: lokalise/coderabbit/.coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: bd6659eb-d92c-478b-9d65-762b0432623e
📒 Files selected for processing (1)
package.json
| "@vitest/coverage-v8": "^1.5.3", | ||
| "auto-changelog": "^2.4.0", | ||
| "eslint": "^8.55.0", | ||
| "eslint": "^10.6.0", |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟠 Major | 🏗️ Heavy lift
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== Candidate manifests and ESLint config files =="
fd -HI '^(package\.json|package-lock\.json|yarn\.lock|pnpm-lock\.yaml|\.eslintrc(\..+)?|eslint\.config\..+)$' .
echo
echo "== ESLint-related dependencies and config references =="
rg -n -C2 --glob 'package.json' --glob '.eslintrc*' --glob 'eslint.config.*' \
'"eslint"|"`@typescript-eslint/`|eslint-plugin-|eslint-config-|eslint-import-resolver-|parser"|extends|plugins' .
echo
echo "== If present, inspect package manager constraints =="
fd -HI '^(package\.json|package-lock\.json|yarn\.lock|pnpm-lock\.yaml)$' . | xargs -r sed -n '1,220p'Repository: lokalise/zod-extras
Length of output: 3973
🌐 Web query:
ESLint 10 legacy eslintrc support compatibility plugin parser @typescript-eslint/eslint-plugin 7 eslint-plugin-import 2.29.0 eslint-plugin-vitest 0.4.1
💡 Result:
As of June 2026, ESLint v10.0.0 (released February 2026) has completely removed support for the legacy eslintrc configuration system [1][2][3]. There is no way to enable legacy eslintrc support in ESLint 10 [1][4]. Regarding your specific dependencies and their compatibility: 1. @typescript-eslint/eslint-plugin 7: This version is not compatible with ESLint 10 [5][6]. Support for ESLint 10 was introduced in later versions of the @typescript-eslint/eslint-plugin package [6][7]. You must upgrade to a version that explicitly supports ESLint 10 [6]. 2. eslint-plugin-import 2.29.0: This version is incompatible with ESLint 10 [8]. You should migrate to eslint-plugin-import-x, which is a modern, performant, and compatible alternative for ESLint 10 [8]. 3. eslint-plugin-vitest 0.4.1: Similar to the other plugins, older versions of ecosystem plugins often lack compatibility with the architectural changes in ESLint 10. You should check for the latest release of eslint-plugin-vitest and upgrade accordingly. General Guidance for ESLint 10: - You must migrate your configuration to the Flat Config (eslint.config.js) format [1][9]. - If you rely on legacy plugins or configs that have not been updated, you may temporarily use the @eslint/compat utility, which provides functions like fixupPluginRules and fixupConfigRules to wrap older plugins for use in the Flat Config system [5]. Note, however, that this is a bridge and not a guarantee of full functionality for all plugins [5]. - Always ensure your plugins and parsers are updated to versions that support ESLint 10 to avoid runtime errors, as peer dependencies will often explicitly block installation or usage with incompatible ESLint versions [8].
Citations:
- 1: https://eslint.org/blog/2026/02/eslint-v10.0.0-released/
- 2: https://github.com/eslint/eslint/releases/tag/v10.0.0
- 3: https://eslint.org/blog/2025/10/whats-coming-in-eslint-10.0.0/
- 4: https://eslint.org/docs/latest/use/migrate-to-10.0.0
- 5: Enhancement: support eslint v10 typescript-eslint/typescript-eslint#11952
- 6: Bug: typescript-eslint+utils@8.50.0_eslint not compatible with ESLint 10.0+ typescript-eslint/typescript-eslint#12132
- 7: https://npmx.dev/package-changelog/@typescript-eslint/eslint-plugin/v/7.18.0
- 8: Compatibility with ESLint 10 import-js/eslint-plugin-import#3227
- 9: https://eslint.org/docs/latest/use/configure/migration-guide
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== package.json and .eslintrc.json =="
cat -n package.json | sed -n '40,60p'
echo
cat -n .eslintrc.json
echo
echo "== peerDependencies and supported ESLint ranges from installed metadata, if available in lockfile =="
python3 - <<'PY'
import json, os
for path in ['package-lock.json','pnpm-lock.yaml','yarn.lock']:
if os.path.exists(path):
print(f'FOUND {path}')
PYRepository: lokalise/zod-extras
Length of output: 2690
Migrate the ESLint config before landing eslint@^10.6.0
ESLint 10 no longer supports .eslintrc.json, and this repo still relies on it. The current @typescript-eslint/*, eslint-plugin-import, and eslint-plugin-vitest versions also need to be moved to ESLint 10–compatible releases or the lint task will fail.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@package.json` at line 50, The dependency bump to eslint@^10.6.0 is blocked by
the repo still using .eslintrc.json and by plugin versions that are not ESLint
10 compatible. Update the lint configuration to the new ESLint 10 config format
and adjust the related package versions in package.json for
`@typescript-eslint/`*, eslint-plugin-import, and eslint-plugin-vitest so they are
compatible before landing the eslint upgrade.
Bumps eslint from 8.57.1 to 10.6.0.
Release notes
Sourced from eslint's releases.
... (truncated)
Commits
5d12a0410.6.0f7ca54bBuild: changelog update for 10.6.06a42034ci: run ecosystem tests on main branch (#20891)b1f9106feat: detect Symbol() and BigInt() in no-constant-binary-expression (#20981)3dbacdbci: bump actions/checkout from 6 to 7 (#21014)c3abfcachore: correct JSDoc param types in html formatter (#21018)a83683ddocs: Update READMEa832320ci: split ecosystem tests into separate jobs (#21001)6b05784fix: prefer-exponentiation-operator invalid autofix at statement start (#20997)bb9eb2afix: account for shadowedBooleaninno-extra-boolean-cast(#21013)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 rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill 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 versionwill 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 dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)