chore: add launch configuration to allow extension host reloading
Description
Adds a launch configuration to allow extension host reloading, without the background watch script being automatically killed.
Background
The current Run Extension
configuration automatically runs the watch:desktop
command in the background, and kills the watcher whenever the extension host is closed or reloaded. This means you cannot use ctrl+r to reload the extension host, and the debug command needs to be re-run each time.
The change
This MR adds a new launch configuration, Run Extension (without build)
. This allows developers to run the watch:desktop
script manually in a separate terminal, (or launch it manually within VS Code via ctrl
+shift
+B
-> Build and watch desktop sources
) and have the extension host launched independently. ctrl+r can now be used to reload the extension host without impacting the watch script.
Caveats
The watch script watch:desktop
has two parts:
- copies static files
- starts watching and rebuilding
The static file copying only happens initially when the script starts, so any subsequent changes to these static files will not be automatically applied. When making changes to these files, you'll need to manually restart watch:desktop
. See: Watchers don't pick up changes in package.json (#799)
Related Issues
Resolves #1301 (closed)
How has this been tested?
- verified existing debug configuration continues to work
- verified new configuration works, with external
watch:dekstop
- changes to extension rebuilt correctly and applied when reloading with ctrl+r
Screenshots (if appropriate)
What CHANGELOG entry will this MR create?
-
fix:
Bug fix fixes - a user-facing issue in production - included in changelog -
feature:
New feature - a user-facing change which adds functionality - included in changelog -
BREAKING CHANGE:
(fix or feature that would cause existing functionality to change) - should bump major version, mentioned in the changelog -
None - other non-user-facing changes
Closes #1301 (closed)