Skip to content

feat(web_ide): Added new API for VS Code Settings

Shekhar Patnaik requested to merge spatnaik/vscode_setting_sync into master

What does this MR do and why?

Added new API for VS Code Setting Sync. It conforms to the (undocumented) VSCode settings sync API so that settings can be synced across different VS Code IDE instances. We specifically need this for Web IDE so that we can persist WebIDE settings, key bindings, state and extensions. Today when you open the VS Code based WebIDE and you close the window you lose all the setting changes that you've made.

Many more details of the architecture are in the investigation issue here.

Screenshots or screen recordings

How to set up and validate locally

Note: This cannot be tested from the WebIDE within GitLab yet. This is because we haven't merged the OAuth changes and the Web IDE secrets provider need for this to work.

  1. Setup Web IDE with the settings sync branch - poc-settings-sync-web-ide.
  2. Make changes to the user settings, records should get created in the new object.
  3. When you open another session of the Web IDE the settings should get synced.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Shekhar Patnaik

Merge request reports