You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Today, when we enter a workspace (e.g. transition from empty workspace => untitled workspace), we have to restart the extension host for a couple of reasons:
the workspace.rootPath changes
the location of storage changes
We do this by first calling stopExtensionHost, then entering the workspace (which is LONG RUNNING) and then calling startExtensionHost. This potentially leaves the workbench in a state of NO extension host running until it gets started.
Discussed with @alexandrudima that we want to call restartExtensionHost once the workspace has been entered to have a more atomic behaviour.
The only downside of this approach is that extensions potentially receive a workspace change event and then get shutdown and restarted. But we think extensions need to be fit for this anyway today already ever since we introduced these APIs for multi root.
Today, when we enter a workspace (e.g. transition from empty workspace => untitled workspace), we have to restart the extension host for a couple of reasons:
workspace.rootPath
changesWe do this by first calling
stopExtensionHost
, then entering the workspace (which is LONG RUNNING) and then callingstartExtensionHost
. This potentially leaves the workbench in a state of NO extension host running until it gets started.Discussed with @alexandrudima that we want to call
restartExtensionHost
once the workspace has been entered to have a more atomic behaviour.The only downside of this approach is that extensions potentially receive a workspace change event and then get shutdown and restarted. But we think extensions need to be fit for this anyway today already ever since we introduced these APIs for multi root.
//cc @sandy081
The text was updated successfully, but these errors were encountered: