Privacy policy

Visao analyses your code on your machine. This page states where the information about your code goes, what that information contains, and what Visao writes to disk.

Visao sends nothing

Visao has no network client. It sends no telemetry, no usage report, no licence call and no update request. It uses no service of a third party to parse, to analyse, to store or to transform your code. Interpretica receives nothing from your run.

The analyser needs no network access at run time. You can analyse a project on a machine with no network at all.

Visao keeps no code

Visao holds the content of a file in memory while it analyses that file, and it releases the memory when the analysis ends. Visao never writes the full content of a file into a report, into a cache, into a database or into any other lasting artefact.

Where the information goes

A run has two destinations, and you select both:

The console of your machine

The analyser prints the information that you asked for.

A client of the Analysis Server Protocol

The server answers the client that connects to the endpoint that you bind. In the products of Interpretica that client is Midair. When you start the server yourself, the client is the program that you connect. The behaviour of that program is outside the control of Interpretica.

What the information contains

Symbols

The name, the kind and the position of a function, a variable or a type.

Relations between symbols

Which function uses which symbol.

Findings

The rule, the severity, the message, the file, the line, the column, and the text of the line that carries the defect.

Suspicious places

The same fields, plus the lines of the construct and the lines around it. --suspicious-context sets the number of lines on each side. The default is two.

Files that Visao writes

The analyser writes a document when a flag asks for one. Examples: --report-output, --sbom-output, --baseline-write and --dep-graph-out. Each document holds the information of the list above, and nothing more. Two more files belong to the run itself:

The toolchain cache

The cache holds the paths, the predefined macros and the header directories of the compilers of your machine. It holds no code of yours. Delete it at any time. The next run writes it again.

A temporary file for a helper

A language with a helper program gives the helper the source through a file. Visao writes that file in the temporary directory of the system. The helper on the same machine reads it. Visao then deletes the file as soon as the helper answers. The file stays on your machine.

The optional database

A build that carries the database layer stores the findings in an instance of MongoDB. The instance is your own, and the flag --enable-database turns the layer on. A record holds the fields of a finding, with the one line of source that the finding is about.

How to confirm it

Disconnect the machine from the network and run a full analysis. The run completes, and it prints the same findings.