From e34cf86c47bcce120c547e3caab3b6877d1a3499 Mon Sep 17 00:00:00 2001 From: Felicity Chapman Date: Fri, 22 Feb 2019 15:21:16 +0000 Subject: [PATCH] Move support information to QL repository for easier maintenance --- .../1.19/support/framework-support.rst | 61 +++++++++++++++++++ change-notes/1.19/support/java-frameworks.csv | 10 +++ .../javascript-typescript-frameworks.csv | 22 +++++++ .../1.19/support/language-support.rst | 19 ++++++ .../1.19/support/python-frameworks.csv | 7 +++ .../1.19/support/versions-compilers.csv | 16 +++++ .../1.20/support/framework-support.rst | 61 +++++++++++++++++++ change-notes/1.20/support/java-frameworks.csv | 10 +++ .../javascript-typescript-frameworks.csv | 22 +++++++ .../1.20/support/language-support.rst | 19 ++++++ .../1.20/support/python-frameworks.csv | 7 +++ .../1.20/support/versions-compilers.csv | 16 +++++ 12 files changed, 270 insertions(+) create mode 100644 change-notes/1.19/support/framework-support.rst create mode 100644 change-notes/1.19/support/java-frameworks.csv create mode 100644 change-notes/1.19/support/javascript-typescript-frameworks.csv create mode 100644 change-notes/1.19/support/language-support.rst create mode 100644 change-notes/1.19/support/python-frameworks.csv create mode 100644 change-notes/1.19/support/versions-compilers.csv create mode 100644 change-notes/1.20/support/framework-support.rst create mode 100644 change-notes/1.20/support/java-frameworks.csv create mode 100644 change-notes/1.20/support/javascript-typescript-frameworks.csv create mode 100644 change-notes/1.20/support/language-support.rst create mode 100644 change-notes/1.20/support/python-frameworks.csv create mode 100644 change-notes/1.20/support/versions-compilers.csv diff --git a/change-notes/1.19/support/framework-support.rst b/change-notes/1.19/support/framework-support.rst new file mode 100644 index 00000000000..d884757168b --- /dev/null +++ b/change-notes/1.19/support/framework-support.rst @@ -0,0 +1,61 @@ +Frameworks and libraries +######################## + +The QL libraries and queries in this version have been explicitly checked against the libraries and frameworks listed below. + +.. pull-quote:: + + Tip + + If you're interested in other libraries or frameworks, you can extend the analysis to cover them. + For example, by extending the data flow libraries to include data sources and sinks for additional libraries or frameworks. + +.. There is currently no built-in support for libraries or frameworks for C/C++. + +C# built-in support +================================ + +* ASP.Net MVC framework +* ASP.NET Web API +* ASP.NET Web Forms +* ASP.NET Core +* ASP.NET Core MVC +* ASP.Net Core Razor +* Razor templates + + +COBOL built-in support +=================================== + +* Embedded SQL +* Embedded CICS + + +Java built-in support +================================== + +.. csv-table:: + :file: java-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto + + +JavaScript and TypeScript built-in support +======================================================= + +.. csv-table:: + :file: javascript-typescript-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto + + +Python built-in support +==================================== + +.. csv-table:: + :file: python-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto diff --git a/change-notes/1.19/support/java-frameworks.csv b/change-notes/1.19/support/java-frameworks.csv new file mode 100644 index 00000000000..91603b715a7 --- /dev/null +++ b/change-notes/1.19/support/java-frameworks.csv @@ -0,0 +1,10 @@ +Name, Category +Hibernate, Database +iBatis / MyBatis, Database +Java Persistence API (JPA), Database +JDBC, Database +Kryo deserialization, Serialization +SnakeYaml, Serialization +Spring JDBC, Database +Spring MVC, Web application framework +XStream, Serialization diff --git a/change-notes/1.19/support/javascript-typescript-frameworks.csv b/change-notes/1.19/support/javascript-typescript-frameworks.csv new file mode 100644 index 00000000000..73e31d8b409 --- /dev/null +++ b/change-notes/1.19/support/javascript-typescript-frameworks.csv @@ -0,0 +1,22 @@ +Name, Category +angularjs, HTML framework +axios, Network communicator +browser, Runtime environment +electron, Runtime environment +express, Server +hapi, Server +jquery, Utility library +koa, Server +lodash, Utility library +mongodb, Database +mssql, Database +mysql, Database +node, Runtime environment +postgres, Database +ramda, Utility library +react, HTML framework +request, Network communicator +sequelize, Database +sqlite3, Database +superagent, Network communicator +underscore, Utility library diff --git a/change-notes/1.19/support/language-support.rst b/change-notes/1.19/support/language-support.rst new file mode 100644 index 00000000000..f04cb5f82fd --- /dev/null +++ b/change-notes/1.19/support/language-support.rst @@ -0,0 +1,19 @@ +Languages and compilers +####################### + +QL and LGTM version |version| support analysis of the following languages compiled by the following compilers. + +Note that where there are several versions or dialects of a language, the supported variants are listed. + +.. csv-table:: + :file: versions-compilers.csv + :header-rows: 1 + :widths: auto + :stub-columns: 1 + +.. container:: footnote-group + + .. [1] The best results are achieved with COBOL code that stays close to the ANSI 85 standard. + .. [2] Java 11 refers to the language features used. Builds that execute on Java 6 or higher can be analyzed. + .. [3] JSX and Flow code, YAML, JSON, and HTML files may also be analyzed with JavaScript files. + .. [4] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default for LGTM. diff --git a/change-notes/1.19/support/python-frameworks.csv b/change-notes/1.19/support/python-frameworks.csv new file mode 100644 index 00000000000..0e54f08aaa7 --- /dev/null +++ b/change-notes/1.19/support/python-frameworks.csv @@ -0,0 +1,7 @@ +Name, Category +Django, Web application framework +Flask, Microframework +Pyramid, Web application framework +Tornado, Web application framework and asynchronous networking library +Twisted, Networking engine +WebOb, WSGI request library diff --git a/change-notes/1.19/support/versions-compilers.csv b/change-notes/1.19/support/versions-compilers.csv new file mode 100644 index 00000000000..fb903ca08a6 --- /dev/null +++ b/change-notes/1.19/support/versions-compilers.csv @@ -0,0 +1,16 @@ +Language,Variants,Compilers,Extensions +C/C++,"C89, C99, C11, C++98, C++03, C++11, C++14, C++17","Clang extensions (up to Clang 6.0) + +GNU extensions (up to GCC 7.3), + +Microsoft extensions (up to VS 2017)","``.cpp``, ``.c++``, ``.cxx``, ``.hpp``, ``.hh``, ``.h++``, ``.hxx``, ``.c``, ``.cc``, ``.h``" +C#,C# up to 7.2 together with .NET versions up to 4.7.1,"Microsoft Visual Studio up to 2017, + +.NET Core up to 2.1","``.sln``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" +COBOL,ANSI 85 or newer [1]_.,Not applicable,"``.cbl``, ``.CBL``, ``.cpy``, ``.CPY``, ``.copy``, ``.COPY``" +Java,"Java 11 [2]_. or lower","javac (OpenJDK and Oracle JDK) + +Eclipse compiler for Java (ECJ) batch compiler",``.java`` +JavaScript,ECMAScript 2018 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhm``, ``.xhtml``, ``.vue``, ``.json`` [3]_." +Python,"2.7, 3.5, 3.6, 3.7",Not applicable,``.py`` +TypeScript [4]_.,"2.6, 2.7, 2.8, 2.9, 3.0, 3.1",Standard TypeScript compiler,"``.ts``, ``.tsx``" diff --git a/change-notes/1.20/support/framework-support.rst b/change-notes/1.20/support/framework-support.rst new file mode 100644 index 00000000000..d884757168b --- /dev/null +++ b/change-notes/1.20/support/framework-support.rst @@ -0,0 +1,61 @@ +Frameworks and libraries +######################## + +The QL libraries and queries in this version have been explicitly checked against the libraries and frameworks listed below. + +.. pull-quote:: + + Tip + + If you're interested in other libraries or frameworks, you can extend the analysis to cover them. + For example, by extending the data flow libraries to include data sources and sinks for additional libraries or frameworks. + +.. There is currently no built-in support for libraries or frameworks for C/C++. + +C# built-in support +================================ + +* ASP.Net MVC framework +* ASP.NET Web API +* ASP.NET Web Forms +* ASP.NET Core +* ASP.NET Core MVC +* ASP.Net Core Razor +* Razor templates + + +COBOL built-in support +=================================== + +* Embedded SQL +* Embedded CICS + + +Java built-in support +================================== + +.. csv-table:: + :file: java-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto + + +JavaScript and TypeScript built-in support +======================================================= + +.. csv-table:: + :file: javascript-typescript-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto + + +Python built-in support +==================================== + +.. csv-table:: + :file: python-frameworks.csv + :header-rows: 1 + :class: fullWidthTable + :widths: auto diff --git a/change-notes/1.20/support/java-frameworks.csv b/change-notes/1.20/support/java-frameworks.csv new file mode 100644 index 00000000000..91603b715a7 --- /dev/null +++ b/change-notes/1.20/support/java-frameworks.csv @@ -0,0 +1,10 @@ +Name, Category +Hibernate, Database +iBatis / MyBatis, Database +Java Persistence API (JPA), Database +JDBC, Database +Kryo deserialization, Serialization +SnakeYaml, Serialization +Spring JDBC, Database +Spring MVC, Web application framework +XStream, Serialization diff --git a/change-notes/1.20/support/javascript-typescript-frameworks.csv b/change-notes/1.20/support/javascript-typescript-frameworks.csv new file mode 100644 index 00000000000..73e31d8b409 --- /dev/null +++ b/change-notes/1.20/support/javascript-typescript-frameworks.csv @@ -0,0 +1,22 @@ +Name, Category +angularjs, HTML framework +axios, Network communicator +browser, Runtime environment +electron, Runtime environment +express, Server +hapi, Server +jquery, Utility library +koa, Server +lodash, Utility library +mongodb, Database +mssql, Database +mysql, Database +node, Runtime environment +postgres, Database +ramda, Utility library +react, HTML framework +request, Network communicator +sequelize, Database +sqlite3, Database +superagent, Network communicator +underscore, Utility library diff --git a/change-notes/1.20/support/language-support.rst b/change-notes/1.20/support/language-support.rst new file mode 100644 index 00000000000..f04cb5f82fd --- /dev/null +++ b/change-notes/1.20/support/language-support.rst @@ -0,0 +1,19 @@ +Languages and compilers +####################### + +QL and LGTM version |version| support analysis of the following languages compiled by the following compilers. + +Note that where there are several versions or dialects of a language, the supported variants are listed. + +.. csv-table:: + :file: versions-compilers.csv + :header-rows: 1 + :widths: auto + :stub-columns: 1 + +.. container:: footnote-group + + .. [1] The best results are achieved with COBOL code that stays close to the ANSI 85 standard. + .. [2] Java 11 refers to the language features used. Builds that execute on Java 6 or higher can be analyzed. + .. [3] JSX and Flow code, YAML, JSON, and HTML files may also be analyzed with JavaScript files. + .. [4] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default for LGTM. diff --git a/change-notes/1.20/support/python-frameworks.csv b/change-notes/1.20/support/python-frameworks.csv new file mode 100644 index 00000000000..0e54f08aaa7 --- /dev/null +++ b/change-notes/1.20/support/python-frameworks.csv @@ -0,0 +1,7 @@ +Name, Category +Django, Web application framework +Flask, Microframework +Pyramid, Web application framework +Tornado, Web application framework and asynchronous networking library +Twisted, Networking engine +WebOb, WSGI request library diff --git a/change-notes/1.20/support/versions-compilers.csv b/change-notes/1.20/support/versions-compilers.csv new file mode 100644 index 00000000000..fb903ca08a6 --- /dev/null +++ b/change-notes/1.20/support/versions-compilers.csv @@ -0,0 +1,16 @@ +Language,Variants,Compilers,Extensions +C/C++,"C89, C99, C11, C++98, C++03, C++11, C++14, C++17","Clang extensions (up to Clang 6.0) + +GNU extensions (up to GCC 7.3), + +Microsoft extensions (up to VS 2017)","``.cpp``, ``.c++``, ``.cxx``, ``.hpp``, ``.hh``, ``.h++``, ``.hxx``, ``.c``, ``.cc``, ``.h``" +C#,C# up to 7.2 together with .NET versions up to 4.7.1,"Microsoft Visual Studio up to 2017, + +.NET Core up to 2.1","``.sln``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``" +COBOL,ANSI 85 or newer [1]_.,Not applicable,"``.cbl``, ``.CBL``, ``.cpy``, ``.CPY``, ``.copy``, ``.COPY``" +Java,"Java 11 [2]_. or lower","javac (OpenJDK and Oracle JDK) + +Eclipse compiler for Java (ECJ) batch compiler",``.java`` +JavaScript,ECMAScript 2018 or lower,Not applicable,"``.js``, ``.jsx``, ``.mjs``, ``.es``, ``.es6``, ``.htm``, ``.html``, ``.xhm``, ``.xhtml``, ``.vue``, ``.json`` [3]_." +Python,"2.7, 3.5, 3.6, 3.7",Not applicable,``.py`` +TypeScript [4]_.,"2.6, 2.7, 2.8, 2.9, 3.0, 3.1",Standard TypeScript compiler,"``.ts``, ``.tsx``"