Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"@tanstack/react-table": "^8.21.3",
"clsx": "^2.1.1",
"lucide-react": "^0.475.0",
"next": "16.0.10",
"next": "16.2.1",
"react": "^19.2.1",
"react-dom": "^19.2.1",
"recharts": "^2.15.4",
Expand All @@ -26,8 +26,8 @@
"@types/node": "^22",
"@types/react": "^19",
"@types/react-dom": "^19",
"eslint": "^8.57.0",
"eslint-config-next": "^15.3.0",
"eslint": "^9",
"eslint-config-next": "16.2.1",
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== ESLint-related deps from package.json =="
cat package.json | jq '{devDependencies: {eslint: .devDependencies.eslint, "eslint-config-next": .devDependencies["eslint-config-next"]}}'

echo
echo "== ESLint config files present =="
fd -HI '^eslint\.config\..*$|^\.eslintrc(\..*)?$' . || true

echo
echo "== Lint scripts =="
cat package.json | jq '.scripts'

echo
echo "== ESLint usage patterns in repo =="
rg -n --hidden -S "next lint|eslint\\s+\\.|extends:\\s*\\[|eslintConfig|@next/eslint-plugin-next" .

Repository: recoupable/admin

Length of output: 631


🏁 Script executed:

cat -n ./.eslintrc.json

Repository: recoupable/admin

Length of output: 141


🏁 Script executed:

# Check if there are any console warnings or errors in the repo about ESLint
rg -i "eslint|config" eslintConfig .eslintrc.json 2>/dev/null | head -20

Repository: recoupable/admin

Length of output: 42


🌐 Web query:

eslint-config-next 16.2.1 legacy .eslintrc.json format support compatibility

💡 Result:

No, eslint-config-next version 16.2.1 does not support the legacy .eslintrc.json format. Starting with version 16.0.0, it uses ESLint's flat config format (eslint.config.mjs or eslint.config.js) by default as a breaking change. Official Next.js documentation shows setup examples using flat config imports like import nextVitals from 'eslint-config-next/core-web-vitals' in eslint.config.mjs. Legacy .eslintrc format is deprecated in ESLint v9+, and Next.js 16 aligns with this by removing next lint and requiring direct ESLint CLI usage with flat configs. Codemods are available to migrate from legacy configs to flat config. While FlatCompat can sometimes bridge legacy shareable configs in flat files, eslint-config-next 16+ is designed and exported for flat config only, with no explicit support for legacy .eslintrc.json files.

Citations:


Migrate to flat config format — eslint-config-next 16.2.1 requires eslint.config.mjs, not legacy .eslintrc.json

The .eslintrc.json configuration is incompatible with the bumped eslint-config-next 16.2.1 version. Next.js 16+ is a breaking change that requires ESLint's flat config format (eslint.config.mjs or eslint.config.js), and the legacy .eslintrc format is no longer supported. The repo must migrate to flat config with imports like import nextVitals from 'eslint-config-next/core-web-vitals' to restore linting behavior.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@package.json` at line 30, The project upgraded eslint-config-next to 16.2.1
which requires ESLint flat config; replace the legacy .eslintrc.json by adding
an eslint.config.mjs that imports Next's flat presets (e.g., import nextVitals
from 'eslint-config-next/core-web-vitals') and exports a default flat
configuration that re-creates your existing rules, settings, and overrides from
.eslintrc.json; ensure ESLint is pointed to the new file (remove or ignore the
old .eslintrc.json) and verify package.json's "eslint-config-next" dependency is
used by the new eslint.config.mjs.

"tailwindcss": "^4",
"typescript": "^5"
}
Expand Down
Loading
Loading