Skip to content

Commit e314869

Browse files
author
Max Schaefer
committed
JavaScript: Classify files with names ending in _min as minified.
We already do the same for `-min` and `.min`. [Here](https://github.com/antoniogarrote/rdfstore-js/blob/master/dist/rdfstore_min.js) is a real-world example.
1 parent 717490b commit e314869

File tree

6 files changed

+6
-3
lines changed

6 files changed

+6
-3
lines changed

change-notes/1.23/analysis-javascript.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## General improvements
44

5+
* Automatic classification of generated and minified files has been improved, in particular files generated by Doxygen are now recognized.
6+
57
* Support for `globalThis` has been added.
68

79
* Support for the following frameworks and libraries has been improved:
@@ -14,8 +16,6 @@
1416

1517
* TypeScript 3.6 and 3.7 features are now supported.
1618

17-
* Automatic classification of generated files has been improved, in particular files generated by Doxygen are now recognized.
18-
1919
## New queries
2020

2121
| **Query** | **Tags** | **Purpose** |

javascript/ql/src/semmle/javascript/AST.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ class TopLevel extends @toplevel, StmtContainer {
150150
/** Holds if this toplevel is minified. */
151151
predicate isMinified() {
152152
// file name contains 'min' (not as part of a longer word)
153-
getFile().getBaseName().regexpMatch(".*[^-.]*[-.]min([-.].*)?\\.\\w+")
153+
getFile().getBaseName().regexpMatch(".*[^-._]*[-._]min([-._].*)?\\.\\w+")
154154
or
155155
exists(int numstmt | numstmt = strictcount(Stmt s | s.getTopLevel() = this) |
156156
// there are more than two statements per line on average

javascript/ql/test/query-tests/filters/ClassifyFiles/ClassifyFiles.expected

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,11 @@
3939
| textmate.html:0:0:0:0 | textmate.html | generated |
4040
| tmpl2.html:0:0:0:0 | tmpl2.html | template |
4141
| tmpl.html:0:0:0:0 | tmpl.html | template |
42+
| tst-min.js:0:0:0:0 | tst-min.js | generated |
4243
| tst.browserify.js:0:0:0:0 | tst.browserify.js | generated |
4344
| tst.dart.js:0:0:0:0 | tst.dart.js | generated |
45+
| tst.min.js:0:0:0:0 | tst.min.js | generated |
46+
| tst_min.js:0:0:0:0 | tst_min.js | generated |
4447
| twitter-text.js:0:0:0:0 | twitter-text.js | library |
4548
| twitter_text.js:0:0:0:0 | twitter_text.js | library |
4649
| unannotated-externs-1.js:0:0:0:0 | unannotated-externs-1.js | externs |

javascript/ql/test/query-tests/filters/ClassifyFiles/tst-min.js

Whitespace-only changes.

javascript/ql/test/query-tests/filters/ClassifyFiles/tst.min.js

Whitespace-only changes.

javascript/ql/test/query-tests/filters/ClassifyFiles/tst_min.js

Whitespace-only changes.

0 commit comments

Comments
 (0)