Update TSLint Errors : Could not find implementations for the following rules specified in the configuration

I was in the same boat. I don't know what your previous version of tslint was, but, for me, I upgraded from 3.15.1 to 4.0.2 and my resulting "broken rule" list is different than yours. Still, I can offer you a few fixes/explanations to the ones you and I had in common.

I just went to the tslint's changelog on GitHub, found the rule that was broken, got the issue number at the end of the line, & looked up the issue. Easiest way to navigate was to add the issue number to the end of their GitHub issue URL. For example, label-undefined was http//github.com/palantir/tslint/issues/877

Here's the ones I had to figure out

  • label-undefined -> typescript compiler handles this now, so remove "label-undefined": true from tslint.json and then add "allowUnusedLabels": false to the compilerOptions section of your tsconfig.json
  • no-constructor-vars -> renamed the rule, so change "no-constructor-vars" to "no-parameter-properties" in your tslint.json
  • no-duplicate-key -> remove "no-duplicate-key": true altogether b/c typescript now handles it (won't compile if dup keys).
  • no-unreachable -> typescript compiler handles this now, so remove "no-unreachable": true from tslint.json and then add "noImplicitReturns": true to the compilerOptions section of your tsconfig.json
  • use-strict -> remove "use-strict" rule altogether b/c typescript now parses all module bodies in strict mode.

As of, codelyzer 2.0.0-beta.1 there are some breaking changes. They removed directive-selector-name, component-selector-name, directive-selector-type, component-selector-type, directive-selector-prefix and component-selector-prefix are no longer supported. Instead, they added the below rule:

"directive-selector": [true, "attribute", "app", "camelCase"],
"component-selector": [true, "element", "app", "kebab-case"],

Please look at the changelog for the codelyzer and search for any rule that is not supported


tslint v4 removed a bunch of rules that no longer made sense and TypeScript checking got better. You need to use tslint v3 if you still want to use those rules.