Variant Analysis Results don't show results without source location in some cases

Open
#2,629 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
typescript, vscode

Research direction

Start by reproducing the query in Quick Query and inspecting the Variant Analysis Results view with results that lack source locations. Compare the behavior with a local database run and with a query whose first tuple value is a string. Done means omitted results are either clearly counted or available through a raw-results view.

Written by the indexing model from the issue text.

Description

bug VSCode

Describe the bug
If you use a query with @kind problem in the metadata (or even without @kind, whose select clause has an element as first tuple value, e.g. select element, "my message") and all or some of the elements in the results don't have a source location (for example because they come from an external library), then they are not shown in the Variant Analysis Results view and there is no indication that they were omitted.

This differs from a run for a local database, whose result view includes these results, respectively offers to view the "raw results".

It also differs from a Variant Analysis run without @kind ... in the metadata and where for example a string is the first value in the result tuples (e.g. select "my message", element), which does show the raw results.

Version
Extension version

CodeQL extension version: 1.8.8 
CodeQL CLI version: 2.14.0 
Platform: win32 x64

VS Code version

Version: 1.80.1 (user setup)
Commit: 74f6148eb9ea00507ec113ec51c489d6ffb4b771
Date: 2023-07-12T17:22:07.651Z
Electron: 22.3.14
ElectronBuildId: 21893604
Chromium: 108.0.5359.215
Node.js: 16.17.1
V8: 10.8.168.25-electron.0
OS: Windows_NT x64 10.0.19045

To reproduce

  1. Open Quick Query and paste the following query
    /**
     * @kind problem
     */
    
    import java
    
    from EnumType t
    where not t.fromSource()
    select t, "my message"
    
  2. Run Variant Analysis, for example on the top 10 repositories
  3. Open the Variant Analysis Results
    ❌ Bug: No results are shown, and there is no indication and no way to show the actual results which don't have a source location

Expected behavior
Either:

  • There should be at least an indication that X results were omitted because they are not in the source code
  • Or better, there should be a way to view the "raw results" (i.e. shown as regular table), which include elements without source location

Additional context
This might affect other @kind types as well.

Dominant language
TypeScript
Stars
539
Forks
240
Avg merge
2d 6h
Merged PRs (30d)
29

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from github/vscode-codeql

All issues in github/vscode-codeql

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.