Skip to content

Commit c48ab48

Browse files
authored
Merge pull request #971 from felicity-semmle/ql/SD-3009-add-files
Move support information to QL repository for easier maintenance
2 parents 58cc8d0 + e34cf86 commit c48ab48

12 files changed

+270
-0
lines changed
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
Frameworks and libraries
2+
########################
3+
4+
The QL libraries and queries in this version have been explicitly checked against the libraries and frameworks listed below.
5+
6+
.. pull-quote::
7+
8+
Tip
9+
10+
If you're interested in other libraries or frameworks, you can extend the analysis to cover them.
11+
For example, by extending the data flow libraries to include data sources and sinks for additional libraries or frameworks.
12+
13+
.. There is currently no built-in support for libraries or frameworks for C/C++.
14+
15+
C# built-in support
16+
================================
17+
18+
* ASP.Net MVC framework
19+
* ASP.NET Web API
20+
* ASP.NET Web Forms
21+
* ASP.NET Core
22+
* ASP.NET Core MVC
23+
* ASP.Net Core Razor
24+
* Razor templates
25+
26+
27+
COBOL built-in support
28+
===================================
29+
30+
* Embedded SQL
31+
* Embedded CICS
32+
33+
34+
Java built-in support
35+
==================================
36+
37+
.. csv-table::
38+
:file: java-frameworks.csv
39+
:header-rows: 1
40+
:class: fullWidthTable
41+
:widths: auto
42+
43+
44+
JavaScript and TypeScript built-in support
45+
=======================================================
46+
47+
.. csv-table::
48+
:file: javascript-typescript-frameworks.csv
49+
:header-rows: 1
50+
:class: fullWidthTable
51+
:widths: auto
52+
53+
54+
Python built-in support
55+
====================================
56+
57+
.. csv-table::
58+
:file: python-frameworks.csv
59+
:header-rows: 1
60+
:class: fullWidthTable
61+
:widths: auto
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Name, Category
2+
Hibernate, Database
3+
iBatis / MyBatis, Database
4+
Java Persistence API (JPA), Database
5+
JDBC, Database
6+
Kryo deserialization, Serialization
7+
SnakeYaml, Serialization
8+
Spring JDBC, Database
9+
Spring MVC, Web application framework
10+
XStream, Serialization
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Name, Category
2+
angularjs, HTML framework
3+
axios, Network communicator
4+
browser, Runtime environment
5+
electron, Runtime environment
6+
express, Server
7+
hapi, Server
8+
jquery, Utility library
9+
koa, Server
10+
lodash, Utility library
11+
mongodb, Database
12+
mssql, Database
13+
mysql, Database
14+
node, Runtime environment
15+
postgres, Database
16+
ramda, Utility library
17+
react, HTML framework
18+
request, Network communicator
19+
sequelize, Database
20+
sqlite3, Database
21+
superagent, Network communicator
22+
underscore, Utility library
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Languages and compilers
2+
#######################
3+
4+
QL and LGTM version |version| support analysis of the following languages compiled by the following compilers.
5+
6+
Note that where there are several versions or dialects of a language, the supported variants are listed.
7+
8+
.. csv-table::
9+
:file: versions-compilers.csv
10+
:header-rows: 1
11+
:widths: auto
12+
:stub-columns: 1
13+
14+
.. container:: footnote-group
15+
16+
.. [1] The best results are achieved with COBOL code that stays close to the ANSI 85 standard.
17+
.. [2] Java 11 refers to the language features used. Builds that execute on Java 6 or higher can be analyzed.
18+
.. [3] JSX and Flow code, YAML, JSON, and HTML files may also be analyzed with JavaScript files.
19+
.. [4] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default for LGTM.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Name, Category
2+
Django, Web application framework
3+
Flask, Microframework
4+
Pyramid, Web application framework
5+
Tornado, Web application framework and asynchronous networking library
6+
Twisted, Networking engine
7+
WebOb, WSGI request library
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
Language,Variants,Compilers,Extensions
2+
C/C++,"C89, C99, C11, C++98, C++03, C++11, C++14, C++17","Clang extensions (up to Clang 6.0)
3+
4+
GNU extensions (up to GCC 7.3),
5+
6+
Microsoft extensions (up to VS 2017)","``.cpp``, ``.c++``, ``.cxx``, ``.hpp``, ``.hh``, ``.h++``, ``.hxx``, ``.c``, ``.cc``, ``.h``"
7+
C#,C# up to 7.2 together with .NET versions up to 4.7.1,"Microsoft Visual Studio up to 2017,
8+
9+
.NET Core up to 2.1","``.sln``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``"
10+
COBOL,ANSI 85 or newer [1]_.,Not applicable,"``.cbl``, ``.CBL``, ``.cpy``, ``.CPY``, ``.copy``, ``.COPY``"
11+
Java,"Java 11 [2]_. or lower","javac (OpenJDK and Oracle JDK)
12+
13+
Eclipse compiler for Java (ECJ) batch compiler",``.java``
14+
JavaScript,ECMAScript 2018 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhm``, ``.xhtml``, ``.vue``, ``.json`` [3]_."
15+
Python,"2.7, 3.5, 3.6, 3.7",Not applicable,``.py``
16+
TypeScript [4]_.,"2.6, 2.7, 2.8, 2.9, 3.0, 3.1",Standard TypeScript compiler,"``.ts``, ``.tsx``"
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
Frameworks and libraries
2+
########################
3+
4+
The QL libraries and queries in this version have been explicitly checked against the libraries and frameworks listed below.
5+
6+
.. pull-quote::
7+
8+
Tip
9+
10+
If you're interested in other libraries or frameworks, you can extend the analysis to cover them.
11+
For example, by extending the data flow libraries to include data sources and sinks for additional libraries or frameworks.
12+
13+
.. There is currently no built-in support for libraries or frameworks for C/C++.
14+
15+
C# built-in support
16+
================================
17+
18+
* ASP.Net MVC framework
19+
* ASP.NET Web API
20+
* ASP.NET Web Forms
21+
* ASP.NET Core
22+
* ASP.NET Core MVC
23+
* ASP.Net Core Razor
24+
* Razor templates
25+
26+
27+
COBOL built-in support
28+
===================================
29+
30+
* Embedded SQL
31+
* Embedded CICS
32+
33+
34+
Java built-in support
35+
==================================
36+
37+
.. csv-table::
38+
:file: java-frameworks.csv
39+
:header-rows: 1
40+
:class: fullWidthTable
41+
:widths: auto
42+
43+
44+
JavaScript and TypeScript built-in support
45+
=======================================================
46+
47+
.. csv-table::
48+
:file: javascript-typescript-frameworks.csv
49+
:header-rows: 1
50+
:class: fullWidthTable
51+
:widths: auto
52+
53+
54+
Python built-in support
55+
====================================
56+
57+
.. csv-table::
58+
:file: python-frameworks.csv
59+
:header-rows: 1
60+
:class: fullWidthTable
61+
:widths: auto
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Name, Category
2+
Hibernate, Database
3+
iBatis / MyBatis, Database
4+
Java Persistence API (JPA), Database
5+
JDBC, Database
6+
Kryo deserialization, Serialization
7+
SnakeYaml, Serialization
8+
Spring JDBC, Database
9+
Spring MVC, Web application framework
10+
XStream, Serialization
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
Name, Category
2+
angularjs, HTML framework
3+
axios, Network communicator
4+
browser, Runtime environment
5+
electron, Runtime environment
6+
express, Server
7+
hapi, Server
8+
jquery, Utility library
9+
koa, Server
10+
lodash, Utility library
11+
mongodb, Database
12+
mssql, Database
13+
mysql, Database
14+
node, Runtime environment
15+
postgres, Database
16+
ramda, Utility library
17+
react, HTML framework
18+
request, Network communicator
19+
sequelize, Database
20+
sqlite3, Database
21+
superagent, Network communicator
22+
underscore, Utility library
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
Languages and compilers
2+
#######################
3+
4+
QL and LGTM version |version| support analysis of the following languages compiled by the following compilers.
5+
6+
Note that where there are several versions or dialects of a language, the supported variants are listed.
7+
8+
.. csv-table::
9+
:file: versions-compilers.csv
10+
:header-rows: 1
11+
:widths: auto
12+
:stub-columns: 1
13+
14+
.. container:: footnote-group
15+
16+
.. [1] The best results are achieved with COBOL code that stays close to the ANSI 85 standard.
17+
.. [2] Java 11 refers to the language features used. Builds that execute on Java 6 or higher can be analyzed.
18+
.. [3] JSX and Flow code, YAML, JSON, and HTML files may also be analyzed with JavaScript files.
19+
.. [4] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default for LGTM.

0 commit comments

Comments
 (0)