You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I’m writing typescript in JS using JSDoc. When I finished my initial setup and was ready to push I got a syntax error in my jsdoc/valid-types because I was using template literal types. So I switched my mode from jsdoc to typescript like I though I was supposed to and reran the linter. However, I accidentally (out of habit) reran it with --fix which automatically stripped all my type definitions because of the no-types rule.
Current behavior
The jsdoc/no-types rule automatically marks all types as non-passing regardless of whether they are in a .ts or a .js file. This is a dangerous behavior when they are auto-included in the latter case since the @type is the only way to annotate types in .js files
Desired behavior
The flat config for flat/recommended-typescript should have something like a:
runarberg
changed the title
flat/recommended-typescript should default no-types to off"
flat/recommended-typescript should default "no-types" to "off" in JS files
Jul 1, 2024
The behavior recommended by the docs for JavaScript files is to use one of the recommended-typescript-flavor configs (e.g., flat/recommended-typescript-flavor).
There is already a request for a config to combine the file formats and handle them automatically (#1101 ), so I think we can close this issue. Feel free to comment further if not.
Motivation
I’m writing typescript in JS using JSDoc. When I finished my initial setup and was ready to push I got a syntax error in my
jsdoc/valid-types
because I was using template literal types. So I switched my mode fromjsdoc
totypescript
like I though I was supposed to and reran the linter. However, I accidentally (out of habit) reran it with--fix
which automatically stripped all my type definitions because of theno-types
rule.Current behavior
The
jsdoc/no-types
rule automatically marks all types as non-passing regardless of whether they are in a.ts
or a.js
file. This is a dangerous behavior when they are auto-included in the latter case since the@type
is the only way to annotate types in.js
filesDesired behavior
The flat config for
flat/recommended-typescript
should have something like a:To prevent this rule from destroying all your type definitions.
Alternatives considered
You should at least warn users heavily in the docs what switching modes can do to your code.
The text was updated successfully, but these errors were encountered: