Skip to main content

Multilanguage

This article shows you how to analyze your applications written in multiple languages using preZero. It assumes that you have already set up and authenticated with Qwiet.

Requirements

See Prerequisites for more information.

Analyzing a multilanguage application

note

Qwiet offers a sample application that you can use to run and test preZero.

To analyze your multilanguage application, run:

sl analyze --app <name> </path/to/code>
ParameterDescription
--app <name>The name of the application to be analyzed (maximum length: 100 characters)
<path/to/code>The path to your project

See the CLI reference for additional sl analyze options.

Additional parameters

Parameters after a double hyphen -- are applied to all languages. To specify additional parameters for individial languages, use --<language>.<option>=<value> after the double hyphen --.

For example:

sl analyze --app my_app . -- --c.exclude-regex=".*([-.])min\\.c"

This is the equivalent to:

sl analyze --app my_c_app -c . -- --exclude-regex ".*([-.])min\\.c"

For information about language-specific features, please review the options available as part of sl analyze or the page appropriate for your application:

Excluding languages

One or more languages can be exclude from the analysis using the option --exclude-languages <language> one or more times. For example:

sl analyze --app my_app --exclude-languages jssrc --exclude-languages pythonsrc .

Disable multilanguage

Multilanguage can be disabled for a particular analysis using the option --disable-multilanguage-analysis. The most prevalent language will be detected and used for analysis (unless a language option is specified). For example:

sl analyze --disable-multilanguage-analysis --app my_app .

Tagging results with your branch name

To include the branch name in your preZero results, allowing you to distinguish one set of results from another, add the following to your invocation of Qwiet:

sl analyze --app <name> --tag branch=`git symbolic-ref --short HEAD` </path/to/code>

If you're working in a GitHub environment (e.g., GitHub Actions), you can also use --tag branch=${{ github.head_ref }} to populate your branch name.

If you don't provide a branch name, but Qwiet detects one available in your environment, it will use that name.

Troubleshooting

If you have any issues scanning your project, please see our general troubleshooting page.