The IDE was reporting eslint errors on turbo/generators/config.ts and
on the generated package because there's no eslint config at the repo
root — when eslint walks up from turbo/generators/, it never finds
one. The CLI didn't surface this (eslint silently exited fine on
files it couldn't config), but the IDE eslint daemon did.
- turbo/generators/eslint.config.js extends @repo/core-eslint/base
and ignores templates/** (the .hbs partials contain {{...}}
placeholders that aren't valid TS — never lint them).
- turbo/generators/package.json declares "type": "module" so Node
doesn't warn about CJS-vs-ESM ambiguity when loading the eslint
config.
Verified end-to-end:
- `npx eslint . -p tsconfig.json` clean in turbo/generators/.
- `pnpm turbo gen feature --args widgets Widget widgets` →
pnpm install → @repo/widgets passes lint, typecheck, and 25/25
tests across 9 files.
- packages/widgets cleaned up before commit; not checked in.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
14 lines
482 B
JavaScript
14 lines
482 B
JavaScript
import baseConfig from "@repo/core-eslint/base";
|
|
|
|
export default [
|
|
...baseConfig,
|
|
{
|
|
// Templates are Handlebars partials emitted by the generator. They
|
|
// contain {{...}} placeholders that aren't valid TypeScript on their
|
|
// own, so they MUST NOT be linted as TS. The .hbs extension also
|
|
// already isn't picked up by eslint by default — this is belt-and-
|
|
// suspenders for IDE eslint daemons that scan by directory.
|
|
ignores: ["templates/**"],
|
|
},
|
|
];
|