Extension should notify users when their QL libraries are out of date

Open
#495 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
typescript
Domain
devtools

Research direction

No files, tests, or entry points are named. Start by reviewing how the extension handles the vscode-codeql-starter workspace and submodules, then resolve the version-check and update approach described in the issue. Done means users are warned about new tagged QL library versions and receive clear update instructions.

Written by the indexing model from the issue text.

Description

enhancement VSCode

Background

Most users consume QL through the vscode-codeql-starter workspace. Some cli and ide features not work unless you have up to date QL libraries. Most users aren't aware of this and there is no mechanism to notify users that updates need to happen. The only situation where users are notified is when they add a new database built from a later version of the QL libraries. However, this is not sufficient.

Proposed solution

The extension should periodically check to see if there are new QL libraries available and warn the user if there are. Optionally, the extension could try to install the changes automatically. Otherwise, clear manual instructions should be given.

Caveats and questions

  1. This will only work for the vscode-codeql-starter workspace.
  2. What is considered a new version? We probably don't want to assume any change in master is new. Likely, we want to parse tags and look for new version numbers. Or we can do this through branches.
  3. We can attempt to automatically upgrade. This is just going to be pulling the submodules, which probably won't do any harm unless a user has made changes or commits to the core queries.

It might look like this:

  1. On restart or periodically, fetch the tags for submodules
  2. Check to see if any new tagged version exists.
  3. If so prompt the user to update their libraries
  4. Ensure there is clear instuctions on how to do this.
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.