|
9 | 9 | * Support for popular libraries has been improved. Consequently, queries may produce more results on code bases that use the following features:
|
10 | 10 | - file system access, for example through [fs-extra](https://github.com/jprichardson/node-fs-extra) or [globby](https://www.npmjs.com/package/globby)
|
11 | 11 | - outbound network access, for example through the [fetch API](https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)
|
12 |
| - - the [Google Cloud Spanner](https://cloud.google.com/spanner), [lodash](https://lodash.com), [underscore](https://underscorejs.org/), [async](https://www.npmjs.com/package/async) and [async-es](https://www.npmjs.com/package/async-es) libraries |
13 |
| - |
14 |
| -* The type inference now handles nested imports (that is, imports not appearing at the toplevel). This may yield fewer false-positive results on projects that use this non-standard language feature. |
| 12 | + - the [lodash](https://lodash.com), [underscore](https://underscorejs.org/), [async](https://www.npmjs.com/package/async) and [async-es](https://www.npmjs.com/package/async-es) libraries |
15 | 13 |
|
16 | 14 | * Type inference for function calls has been improved. This may give additional results for queries that rely on type inference.
|
17 | 15 |
|
|
25 | 23 | | Replacement of a substring with itself (`js/identity-replacement`) | correctness, security, external/cwe/cwe-116 | Highlights string replacements that replace a string with itself, which usually indicates a mistake. Results shown on LGTM by default. |
|
26 | 24 | | Stored cross-site scripting (`js/stored-xss`) | security, external/cwe/cwe-079, external/cwe/cwe-116 | Highlights uncontrolled stored values flowing into HTML content, indicating a violation of [CWE-079](https://cwe.mitre.org/data/definitions/79.html). Results shown on LGTM by default. |
|
27 | 25 | | Unclear precedence of nested operators (`js/unclear-operator-precedence`) | maintainability, correctness, external/cwe/cwe-783 | Highlights nested binary operators whose relative precedence is easy to misunderstand. Results shown on LGTM by default. |
|
| 26 | +| Useless assignment to property | maintainability | Highlights property assignments whose value is always overwritten. Results are shown on LGTM by default. | |
28 | 27 | | User-controlled data in file | security, external/cwe/cwe-912 | Highlights locations where user-controlled data is written to a file. Results are not shown on LGTM by default. |
|
29 | 28 |
|
30 | 29 | ## Changes to existing queries
|
|
39 | 38 | | Server-side URL redirect | More results | This rule now recognizes redirection calls in more cases. |
|
40 | 39 | | Unused variable, import, function or class | Fewer false-positive results | This rule now flags fewer variables that may be used by `eval` calls. |
|
41 | 40 | | Unused variable, import, function or class | Fewer results | This rule now flags import statements with multiple unused imports once. |
|
42 |
| -| User-controlled bypass of security check | Fewer results | This rule no longer flags conditions that guard early returns. The precision of this rule has been revised to "medium". Results are no longer shown on LGTM by default. | |
43 | 41 | | Whitespace contradicts operator precedence | Fewer false-positive results | This rule no longer flags operators with asymmetric whitespace. |
|
44 | 42 | | Unused import | Fewer false-positive results | This rule no longer flags imports used by the `transform-react-jsx` Babel plugin. |
|
45 | 43 | | Self assignment | Fewer false-positive results | This rule now ignores self-assignments preceded by a JSDoc comment with a `@type` tag. |
|
46 | 44 | | Client side cross-site scripting | More results | This rule now also flags HTML injection in the body of an email. |
|
47 | 45 | | Client-side URL redirect | Fewer false-positive results | This rule now recognizes safe redirects in more cases. |
|
48 | 46 | | Server-side URL redirect | Fewer false-positive results | This rule now recognizes safe redirects in more cases. |
|
| 47 | +| Information exposure through a stack trace | More results | This rule now also flags cases where the entire exception object (including the stack trace) may be exposed. | |
49 | 48 |
|
50 | 49 | ## Changes to QL libraries
|
51 | 50 |
|
|
0 commit comments