Files
such.software/package.json
T
jwinterm e1ea0ce18c chore(lint): migrate off next lint to the ESLint CLI and flat config
`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.
2026-08-17 06:06:14 -04:00

42 lines
1.0 KiB
JSON

{
"name": "such-software-monorepo",
"private": true,
"scripts": {
"build": "turbo run build",
"dev": "turbo run dev",
"start": "turbo run start",
"lint": "turbo run lint",
"clean": "turbo run clean && rm -rf node_modules",
"format": "prettier --write \"**/*.{ts,tsx,md}\""
},
"devDependencies": {
"eslint": "^9.0.0",
"prettier": "^3.2.0",
"turbo": "^2.9.16",
"typescript": "^5.4.0"
},
"packageManager": "pnpm@9.0.0",
"engines": {
"node": ">=20.0.0"
},
"dependencies": {
"@types/react": "^19.2.14"
},
"pnpm": {
"overrides": {
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"yaml": "^2.8.3",
"flatted": "^3.4.2",
"minimatch": "^9.0.7",
"picomatch": "^4.0.4",
"ajv": "^8.17.1",
"eslint>ajv": "^6.12.6",
"@eslint/eslintrc>ajv": "^6.12.6",
"@eslint/eslintrc>minimatch": "^3.1.2",
"brace-expansion": "^2.0.3",
"postcss": "^8.5.14",
"fast-uri": "^3.1.2"
}
}
}