Page tree
Skip to end of metadata
Go to start of metadata

This page offers an overview of which technologies are supported by Kiuwan. 

Contents

 

New languages!

Icon

Since Feb 2020 = GO

Since Dec 2019 = Kotlin

 

Kiuwan supports 30+ different technologies and this set is continuously growing as we develop new parsers.

Below you can find the current set of supported technologies.

If you do not find a specific technology, or you have any questions, do not hesitate to contact us (Contact Kiuwan Technical Support)

List of Supported Technologies and associated File Extensions

Kiuwan provides built-in engines to process different technologies.

Below you can find the default mapping between technologies and file extensions.

When Kiuwan processes source files, it will apply the engine based on the found file extension.

 

Language

Extensions

ABAP

abap,bsp

ActionScript

as

ASP.NET

asax,ascx,ashx,asmx,aspx,master

C

c,h,pc

COBOL

cob,cbl,cpy,pco

C++

h,hh,cpp,hpp,cc,pc

C#

cs,cshtml

Gogo

HTML

htm,html,xhtml

Informix

sql,4gl

Java

java

JavaScript /TypeScript

js,xsjs,ts,tsx

JCL

jcl,prc

JSP

jsp,jspx,xhtml

Kotlinkt,ktm,kts

Natural

nls,nlp,nlh,nlm,nss,nsp,nsh

Objective C

h,m

OracleForms

oforms

PHP

php,php3,php4,php5,php6, phps,phtml

PL-SQL

sql,sf,sps,spb,sp,fnc,spp,plsql,trg,st,prc,pks,pkb,pck

PowerScript

sru,sra,srw,srf,srs,srm,srx

Python

python,py

RPG4

rpg,rpg3,rpg4,rpgle,dspf,mbr

Scalascala
Swiftswift

Transact-SQL

sql,tsql,sp

VisualBasic 6

bas,frm,cls

VB.NET

vb

 

Third-party languages: 

  • Apex

  • Groovy 
  • Perl
  • Ruby

For more information regarding those languages, please contact the Kiuwan support team

Customization of File Extensions

The above mapping is the default used by Kiuwan, but it can be fully customized in several ways.

Full customization can be done using Kiuwan Local Analyzer

The most common need for custom configuration is when your source files belong to a supported technology but with a different extension.

In this case, you can add that extension to Kiuwan.

For example, if you Cobol files have “ .cobol” extension, you could add “cobol” to COBOL’s extension list.

In this way, when Kiuwan finds source files with “ .cobol” extension, it will trigger the COBOL technology parser and apply COBOL rules.

 

Customization can be done in two ways:

  1. System-wide (applicable to ALL the analyses of a Kiuwan installation)
  2. Application-specific (applicable to ALL the analyses of a specific Application)

Here are further instructions: 

System-wide customization

To apply an extension-technology mapping to all analyses (even of other applications), follow the instructions below. 

  • Option 1: Open Kiuwan Local Analyzer in GUI mode
    1. Open Extension Editor
    2. Add the new extension to the right technology 
    3. In the Saving dialog, select Save as default
    4. This action will overwrite the LanguageInfo.properties file.

  • Option 2: Open KLA in CLI mode 
    1. Modify $AGENT_HOME/conf/LanguageInfo.properties adding that extension to the right technology.
      1. i.e. Set cobol=cob,cbl,cpy,pco,cobol

This mechanism allows you to modify the extensions associated with the technologies, keeping the current set of applicable technologies.

Application-specific customization

To apply an extension-technology mapping to all analyses of a specific application, follow the instructions below: 

  • Option 1: Open Kiuwan Local Analyzer in GUI mode
    1. Open Extension Editor
    2. Add the new extension to the right technology 
    3. In the Saving dialog, select Save
    4. This action will create/overwrite the next property file.

  • Option 2: Open KLA in CLI mode 
    1. Modify $AGENT_HOME/conf/apps/<appname>.extensions.properties adding that extension to the right technology.
      • i.e., set cobol=cob,cbl,cpy,pco,cobol

File Extensions Matching more than One Technology

There are some special cases where the same extension (for example .sql) matches more than one technology (in this case, PL-SQL, Transact-SQL and Informix).

If you analyze your code in the Cloud or with Kiuwan Local Analyzer Graphical User Interface (GUI), you will be asked to select the technology to apply to that analysis. In that way, Kiuwan will apply the selected technology to those files in that analysis.

But, if you run the analysis through Kiuwan Local Analyzer Command-Line Interface (CLI), by default the analysis will apply all the matching engines to those files, resulting in a waste of time and resources as well as producing confusing results (the whole set of rules for every technology will be run against the same sources).

In CLI mode, we strongly suggest you to properly configure Kiuwan to avoid this situation and only apply the right Kiuwan engines.

Depending on the needs, there different solutions.

  1. System-wide (applicable to ALL the analyses of a Kiuwan installation)
    1. For example, in ALL my applications .sql files ALWAYS refer to PLSQL
    2. Edit $AGENT_HOME/conf/analyzer.properties and delete informix and transactsql from supported.technologies property values
    3. Every analysis will take this configuration from now on.
  2. Analysis-specific (applicable to the specific analysis being executed)
    1. In these cases, you must specify in command line the explicit set of technologies for that analysis. 
    2. This can be done by specifying supported.technologies parameter to the appropriate values
      1. For example: agent.cmd [options] supported.technologies=java,jsp, plsql

 

 

 

 

  • No labels