General
- Deprecated symbol used
Reports a usage of a deprecated function variable.
- Destructuring properties with the same key
Reports multiple destructuring properties with identical keys.
- Duplicate declaration
Reports multiple declarations in a scope.
- ECMAScript specification is not followed
Reports basic syntax issues and inconsistencies with language specification, such as invalid usages of keywords, usages of incompatible numeric format, or multiple parameters to getters/setters.
- Implicitly declared global JavaScript variable
Reports an implicit declaration of a global variable.
- Import can be shortened
Reports an ES6 import whose from part can be shortened.
- Inaccessible @private and @protected members referenced
Reports a reference to a JavaScript member that is marked with a @private or @protected tag but does not comply with visibility rules that these tags imply.
- Incorrect usage of JSDoc tags
Reports warnings implied by Google Closure Compiler annotations including correct use of @abstract, @interface, and @implements tags.
- JQuery selector can be optimized
Reports a duplicated jQuery selector that can be cached or a usage of an attribute or a pseudo-selector (optional).
- JSX syntax used
Reports a usage of a JSX tag in JavaScript code.
- Method can be made 'static'
Reports a class method that can be safely made static.
- Mismatched JSDoc and function signature
Reports mismatch between the names and the number of parameters within a JSDoc comment and the actual parameters of a function.
- Mismatched query and update of collection
Reports a collection of fields or variables whose contents are either queried and not updated or updated and not queried.
- Missed locally stored library for HTTP link
Reports a URL of an external JavaScript library that is not associated with any locally stored file.
- Non-strict mode used
Reports a JavaScript file that is not in the strict mode.
- Primitive type object wrapper used
Reports an improper usage of a wrapper for primitive types or a property of a primitive type being modified, as in the latter case the assigned value will be lost.
- Property can be replaced with shorthand
Reports an object property that can be converted to ES6 shorthand style and provides a quick-fix to do it.
- Redundant nesting in template literal
Reports nested instances of a string or a template literal.
- Referencing mutable variable from closure
Reports access to outer mutable variables from functions.
- Signature mismatch
Reports a JavaScript call expression where the arguments do not match the signature of the referenced function, including the types of arguments and their number.
- Syntax errors and unresolved references in JSDoc
Reports a syntax discrepancy in a documentation comment.
- Type mismatch
Reports incorrect type of: a parameter in a function call a return value an assigned expression TypeScript code is ignored.
- Unfiltered for..in loop
Reports unfiltered for-in loops.
- Unnecessary semicolon
Reports an unneeded semicolon.
- Unneeded last comma in array literal
Reports a usage of a trailing comma in an array literal.
- Unneeded last comma in object literal
Reports usages of a trailing comma in object literals.
- Unresolved Ext JS xtype
Reports an Ext JS xtype reference that doesn't have a corresponding class.
- Unresolved JSX component
Reports an unresolved reference to a JSX component.
- Unresolved file reference
Reports an unresolved file reference in a JavaScript file, including CommonJS and AMD modules references.
- Unresolved reference
Reports an unresolved reference in JavaScript code.
- Use of possibly unassigned property in a static initializer
Reports a class member initializer which references another non-hoisted class member while the latter may be not initialized yet.
- Variable declaration can be merged with the first assignment to the variable
Reports a variable that is declared without an initializer and is used much further in the code or in a single nested scope.
- Webpack config compliance with JSON Schema
Validates options in webpack config files (which name should start with `webpack`, e.g.