mirror of
https://github.com/github/codeql.git
synced 2026-04-24 08:15:14 +02:00
raw test output
This commit is contained in:
@@ -1,4 +1 @@
|
||||
#select
|
||||
| bad.js:14:7:14:23 | $compile(element) | This call to $compile may cause double compilation of 'element'. |
|
||||
testFailures
|
||||
| bad.js:14:7:14:23 | This call to $compile may cause double compilation of 'element'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
#select
|
||||
| duplicates.js:2:5:2:18 | function f(){} | This function has a duplicate dependency $@. | duplicates.js:3:26:3:31 | 'dup5' | dup5 |
|
||||
| duplicates.js:6:33:6:56 | functio ... up2b){} | This function has a duplicate dependency $@. | duplicates.js:6:24:6:30 | 'dup2a' | dup2a |
|
||||
| duplicates.js:7:33:7:56 | functio ... up3b){} | This function has a duplicate dependency $@. | duplicates.js:7:24:7:30 | 'dup3b' | dup3b |
|
||||
| duplicates.js:8:43:8:78 | functio ... up4C){} | This function has a duplicate dependency $@. | duplicates.js:8:35:8:40 | 'dup4' | dup4 |
|
||||
| duplicates.js:15:35:15:113 | functio ... } | This function has a duplicate dependency $@. | duplicates.js:15:25:15:32 | 'dup11a' | dup11a |
|
||||
testFailures
|
||||
| duplicates.js:2:5:2:18 | This function has a duplicate dependency $@. | Unexpected result: Alert |
|
||||
| duplicates.js:3:35:3:44 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
#select
|
||||
| tst2.html:2:6:2:24 | href={{help_url}} | Use 'ng-href' instead of 'href'. |
|
||||
| tst.html:7:6:7:24 | href={{help_url}} | Use 'ng-href' instead of 'href'. |
|
||||
| tst.html:9:40:9:83 | srcset=#/resources/pics-large/{{item._id}} | Use 'ng-srcset' instead of 'srcset'. |
|
||||
| tst.html:10:10:10:52 | src=#/resources/pics-default/{{item._id}} | Use 'ng-src' instead of 'src'. |
|
||||
| tst_fragment.html:2:6:2:24 | href={{help_url}} | Use 'ng-href' instead of 'href'. |
|
||||
testFailures
|
||||
| tst.html:9:40:9:83 | Use 'ng-srcset' instead of 'srcset'. | Unexpected result: Alert |
|
||||
| tst.html:10:10:10:52 | Use 'ng-src' instead of 'src'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,12 +1,5 @@
|
||||
#select
|
||||
| tst.js:1:1:1:22 | window. ... ut(";") | Avoid using functions that evaluate strings as code. |
|
||||
| tst.js:2:1:2:24 | setInte ... te();") | Avoid using functions that evaluate strings as code. |
|
||||
| tst.js:4:1:4:31 | documen ... i!');") | Avoid using functions that evaluate strings as code. |
|
||||
| tst.js:5:1:5:30 | window. ... gger;") | Avoid using functions that evaluate strings as code. |
|
||||
| tst.js:9:3:9:33 | documen ... d = 2") | Avoid using functions that evaluate strings as code. |
|
||||
testFailures
|
||||
| tst.js:1:1:1:22 | Avoid using functions that evaluate strings as code. | Unexpected result: Alert |
|
||||
| tst.js:2:1:2:24 | Avoid using functions that evaluate strings as code. | Unexpected result: Alert |
|
||||
| tst.js:4:1:4:31 | Avoid using functions that evaluate strings as code. | Unexpected result: Alert |
|
||||
| tst.js:5:1:5:30 | Avoid using functions that evaluate strings as code. | Unexpected result: Alert |
|
||||
| tst.js:9:3:9:33 | Avoid using functions that evaluate strings as code. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,17 +1,9 @@
|
||||
#select
|
||||
| tst.html:23:1:23:61 | <a>...</> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.html:24:1:24:48 | <a>...</> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.html:25:1:25:36 | <a>...</> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.html:25:1:25:54 | <a>...</> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.html:30:1:30:61 | <a>...</> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.js:17:1:17:43 | <a href ... ple</a> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.js:18:1:18:58 | <a href ... ple</a> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.js:19:1:19:51 | <a data ... ple</a> | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.js:31:12:31:39 | $("<a/> ... X}}" }) | External links without noopener/noreferrer are a potential security risk. |
|
||||
| tst.js:39:12:39:20 | $("<a/>") | External links without noopener/noreferrer are a potential security risk. |
|
||||
testFailures
|
||||
| tst.html:23:1:23:61 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
| tst.html:24:1:24:48 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
| tst.html:25:1:25:36 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
| tst.html:30:1:30:61 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
| tst.js:18:1:18:58 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
| tst.js:19:1:19:51 | External links without noopener/noreferrer are a potential security risk. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,8 +1,4 @@
|
||||
#select
|
||||
| tst.js:3:5:3:13 | arguments | Redefinition of arguments. |
|
||||
| tst.js:7:7:7:15 | arguments | Redefinition of arguments. |
|
||||
| tst.js:11:11:11:19 | arguments | Redefinition of arguments. |
|
||||
| tst.js:12:11:12:19 | arguments | Redefinition of arguments. |
|
||||
testFailures
|
||||
| tst.js:11:11:11:19 | Redefinition of arguments. | Unexpected result: Alert |
|
||||
| tst.js:12:11:12:19 | Redefinition of arguments. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| classes.js:3:1:3:10 | class C {} | Assignment to variable C, which is $@ constant. | classes.js:1:1:1:13 | const C = 45; | declared |
|
||||
| functions.js:3:10:3:10 | C | Assignment to variable C, which is $@ constant. | functions.js:1:1:1:13 | const C = 45; | declared |
|
||||
| tst.js:3:1:3:6 | x = 42 | Assignment to variable x, which is $@ constant. | tst.js:1:1:1:21 | const x ... y = 42; | declared |
|
||||
@@ -6,5 +5,3 @@
|
||||
| tst.js:7:5:7:10 | y = -1 | Assignment to variable y, which is $@ constant. | tst.js:1:1:1:21 | const x ... y = 42; | declared |
|
||||
| tst.js:9:1:9:3 | ++x | Assignment to variable x, which is $@ constant. | tst.js:1:1:1:21 | const x ... y = 42; | declared |
|
||||
| tst.js:21:10:21:14 | [ c ] | Assignment to variable c, which is $@ constant. | tst.js:20:5:20:19 | const c = null; | declared |
|
||||
testFailures
|
||||
| tst.js:21:10:21:14 | Assignment to variable c, which is $@ constant. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:3:12:3:12 | g | Declaration of function g conflicts with $@ in the same scope. | tst.js:7:12:7:12 | g | another declaration |
|
||||
testFailures
|
||||
| tst.js:3:12:3:12 | Declaration of function g conflicts with $@ in the same scope. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,5 +1,2 @@
|
||||
#select
|
||||
| tst.js:1:1:1:1 | g | This definition of g is useless, since its value is never read. |
|
||||
| worker.js:3:1:3:9 | onmissage | This definition of onmissage is useless, since its value is never read. |
|
||||
testFailures
|
||||
| worker.js:3:1:3:9 | This definition of onmissage is useless, since its value is never read. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| overload.ts:10:12:10:14 | baz | The value assigned to baz here is unused. |
|
||||
| tst2.js:25:9:25:14 | x = 23 | The initial value of x is unused, since it is always overwritten. |
|
||||
| tst2.js:27:9:27:14 | x = 42 | The value assigned to x here is unused. |
|
||||
@@ -12,10 +11,3 @@
|
||||
| tst.js:130:7:130:13 | {x} = o | The initial value of x is unused, since it is always overwritten. |
|
||||
| tst.js:160:6:160:14 | [x] = [0] | The initial value of x is unused, since it is always overwritten. |
|
||||
| tst.js:170:7:170:17 | nSign = foo | The value assigned to nSign here is unused. |
|
||||
testFailures
|
||||
| tst.js:43:6:43:11 | The initial value of x is unused, since it is always overwritten. | Unexpected result: Alert |
|
||||
| tst.js:49:6:49:11 | The initial value of x is unused, since it is always overwritten. | Unexpected result: Alert |
|
||||
| tst.js:130:7:130:13 | The initial value of x is unused, since it is always overwritten. | Unexpected result: Alert |
|
||||
| tst.js:160:6:160:14 | The initial value of x is unused, since it is always overwritten. | Unexpected result: Alert |
|
||||
| tst.js:170:7:170:17 | The value assigned to nSign here is unused. | Unexpected result: Alert |
|
||||
| tst2.js:27:9:27:14 | The value assigned to x here is unused. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| exports.js:2:1:2:22 | exports ... = "yes" | This write to property 'answer' is useless, since $@ always overrides it. | exports.js:3:1:3:21 | exports ... = "no" | another property write |
|
||||
| fieldInit.ts:10:3:10:8 | f = 4; | This write to property 'f' is useless, since $@ always overrides it. | fieldInit.ts:13:5:13:14 | this.f = 5 | another property write |
|
||||
| fieldInit.ts:18:22:18:22 | h | This write to property 'h' is useless, since $@ always overrides it. | fieldInit.ts:19:5:19:14 | this.h = h | another property write |
|
||||
@@ -17,5 +16,3 @@
|
||||
| tst.js:96:5:96:17 | o.pure18 = 42 | This write to property 'pure18' is useless, since $@ always overrides it. | tst.js:97:5:97:17 | o.pure18 = 42 | another property write |
|
||||
| tst.js:114:2:114:14 | o.setter = 42 | This write to property 'setter' is useless, since $@ always overrides it. | tst.js:115:2:115:14 | o.setter = 87 | another property write |
|
||||
| tst.js:118:2:118:104 | Object. ... lue()}) | This write to property 'prop' is useless, since $@ always overrides it. | tst.js:119:2:119:12 | o.prop = 42 | another property write |
|
||||
testFailures
|
||||
| tst.js:114:2:114:14 | This write to property 'setter' is useless, since $@ always overrides it. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,5 +1,2 @@
|
||||
#select
|
||||
| jslint.js:7:1:7:1 | z | Variable 'z' is used before its $@. | jslint.js:8:11:8:11 | z | declaration |
|
||||
| tst2.js:5:13:5:13 | x | Variable 'x' is used before its $@. | tst2.js:6:5:6:5 | x | declaration |
|
||||
testFailures
|
||||
| jslint.js:6:4:6:13 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:1:19:1:28 | defaultVal | This expression refers to $@ before it is defined. | tst.js:2:5:4:5 | functio ... ;\\n } | defaultVal |
|
||||
testFailures
|
||||
| tst.js:1:19:1:28 | This expression refers to $@ before it is defined. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| abstract-missing.ts:3:5:3:24 | setAudioProperties() | This call refers to a global function, and not the local method $@. | abstract-missing.ts:6:3:6:32 | abstrac ... ties(); | setAudioProperties |
|
||||
| indirection.js:7:9:7:20 | m("default") | This call refers to a global function, and not the local method $@. | indirection.js:2:5:4:5 | m() {\\n ... ;\\n } | m |
|
||||
| missing1.js:3:5:3:24 | setAudioProperties() | This call refers to a global function, and not the local method $@. | missing1.js:6:3:7:3 | setAudi ... (){\\n } | setAudioProperties |
|
||||
@@ -9,5 +8,3 @@
|
||||
| namespaces-uses.ts:16:7:16:22 | globalFunction() | This call refers to a global function, and not the local method $@. | namespaces-uses.ts:15:5:17:5 | globalF ... t\\n } | globalFunction |
|
||||
| namespaces-uses.ts:30:7:30:22 | globalFunction() | This call refers to a global function, and not the local method $@. | namespaces-uses.ts:29:5:31:5 | globalF ... t\\n } | globalFunction |
|
||||
| not-ignored-by-jslint.js:4:5:4:24 | setAudioProperties() | This call refers to a global function, and not the local method $@. | not-ignored-by-jslint.js:7:3:8:3 | setAudi ... (){\\n } | setAudioProperties |
|
||||
testFailures
|
||||
| namespaces-uses.ts:22:34:22:103 | // $ Al ... ignored | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| test.js:5:7:5:7 | i | Variable i is used like a local variable, but is missing a declaration. |
|
||||
| test.js:12:7:12:7 | i | Variable i is used like a local variable, but is missing a declaration. |
|
||||
| test.js:20:2:20:2 | y | Variable y is used like a local variable, but is missing a declaration. |
|
||||
@@ -8,9 +7,3 @@
|
||||
| test.js:66:9:66:20 | unresolvable | Variable unresolvable is used like a local variable, but is missing a declaration. |
|
||||
| tst3.js:7:10:7:10 | x | Variable x is used like a local variable, but is missing a declaration. |
|
||||
| tst3.js:7:16:7:19 | rest | Variable rest is used like a local variable, but is missing a declaration. |
|
||||
testFailures
|
||||
| test.js:54:9:54:18 | // $ Alert | Missing result: Alert |
|
||||
| test.js:55:6:55:6 | Variable y is used like a local variable, but is missing a declaration. | Unexpected result: Alert |
|
||||
| test.js:66:9:66:20 | Variable unresolvable is used like a local variable, but is missing a declaration. | Unexpected result: Alert |
|
||||
| tst3.js:7:10:7:10 | Variable x is used like a local variable, but is missing a declaration. | Unexpected result: Alert |
|
||||
| tst3.js:7:16:7:19 | Variable rest is used like a local variable, but is missing a declaration. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| sameNameForFunctionAndVariable.js:2:10:2:13 | fun1 | This variable has already $@. | sameNameForFunctionAndVariable.js:1:5:1:8 | fun1 | been declared |
|
||||
| sameNameForFunctionAndVariable.js:7:5:7:8 | fun2 | This variable has already $@. | sameNameForFunctionAndVariable.js:5:10:5:13 | fun2 | been declared |
|
||||
| tst3.js:9:10:9:10 | f | This variable has already $@. | tst3.js:3:10:3:10 | f | been declared |
|
||||
@@ -7,7 +6,3 @@
|
||||
| tst4.js:12:12:12:12 | i | This variable has already $@. | tst4.js:11:7:11:7 | i | been declared |
|
||||
| tst4.js:19:7:19:7 | y | This variable has already $@. | tst4.js:17:7:17:7 | y | been declared |
|
||||
| tst4.js:22:5:22:5 | g | This variable has already $@. | tst4.js:6:10:6:10 | g | been declared |
|
||||
testFailures
|
||||
| sameNameForFunctionAndVariable.js:2:10:2:13 | This variable has already $@. | Unexpected result: Alert |
|
||||
| sameNameForFunctionAndVariable.js:7:5:7:8 | This variable has already $@. | Unexpected result: Alert |
|
||||
| tst4.js:22:5:22:5 | This variable has already $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| excessiveParameterList.js:4:1:4:48 | functio ... p8) {\\n} | Function func2 has too many parameters (8). |
|
||||
testFailures
|
||||
| excessiveParameterList.js:4:1:4:48 | Function func2 has too many parameters (8). | Unexpected result: Alert |
|
||||
| excessiveParameterList.js:4:1:4:59 | functio ... Alert\\n} | Function func2 has too many parameters (8). |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:2:1:2:1 | x | This parameter has the same name as $@ of the same function. | tst.js:4:1:4:6 | \\u0078 | another parameter |
|
||||
| tst.js:3:1:3:1 | x | This parameter has the same name as $@ of the same function. | tst.js:4:1:4:6 | \\u0078 | another parameter |
|
||||
testFailures
|
||||
| tst.js:2:1:2:1 | This parameter has the same name as $@ of the same function. | Unexpected result: Alert |
|
||||
| tst.js:4:8:4:17 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
#select
|
||||
| tst2.js:8:3:10:3 | setX: f ... x;\\n } | This property is overwritten by $@ in the same object literal. | tst2.js:16:3:18:3 | setX: f ... x;\\n } | another property |
|
||||
| tst.js:20:3:20:7 | x: 23 | This property is overwritten by $@ in the same object literal. | tst.js:23:3:23:7 | x: 56 | another property |
|
||||
| tst.js:21:3:21:12 | y: "hello" | This property is overwritten by $@ in the same object literal. | tst.js:24:3:24:14 | "y": "world" | another property |
|
||||
| tst.js:22:3:22:7 | x: 42 | This property is overwritten by $@ in the same object literal. | tst.js:23:3:23:7 | x: 56 | another property |
|
||||
testFailures
|
||||
| tst2.js:8:3:10:3 | This property is overwritten by $@ in the same object literal. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
#select
|
||||
| A.ts:3:24:3:24 | B | B is uninitialized if $@ is loaded first in the cyclic import: A => B => A. | A.ts:1:17:1:21 | './B' | B |
|
||||
| B.ts:5:24:5:24 | A | A is uninitialized if $@ is loaded first in the cyclic import: B => A => B. | B.ts:1:17:1:21 | './A' | A |
|
||||
| ExampleBad/services.js:5:3:5:14 | AudioService | AudioService is uninitialized if $@ is loaded first in the cyclic import: services => audio => services. | ExampleBad/services.js:1:30:1:38 | './audio' | audio |
|
||||
testFailures
|
||||
| ExampleBad/services.js:5:3:5:14 | AudioService is uninitialized if $@ is loaded first in the cyclic import: services => audio => services. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
#select
|
||||
| istype.ts:18:15:18:18 | node | The parameter 'node' is never used. |
|
||||
| parameter_field.ts:6:15:6:15 | x | The parameter 'x' is never used. |
|
||||
| tst2.js:1:12:1:12 | x | The parameter 'x' is never used. |
|
||||
| tst2.js:28:12:28:12 | x | The parameter 'x' is never used. |
|
||||
| tst.js:6:32:6:34 | idx | The parameter 'idx' is never used. |
|
||||
| tst.js:10:13:10:13 | x | The parameter 'x' is never used. |
|
||||
testFailures
|
||||
| tst2.js:28:12:28:12 | The parameter 'x' is never used. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst2.ts:24:21:24:25 | p: 42 | Unused property p. |
|
||||
| tst.js:4:9:4:19 | unused1: 42 | Unused property unused1. |
|
||||
| tst.js:19:5:19:15 | unused9: 42 | Unused property unused9. |
|
||||
@@ -8,13 +7,3 @@
|
||||
| tst.js:52:3:52:14 | unused14: 42 | Unused property unused14. |
|
||||
| tst.js:54:2:54:20 | captured14.unused14 | Unused property unused14. |
|
||||
| tst.js:55:2:55:20 | captured14.unused14 | Unused property unused14. |
|
||||
testFailures
|
||||
| tst.js:4:9:4:19 | Unused property unused1. | Unexpected result: Alert |
|
||||
| tst.js:19:5:19:15 | Unused property unused9. | Unexpected result: Alert |
|
||||
| tst.js:26:13:26:24 | Unused property unused11. | Unexpected result: Alert |
|
||||
| tst.js:31:13:31:35 | Unused property used12_butNotReally. | Unexpected result: Alert |
|
||||
| tst.js:32:13:32:24 | Unused property unused12. | Unexpected result: Alert |
|
||||
| tst.js:52:3:52:14 | Unused property unused14. | Unexpected result: Alert |
|
||||
| tst.js:54:2:54:20 | Unused property unused14. | Unexpected result: Alert |
|
||||
| tst.js:55:2:55:20 | Unused property unused14. | Unexpected result: Alert |
|
||||
| tst2.ts:24:21:24:25 | Unused property p. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| Babelrc/importPragma.jsx:2:1:2:27 | import ... react'; | Unused import q. |
|
||||
| eval.js:10:9:10:24 | not_used_by_eval | Unused variable not_used_by_eval. |
|
||||
| eval.js:19:9:19:24 | not_used_by_eval | Unused variable not_used_by_eval. |
|
||||
@@ -14,12 +13,3 @@
|
||||
| underscore.js:7:7:7:7 | f | Unused variable f. |
|
||||
| unusedShadowed.ts:1:1:1:26 | import ... where'; | Unused import T. |
|
||||
| unusedShadowed.ts:2:1:2:31 | import ... where'; | Unused import object. |
|
||||
testFailures
|
||||
| UnusedIndexVariable.js:3:24:3:75 | // $ Al ... ariable | Missing result: Alert |
|
||||
| decorated.ts:1:1:1:126 | Unused import actionHandler. | Unexpected result: Alert |
|
||||
| decorated.ts:4:10:4:12 | Unused function fun. | Unexpected result: Alert |
|
||||
| eval.js:10:9:10:24 | Unused variable not_used_by_eval. | Unexpected result: Alert |
|
||||
| eval.js:19:9:19:24 | Unused variable not_used_by_eval. | Unexpected result: Alert |
|
||||
| interTypes.ts:1:1:1:37 | Unused import Bar. | Unexpected result: Alert |
|
||||
| multi-imports.js:1:1:1:29 | Unused imports a, b, d. | Unexpected result: Alert |
|
||||
| multi-imports.js:2:1:2:42 | Unused imports alphabetically, ordered. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| DangerousWebPreferences.js:7:13:7:45 | allowRu ... t: true | Enabling allowRunningInsecureContent is strongly discouraged. |
|
||||
testFailures
|
||||
| DangerousWebPreferences.js:7:13:7:45 | Enabling allowRunningInsecureContent is strongly discouraged. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| DangerousWebPreferences.js:6:13:6:30 | webSecurity: false | Disabling webSecurity is strongly discouraged. |
|
||||
testFailures
|
||||
| DangerousWebPreferences.js:6:13:6:30 | Disabling webSecurity is strongly discouraged. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
| EnablingNodeIntegration.js:5:28:11:9 | {\\n ... } | The `nodeIntegrationInWorker` feature has been enabled. |
|
||||
| EnablingNodeIntegration.js:5:28:11:9 | {\\n ... } | The `nodeIntegration` feature has been enabled. |
|
||||
| EnablingNodeIntegration.js:15:22:20:9 | {\\n ... } | The `nodeIntegration` feature is enabled by default. |
|
||||
| EnablingNodeIntegration.js:23:16:27:9 | { // $ ... } | The `nodeIntegration` feature is enabled by default. |
|
||||
| EnablingNodeIntegration.js:23:16:27:9 | { // im ... } | The `nodeIntegration` feature is enabled by default. |
|
||||
| EnablingNodeIntegration.js:49:74:49:96 | {nodeIn ... : true} | The `nodeIntegration` feature has been enabled. |
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
#select
|
||||
| tst.js:2:9:2:24 | (x & (1<<n)) > 0 | Potentially unsafe sign check of a bitwise operation. |
|
||||
| tst.js:13:13:13:25 | (x >>> 0) > 0 | Potentially unsafe sign check of a bitwise operation. |
|
||||
| tst.js:21:1:21:21 | (x & 0x ... 00) > 0 | Potentially unsafe sign check of a bitwise operation. |
|
||||
testFailures
|
||||
| tst.js:2:9:2:24 | Potentially unsafe sign check of a bitwise operation. | Unexpected result: Alert |
|
||||
| tst.js:13:13:13:25 | Potentially unsafe sign check of a bitwise operation. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,5 +1,2 @@
|
||||
#select
|
||||
| tst.js:11:10:11:15 | y <= y | This expression compares $@ to itself. | tst.js:11:10:11:10 | y | y |
|
||||
| tst.js:21:1:21:35 | (functi ... n() {}) | This expression compares $@ to itself. | tst.js:21:1:21:16 | (function() { }) | (function() { }) |
|
||||
testFailures
|
||||
| tst.js:11:10:11:15 | This expression compares $@ to itself. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
#select
|
||||
| tst.js:1:1:1:8 | x == NaN | Useless comparison with NaN. |
|
||||
| tst.js:2:1:2:8 | x != NaN | Useless comparison with NaN. |
|
||||
| tst.js:3:1:3:9 | x === NaN | Useless comparison with NaN. |
|
||||
| tst.js:4:1:4:9 | NaN !== x | Useless comparison with NaN. |
|
||||
| tst.js:5:1:5:7 | x < NaN | Useless comparison with NaN. |
|
||||
| tst.js:6:1:6:11 | NaN === NaN | Useless comparison with NaN. |
|
||||
testFailures
|
||||
| tst.js:1:1:1:8 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
| tst.js:2:1:2:8 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
| tst.js:3:1:3:9 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
| tst.js:4:1:4:9 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
| tst.js:5:1:5:7 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
| tst.js:6:1:6:11 | Useless comparison with NaN. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:4:11:4:24 | msg == 'start' | This condition is a duplicate of $@. | tst.js:2:6:2:19 | msg == 'start' | msg == 'start' |
|
||||
testFailures
|
||||
| tst.js:4:11:4:24 | This condition is a duplicate of $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst2.js:4:3:6:3 | getX: f ... .x;\\n } | This property is duplicated $@. | tst2.js:12:3:14:3 | getX: f ... .x;\\n } | in a later property |
|
||||
| tst.js:2:3:2:16 | "key": "value" | This property is duplicated $@. | tst.js:5:3:5:16 | "key": "value" | in a later property |
|
||||
| tst.js:4:3:4:14 | "1": "value" | This property is duplicated $@. | tst.js:11:3:11:12 | 1: "value" | in a later property |
|
||||
@@ -7,5 +6,3 @@
|
||||
| tst.js:7:3:7:14 | key: "value" | This property is duplicated $@. | tst.js:8:3:8:19 | \\u006bey: "value" | in a later property |
|
||||
| tst.js:8:3:8:19 | \\u006bey: "value" | This property is duplicated $@. | tst.js:9:3:9:21 | "\\u006bey": "value" | in a later property |
|
||||
| tst.js:9:3:9:21 | "\\u006bey": "value" | This property is duplicated $@. | tst.js:10:3:10:19 | "\\x6bey": "value" | in a later property |
|
||||
testFailures
|
||||
| tst2.js:4:3:6:3 | This property is duplicated $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:6:7:6:13 | 'start' | This case label is a duplicate of $@. | tst.js:3:7:3:13 | 'start' | 'start' |
|
||||
testFailures
|
||||
| tst.js:6:7:6:13 | This case label is a duplicate of $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| try.js:22:9:22:26 | x.ordinaryProperty | This expression has no effect. |
|
||||
| tst2.js:2:4:2:4 | 0 | This expression has no effect. |
|
||||
| tst.js:3:1:3:2 | 23 | This expression has no effect. |
|
||||
@@ -12,8 +11,4 @@
|
||||
| tst.js:50:3:50:36 | new Err ... age(e)) | This expression has no effect. |
|
||||
| tst.js:61:2:61:20 | o.trivialNonGetter1 | This expression has no effect. |
|
||||
| tst.js:77:24:77:24 | o | This expression has no effect. |
|
||||
| uselessfn.js:1:1:1:15 | (functi ... .");\\n}) | This expression has no effect. |
|
||||
testFailures
|
||||
| tst.js:21:16:21:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:22:1:22:1 | This expression has no effect. | Unexpected result: Alert |
|
||||
| uselessfn.js:1:1:1:15 | This expression has no effect. | Unexpected result: Alert |
|
||||
| uselessfn.js:1:1:1:26 | (functi ... .");\\n}) | This expression has no effect. |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| interprocedural.js:11:9:11:13 | known | Variable 'known' is of type string, but it is compared to $@ of type number. | interprocedural.js:11:19:11:20 | 42 | an expression |
|
||||
| interprocedural.js:15:9:15:18 | getKnown() | This expression is of type string, but it is compared to $@ of type number. | interprocedural.js:15:24:15:25 | 42 | an expression |
|
||||
| interprocedural.js:17:9:17:27 | getKnown_indirect() | This expression is of type string, but it is compared to $@ of type number. | interprocedural.js:17:33:17:34 | 42 | an expression |
|
||||
@@ -52,12 +51,3 @@
|
||||
| tst.js:201:5:201:6 | t5 | Variable 't5' is of type boolean, null, number, string or undefined, but it is compared to $@ of type function, object or regular expression. | tst.js:201:12:201:13 | t3 | variable 't3' |
|
||||
| tst.js:216:13:216:14 | xy | Variable 'xy' is of type undefined, but it is compared to $@ of type string. | tst.js:216:20:216:24 | "foo" | an expression |
|
||||
| tst.js:224:5:224:5 | x | Variable 'x' is of type object, but it is compared to $@ of type number. | tst.js:224:11:224:12 | 42 | an expression |
|
||||
testFailures
|
||||
| interprocedural.js:11:9:11:13 | Variable 'known' is of type string, but it is compared to $@ of type number. | Unexpected result: Alert |
|
||||
| interprocedural.js:15:9:15:18 | This expression is of type string, but it is compared to $@ of type number. | Unexpected result: Alert |
|
||||
| interprocedural.js:17:9:17:27 | This expression is of type string, but it is compared to $@ of type number. | Unexpected result: Alert |
|
||||
| tst.js:19:17:19:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:20:6:20:7 | This expression is of type number, but it is compared to $@ of type string. | Unexpected result: Alert |
|
||||
| tst.js:41:3:41:8 | Variable 'number' is of type number, but it is compared to $@ of type string. | Unexpected result: Alert |
|
||||
| tst.js:139:5:139:9 | This expression is of type string, but it is compared to $@ of type undefined. | Unexpected result: Alert |
|
||||
| tst.js:224:5:224:5 | Variable 'x' is of type object, but it is compared to $@ of type number. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:1:1:7 | !method | This expression will be implicitly converted from boolean to string. |
|
||||
| tst.js:15:6:15:9 | null | This expression will be implicitly converted from null to object. |
|
||||
| tst.js:17:6:17:13 | 'string' | This expression will be implicitly converted from string to object. |
|
||||
@@ -16,9 +15,3 @@
|
||||
| tst.js:99:13:99:15 | g() | This expression will be implicitly converted from undefined to string. |
|
||||
| tst.js:106:8:106:8 | y | This expression will be implicitly converted from string to number. |
|
||||
| tst.js:111:10:111:10 | y | This expression will be implicitly converted from string to number. |
|
||||
testFailures
|
||||
| tst.js:77:9:77:46 | // $ Al ... flagged | Missing result: Alert |
|
||||
| tst.js:89:5:89:7 | This expression will be implicitly converted from undefined to number. | Unexpected result: Alert |
|
||||
| tst.js:95:5:95:7 | This expression will be implicitly converted from undefined to number. | Unexpected result: Alert |
|
||||
| tst.js:98:13:98:15 | This expression will be implicitly converted from undefined to number. | Unexpected result: Alert |
|
||||
| tst.js:99:13:99:15 | This expression will be implicitly converted from undefined to string. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:8:9:8:13 | thing | Missing await. The value 'thing' is always a promise. |
|
||||
| tst.js:10:9:10:13 | thing | Missing await. The value 'thing' is always a promise. |
|
||||
| tst.js:12:15:12:19 | thing | Missing await. The value 'thing' is always a promise. |
|
||||
@@ -9,5 +8,3 @@
|
||||
| tst.js:25:13:25:17 | thing | Missing await. The value 'thing' is always a promise. |
|
||||
| tst.js:48:12:48:16 | thing | Missing await. The value 'thing' is always a promise. |
|
||||
| tst.js:71:16:71:25 | getThing() | Missing await. The call to 'getThing' always returns a promise. |
|
||||
testFailures
|
||||
| tst.js:62:27:62:59 | // $ Al ... flag it | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| missing.js:2:5:2:15 | "this text" | This string appears to be missing a space after 'text'. |
|
||||
| missing.js:4:5:4:35 | "the cl ... ayList" | This string appears to be missing a space after 'java.util.ArrayList'. |
|
||||
| missing.js:6:5:6:16 | "This isn't" | This string appears to be missing a space after 'isn't'. |
|
||||
@@ -14,19 +13,3 @@
|
||||
| missing.js:28:5:28:21 | `missing a space` | This string appears to be missing a space after 'space'. |
|
||||
| missing.js:30:7:30:21 | "missing space" | This string appears to be missing a space after 'space'. |
|
||||
| missing.js:32:7:32:12 | "h. 0" | This string appears to be missing a space after '0'. |
|
||||
testFailures
|
||||
| missing.js:2:5:2:15 | This string appears to be missing a space after 'text'. | Unexpected result: Alert |
|
||||
| missing.js:4:5:4:35 | This string appears to be missing a space after 'java.util.ArrayList'. | Unexpected result: Alert |
|
||||
| missing.js:6:5:6:16 | This string appears to be missing a space after 'isn't'. | Unexpected result: Alert |
|
||||
| missing.js:8:5:8:15 | This string appears to be missing a space after '1'. | Unexpected result: Alert |
|
||||
| missing.js:10:5:10:17 | This string appears to be missing a space after 'A/B'. | Unexpected result: Alert |
|
||||
| missing.js:12:5:12:21 | This string appears to be missing a space after 'it....'. | Unexpected result: Alert |
|
||||
| missing.js:14:5:14:23 | This string appears to be missing a space after 'space?'. | Unexpected result: Alert |
|
||||
| missing.js:17:15:17:23 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:20:5:20:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:22:5:22:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:24:5:24:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:26:5:26:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:28:5:28:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:30:7:30:21 | This string appears to be missing a space after 'space'. | Unexpected result: Alert |
|
||||
| missing.js:32:7:32:12 | This string appears to be missing a space after '0'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
#select
|
||||
| tst.js:4:19:4:24 | lenght | 'lenght' may be a typo for 'length'. |
|
||||
| tst.js:24:5:24:10 | lenght | 'lenght' may be a typo for 'length'. |
|
||||
| tst.js:24:16:24:21 | lenght | 'lenght' may be a typo for 'length'. |
|
||||
| tst.js:29:27:29:34 | avalable | 'avalable' may be a typo for 'available'. |
|
||||
| tst.js:39:5:39:12 | throught | 'throught' may be a typo for 'through' or 'throughout'. |
|
||||
| tst.js:40:5:40:9 | sheat | 'sheat' may be a typo for 'cheat', 'sheath' or 'sheet'. |
|
||||
testFailures
|
||||
| tst.js:29:37:29:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:39:5:39:12 | 'throught' may be a typo for 'through' or 'throughout'. | Unexpected result: Alert |
|
||||
| tst.js:40:5:40:9 | 'sheat' may be a typo for 'cheat', 'sheath' or 'sheet'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| MisspelledVariableName.js:2:40:2:45 | lenght | 'lenght' may be a typo for variable $@. | MisspelledVariableName.js:2:19:2:24 | length | length |
|
||||
| tst.js:2:10:2:20 | errorMesage | 'errorMesage' may be a typo for variable $@. | tst.js:1:12:1:23 | errorMessage | errorMessage |
|
||||
| tst.js:6:10:6:21 | errorMessage | $@ may be a typo for 'errorMessage'. | tst.js:5:12:5:22 | errorMesage | errorMesage |
|
||||
@@ -12,17 +11,3 @@
|
||||
| tst.js:27:2:27:12 | thisHandler | $@ may be a typo for 'thisHandler'. | tst.js:21:6:21:15 | thisHander | thisHander |
|
||||
| tst.js:28:2:28:12 | thisHandler | $@ may be a typo for 'thisHandler'. | tst.js:21:6:21:15 | thisHander | thisHander |
|
||||
| tst.js:29:2:29:12 | thisHandler | $@ may be a typo for 'thisHandler'. | tst.js:21:6:21:15 | thisHander | thisHander |
|
||||
testFailures
|
||||
| MisspelledVariableName.js:2:40:2:45 | 'lenght' may be a typo for variable $@. | Unexpected result: Alert |
|
||||
| tst.js:2:10:2:20 | 'errorMesage' may be a typo for variable $@. | Unexpected result: Alert |
|
||||
| tst.js:6:10:6:21 | $@ may be a typo for 'errorMessage'. | Unexpected result: Alert |
|
||||
| tst.js:11:12:11:22 | 'errorMesage' may be a typo for variable $@. | Unexpected result: Alert |
|
||||
| tst.js:17:5:17:16 | $@ may be a typo for 'errorMessage'. | Unexpected result: Alert |
|
||||
| tst.js:22:2:22:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:23:2:23:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:24:2:24:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:25:2:25:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:26:2:26:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:27:2:27:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:28:2:28:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
| tst.js:29:2:29:12 | $@ may be a typo for 'thisHandler'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
#select
|
||||
| tst.js:1:1:1:11 | (x + x) / 2 | Operands $@ and $@ are identical. | tst.js:1:2:1:2 | x | x | tst.js:1:6:1:6 | x | x |
|
||||
| tst.js:2:1:2:11 | e[i] - e[i] | Operands $@ and $@ are identical. | tst.js:2:1:2:4 | e[i] | e[i] | tst.js:2:8:2:11 | e[i] | e[i] |
|
||||
| tst.js:3:1:3:15 | (x + y)/(x + y) | Operands $@ and $@ are identical. | tst.js:3:1:3:7 | (x + y) | (x + y) | tst.js:3:9:3:15 | (x + y) | (x + y) |
|
||||
| tst.js:4:1:4:29 | window. ... .height | Operands $@ and $@ are identical. | tst.js:4:1:4:13 | window.height | window.height | tst.js:4:17:4:29 | window.height | window.height |
|
||||
| tst.js:5:1:5:18 | x == 23 \|\| x == 23 | Operands $@ and $@ are identical. | tst.js:5:1:5:7 | x == 23 | x == 23 | tst.js:5:12:5:18 | x == 23 | x == 23 |
|
||||
| tst.js:9:1:9:14 | pop() && pop() | Operands $@ and $@ are identical. | tst.js:9:1:9:5 | pop() | pop() | tst.js:9:10:9:14 | pop() | pop() |
|
||||
testFailures
|
||||
| tst.js:1:1:1:11 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
| tst.js:2:1:2:11 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
| tst.js:3:1:3:15 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
| tst.js:4:1:4:29 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
| tst.js:5:1:5:18 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
| tst.js:9:1:9:14 | Operands $@ and $@ are identical. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:3:5:3:28 | "".repl ... i", "") | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:3:16:3:23 | "/foo/i" | /foo/i |
|
||||
| tst.js:4:5:4:28 | "".repl ... /", "") | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:4:16:4:23 | "/^foo/" | /^foo/ |
|
||||
| tst.js:5:5:5:28 | "".repl ... /", "") | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:5:16:5:23 | "/foo$/" | /foo$/ |
|
||||
@@ -33,38 +32,3 @@
|
||||
| tst.js:39:5:39:36 | "".repl ... +", "") | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:39:16:39:31 | "[^a-zA-Z0-9 ]+" | [^a-zA-Z0-9 ]+ |
|
||||
| tst.js:42:5:42:22 | "".split("/foo/i") | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:42:14:42:21 | "/foo/i" | /foo/i |
|
||||
| tst.js:43:5:43:25 | "".spli ... /i", x) | String argument $@ looks like a regular expression, but it will be interpreted as a string. | tst.js:43:14:43:21 | "/foo/i" | /foo/i |
|
||||
testFailures
|
||||
| tst.js:3:5:3:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:4:5:4:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:5:5:5:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:6:5:6:27 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:7:5:7:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:8:5:8:30 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:9:5:9:27 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:10:5:10:27 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:11:5:11:30 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:12:5:12:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:13:5:13:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:14:5:14:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:15:5:15:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:16:5:16:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:17:5:17:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:18:5:18:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:19:5:19:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:20:5:20:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:21:5:21:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:22:5:22:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:23:5:23:24 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:24:5:24:34 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:25:5:25:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:26:5:26:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:27:5:27:30 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:28:5:28:29 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:29:5:29:35 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:32:5:32:28 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:34:5:34:22 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:35:5:35:30 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:38:5:38:31 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:39:5:39:36 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:42:5:42:22 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
| tst.js:43:5:43:25 | String argument $@ looks like a regular expression, but it will be interpreted as a string. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,13 +1,6 @@
|
||||
#select
|
||||
| SuspiciousInvocation.js:11:5:11:58 | error(" ... status) | Callee is not a function: it has type undefined. |
|
||||
| namespace.ts:23:1:23:3 | g() | Callee is not a function: it has type object. |
|
||||
| optional-chaining.js:3:5:3:7 | a() | Callee is not a function: it has type null. |
|
||||
| optional-chaining.js:7:5:7:7 | b() | Callee is not a function: it has type undefined. |
|
||||
| super.js:10:5:10:11 | super() | Callee is not a function: it has type number. |
|
||||
| unreachable-code.js:5:9:5:11 | f() | Callee is not a function: it has type undefined. |
|
||||
testFailures
|
||||
| SuspiciousInvocation.js:11:5:11:58 | Callee is not a function: it has type undefined. | Unexpected result: Alert |
|
||||
| eval.js:9:13:9:50 | // $ Al ... flagged | Missing result: Alert |
|
||||
| optional-chaining.js:3:5:3:7 | Callee is not a function: it has type null. | Unexpected result: Alert |
|
||||
| optional-chaining.js:7:5:7:7 | Callee is not a function: it has type undefined. | Unexpected result: Alert |
|
||||
| unreachable-code.js:5:9:5:11 | Callee is not a function: it has type undefined. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,14 +1,6 @@
|
||||
#select
|
||||
| SuspiciousPropAccess.js:4:10:4:21 | result.value | The base expression of this property access is always undefined. |
|
||||
| optional-chaining.js:3:5:3:7 | a.p | The base expression of this property access is always null. |
|
||||
| optional-chaining.js:7:5:7:7 | b.p | The base expression of this property access is always undefined. |
|
||||
| tst2.ts:19:3:19:5 | x.p | The base expression of this property access is always undefined. |
|
||||
| tst.js:32:32:32:38 | a(1)[0] | The base expression of this property access is always null. |
|
||||
| typeassertion.ts:14:3:14:9 | z.field | The base expression of this property access is always null. |
|
||||
testFailures
|
||||
| SuspiciousPropAccess.js:4:10:4:21 | The base expression of this property access is always undefined. | Unexpected result: Alert |
|
||||
| optional-chaining.js:3:5:3:7 | The base expression of this property access is always null. | Unexpected result: Alert |
|
||||
| optional-chaining.js:7:5:7:7 | The base expression of this property access is always undefined. | Unexpected result: Alert |
|
||||
| tst.js:32:32:32:38 | The base expression of this property access is always null. | Unexpected result: Alert |
|
||||
| tst2.ts:19:3:19:5 | The base expression of this property access is always undefined. | Unexpected result: Alert |
|
||||
| typeoftype.ts:3:15:3:72 | // $ Al ... karound | Missing result: Alert |
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
#select
|
||||
| tst.js:27:18:27:40 | onClick ... bound1} | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | tst.js:56:9:56:12 | this | this | tst.js:55:5:57:5 | unbound ... ;\\n } | unbound1 |
|
||||
| tst.js:28:18:28:40 | onClick ... bound2} | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | tst.js:60:15:60:18 | this | this | tst.js:59:5:61:5 | unbound ... ;\\n } | unbound2 |
|
||||
| tst.js:29:18:29:35 | onClick={unbound3} | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | tst.js:64:15:64:18 | this | this | tst.js:63:5:65:5 | unbound ... ;\\n } | unbound3 |
|
||||
testFailures
|
||||
| tst.js:27:18:27:40 | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | Unexpected result: Alert |
|
||||
| tst.js:28:18:28:40 | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | Unexpected result: Alert |
|
||||
| tst.js:29:18:29:35 | The receiver of this event handler call is unbound, `$@` will be `undefined` in the call to $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| UnknownDirective.html:3:64:3:86 | 'some-f ... tring'; | Unknown directive: 'some-function-string'. |
|
||||
| UnknownDirective.html:5:1:5:20 | 'some-script-string' | Unknown directive: 'some-script-string'. |
|
||||
| UnknownDirective.js:1:1:1:10 | "use foo"; | Unknown directive: 'use foo'. |
|
||||
@@ -16,5 +15,3 @@
|
||||
| UnknownDirective.js:41:5:41:65 | "[0, 0, ... , 0];"; | Unknown directive: '[0, 0, 0, 0, 0, 0, 0 ... (truncated)'. |
|
||||
| UnknownDirective.js:47:5:47:15 | ":nomunge"; | Unknown directive: ':nomunge'. |
|
||||
| UnknownDirective.js:48:5:48:30 | "foo(), ... munge"; | Unknown directive: 'foo(), bar, baz:nomu ... (truncated)'. |
|
||||
testFailures
|
||||
| UnknownDirective.js:2:15:2:24 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,75 +1,3 @@
|
||||
#select
|
||||
| tst.js:162:9:162:16 | typeof x | This expression is of type string, but it is compared to $@ of type undefined. | tst.js:162:22:162:30 | undefined | 'undefined' |
|
||||
| tst.js:163:9:163:21 | typeof window | This expression is of type string, but it is compared to $@ of type undefined. | tst.js:163:27:163:35 | undefined | 'undefined' |
|
||||
| tst.js:165:9:165:16 | typeof x | This expression is of type string, but it is compared to $@ of type undefined. | tst.js:165:22:165:22 | u | variable 'u' |
|
||||
testFailures
|
||||
| global-module-definition.js:10:30:10:39 | // $ Alert | Missing result: Alert |
|
||||
| module-environment-detection.js:23:40:23:49 | // $ Alert | Missing result: Alert |
|
||||
| regression.js:9:33:9:42 | // $ Alert | Missing result: Alert |
|
||||
| regression.js:13:45:13:54 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:13:19:13:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:14:19:14:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:15:19:15:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:18:15:18:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:19:15:19:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:20:15:20:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:23:15:23:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:24:15:24:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:25:15:25:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:28:16:28:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:29:16:29:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:30:16:30:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:33:17:33:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:34:17:34:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:35:17:35:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:38:28:38:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:39:28:39:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:40:28:40:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:43:28:43:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:44:28:44:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:45:28:45:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:48:29:48:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:49:29:49:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:50:29:50:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:53:14:53:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:56:14:56:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:59:14:59:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:66:15:66:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:67:16:67:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:68:16:68:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:71:28:71:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:74:28:74:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:77:28:77:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:84:27:84:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:85:27:85:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:86:27:86:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:89:27:89:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:90:27:90:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:91:27:91:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:94:37:94:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:95:37:95:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:96:37:96:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:100:37:100:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:101:37:101:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:114:39:114:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:115:53:115:62 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:116:47:116:56 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:124:45:124:54 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:125:43:125:52 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:127:34:127:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:128:34:128:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:129:36:129:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:130:42:130:51 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:131:36:131:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:132:39:132:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:133:39:133:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:135:34:135:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:138:36:138:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:140:27:140:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:156:34:156:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:158:26:158:35 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:162:9:162:16 | This expression is of type string, but it is compared to $@ of type undefined. | Unexpected result: Alert |
|
||||
| tst.js:163:9:163:21 | This expression is of type string, but it is compared to $@ of type undefined. | Unexpected result: Alert |
|
||||
| tst.js:177:13:177:22 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:178:13:178:22 | // $ Alert | Missing result: Alert |
|
||||
| tst2.js:4:39:4:48 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| module-environment-detection.js:23:8:23:36 | typeof ... efined' | This guard always evaluates to true. |
|
||||
| regression.js:9:9:9:12 | date | This guard always evaluates to true. |
|
||||
| regression.js:13:25:13:40 | obj != undefined | This guard always evaluates to true. |
|
||||
@@ -75,9 +74,3 @@
|
||||
| tst.js:158:13:158:21 | x != null | This guard always evaluates to true. |
|
||||
| tst.js:177:2:177:2 | u | This guard always evaluates to false. |
|
||||
| tst.js:178:2:178:2 | u | This guard always evaluates to false. |
|
||||
testFailures
|
||||
| global-module-definition.js:10:30:10:39 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:13:19:13:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:14:19:14:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:15:19:15:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:165:26:165:35 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,75 +1,2 @@
|
||||
#select
|
||||
| tst.js:175:2:175:2 | u | This use of variable 'u' always evaluates to false. |
|
||||
| tst.js:176:2:176:2 | u | This use of variable 'u' always evaluates to false. |
|
||||
testFailures
|
||||
| global-module-definition.js:10:30:10:39 | // $ Alert | Missing result: Alert |
|
||||
| module-environment-detection.js:23:40:23:49 | // $ Alert | Missing result: Alert |
|
||||
| regression.js:9:33:9:42 | // $ Alert | Missing result: Alert |
|
||||
| regression.js:13:45:13:54 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:13:19:13:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:14:19:14:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:15:19:15:28 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:18:15:18:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:19:15:19:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:20:15:20:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:23:15:23:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:24:15:24:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:25:15:25:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:28:16:28:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:29:16:29:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:30:16:30:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:33:17:33:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:34:17:34:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:35:17:35:26 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:38:28:38:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:39:28:39:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:40:28:40:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:43:28:43:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:44:28:44:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:45:28:45:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:48:29:48:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:49:29:49:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:50:29:50:38 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:53:14:53:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:56:14:56:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:59:14:59:23 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:66:15:66:24 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:67:16:67:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:68:16:68:25 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:71:28:71:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:74:28:74:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:77:28:77:37 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:84:27:84:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:85:27:85:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:86:27:86:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:89:27:89:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:90:27:90:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:91:27:91:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:94:37:94:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:95:37:95:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:96:37:96:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:100:37:100:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:101:37:101:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:114:39:114:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:115:53:115:62 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:116:47:116:56 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:124:45:124:54 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:125:43:125:52 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:127:34:127:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:128:34:128:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:129:36:129:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:130:42:130:51 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:131:36:131:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:132:39:132:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:133:39:133:48 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:135:34:135:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:138:36:138:45 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:140:27:140:36 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:156:34:156:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:158:26:158:35 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:165:26:165:35 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:175:2:175:2 | This use of variable 'u' always evaluates to false. | Unexpected result: Alert |
|
||||
| tst.js:176:2:176:2 | This use of variable 'u' always evaluates to false. | Unexpected result: Alert |
|
||||
| tst.js:177:13:177:22 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:178:13:178:22 | // $ Alert | Missing result: Alert |
|
||||
| tst2.js:4:39:4:48 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
#select
|
||||
| tst.js:2:9:2:16 | x + x>>1 | Whitespace around nested operators contradicts precedence. |
|
||||
| tst.js:42:9:42:20 | p in o&&o[p] | Whitespace around nested operators contradicts precedence. |
|
||||
| tst.js:48:1:48:12 | x + x >> 1 | Whitespace around nested operators contradicts precedence. |
|
||||
testFailures
|
||||
| tst.js:2:9:2:16 | Whitespace around nested operators contradicts precedence. | Unexpected result: Alert |
|
||||
| tst.js:42:9:42:20 | Whitespace around nested operators contradicts precedence. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
#select
|
||||
| tst.js:4:4:4:9 | @param | @param tag refers to non-existent parameter prameter. |
|
||||
| tst.js:12:4:12:9 | @param | @param tag refers to non-existent parameter sign. |
|
||||
| tst.js:51:4:51:9 | @param | @param tag refers to non-existent parameter opts. |
|
||||
| tst.js:57:4:57:9 | @param | @param tag refers to non-existent parameter opts. |
|
||||
testFailures
|
||||
| tst.js:4:4:4:9 | @param tag refers to non-existent parameter prameter. | Unexpected result: Alert |
|
||||
| tst.js:12:4:12:9 | @param tag refers to non-existent parameter sign. | Unexpected result: Alert |
|
||||
| tst.js:51:4:51:9 | @param tag refers to non-existent parameter opts. | Unexpected result: Alert |
|
||||
| tst.js:57:4:57:9 | @param tag refers to non-existent parameter opts. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:4:11:4:26 | arguments.callee | Avoid using arguments.caller and arguments.callee. |
|
||||
| tst.js:12:9:12:24 | arguments.caller | Avoid using arguments.caller and arguments.callee. |
|
||||
testFailures
|
||||
| tst.js:4:11:4:26 | Avoid using arguments.caller and arguments.callee. | Unexpected result: Alert |
|
||||
| tst.js:12:9:12:24 | Avoid using arguments.caller and arguments.callee. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:1:1:8 | typeof a | The result of this 'typeof' expression is compared to $@, but the two can never be equal. | tst.js:1:14:1:20 | 'array' | array |
|
||||
| tst.js:18:9:18:16 | typeof a | The result of this 'typeof' expression is compared to $@, but the two can never be equal. | tst.js:21:6:21:11 | 'null' | null |
|
||||
| tst.js:30:2:30:9 | typeof a | The result of this 'typeof' expression is compared to $@, but the two can never be equal. | tst.js:30:16:30:22 | 'array' | array |
|
||||
testFailures
|
||||
| tst.js:18:9:18:16 | The result of this 'typeof' expression is compared to $@, but the two can never be equal. | Unexpected result: Alert |
|
||||
| tst.js:21:14:21:23 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| debuggerStatement.js:2:3:2:11 | debugger; | Do not use 'debugger'. |
|
||||
testFailures
|
||||
| debuggerStatement.js:2:3:2:11 | Do not use 'debugger'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:2:1:2:13 | delete String | Only properties should be deleted. |
|
||||
| tst.js:6:2:6:9 | delete x | Only properties should be deleted. |
|
||||
testFailures
|
||||
| tst.js:2:1:2:13 | Only properties should be deleted. | Unexpected result: Alert |
|
||||
| tst.js:6:2:6:9 | Only properties should be deleted. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
#select
|
||||
| tst.js:4:11:4:13 | [1, , 2] | Avoid omitted array elements. |
|
||||
| tst.js:6:14:6:16 | [1, 2, ,] | Avoid omitted array elements. |
|
||||
| tst.js:7:9:7:10 | [,1] | Avoid omitted array elements. |
|
||||
testFailures
|
||||
| tst.js:4:21:4:30 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:6:21:6:30 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:7:21:7:30 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| eval.js:2:3:2:13 | eval("2+2") | Do not use eval or the Function constructor. |
|
||||
testFailures
|
||||
| eval.js:2:3:2:13 | Do not use eval or the Function constructor. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,13 +1,6 @@
|
||||
#select
|
||||
| foreach.js:4:1:6:1 | for eac ... item;\\n} | Use for of statements instead of for each statements. |
|
||||
| jscript.js:1:1:1:28 | functio ... ad() {} | Use standard method definitions instead of double colon method declarations. |
|
||||
| letExpr.js:3:13:3:38 | let (x ... ) x + y | Use let declarations instead of let expressions. |
|
||||
| letStmt.js:3:1:5:1 | let (x ... + y);\\n} | Use let declarations instead of let statements. |
|
||||
| postfixComprehension.js:2:15:2:38 | [i*i fo ... mbers)] | Use prefix comprehensions instead of postfix comprehensions. |
|
||||
| tst.js:1:15:1:31 | function(x) x * x | Use arrow expressions instead of expression closures. |
|
||||
testFailures
|
||||
| foreach.js:4:1:6:1 | Use for of statements instead of for each statements. | Unexpected result: Alert |
|
||||
| jscript.js:1:1:1:28 | Use standard method definitions instead of double colon method declarations. | Unexpected result: Alert |
|
||||
| letExpr.js:3:13:3:38 | Use let declarations instead of let expressions. | Unexpected result: Alert |
|
||||
| letStmt.js:3:1:5:1 | Use let declarations instead of let statements. | Unexpected result: Alert |
|
||||
| postfixComprehension.js:2:15:2:38 | Use prefix comprehensions instead of postfix comprehensions. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:2:13:2:23 | for(i in a) | For-in comprehension blocks are a non-standard language feature. |
|
||||
testFailures
|
||||
| tst.js:2:13:2:23 | For-in comprehension blocks are a non-standard language feature. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
#select
|
||||
| tst.js:12:1:12:3 | C() | Illegal invocation of $@ as a function. | tst.js:1:9:1:8 | () {} | a constructor |
|
||||
| tst.js:13:1:13:10 | new (x=>x) | Illegal invocation of $@ using 'new'. | tst.js:13:6:13:9 | x=>x | an arrow function |
|
||||
| tst.js:42:1:42:7 | new g() | Illegal invocation of $@ using 'new'. | tst.js:39:1:39:16 | function* g() {} | a generator function |
|
||||
| tst.js:43:1:43:7 | new h() | Illegal invocation of $@ using 'new'. | tst.js:40:1:40:21 | async f ... h() {} | an async function |
|
||||
| tst.js:45:1:45:8 | reflective call | Illegal invocation of $@ as a function. | tst.js:1:9:1:8 | () {} | a constructor |
|
||||
| tst.js:46:1:46:9 | reflective call | Illegal invocation of $@ as a function. | tst.js:1:9:1:8 | () {} | a constructor |
|
||||
testFailures
|
||||
| tst.js:15:18:15:45 | // $ Al ... flagged | Missing result: Alert |
|
||||
| tst.js:24:18:24:45 | // $ Al ... flagged | Missing result: Alert |
|
||||
|
||||
@@ -1,9 +1,2 @@
|
||||
#select
|
||||
| m.js:1:8:1:22 | functio ... = x;\\n} | Function A is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | c1.js:2:1:2:9 | new A(42) | here | c2.js:2:1:2:5 | A(23) | here |
|
||||
| tst.js:1:1:1:22 | functio ... = y;\\n} | Function Point is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | tst.js:6:1:6:17 | new Point(23, 42) | here | tst.js:7:1:7:13 | Point(56, 72) | here |
|
||||
testFailures
|
||||
| m.js:1:8:1:22 | Function A is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | Unexpected result: Alert |
|
||||
| tst.js:1:1:1:22 | Function Point is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | Unexpected result: Alert |
|
||||
| tst.js:57:6:57:50 | // $ Al ... ocation | Missing result: Alert |
|
||||
| tst.js:67:20:67:86 | // $ Al ... flagged | Missing result: Alert |
|
||||
| tst.js:68:20:68:86 | // $ Al ... flagged | Missing result: Alert |
|
||||
| m.js:1:8:1:33 | functio ... = x;\\n} | Function A is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | c1.js:2:1:2:9 | new A(42) | here | c2.js:2:1:2:5 | A(23) | here |
|
||||
| tst.js:1:1:1:33 | functio ... = y;\\n} | Function Point is sometimes invoked as a constructor (for example $@), and sometimes as a normal function (for example $@). | tst.js:6:1:6:17 | new Point(23, 42) | here | tst.js:7:1:7:13 | Point(56, 72) | here |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:7:3:7:14 | return true; | This statement jumps out of the finally block, potentially hiding an exception. |
|
||||
| tst.js:28:4:28:9 | break; | This statement jumps out of the finally block, potentially hiding an exception. |
|
||||
testFailures
|
||||
| tst.js:7:3:7:14 | This statement jumps out of the finally block, potentially hiding an exception. | Unexpected result: Alert |
|
||||
| tst.js:28:4:28:9 | This statement jumps out of the finally block, potentially hiding an exception. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:17:1:32 | i <= args.length | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:2:15:2:21 | args[i] | read |
|
||||
| tst.js:5:17:5:32 | args.length >= i | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:6:15:6:21 | args[i] | read |
|
||||
| tst.js:15:5:15:20 | j <= args.length | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:16:15:16:21 | args[j] | read |
|
||||
@@ -6,8 +5,3 @@
|
||||
| tst.js:29:19:29:31 | i <= a.length | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:30:9:30:12 | a[i] | read |
|
||||
| tst.js:46:9:46:21 | i <= a.length | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:46:43:46:46 | a[i] | read |
|
||||
| tst.js:46:26:46:38 | i <= b.length | Off-by-one index comparison against length may lead to out-of-bounds $@. | tst.js:46:52:46:55 | b[i] | read |
|
||||
testFailures
|
||||
| tst.js:28:32:28:65 | // $ Al ... r bound | Missing result: Alert |
|
||||
| tst.js:29:19:29:31 | Off-by-one index comparison against length may lead to out-of-bounds $@. | Unexpected result: Alert |
|
||||
| tst.js:46:9:46:21 | Off-by-one index comparison against length may lead to out-of-bounds $@. | Unexpected result: Alert |
|
||||
| tst.js:46:26:46:38 | Off-by-one index comparison against length may lead to out-of-bounds $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| NonLinearPatternTS.ts:1:34:1:39 | number | The pattern variable 'number' appears to be a type, but is a variable $@. | NonLinearPatternTS.ts:1:23:1:28 | number | previously bound |
|
||||
| ts-test.ts:2:13:2:13 | x | Repeated binding of pattern variable 'x' $@. | ts-test.ts:2:10:2:10 | x | previously bound |
|
||||
| ts-test.ts:6:16:6:16 | x | Repeated binding of pattern variable 'x' $@. | ts-test.ts:6:10:6:10 | x | previously bound |
|
||||
@@ -10,5 +9,3 @@
|
||||
| tst.js:2:13:2:13 | x | Repeated binding of pattern variable 'x' $@. | tst.js:2:10:2:10 | x | previously bound |
|
||||
| tst.js:6:16:6:16 | x | Repeated binding of pattern variable 'x' $@. | tst.js:6:10:6:10 | x | previously bound |
|
||||
| tst.js:8:10:8:10 | x | Repeated binding of pattern variable 'x' $@. | tst.js:8:7:8:7 | x | previously bound |
|
||||
testFailures
|
||||
| NonLinearPatternTS.ts:1:34:1:39 | The pattern variable 'number' appears to be a type, but is a variable $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:1:1:3 | (0) | Assignment to property foo of a primitive value with type number. |
|
||||
| tst.js:8:5:8:5 | s | Assignment to a property of a primitive value with type string. |
|
||||
| tst.js:13:3:13:3 | x | Assignment to property y of a primitive value with type number or string. |
|
||||
testFailures
|
||||
| tst.js:3:37:3:95 | // $ Al ... cess.ql | Missing result: Alert |
|
||||
|
||||
@@ -1,10 +1,4 @@
|
||||
#select
|
||||
| export.js:5:8:5:17 | var x = 42 | Avoid automated semicolon insertion (95% of all statements in $@ have an explicit semicolon). | export.js:1:1:29:0 | <toplevel> | the enclosing script |
|
||||
| jscript.js:3:1:3:36 | window. ... ad() {} | Avoid automated semicolon insertion (95% of all statements in $@ have an explicit semicolon). | jscript.js:1:1:26:0 | <toplevel> | the enclosing script |
|
||||
| tst.js:5:1:5:3 | var a = ... : 2\\n } | Avoid automated semicolon insertion (91% of all statements in $@ have an explicit semicolon). | tst.js:1:1:42:1 | functio ... oo();\\n} | the enclosing function |
|
||||
| tst.js:7:3:7:10 | return 1 | Avoid automated semicolon insertion (91% of all statements in $@ have an explicit semicolon). | tst.js:1:1:42:1 | functio ... oo();\\n} | the enclosing function |
|
||||
testFailures
|
||||
| export.js:5:8:5:17 | Avoid automated semicolon insertion (95% of all statements in $@ have an explicit semicolon). | Unexpected result: Alert |
|
||||
| jscript.js:3:1:3:36 | Avoid automated semicolon insertion (95% of all statements in $@ have an explicit semicolon). | Unexpected result: Alert |
|
||||
| tst.js:2:13:2:22 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:5:1:5:3 | Avoid automated semicolon insertion (91% of all statements in $@ have an explicit semicolon). | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:15:3:15:12 | set x(v) {\\n\\t\\t} | This setter function does not use its parameter $@. | tst.js:15:9:15:9 | v | v |
|
||||
| tst.js:15:3:15:23 | set x(v ... ert\\n\\t\\t} | This setter function does not use its parameter $@. | tst.js:15:9:15:9 | v | v |
|
||||
| tst.js:38:3:38:25 | set y(_ ... _x\|0; } | This setter function does not use its parameter $@. | tst.js:38:9:38:10 | _y | _y |
|
||||
testFailures
|
||||
| tst.js:15:3:15:12 | This setter function does not use its parameter $@. | Unexpected result: Alert |
|
||||
| tst.js:16:6:16:15 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| es2015.js:4:16:4:17 | 23 | Superfluous argument passed to $@. | es2015.js:2:14:2:32 | (x) { this.x = x; } | constructor of class Class1 |
|
||||
| es2015.js:17:11:17:12 | 42 | Superfluous argument passed to $@. | es2015.js:15:13:15:12 | () {} | default constructor of class Other |
|
||||
| es2015.js:21:3:21:4 | 42 | Superfluous argument passed to $@. | tst.js:1:1:4:1 | functio ... x+19;\\n} | function f |
|
||||
@@ -23,10 +22,3 @@
|
||||
| tst.js:113:20:113:21 | 42 | Superfluous argument passed to $@. | tst.js:88:2:91:2 | functio ... .");\\n\\t} | function notAPlainThrower3 |
|
||||
| tst.js:117:23:117:24 | 87 | Superfluous argument passed to $@. | tst.js:99:2:101:2 | functio ... (p);\\n\\t} | function throwerWithParam |
|
||||
| tst.js:118:18:118:19 | 42 | Superfluous argument passed to $@. | tst.js:102:2:110:2 | functio ... )();\\n\\t} | function throwerIndirect |
|
||||
testFailures
|
||||
| globals.js:17:31:17:40 | // $ Alert | Missing result: Alert |
|
||||
| reflection.js:6:15:6:15 | Superfluous argument passed to $@. | Unexpected result: Alert |
|
||||
| reflection.js:12:18:12:18 | Superfluous argument passed to $@. | Unexpected result: Alert |
|
||||
| tst.js:31:22:31:31 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:43:19:43:20 | Superfluous argument passed to $@. | Unexpected result: Alert |
|
||||
| tst.js:118:18:118:19 | Superfluous argument passed to $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
#select
|
||||
| arrows.js:1:5:1:5 | Error: Argument name clash | Error: Argument name clash |
|
||||
| destructingPrivate.js:4:6:4:6 | Error: Unexpected token | Error: Unexpected token |
|
||||
| tst.js:2:12:2:12 | Error: Unterminated string constant | Error: Unterminated string constant |
|
||||
testFailures
|
||||
| arrows.js:1:5:1:5 | Error: Argument name clash | Unexpected result: Alert |
|
||||
| destructingPrivate.js:4:6:4:6 | Error: Unexpected token | Unexpected result: Alert |
|
||||
| tst.js:2:12:2:12 | Error: Unterminated string constant | Unexpected result: Alert |
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
#select
|
||||
| TemplateSyntaxInStringLiteral.js:5:17:5:44 | 'Could ... ${id}' | This string is not a template literal, but appears to reference the variable $@. | TemplateSyntaxInStringLiteral.js:1:24:1:25 | id | id |
|
||||
| TemplateSyntaxInStringLiteral.js:17:15:17:40 | 'global ... alVar}' | This string is not a template literal, but appears to reference the variable $@. | TemplateSyntaxInStringLiteral.js:14:5:14:13 | globalVar | globalVar |
|
||||
| TemplateSyntaxInStringLiteral.js:19:11:19:36 | 'global ... alVar}' | This string is not a template literal, but appears to reference the variable $@. | TemplateSyntaxInStringLiteral.js:14:5:14:13 | globalVar | globalVar |
|
||||
| TemplateSyntaxInStringLiteral.js:28:15:28:21 | "${x} " | This string is not a template literal, but appears to reference the variable $@. | TemplateSyntaxInStringLiteral.js:25:14:25:14 | x | x |
|
||||
| TemplateSyntaxInStringLiteral.js:42:17:42:57 | "Name: ... oobar}" | This string is not a template literal, but appears to reference the variable $@. | TemplateSyntaxInStringLiteral.js:37:11:37:16 | foobar | foobar |
|
||||
testFailures
|
||||
| TemplateSyntaxInStringLiteral.js:5:17:5:44 | This string is not a template literal, but appears to reference the variable $@. | Unexpected result: Alert |
|
||||
| TemplateSyntaxInStringLiteral.js:17:15:17:40 | This string is not a template literal, but appears to reference the variable $@. | Unexpected result: Alert |
|
||||
| TemplateSyntaxInStringLiteral.js:19:11:19:36 | This string is not a template literal, but appears to reference the variable $@. | Unexpected result: Alert |
|
||||
| TemplateSyntaxInStringLiteral.js:28:15:28:21 | This string is not a template literal, but appears to reference the variable $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| invalid.js:5:35:5:52 | () { this.c = 0; } | The super constructor must be called before using $@. | invalid.js:5:40:5:43 | this | this |
|
||||
| invalid.js:6:35:6:50 | () { this.c(); } | The super constructor must be called before using $@. | invalid.js:6:40:6:43 | this | this |
|
||||
| invalid.js:7:35:7:51 | () { super.c(); } | The super constructor must be called before using $@. | invalid.js:7:40:7:46 | super.c | super |
|
||||
@@ -11,19 +10,5 @@
|
||||
| invalid.js:14:35:14:118 | () { cl ... er(); } | The super constructor must be called before using $@. | invalid.js:14:99:14:102 | this | this |
|
||||
| invalid.js:15:71:15:95 | () { th ... er(); } | The super constructor must be called before using $@. | invalid.js:15:76:15:79 | this | this |
|
||||
| invalid.js:16:35:16:66 | () { if ... .a(); } | The super constructor must be called before using $@. | invalid.js:16:56:16:59 | this | this |
|
||||
| invalid.js:26:16:26:19 | () {\\n ... ;\\n } | The super constructor must be called before using $@. | invalid.js:27:9:27:12 | this | this |
|
||||
| invalid.js:26:16:26:19 | () {\\n ... ;\\n } | The super constructor must be called before using $@. | invalid.js:28:9:28:12 | this | this |
|
||||
testFailures
|
||||
| invalid.js:5:35:5:52 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:6:35:6:50 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:7:35:7:51 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:8:35:8:61 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:9:35:9:59 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:10:35:10:60 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:11:35:11:55 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:12:35:12:57 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:13:35:13:58 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:14:35:14:118 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:15:71:15:95 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:16:35:16:66 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:26:16:26:19 | The super constructor must be called before using $@. | Unexpected result: Alert |
|
||||
| invalid.js:26:16:26:30 | () { // ... ;\\n } | The super constructor must be called before using $@. | invalid.js:27:9:27:12 | this | this |
|
||||
| invalid.js:26:16:26:30 | () { // ... ;\\n } | The super constructor must be called before using $@. | invalid.js:28:9:28:12 | this | this |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| UnusedIndexVariable2.js:3:8:3:20 | i++<xs.length | Index variable i is never used to access elements of xs. |
|
||||
| UnusedIndexVariable.js:3:16:3:26 | i<xs.length | Index variable i is never used to access elements of xs. |
|
||||
testFailures
|
||||
| UnusedIndexVariable.js:3:16:3:26 | Index variable i is never used to access elements of xs. | Unexpected result: Alert |
|
||||
| UnusedIndexVariable2.js:3:8:3:20 | Index variable i is never used to access elements of xs. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| withStatement.js:2:3:2:14 | with (f ... x;\\n } | Do not use 'with'. |
|
||||
testFailures
|
||||
| withStatement.js:2:3:2:14 | Do not use 'with'. | Unexpected result: Alert |
|
||||
| withStatement.js:2:3:2:25 | with (f ... x;\\n } | Do not use 'with'. |
|
||||
|
||||
@@ -1,16 +1,7 @@
|
||||
#select
|
||||
| a.js:4:9:4:25 | require('./b.js') | Module a imports module b, which in turn $@ it. | b.js:4:9:4:25 | require('./a.js') | imports |
|
||||
| b.js:4:9:4:25 | require('./a.js') | Module b imports module a, which in turn $@ it. | a.js:4:9:4:25 | require('./b.js') | imports |
|
||||
| selfimport.js:1:1:1:23 | require ... mport') | Module selfimport directly imports itself. | selfimport.js:1:1:1:24 | <toplevel> | |
|
||||
| selfimport.js:1:1:1:23 | require ... mport') | Module selfimport directly imports itself. | selfimport.js:1:1:1:35 | <toplevel> | |
|
||||
| test1/a.js:1:1:1:27 | require ... ner/a') | Module /test1/a.js imports module .../inner/a.js, which in turn $@ it. | test2/inner/a.js:1:1:1:24 | require ... st1/a') | imports |
|
||||
| test1/a.js:2:1:2:14 | require('./b') | Module a imports module b, which in turn $@ it. | test1/b.js:1:1:1:27 | require ... ner/a') | indirectly imports |
|
||||
| test1/b.js:1:1:1:27 | require ... ner/a') | Module b imports module a, which in turn $@ it. | test2/inner/a.js:1:1:1:24 | require ... st1/a') | indirectly imports |
|
||||
| test2/inner/a.js:1:1:1:24 | require ... st1/a') | Module .../inner/a.js imports module /test1/a.js, which in turn $@ it. | test1/a.js:1:1:1:27 | require ... ner/a') | imports |
|
||||
testFailures
|
||||
| a.js:4:9:4:25 | Module a imports module b, which in turn $@ it. | Unexpected result: Alert |
|
||||
| b.js:4:9:4:25 | Module b imports module a, which in turn $@ it. | Unexpected result: Alert |
|
||||
| selfimport.js:1:1:1:23 | Module selfimport directly imports itself. | Unexpected result: Alert |
|
||||
| test1/a.js:1:1:1:27 | Module /test1/a.js imports module .../inner/a.js, which in turn $@ it. | Unexpected result: Alert |
|
||||
| test1/a.js:2:1:2:14 | Module a imports module b, which in turn $@ it. | Unexpected result: Alert |
|
||||
| test1/b.js:1:1:1:27 | Module b imports module a, which in turn $@ it. | Unexpected result: Alert |
|
||||
| test2/inner/a.js:1:1:1:24 | Module .../inner/a.js imports module /test1/a.js, which in turn $@ it. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,10 +1,5 @@
|
||||
#select
|
||||
| a.js:1:11:1:28 | require('./b').foo | Module $@ does not export symbol foo. | b.js:1:1:5:21 | <toplevel> | b |
|
||||
| main.js:5:1:5:5 | b.foo | Module $@ does not export symbol foo. | b.js:1:1:5:21 | <toplevel> | b |
|
||||
| main.js:15:1:15:9 | fs.renmae | Module $@ does not export symbol renmae. | fs.js:1:1:15:0 | <toplevel> | fs |
|
||||
| main.js:23:1:23:5 | l.bar | Module $@ does not export symbol bar. | l.js:1:1:6:0 | <toplevel> | l |
|
||||
| multi_import.js:16:3:16:10 | mod2.bar | Module $@ does not export symbol bar. | b.js:1:1:5:21 | <toplevel> | b |
|
||||
testFailures
|
||||
| a.js:1:11:1:28 | Module $@ does not export symbol foo. | Unexpected result: Alert |
|
||||
| main.js:5:1:5:5 | Module $@ does not export symbol foo. | Unexpected result: Alert |
|
||||
| main.js:15:1:15:9 | Module $@ does not export symbol renmae. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| MissingExports.js:7:5:7:19 | checkOne(xs[i]) | 'checkOne' references an undeclared global variable, not $@. | MissingExports.js:1:20:3:1 | functio ... or();\\n} | the variable of the same name that is exported |
|
||||
testFailures
|
||||
| MissingExports.js:7:5:7:19 | 'checkOne' references an undeclared global variable, not $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| src/package.json:13:16:13:18 | "*" | Unused dependency 'esprima'. |
|
||||
| src/package.json:17:28:17:34 | "3.3.0" | Unused dependency 'eslint-plugin-babel'. |
|
||||
| src/package.json:24:63:24:65 | "*" | Unused dependency 'not-really-used-in-install-script-because-of-substring'. |
|
||||
@@ -6,11 +5,3 @@
|
||||
| src/package.json:29:30:29:32 | "*" | Unused dependency 'used-in-custom-script'. |
|
||||
| src/package.json:32:28:32:30 | "*" | Unused dependency 'used-in-mjs-require'. |
|
||||
| src/package.json:36:48:36:50 | "*" | Unused dependency 'used-in-dynamic-template-require-string'. |
|
||||
testFailures
|
||||
| src/package.json:13:16:13:18 | Unused dependency 'esprima'. | Unexpected result: Alert |
|
||||
| src/package.json:17:28:17:34 | Unused dependency 'eslint-plugin-babel'. | Unexpected result: Alert |
|
||||
| src/package.json:24:63:24:65 | Unused dependency 'not-really-used-in-install-script-because-of-substring'. | Unexpected result: Alert |
|
||||
| src/package.json:28:28:28:30 | Unused dependency 'used-in-test-script'. | Unexpected result: Alert |
|
||||
| src/package.json:29:30:29:32 | Unused dependency 'used-in-custom-script'. | Unexpected result: Alert |
|
||||
| src/package.json:32:28:32:30 | Unused dependency 'used-in-mjs-require'. | Unexpected result: Alert |
|
||||
| src/package.json:36:48:36:50 | Unused dependency 'used-in-dynamic-template-require-string'. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
#select
|
||||
| tst.js:13:10:13:15 | q[i++] | This loop may prevent optimization because its iteration variable is a property. |
|
||||
| tst.js:17:10:17:10 | p | This loop may prevent optimization because its iteration variable is a global variable. |
|
||||
| tst.js:21:10:21:14 | var p | This loop may prevent optimization because its iteration variable is captured. |
|
||||
| tst.js:30:14:30:14 | p | This loop may prevent optimization because its iteration variable is captured. |
|
||||
| tst.js:35:10:35:10 | p | This loop may prevent optimization because its iteration variable is a global variable. |
|
||||
testFailures
|
||||
| tst.js:12:24:12:44 | // $ Al ... roperty | Missing result: Alert |
|
||||
| tst.js:13:10:13:15 | This loop may prevent optimization because its iteration variable is a property. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| invalid1.js:3:5:3:18 | this.state.foo | Use `setState` instead of directly modifying component state. |
|
||||
| invalid2.js:3:5:3:26 | this.st ... on.name | Use `setState` instead of directly modifying component state. |
|
||||
| invalid3.js:3:5:3:32 | this.st ... e.first | Use `setState` instead of directly modifying component state. |
|
||||
@@ -7,12 +6,3 @@
|
||||
| invalid5.js:6:5:6:32 | that.st ... e.first | Use `setState` instead of directly modifying component state. |
|
||||
| invalid6.js:5:30:5:45 | this.state.title | Use `setState` instead of directly modifying component state. |
|
||||
| invalid7.js:5:35:5:50 | this.state.title | Use `setState` instead of directly modifying component state. |
|
||||
testFailures
|
||||
| invalid1.js:3:5:3:18 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid2.js:3:5:3:26 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid3.js:3:5:3:32 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid4.js:3:5:3:32 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid4.js:4:5:4:31 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid5.js:6:5:6:32 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid6.js:5:30:5:45 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
| invalid7.js:5:35:5:50 | Use `setState` instead of directly modifying component state. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:28:5:30:6 | this.se ... \\n }) | Component state update uses $@. | tst.js:29:16:29:29 | this.state.foo | potentially inconsistent value |
|
||||
| tst.js:36:5:38:6 | this.se ... \\n }) | Component state update uses $@. | tst.js:37:21:37:38 | this.state.foo.bar | potentially inconsistent value |
|
||||
| tst.js:44:9:46:10 | this.se ... }) | Component state update uses $@. | tst.js:45:18:45:31 | this.state.foo | potentially inconsistent value |
|
||||
@@ -11,31 +10,3 @@
|
||||
| tst.js:93:9:95:10 | this.se ... }) | Component state update uses $@. | tst.js:94:18:94:31 | this.state.foo | potentially inconsistent value |
|
||||
| tst.js:102:9:104:10 | self.se ... }) | Component state update uses $@. | tst.js:103:18:103:31 | self.state.foo | potentially inconsistent value |
|
||||
| tst.js:108:9:110:10 | this.se ... }) | Component state update uses $@. | tst.js:109:18:109:31 | this.state.foo | potentially inconsistent value |
|
||||
testFailures
|
||||
| tst.js:4:39:4:93 | // $ Al ... ractice | Missing result: Alert |
|
||||
| tst.js:21:39:21:93 | // $ Al ... ractice | Missing result: Alert |
|
||||
| tst.js:28:5:30:6 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:29:31:29:40 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:36:5:38:6 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:37:42:37:51 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:44:9:46:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:45:33:45:42 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:50:9:52:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:51:33:51:42 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:58:9:60:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:59:37:59:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:64:9:66:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:65:37:65:46 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:72:9:74:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:73:46:73:55 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:78:9:80:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:79:46:79:55 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:86:9:89:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:87:34:87:43 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:88:33:88:87 | // $ Al ... ractice | Missing result: Alert |
|
||||
| tst.js:93:9:95:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:94:33:94:42 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:102:9:104:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:103:33:103:42 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:108:9:110:10 | Component state update uses $@. | Unexpected result: Alert |
|
||||
| tst.js:109:33:109:42 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:4:9:4:25 | this.setState({}) | Call to state update method $@ is not allowed from within this method. | tst.js:4:9:4:25 | this.setState({}) | .setState |
|
||||
| tst.js:5:9:5:29 | this.re ... ate({}) | Call to state update method $@ is not allowed from within this method. | tst.js:5:9:5:29 | this.re ... ate({}) | .replaceState |
|
||||
| tst.js:6:9:6:28 | this.forceUpdate({}) | Call to state update method $@ is not allowed from within this method. | tst.js:6:9:6:28 | this.forceUpdate({}) | .forceUpdate |
|
||||
@@ -21,9 +20,3 @@
|
||||
| tst.js:187:9:187:19 | doUpdate1() | Call to state update method $@ is not allowed from within this method. | tst.js:181:31:181:47 | this.setState({}) | .setState |
|
||||
| tst.js:188:9:188:19 | doUpdate2() | Call to state update method $@ is not allowed from within this method. | tst.js:178:9:178:23 | this.setState() | .setState |
|
||||
| tst.js:189:9:189:19 | doUpdate3() | Call to state update method $@ is not allowed from within this method. | tst.js:178:9:178:23 | this.setState() | .setState |
|
||||
testFailures
|
||||
| tst.js:100:9:100:29 | Call to state update method $@ is not allowed from within this method. | Unexpected result: Alert |
|
||||
| tst.js:108:6:110:8 | Unconditional call to state update method $@ is not allowed from within this method. | Unexpected result: Alert |
|
||||
| tst.js:108:22:108:31 | // $ Alert | Missing result: Alert |
|
||||
| tst.js:118:6:120:8 | Unconditional call to state update method $@ is not allowed from within this method. | Unexpected result: Alert |
|
||||
| tst.js:118:22:118:31 | // $ Alert | Missing result: Alert |
|
||||
|
||||
@@ -1,29 +1,7 @@
|
||||
#select
|
||||
| issue7506.js:12:1:12:34 | class C ... e\\n }\\n} | Component state property 'p1' is $@, but it is never read. | issue7506.js:15:5:15:10 | p1: '' | written |
|
||||
| undefined.js:1:1:1:34 | class C ... }\\n} | Component state property 'notWritten' is $@, but it is never written. | undefined.js:8:9:8:29 | this.st ... Written | read |
|
||||
| undefined.js:1:1:1:34 | class C ... }\\n} | Component state property 'notWrittenButReadInChain' is $@, but it is never written. | undefined.js:9:9:9:43 | this.st ... InChain | read |
|
||||
| undefined.js:32:1:32:34 | class C ... }\\n} | Component state property 'notWrittenThrougExternalPropertyAccess' is $@, but it is never written. | undefined.js:35:9:35:57 | this.st ... yAccess | read |
|
||||
| undefined.js:61:19:61:19 | {\\n r ... ;\\n }\\n} | Component state property 'notWrittenInKnownInitializerObject' is $@, but it is never written. | undefined.js:64:9:64:53 | this.st ... rObject | read |
|
||||
| unused.js:1:1:1:34 | class C ... }\\n} | Component state property 'notRead' is $@, but it is never read. | unused.js:6:9:6:26 | this.state.notRead | written |
|
||||
| unused.js:27:1:27:34 | class C ... }\\n} | Component state property 'notReadThrougExternaPropertyAccess' is $@, but it is never read. | unused.js:30:9:30:53 | this.st ... yAccess | written |
|
||||
testFailures
|
||||
| undefined.js:8:32:8:41 | // $ Alert | Missing result: Alert |
|
||||
| undefined.js:9:46:9:55 | // $ Alert | Missing result: Alert |
|
||||
| undefined.js:27:43:27:84 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:35:60:35:69 | // $ Alert | Missing result: Alert |
|
||||
| undefined.js:48:58:48:99 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:56:58:56:99 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:61:19:61:19 | Component state property 'notWrittenInKnownInitializerObject' is $@, but it is never written. | Unexpected result: Alert |
|
||||
| undefined.js:64:56:64:65 | // $ Alert | Missing result: Alert |
|
||||
| undefined.js:78:58:78:99 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:90:46:90:87 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:100:40:100:81 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:124:42:124:83 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:135:67:135:108 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:145:56:145:97 | // $ Al ... P above | Missing result: Alert |
|
||||
| undefined.js:152:45:152:86 | // $ Al ... P above | Missing result: Alert |
|
||||
| unused.js:6:34:6:43 | // $ Alert | Missing result: Alert |
|
||||
| unused.js:21:42:21:51 | // $ Alert | Missing result: Alert |
|
||||
| unused.js:30:61:30:70 | // $ Alert | Missing result: Alert |
|
||||
| unused.js:40:69:40:110 | // $ Al ... P above | Missing result: Alert |
|
||||
| unused.js:57:47:57:88 | // $ Al ... P above | Missing result: Alert |
|
||||
| issue7506.js:12:1:12:45 | class C ... e\\n }\\n} | Component state property 'p1' is $@, but it is never read. | issue7506.js:15:5:15:10 | p1: '' | written |
|
||||
| undefined.js:1:1:1:45 | class C ... }\\n} | Component state property 'notWritten' is $@, but it is never written. | undefined.js:8:9:8:29 | this.st ... Written | read |
|
||||
| undefined.js:1:1:1:45 | class C ... }\\n} | Component state property 'notWrittenButReadInChain' is $@, but it is never written. | undefined.js:9:9:9:43 | this.st ... InChain | read |
|
||||
| undefined.js:32:1:32:45 | class C ... }\\n} | Component state property 'notWrittenThrougExternalPropertyAccess' is $@, but it is never written. | undefined.js:35:9:35:57 | this.st ... yAccess | read |
|
||||
| undefined.js:61:19:61:30 | { // $ ... ;\\n }\\n} | Component state property 'notWrittenInKnownInitializerObject' is $@, but it is never written. | undefined.js:64:9:64:53 | this.st ... rObject | read |
|
||||
| unused.js:1:1:1:45 | class C ... }\\n} | Component state property 'notRead' is $@, but it is never read. | unused.js:6:9:6:26 | this.state.notRead | written |
|
||||
| unused.js:27:1:27:45 | class C ... }\\n} | Component state property 'notReadThrougExternaPropertyAccess' is $@, but it is never read. | unused.js:30:9:30:53 | this.st ... yAccess | written |
|
||||
|
||||
@@ -1,8 +1,5 @@
|
||||
#select
|
||||
| tst.js:1:2:1:3 | \\1 | This back reference precedes its capture group. |
|
||||
| tst.js:2:4:2:5 | \\1 | This back reference precedes its capture group. |
|
||||
| tst.js:3:6:3:7 | \\2 | This back reference precedes its capture group. |
|
||||
| tst.js:4:8:4:9 | \\1 | This back reference precedes its capture group. |
|
||||
| tst.js:7:2:7:7 | \\k<ws> | This back reference precedes its capture group. |
|
||||
testFailures
|
||||
| tst.js:9:17:9:54 | // $ Al ... flagged | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:2:3:2:4 | \\b | Backspace escape in regular expression. |
|
||||
testFailures
|
||||
| tst.js:2:3:2:4 | Backspace escape in regular expression. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:4:1:4 | o | Character 'o' is $@. | tst.js:1:5:1:5 | o | repeated in the same character class |
|
||||
| tst.js:4:3:4:3 | ? | Character '?' is $@. | tst.js:4:4:4:4 | ? | repeated in the same character class |
|
||||
| tst.js:5:3:5:8 | \\u003F | Character '\\u003F' is $@. | tst.js:5:9:5:14 | \\u003f | repeated in the same character class |
|
||||
@@ -8,12 +7,3 @@
|
||||
| tst.js:8:3:8:3 | a | Character 'a' is $@. | tst.js:8:5:8:5 | a | repeated in the same character class |
|
||||
| tst.js:9:3:9:6 | \\x0a | Character '\\x0a' is $@. | tst.js:9:7:9:10 | \\x0a | repeated in the same character class |
|
||||
| tst.js:10:3:10:8 | \\u000a | Character '\\u000a' is $@. | tst.js:10:9:10:10 | \\n | repeated in the same character class |
|
||||
testFailures
|
||||
| tst.js:1:4:1:4 | Character 'o' is $@. | Unexpected result: Alert |
|
||||
| tst.js:4:3:4:3 | Character '?' is $@. | Unexpected result: Alert |
|
||||
| tst.js:5:3:5:8 | Character '\\u003F' is $@. | Unexpected result: Alert |
|
||||
| tst.js:6:3:6:8 | Character '\\u003F' is $@. | Unexpected result: Alert |
|
||||
| tst.js:7:3:7:6 | Character '\\x3f' is $@. | Unexpected result: Alert |
|
||||
| tst.js:8:3:8:3 | Character 'a' is $@. | Unexpected result: Alert |
|
||||
| tst.js:9:3:9:6 | Character '\\x0a' is $@. | Unexpected result: Alert |
|
||||
| tst.js:10:3:10:8 | Character '\\u000a' is $@. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1 @@
|
||||
#select
|
||||
| tst.js:1:2:1:3 | [] | Empty character class. |
|
||||
testFailures
|
||||
| tst.js:1:2:1:3 | Empty character class. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| IdentityReplacement.js:1:27:1:30 | /"/g | This replaces '"' with itself. |
|
||||
| IdentityReplacement.js:4:14:4:21 | indirect | This replaces '"' with itself. |
|
||||
| tst.js:1:13:1:16 | "\\\\" | This replaces '\\' with itself. |
|
||||
@@ -12,6 +11,3 @@
|
||||
| tst.js:13:13:13:22 | /\\\\(?!\\\\)/ | This replaces '\\' with itself. |
|
||||
| tst.js:14:13:14:23 | /(?<!\\\\)\\\\/ | This replaces '\\' with itself. |
|
||||
| tst.js:16:13:16:15 | /^/ | This replaces the empty string with itself. |
|
||||
testFailures
|
||||
| IdentityReplacement.js:1:27:1:30 | This replaces '"' with itself. | Unexpected result: Alert |
|
||||
| IdentityReplacement.js:4:14:4:21 | This replaces '"' with itself. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,2 @@
|
||||
#select
|
||||
| tst.js:4:29:4:29 | unexpected character | Malformed regular expression: unexpected character. |
|
||||
| tst.js:4:43:4:43 | unexpected character | Malformed regular expression: unexpected character. |
|
||||
testFailures
|
||||
| tst.js:4:29:4:29 | Malformed regular expression: unexpected character. | Unexpected result: Alert |
|
||||
| tst.js:4:43:4:43 | Malformed regular expression: unexpected character. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
#select
|
||||
| tst.js:3:2:3:3 | \\1 | There is no capture group 1 in this regular expression. |
|
||||
| tst.js:6:13:6:14 | \\1 | There is no capture group 1 in this regular expression. |
|
||||
| tst.js:12:16:12:17 | \\2 | There is no capture group 2 in this regular expression. |
|
||||
| tst.js:13:16:13:29 | \\k<whitespace> | There is no capture group named 'whitespace' in this regular expression. |
|
||||
testFailures
|
||||
| tst.js:13:16:13:29 | There is no capture group named 'whitespace' in this regular expression. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
#select
|
||||
| tst.js:1:4:1:4 | ^ | This assertion can never match. |
|
||||
| tst.js:9:5:9:5 | ^ | This assertion can never match. |
|
||||
| tst.js:16:5:16:5 | ^ | This assertion can never match. |
|
||||
testFailures
|
||||
| tst.js:14:12:14:42 | // $ Al ... ognised | Missing result: Alert |
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
#select
|
||||
| tst.js:1:10:1:10 | $ | This assertion can never match. |
|
||||
| tst.js:9:3:9:3 | $ | This assertion can never match. |
|
||||
| tst.js:16:3:16:3 | $ | This assertion can never match. |
|
||||
| tst.js:33:6:33:6 | $ | This assertion can never match. |
|
||||
testFailures
|
||||
| tst.js:14:12:14:42 | // $ Al ... ognised | Missing result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| examples/IncorrectSuffixCheck.js:2:10:2:49 | x.lastI ... .length | This suffix check is missing a length comparison to correctly handle lastIndexOf returning -1. |
|
||||
| tst.js:2:10:2:45 | x.index ... .length | This suffix check is missing a length comparison to correctly handle indexOf returning -1. |
|
||||
| tst.js:9:10:9:55 | x.index ... gth - 1 | This suffix check is missing a length comparison to correctly handle indexOf returning -1. |
|
||||
@@ -10,5 +9,3 @@
|
||||
| tst.js:67:32:67:71 | x.index ... gth - 1 | This suffix check is missing a length comparison to correctly handle indexOf returning -1. |
|
||||
| tst.js:76:25:76:57 | index = ... gth - 1 | This suffix check is missing a length comparison to correctly handle indexOf returning -1. |
|
||||
| tst.js:80:10:80:57 | x.index ... th + 1) | This suffix check is missing a length comparison to correctly handle indexOf returning -1. |
|
||||
testFailures
|
||||
| examples/IncorrectSuffixCheck.js:2:10:2:49 | This suffix check is missing a length comparison to correctly handle lastIndexOf returning -1. | Unexpected result: Alert |
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
#select
|
||||
| tst-SemiAnchoredRegExp.js:3:2:3:7 | /^a\|b/ | Misleading operator precedence. The subexpression '^a' is anchored at the beginning, but the other parts of this regular expression are not |
|
||||
| tst-SemiAnchoredRegExp.js:6:2:6:9 | /^a\|b\|c/ | Misleading operator precedence. The subexpression '^a' is anchored at the beginning, but the other parts of this regular expression are not |
|
||||
| tst-SemiAnchoredRegExp.js:12:2:12:9 | /^a\|(b)/ | Misleading operator precedence. The subexpression '^a' is anchored at the beginning, but the other parts of this regular expression are not |
|
||||
@@ -69,20 +68,3 @@
|
||||
| tst-UnanchoredUrlRegExp.js:117:50:117:59 | "good.com" | When this is used as a regular expression on a URL, it may match anywhere, and arbitrary hosts may come before or after it. |
|
||||
| tst-UnanchoredUrlRegExp.js:118:50:118:68 | "https?://good.com" | When this is used as a regular expression on a URL, it may match anywhere, and arbitrary hosts may come before or after it. |
|
||||
| tst-UnanchoredUrlRegExp.js:119:50:119:73 | "https? ... m:8080" | When this is used as a regular expression on a URL, it may match anywhere, and arbitrary hosts may come before or after it. |
|
||||
testFailures
|
||||
| tst-SemiAnchoredRegExp.js:82:2:82:27 | Misleading operator precedence. The subexpression '(\\.zzz)$' is anchored at the end, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:84:2:84:23 | Misleading operator precedence. The subexpression '\\.zzz$' is anchored at the end, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:85:2:85:19 | Misleading operator precedence. The subexpression 'zzz$' is anchored at the end, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:87:2:87:28 | Misleading operator precedence. The subexpression '^(xxx yyy zzz)' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:88:2:88:53 | Misleading operator precedence. The subexpression '^(xxx yyy zzz)' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:89:2:89:24 | Misleading operator precedence. The subexpression '^(xxx:)' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:90:2:90:23 | Misleading operator precedence. The subexpression '^(xxx?:)' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:91:2:91:16 | Misleading operator precedence. The subexpression '^@media' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:92:2:92:32 | Misleading operator precedence. The subexpression '^\\s*(xxx?\|yyy\|zzz):' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:93:2:93:21 | Misleading operator precedence. The subexpression '^click' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:94:2:94:43 | Misleading operator precedence. The subexpression '^http:\\/\\/good\\.com' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:95:2:95:47 | Misleading operator precedence. The subexpression '^https?:\\/\\/good\\.com' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:96:2:96:55 | Misleading operator precedence. The subexpression '^mouse' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:97:2:97:14 | Misleading operator precedence. The subexpression '^xxx:' is anchored at the beginning, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-SemiAnchoredRegExp.js:98:2:98:18 | Misleading operator precedence. The subexpression '_zzz$' is anchored at the end, but the other parts of this regular expression are not | Unexpected result: Alert |
|
||||
| tst-UnanchoredUrlRegExp.js:77:11:77:32 | When this is used as a regular expression on a URL, it may match anywhere, and arbitrary hosts may come before or after it. | Unexpected result: Alert |
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
| tst-UntrustedDataToExternalAPI.js:33:14:33:22 | untrusted | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | tst-UntrustedDataToExternalAPI.js:33:14:33:22 | untrusted | Call to external-lib.get.[callback].[param 'res'].send() [param 0] with untrusted data from $@. | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | window.name |
|
||||
| tst-UntrustedDataToExternalAPI.js:34:34:34:42 | untrusted | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | tst-UntrustedDataToExternalAPI.js:34:34:34:42 | untrusted | Call to external-lib.get.[callback].[param 'req'].app.locals.something.foo() [param 0] with untrusted data from $@. | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | window.name |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | Call to lodash.merge() [param 0] with untrusted data from $@. | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | window.name |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | Call to lodash.merge() [param 1] with untrusted data from $@. | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | window.name |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | Call to lodash.merge() [param 1] with untrusted data from $@. | tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | window.name |
|
||||
edges
|
||||
| tst-UntrustedDataToExternalAPI.js:3:5:3:27 | untrusted | tst-UntrustedDataToExternalAPI.js:5:13:5:21 | untrusted | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:3:5:3:27 | untrusted | tst-UntrustedDataToExternalAPI.js:6:17:6:25 | untrusted | provenance | |
|
||||
@@ -29,15 +29,15 @@ edges
|
||||
| tst-UntrustedDataToExternalAPI.js:10:19:10:27 | untrusted | tst-UntrustedDataToExternalAPI.js:10:13:10:33 | ['x', u ... d, 'y'] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:14:12:16:9 | {\\n ... } [z] | tst-UntrustedDataToExternalAPI.js:13:8:17:5 | {\\n ... }\\n } | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:15:16:15:24 | untrusted | tst-UntrustedDataToExternalAPI.js:14:12:16:9 | {\\n ... } [z] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [x] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [y] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [z] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:42:8:42:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:42:8:42:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [x] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:43:8:43:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:43:8:43:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [y] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:44:8:44:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:44:8:44:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [z] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [x] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [y] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [z] | tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:42:8:42:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:42:8:42:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [x] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:43:8:43:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:43:8:43:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [y] | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:44:8:44:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | provenance | |
|
||||
| tst-UntrustedDataToExternalAPI.js:44:8:44:16 | untrusted | tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [z] | provenance | |
|
||||
nodes
|
||||
| tst-UntrustedDataToExternalAPI.js:3:5:3:27 | untrusted | semmle.label | untrusted |
|
||||
| tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | semmle.label | window.name |
|
||||
@@ -55,25 +55,11 @@ nodes
|
||||
| tst-UntrustedDataToExternalAPI.js:33:14:33:22 | untrusted | semmle.label | untrusted |
|
||||
| tst-UntrustedDataToExternalAPI.js:34:34:34:42 | untrusted | semmle.label | untrusted |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | semmle.label | {} |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | semmle.label | {\\n x ... usted\\n} |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [x] | semmle.label | {\\n x ... usted\\n} [x] |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [y] | semmle.label | {\\n x ... usted\\n} [y] |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} [z] | semmle.label | {\\n x ... usted\\n} [z] |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} | semmle.label | { // $ ... usted\\n} |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [x] | semmle.label | { // $ ... usted\\n} [x] |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [y] | semmle.label | { // $ ... usted\\n} [y] |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | { // $ ... usted\\n} [z] | semmle.label | { // $ ... usted\\n} [z] |
|
||||
| tst-UntrustedDataToExternalAPI.js:42:8:42:16 | untrusted | semmle.label | untrusted |
|
||||
| tst-UntrustedDataToExternalAPI.js:43:8:43:16 | untrusted | semmle.label | untrusted |
|
||||
| tst-UntrustedDataToExternalAPI.js:44:8:44:16 | untrusted | semmle.label | untrusted |
|
||||
subpaths
|
||||
testFailures
|
||||
| tst-UntrustedDataToExternalAPI.js:3:17:3:27 | window.name | Unexpected result: Source |
|
||||
| tst-UntrustedDataToExternalAPI.js:5:13:5:21 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:6:17:6:25 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:7:16:7:24 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:8:31:8:39 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:9:18:9:26 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:10:13:10:33 | ['x', u ... d, 'y'] | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:11:20:11:28 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:13:8:17:5 | {\\n ... }\\n } | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:33:14:33:22 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:34:34:34:42 | untrusted | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:7:41:8 | {} | Unexpected result: Alert |
|
||||
| tst-UntrustedDataToExternalAPI.js:41:11:45:1 | {\\n x ... usted\\n} | Unexpected result: Alert |
|
||||
|
||||
@@ -1,51 +1,43 @@
|
||||
#select
|
||||
| tst-escapes.js:13:11:13:12 | '\\b' is a backspace, and not a word-boundary assertion | The escape sequence '\\b' is a backspace, and not a word-boundary assertion when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:13:13:13:14 | '\\c' is equivalent to just 'c', so the sequence is not a character class | The escape sequence '\\c' is equivalent to just 'c', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:13:15:13:16 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:13:29:13:30 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:13:39:13:40 | '\\p' is equivalent to just 'p', so the sequence is not a character class | The escape sequence '\\p' is equivalent to just 'p', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:13:45:13:46 | '\\s' is equivalent to just 's', so the sequence is not a character class | The escape sequence '\\s' is equivalent to just 's', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:13:8:13:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:14:11:14:12 | '\\B' is equivalent to just 'B', so the sequence is not an assertion | The escape sequence '\\B' is equivalent to just 'B', so the sequence is not an assertion when it is used in a $@. | tst-escapes.js:14:8:14:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:14:15:14:16 | '\\D' is equivalent to just 'D', so the sequence is not a character class | The escape sequence '\\D' is equivalent to just 'D', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:14:8:14:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:14:39:14:40 | '\\P' is equivalent to just 'P', so the sequence is not a character class | The escape sequence '\\P' is equivalent to just 'P', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:14:8:14:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:14:45:14:46 | '\\S' is equivalent to just 'S', so the sequence is not a character class | The escape sequence '\\S' is equivalent to just 'S', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:14:8:14:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:15:11:15:12 | '\\1' is equivalent to just '1', so the sequence is not a backreference | The escape sequence '\\1' is equivalent to just '1', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:13:15:14 | '\\2' is equivalent to just '2', so the sequence is not a backreference | The escape sequence '\\2' is equivalent to just '2', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:15:15:16 | '\\3' is equivalent to just '3', so the sequence is not a backreference | The escape sequence '\\3' is equivalent to just '3', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:17:15:18 | '\\4' is equivalent to just '4', so the sequence is not a backreference | The escape sequence '\\4' is equivalent to just '4', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:19:15:20 | '\\5' is equivalent to just '5', so the sequence is not a backreference | The escape sequence '\\5' is equivalent to just '5', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:21:15:22 | '\\6' is equivalent to just '6', so the sequence is not a backreference | The escape sequence '\\6' is equivalent to just '6', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:23:15:24 | '\\7' is equivalent to just '7', so the sequence is not a backreference | The escape sequence '\\7' is equivalent to just '7', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:25:15:26 | '\\8' is equivalent to just '8', so the sequence is not a backreference | The escape sequence '\\8' is equivalent to just '8', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:27:15:28 | '\\9' is equivalent to just '9', so the sequence is not a backreference | The escape sequence '\\9' is equivalent to just '9', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:15:31:15:32 | '\\-' is equivalent to just '-', so the sequence may still represent a meta-character | The escape sequence '\\-' is equivalent to just '-', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:15:8:15:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:16:17:16:18 | '\\$' is equivalent to just '$', so the sequence may still represent a meta-character | The escape sequence '\\$' is equivalent to just '$', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:16:21:16:22 | '\\^' is equivalent to just '^', so the sequence may still represent a meta-character | The escape sequence '\\^' is equivalent to just '^', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:16:25:16:26 | '\\*' is equivalent to just '*', so the sequence may still represent a meta-character | The escape sequence '\\*' is equivalent to just '*', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:16:27:16:28 | '\\(' is equivalent to just '(', so the sequence may still represent a meta-character | The escape sequence '\\(' is equivalent to just '(', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:16:29:16:30 | '\\)' is equivalent to just ')', so the sequence may still represent a meta-character | The escape sequence '\\)' is equivalent to just ')', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:16:33:16:34 | '\\+' is equivalent to just '+', so the sequence may still represent a meta-character | The escape sequence '\\+' is equivalent to just '+', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:17:9:17:10 | '\\[' is equivalent to just '[', so the sequence may still represent a meta-character | The escape sequence '\\[' is equivalent to just '[', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:17:8:17:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:17:11:17:12 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:17:8:17:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:17:18:17:19 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:17:8:17:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:18:9:18:10 | '\\{' is equivalent to just '{', so the sequence may still represent a meta-character | The escape sequence '\\{' is equivalent to just '{', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:18:8:18:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:18:11:18:12 | '\\}' is equivalent to just '}', so the sequence may still represent a meta-character | The escape sequence '\\}' is equivalent to just '}', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:18:8:18:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:18:17:18:18 | '\\\|' is equivalent to just '\|', so the sequence may still represent a meta-character | The escape sequence '\\\|' is equivalent to just '\|', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:18:8:18:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:18:23:18:24 | '\\?' is equivalent to just '?', so the sequence may still represent a meta-character | The escape sequence '\\?' is equivalent to just '?', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:18:8:18:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:41:9:41:10 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:41:8:41:11 | "\\." | regular expression |
|
||||
| tst-escapes.js:56:10:56:11 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:56:8:56:13 | "[\\.]" | regular expression |
|
||||
| tst-escapes.js:57:12:57:13 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:57:8:57:17 | "a[b\\.c]d" | regular expression |
|
||||
| tst-escapes.js:60:9:60:10 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:60:8:60:19 | `\\k\\\\k\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:60:14:60:15 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:60:8:60:19 | `\\k\\\\k\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:61:9:61:10 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:61:8:61:25 | `\\k\\\\k${foo}\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:61:20:61:21 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:61:8:61:25 | `\\k\\\\k${foo}\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:64:9:64:10 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:64:8:64:11 | "\\]" | regular expression |
|
||||
| tst-escapes.js:69:13:69:14 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:69:8:69:15 | "\\\\\\\\\\]" | regular expression |
|
||||
| tst-escapes.js:73:17:73:18 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:73:8:73:19 | "\\\\\\\\\\\\\\\\\\]" | regular expression |
|
||||
testFailures
|
||||
| tst-escapes.js:16:17:16:18 | The escape sequence '\\$' is equivalent to just '$', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:16:21:16:22 | The escape sequence '\\^' is equivalent to just '^', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:17:18:17:19 | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:41:9:41:10 | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:56:10:56:11 | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:57:12:57:13 | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | Unexpected result: Alert |
|
||||
| tst-escapes.js:11:11:11:12 | '\\b' is a backspace, and not a word-boundary assertion | The escape sequence '\\b' is a backspace, and not a word-boundary assertion when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:11:13:11:14 | '\\c' is equivalent to just 'c', so the sequence is not a character class | The escape sequence '\\c' is equivalent to just 'c', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:11:15:11:16 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:11:29:11:30 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:11:39:11:40 | '\\p' is equivalent to just 'p', so the sequence is not a character class | The escape sequence '\\p' is equivalent to just 'p', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:11:45:11:46 | '\\s' is equivalent to just 's', so the sequence is not a character class | The escape sequence '\\s' is equivalent to just 's', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:11:8:11:61 | "\\a\\b\\c ... \\x\\y\\z" | regular expression |
|
||||
| tst-escapes.js:12:11:12:12 | '\\B' is equivalent to just 'B', so the sequence is not an assertion | The escape sequence '\\B' is equivalent to just 'B', so the sequence is not an assertion when it is used in a $@. | tst-escapes.js:12:8:12:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:12:15:12:16 | '\\D' is equivalent to just 'D', so the sequence is not a character class | The escape sequence '\\D' is equivalent to just 'D', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:12:8:12:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:12:39:12:40 | '\\P' is equivalent to just 'P', so the sequence is not a character class | The escape sequence '\\P' is equivalent to just 'P', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:12:8:12:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:12:45:12:46 | '\\S' is equivalent to just 'S', so the sequence is not a character class | The escape sequence '\\S' is equivalent to just 'S', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:12:8:12:59 | "\\A\\B\\C ... \\X\\Y\\Z" | regular expression |
|
||||
| tst-escapes.js:13:11:13:12 | '\\1' is equivalent to just '1', so the sequence is not a backreference | The escape sequence '\\1' is equivalent to just '1', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:13:13:14 | '\\2' is equivalent to just '2', so the sequence is not a backreference | The escape sequence '\\2' is equivalent to just '2', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:15:13:16 | '\\3' is equivalent to just '3', so the sequence is not a backreference | The escape sequence '\\3' is equivalent to just '3', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:17:13:18 | '\\4' is equivalent to just '4', so the sequence is not a backreference | The escape sequence '\\4' is equivalent to just '4', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:19:13:20 | '\\5' is equivalent to just '5', so the sequence is not a backreference | The escape sequence '\\5' is equivalent to just '5', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:21:13:22 | '\\6' is equivalent to just '6', so the sequence is not a backreference | The escape sequence '\\6' is equivalent to just '6', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:23:13:24 | '\\7' is equivalent to just '7', so the sequence is not a backreference | The escape sequence '\\7' is equivalent to just '7', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:25:13:26 | '\\8' is equivalent to just '8', so the sequence is not a backreference | The escape sequence '\\8' is equivalent to just '8', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:27:13:28 | '\\9' is equivalent to just '9', so the sequence is not a backreference | The escape sequence '\\9' is equivalent to just '9', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:13:31:13:32 | '\\-' is equivalent to just '-', so the sequence may still represent a meta-character | The escape sequence '\\-' is equivalent to just '-', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:13:8:13:35 | "\\`\\1\\2 ... \\0\\-\\=" | regular expression |
|
||||
| tst-escapes.js:14:17:14:18 | '\\$' is equivalent to just '$', so the sequence may still represent a meta-character | The escape sequence '\\$' is equivalent to just '$', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:14:21:14:22 | '\\^' is equivalent to just '^', so the sequence may still represent a meta-character | The escape sequence '\\^' is equivalent to just '^', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:14:25:14:26 | '\\*' is equivalent to just '*', so the sequence may still represent a meta-character | The escape sequence '\\*' is equivalent to just '*', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:14:27:14:28 | '\\(' is equivalent to just '(', so the sequence may still represent a meta-character | The escape sequence '\\(' is equivalent to just '(', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:14:29:14:30 | '\\)' is equivalent to just ')', so the sequence may still represent a meta-character | The escape sequence '\\)' is equivalent to just ')', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:14:33:14:34 | '\\+' is equivalent to just '+', so the sequence may still represent a meta-character | The escape sequence '\\+' is equivalent to just '+', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:14:8:14:35 | "\\~\\!\\@ ... \\)\\_\\+" | regular expression |
|
||||
| tst-escapes.js:15:9:15:10 | '\\[' is equivalent to just '[', so the sequence may still represent a meta-character | The escape sequence '\\[' is equivalent to just '[', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:15:8:15:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:15:11:15:12 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:15:8:15:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:15:18:15:19 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:15:8:15:22 | "\\[\\]\\'\\\\,\\.\\/" | regular expression |
|
||||
| tst-escapes.js:16:9:16:10 | '\\{' is equivalent to just '{', so the sequence may still represent a meta-character | The escape sequence '\\{' is equivalent to just '{', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:16:11:16:12 | '\\}' is equivalent to just '}', so the sequence may still represent a meta-character | The escape sequence '\\}' is equivalent to just '}', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:16:17:16:18 | '\\\|' is equivalent to just '\|', so the sequence may still represent a meta-character | The escape sequence '\\\|' is equivalent to just '\|', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:16:23:16:24 | '\\?' is equivalent to just '?', so the sequence may still represent a meta-character | The escape sequence '\\?' is equivalent to just '?', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:16:8:16:25 | "\\{\\}\\\\\\"\\\|\\<\\>\\?" | regular expression |
|
||||
| tst-escapes.js:39:9:39:10 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:39:8:39:11 | "\\." | regular expression |
|
||||
| tst-escapes.js:54:10:54:11 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:54:8:54:13 | "[\\.]" | regular expression |
|
||||
| tst-escapes.js:55:12:55:13 | '\\.' is equivalent to just '.', so the sequence may still represent a meta-character | The escape sequence '\\.' is equivalent to just '.', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:55:8:55:17 | "a[b\\.c]d" | regular expression |
|
||||
| tst-escapes.js:58:9:58:10 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:58:8:58:19 | `\\k\\\\k\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:58:14:58:15 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:58:8:58:19 | `\\k\\\\k\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:59:9:59:10 | '\\k' is equivalent to just 'k', so the sequence is not a backreference | The escape sequence '\\k' is equivalent to just 'k', so the sequence is not a backreference when it is used in a $@. | tst-escapes.js:59:8:59:25 | `\\k\\\\k${foo}\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:59:20:59:21 | '\\d' is equivalent to just 'd', so the sequence is not a character class | The escape sequence '\\d' is equivalent to just 'd', so the sequence is not a character class when it is used in a $@. | tst-escapes.js:59:8:59:25 | `\\k\\\\k${foo}\\d\\\\d` | regular expression |
|
||||
| tst-escapes.js:62:9:62:10 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:62:8:62:11 | "\\]" | regular expression |
|
||||
| tst-escapes.js:67:13:67:14 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:67:8:67:15 | "\\\\\\\\\\]" | regular expression |
|
||||
| tst-escapes.js:71:17:71:18 | '\\]' is equivalent to just ']', so the sequence may still represent a meta-character | The escape sequence '\\]' is equivalent to just ']', so the sequence may still represent a meta-character when it is used in a $@. | tst-escapes.js:71:8:71:19 | "\\\\\\\\\\\\\\\\\\]" | regular expression |
|
||||
|
||||
@@ -1146,72 +1146,3 @@ nodes
|
||||
| typescript.ts:31:29:31:33 | path6 | semmle.label | path6 |
|
||||
| views.js:1:43:1:55 | req.params[0] | semmle.label | req.params[0] |
|
||||
subpaths
|
||||
testFailures
|
||||
| TaintedPath-es6.js:7:20:7:26 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:9:24:9:30 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:36:20:36:26 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:64:48:64:60 | req.params[0] | Unexpected result: Alert |
|
||||
| TaintedPath.js:73:23:73:29 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:75:28:75:48 | fs.real ... c(path) | Unexpected result: Alert |
|
||||
| TaintedPath.js:78:45:78:52 | realpath | Unexpected result: Alert |
|
||||
| TaintedPath.js:109:23:109:29 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:115:24:115:30 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:139:24:139:30 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:184:24:184:30 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:191:24:191:30 | req.url | Unexpected result: Source |
|
||||
| TaintedPath.js:200:24:200:30 | req.url | Unexpected result: Source |
|
||||
| examples/TaintedPath.js:8:28:8:34 | req.url | Unexpected result: Source |
|
||||
| express.js:8:20:8:32 | req.query.bar | Unexpected result: Alert |
|
||||
| handlebars.js:11:32:11:39 | filePath | Unexpected result: Alert |
|
||||
| handlebars.js:15:25:15:32 | filePath | Unexpected result: Alert |
|
||||
| handlebars.js:29:46:29:60 | req.params.path | Unexpected result: Source |
|
||||
| handlebars.js:29:67:29:111 | // $ Al ... catFile | Missing result: Alert |
|
||||
| handlebars.js:43:15:43:29 | req.params.path | Unexpected result: Source |
|
||||
| handlebars.js:43:31:43:74 | // $ Al ... helper | Missing result: Alert |
|
||||
| normalizedPaths.js:11:14:11:27 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:21:35:21:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:31:35:31:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:54:35:54:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:73:42:73:55 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:82:14:82:27 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:94:35:94:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:117:30:117:43 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:130:35:130:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:139:48:139:61 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:148:44:148:57 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:160:35:160:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:174:14:174:27 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:214:35:214:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:226:35:226:48 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:236:33:236:46 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:254:33:254:46 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:303:13:303:26 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:339:32:339:45 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:354:14:354:27 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:377:14:377:27 | req.query.path | Unexpected result: Source |
|
||||
| normalizedPaths.js:385:35:385:45 | req.query.x | Unexpected result: Source |
|
||||
| normalizedPaths.js:412:35:412:45 | req.query.x | Unexpected result: Source |
|
||||
| other-fs-libraries.js:9:24:9:30 | req.url | Unexpected result: Source |
|
||||
| other-fs-libraries.js:38:24:38:30 | req.url | Unexpected result: Source |
|
||||
| other-fs-libraries.js:49:24:49:30 | req.url | Unexpected result: Source |
|
||||
| other-fs-libraries.js:68:24:68:30 | req.url | Unexpected result: Source |
|
||||
| other-fs-libraries.js:81:24:81:30 | req.url | Unexpected result: Source |
|
||||
| prettier.js:6:13:6:13 | p | Unexpected result: Source |
|
||||
| pupeteer.js:5:28:5:53 | parseTo ... t).name | Unexpected result: Source |
|
||||
| pupeteer.js:9:28:9:34 | tainted | Unexpected result: Alert |
|
||||
| pupeteer.js:13:37:13:43 | tainted | Unexpected result: Alert |
|
||||
| sharedlib-repro.js:13:22:13:43 | req.par ... spaceId | Unexpected result: Source |
|
||||
| tainted-access-paths.js:6:24:6:30 | req.url | Unexpected result: Source |
|
||||
| tainted-access-paths.js:39:24:39:30 | req.url | Unexpected result: Source |
|
||||
| tainted-access-paths.js:48:24:48:30 | req.url | Unexpected result: Source |
|
||||
| tainted-promise-steps.js:6:24:6:30 | req.url | Unexpected result: Source |
|
||||
| tainted-sendFile.js:27:16:27:33 | req.param("gimme") | Unexpected result: Alert |
|
||||
| tainted-sendFile.js:30:16:30:48 | homeDir ... arams.x | Unexpected result: Alert |
|
||||
| tainted-sendFile.js:30:37:30:48 | req.params.x | Unexpected result: Alert |
|
||||
| tainted-sendFile.js:32:16:32:46 | path.jo ... rams.x) | Unexpected result: Alert |
|
||||
| tainted-sendFile.js:32:34:32:45 | req.params.x | Unexpected result: Alert |
|
||||
| tainted-sendFile.js:35:43:35:58 | req.param("dir") | Unexpected result: Alert |
|
||||
| tainted-string-steps.js:6:24:6:30 | req.url | Unexpected result: Source |
|
||||
| torrents.js:5:13:5:38 | parseTo ... t).name | Unexpected result: Source |
|
||||
| typescript.ts:9:24:9:30 | req.url | Unexpected result: Source |
|
||||
| views.js:1:43:1:55 | req.params[0] | Unexpected result: Alert |
|
||||
|
||||
@@ -48,21 +48,3 @@ nodes
|
||||
| ZipSlipBadUnzipper.js:7:20:7:29 | entry.path | semmle.label | entry.path |
|
||||
| ZipSlipBadUnzipper.js:8:37:8:44 | fileName | semmle.label | fileName |
|
||||
subpaths
|
||||
testFailures
|
||||
| AdmZipBad.js:6:24:6:41 | zipEntry.entryName | Unexpected result: Alert |
|
||||
| TarSlipBad.js:6:36:6:46 | header.name | Unexpected result: Alert |
|
||||
| TarSlipBad.js:9:17:9:31 | header.linkname | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:7:22:7:31 | entry.path | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:8:37:8:44 | fileName | Unexpected result: Sink |
|
||||
| ZipSlipBad.js:15:22:15:31 | entry.path | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:16:30:16:37 | fileName | Unexpected result: Sink |
|
||||
| ZipSlipBad.js:22:22:22:31 | entry.path | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:23:28:23:35 | fileName | Unexpected result: Sink |
|
||||
| ZipSlipBad.js:30:14:30:17 | name | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:31:26:31:29 | name | Unexpected result: Sink |
|
||||
| ZipSlipBad.js:34:16:34:19 | name | Unexpected result: Alert |
|
||||
| ZipSlipBad.js:35:26:35:29 | name | Unexpected result: Sink |
|
||||
| ZipSlipBad2.js:5:37:5:46 | entry.path | Unexpected result: Alert |
|
||||
| ZipSlipBad2.js:6:22:6:29 | fileName | Unexpected result: Sink |
|
||||
| ZipSlipBadUnzipper.js:7:20:7:29 | entry.path | Unexpected result: Alert |
|
||||
| ZipSlipBadUnzipper.js:8:37:8:44 | fileName | Unexpected result: Sink |
|
||||
|
||||
@@ -76,11 +76,3 @@ nodes
|
||||
| tst.js:29:28:29:42 | JSON.parse(str) | semmle.label | JSON.parse(str) |
|
||||
| tst.js:29:39:29:41 | str | semmle.label | str |
|
||||
subpaths
|
||||
testFailures
|
||||
| tst.js:7:25:7:32 | req.body | Unexpected result: Source |
|
||||
| tst.js:8:26:8:49 | req.que ... rameter | Unexpected result: Source |
|
||||
| tst2.js:6:25:6:32 | req.body | Unexpected result: Source |
|
||||
| tst2.js:26:25:26:32 | req.body | Unexpected result: Source |
|
||||
| tst2.js:34:25:34:32 | req.body | Unexpected result: Source |
|
||||
| tst2.js:42:25:42:32 | req.body | Unexpected result: Source |
|
||||
| tst2.js:51:25:51:32 | req.body | Unexpected result: Source |
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
| child_process-test.js:56:5:56:59 | cp.spaw ... cmd])) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:56:54:56:56 | cmd | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:57:5:57:50 | cp.spaw ... t(cmd)) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:6:15:6:49 | url.par ... ry.path | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:57:5:57:50 | cp.spaw ... t(cmd)) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:57:25:57:49 | ['/C', ... at(cmd) | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:62:5:62:39 | cp.exec ... , args) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:53:15:53:17 | cmd | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:67:3:67:21 | cp.spawn(cmd, args) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:48:15:48:17 | cmd | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:67:3:67:21 | cp.spawn(cmd, args) | child_process-test.js:6:25:6:31 | req.url | child_process-test.js:66:19:66:22 | args | This command line depends on a $@. | child_process-test.js:6:25:6:31 | req.url | user-provided value |
|
||||
| child_process-test.js:75:29:75:31 | cmd | child_process-test.js:73:25:73:31 | req.url | child_process-test.js:75:29:75:31 | cmd | This command line depends on a $@. | child_process-test.js:73:25:73:31 | req.url | user-provided value |
|
||||
@@ -262,38 +261,3 @@ nodes
|
||||
| third-party-command-injection.js:5:20:5:26 | command | semmle.label | command |
|
||||
| third-party-command-injection.js:6:21:6:27 | command | semmle.label | command |
|
||||
subpaths
|
||||
testFailures
|
||||
| actions.js:8:17:8:57 | github. ... t.title | Unexpected result: Source |
|
||||
| actions.js:18:20:18:63 | github. ... ead.ref | Unexpected result: Source |
|
||||
| child_process-test.js:6:15:6:49 | url.par ... ry.path | Unexpected result: Sink |
|
||||
| child_process-test.js:6:25:6:31 | req.url | Unexpected result: Source |
|
||||
| child_process-test.js:39:26:39:28 | cmd | Unexpected result: Sink |
|
||||
| child_process-test.js:43:15:43:17 | cmd | Unexpected result: Sink |
|
||||
| child_process-test.js:43:21:43:30 | // $ Alert | Missing result: Alert |
|
||||
| child_process-test.js:44:5:44:34 | child_process-test.js:6:25:6:31 | Unexpected result: Alert |
|
||||
| child_process-test.js:48:15:48:17 | cmd | Unexpected result: Sink |
|
||||
| child_process-test.js:48:21:48:30 | // $ Alert | Missing result: Alert |
|
||||
| child_process-test.js:53:15:53:17 | cmd | Unexpected result: Sink |
|
||||
| child_process-test.js:53:20:53:29 | // $ Alert | Missing result: Alert |
|
||||
| child_process-test.js:54:5:54:39 | child_process-test.js:6:25:6:31 | Unexpected result: Alert |
|
||||
| child_process-test.js:56:25:56:58 | ['/C', ... , cmd]) | Unexpected result: Sink |
|
||||
| child_process-test.js:56:54:56:56 | cmd | Unexpected result: Sink |
|
||||
| child_process-test.js:57:25:57:49 | ['/C', ... at(cmd) | Unexpected result: Sink |
|
||||
| child_process-test.js:62:5:62:39 | child_process-test.js:6:25:6:31 | Unexpected result: Alert |
|
||||
| child_process-test.js:66:19:66:22 | args | Unexpected result: Sink |
|
||||
| child_process-test.js:67:3:67:21 | child_process-test.js:6:25:6:31 | Unexpected result: Alert |
|
||||
| child_process-test.js:73:25:73:31 | req.url | Unexpected result: Source |
|
||||
| exec-sh.js:15:44:15:50 | command | Unexpected result: Sink |
|
||||
| exec-sh.js:19:25:19:31 | req.url | Unexpected result: Source |
|
||||
| exec-sh2.js:10:40:10:46 | command | Unexpected result: Sink |
|
||||
| exec-sh2.js:14:25:14:31 | req.url | Unexpected result: Source |
|
||||
| execSeries.js:18:34:18:40 | req.url | Unexpected result: Source |
|
||||
| form-parsers.js:13:3:13:11 | req.files | Unexpected result: Source |
|
||||
| form-parsers.js:24:48:24:55 | filename | Unexpected result: Source |
|
||||
| form-parsers.js:35:25:35:30 | fields | Unexpected result: Source |
|
||||
| form-parsers.js:40:26:40:31 | fields | Unexpected result: Source |
|
||||
| form-parsers.js:52:34:52:39 | fields | Unexpected result: Source |
|
||||
| form-parsers.js:58:30:58:33 | part | Unexpected result: Source |
|
||||
| other.js:5:25:5:31 | req.url | Unexpected result: Source |
|
||||
| third-party-command-injection.js:5:20:5:26 | command | Unexpected result: Source |
|
||||
| third-party-command-injection.js:6:21:6:27 | command | Unexpected result: Alert |
|
||||
|
||||
@@ -331,21 +331,3 @@ nodes
|
||||
| command-line-parameter-command-injection.js:146:10:146:38 | "cmd.sh ... zzaType | semmle.label | "cmd.sh ... zzaType |
|
||||
| command-line-parameter-command-injection.js:146:22:146:38 | program.pizzaType | semmle.label | program.pizzaType |
|
||||
subpaths
|
||||
testFailures
|
||||
| actions.js:12:6:12:16 | process.env | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:10:13:10:24 | process.argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:24:15:24:26 | process.argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:36:13:39:7 | require ... \\t\\t.argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:48:3:50:3 | argv: { ... rgs\\n\\t\\t} | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:57:17:57:37 | require ... ').argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:58:17:58:40 | require ... parse() | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:68:20:68:40 | require ... ').argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:71:20:71:40 | require ... ').argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:76:15:76:26 | process.argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:88:25:88:36 | process.argv | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:91:14:91:38 | require ... .spec}) | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:107:18:107:51 | command ... itions) | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:114:14:114:52 | meow(`h ... lags}}) | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:122:13:122:46 | dashdas ... tions}) | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:127:13:127:26 | parser.parse() | Unexpected result: Source |
|
||||
| command-line-parameter-command-injection.js:133:10:133:16 | program | Unexpected result: Source |
|
||||
|
||||
@@ -31,6 +31,3 @@ nodes
|
||||
| second-order.js:42:31:42:46 | req.query.remote | semmle.label | req.query.remote |
|
||||
| second-order.js:44:18:44:31 | req.query.args | semmle.label | req.query.args |
|
||||
subpaths
|
||||
testFailures
|
||||
| second-order.js:6:18:6:33 | req.query.remote | Unexpected result: Source |
|
||||
| second-order.js:13:18:13:31 | req.query.args | Unexpected result: Source |
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user