support extensionKind ui and workspace#3051
support extensionKind ui and workspace#3051leighmcculloch wants to merge 2 commits intomicrosoft:mainfrom leighmcculloch:patch-1
Conversation
|
We intentionally removed the "remote.extensionKind": {
"ms-azuretools.vscode-docker": [
"ui"
]
}For the relatively few users that do actually want it to use UI mode, we felt this was a satisfactory workaround. |
|
@bwateratmsft Thanks for explaining.
Could you elaborate on this? Are you referring to remote SSH or remote containers or both? |
|
Both, along with Codespaces and WSL as well. Most commonly the issues/confusion would occur in SSH/Codespaces/WSL, though (not often you would have Docker in Docker in a remote container scenario). If the user is only editing Dockerfiles--and not using the explorer, commands, tasks, other features--then UI mode is sufficient. However it seems like most people using remote sessions are using those other features, and in UI mode, if Docker context or |
|
@leighmcculloch if you read the description of "extension kind" manifest property https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds you will notice that Docker extension fits the description of "workspace" extension much more than "UI extension" If you want to see Docker assets on the local machine, install the extension locally and open a VS Code instance that uses local machine context. If you want to see Docker assets on the remote machine, install it remotely and open a VS Code instance with a remote connection. It is quite predictable this way. |
|
Thanks for explaining. For my use cases the example @bwateratmsft posted in #3051 (comment) using |
What
Indicate to VSCode that the extension can run in
uimode or inworkspacemode.Why
When using VSCode with remote containers support VSCode can run extensions locally where the UI is being displayed or remotely where the files live. Many extension can run in either location, although some extension can only run on the ui side and some can only run on the workspace side.
When an extension doesn't indicate where it can be run it always runs at the workspace side.
The docker extension can run either on the UI or on the workspace and I think it should really be up to the user to choose. The advantage of changing this and indicating it can run in both places is that when using remote dev containers the developer doesn't have to manually install the extension in the container to use it to control their local docker setup.