Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

TypeScript linter warning: no-unused-variable is deprecated; but I'm not using this config

Today I see this warning in a project being refreshed after 3 months.

no-unused-variable is deprecated. Since TypeScript 2.9. Please use the built-in compiler checks instead.

But my tsconfig.json does not seem to use this.

{   "compilerOptions": {     "lib": ["es6"],     "module": "commonjs",     "noImplicitReturns": true,     "outDir": "lib",     "sourceMap": true,     "target": "es6",     "allowJs" : true   },   "compileOnSave": true,   "include": [     "src"   ] } 

Probably it's a config implicit in any of the previous configs.

Could you point me to what to do to fix it?

If usefull

$ node -v v10.3.0 $ npm -v 6.1.0 

And these are devDependencies relates to type script in my package.json

"devDependencies": {     ...     "tslint": "^5.11.0",     "typescript": "^2.9.1"     ...   }, 
like image 952
realtebo Avatar asked Jul 31 '18 19:07

realtebo


2 Answers

no-unused-variable is deprecated. Since TypeScript 2.9. Please use the built-in compiler checks instead.

  1. Remove deprecated no-unused-variable from your or dependency tslint.json file.

  2. Specify the following compiler options in your tsconfig.json file.

"compilerOptions": {   "noUnusedLocals": true,                /* Report errors on unused locals. */   "noUnusedParameters": true             /* Report errors on unused parameters. */ } 
like image 86
am0wa Avatar answered Sep 27 '22 16:09

am0wa


As it says, tslint deprecated that rule (more info here https://github.com/palantir/tslint/pull/3919)

Check your tslint.json, and remove the rule and the warning should disappear.

like image 35
Diego Pedro Avatar answered Sep 27 '22 18:09

Diego Pedro