Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ad2b150

Browse files
committed
JS: Add change note
1 parent a195429 commit ad2b150

1 file changed

Lines changed: 9 additions & 1 deletion

File tree

change-notes/1.24/analysis-javascript.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@
99
* Imports with the `.js` extension can now be resolved to a TypeScript file,
1010
when the import refers to a file generated by TypeScript.
1111

12-
* Imports that rely on path-mappings from a `tsconfig.json` file can now be resolved.
12+
* The analysis of sanitizers has improved, leading to more accurate results from the security queries.
13+
In particular:
14+
- Sanitizer guards now act across function boundaries in more cases.
15+
- Sanitizers can now better distinguish between a tainted value and an object _containing_ a tainted value.
1316

1417
* Export declarations of the form `export * as ns from "x"` are now analyzed more precisely.
1518

@@ -85,3 +88,8 @@
8588

8689
* The predicates `RegExpTerm.getSuccessor` and `RegExpTerm.getPredecessor` have been changed to reflect textual, not operational, matching order. This only makes a difference in lookbehind assertions, which are operationally matched backwards. Previously, `getSuccessor` would mimick this, so in an assertion `(?<=ab)` the term `b` would be considered the predecessor, not the successor, of `a`. Textually, however, `a` is still matched before `b`, and this is the order we now follow.
8790
* An extensible model of the `EventEmitter` pattern has been implemented.
91+
* Taint-tracking configurations now interact differently with the `data` flow label, which may affect queries
92+
that combine taint-tracking and flow labels.
93+
- Sources added by the 1-argument `isSource` predicate are associated with the `taint` label now, instead of the `data` label.
94+
- Sanitizers now only block the `taint` label. As a result, sanitizers no longer block the flow of tainted values wrapped inside a property of an object.
95+
To retain the old behavior, instead use a barrier, or block the `data` flow label using a labeled sanitizer.

0 commit comments

Comments
 (0)