mirror of
https://github.com/Such-Software/such.software.git
synced 2026-10-17 05:32:05 +02:00
`next lint` is deprecated and disappears in Next 16. apps/web now runs `eslint .` against eslint.config.mjs on ESLint 9, and the shared preset moves to packages/config/eslint-preset.mjs. eslint-config-next 15 still ships only an eslintrc-style config, so FlatCompat translates it; that keeps next/core-web-vitals as the single source of rules. The migration was done by hand rather than via @next/codemod, because the codemod does not know about the shared @repo/config preset. Two things worth knowing. ESLint 9 only walks file extensions that some config names in `files`. The first working version of this config linted three loose .js files, skipped every .tsx in src/, and still exited 0 -- a green run that checked nothing. The preset now names the extensions explicitly. Coverage went from 3 files to 82, and a deliberately broken canary component confirms rules still fire. `@eslint/eslintrc` also needed a second scoped override: it does a default import of minimatch and declares ^3.1.2, which the global ^9.0.7 audit override broke. Same shape as the ajv fix in the previous commit.
18 lines
307 B
JSON
18 lines
307 B
JSON
{
|
|
"name": "@repo/config",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"files": [
|
|
"tsconfig.json",
|
|
"eslint-preset.mjs"
|
|
],
|
|
"devDependencies": {
|
|
"eslint": "^9.0.0",
|
|
"typescript": "^5.4.0"
|
|
},
|
|
"dependencies": {
|
|
"@eslint/eslintrc": "^3.3.1",
|
|
"eslint-config-next": "^15.1.3"
|
|
}
|
|
}
|