Skip to content

vscode.extensions.all only gives extensions running on the same machine #82633

@joelspadin

Description

@joelspadin

Issue Type: Bug

To work around #21839, I am working on an extension that can install other extensions from a private server for extensions internal to my company that cannot be published to the public marketplace.

To check for updates, I need to be able to see which extensions are installed so I can compare them to the versions available on the server. When I am using a local workspace, vscode.extensions.getExtension() works perfectly for this, but when I am connected to a Linux machine with the Remote SSH extension, no extensions with extensionKind: ExtensionKind.UI show up in vscode.extensions.all, nor will vscode.extensions.getExtension() return any information for these extensions. This makes it impossible to me check for updates to UI extensions such as code snippet packages and custom language support extensions.

I am using the workbench.extensions.installExtension command to install extensions, and it correctly determines whether to install extensions on the local or remote machine, so it seems like I should be able to see information about both local and remote extensions. I don't expect to be able to use parts of the API such as Extension.exports, but I do expect to be able to see whether each extension is installed regardless of where it is installed, and ideally to read its packageJSON so I can see its version (though if this is not possible I can simply tell the user that I can't check check this extension for updates when in a remote workspace). If I can only see ExtensionKind.Workspace extensions when in a remote workspace, then the Extension.extensionKind API does not seem particularly useful.

VS Code version: Code 1.39.1 (88f15d1, 2019-10-10T23:31:28.683Z)
OS version: Windows_NT x64 6.1.7601
Remote OS version: Linux x64 4.15.0-65-generic

System Info
Item Value
CPUs Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz (8 x 3392)
GPU Status 2d_canvas: enabled
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: disabled_software
oop_rasterization: unavailable_off
protected_video_decode: unavailable_off
rasterization: unavailable_off
skia_deferred_display_list: disabled_off
skia_renderer: disabled_off
surface_synchronization: enabled_on
video_decode: unavailable_off
viz_display_compositor: disabled_off
webgl: enabled
webgl2: enabled
Load (avg) undefined
Memory (System) 31.96GB (12.97GB free)
Process Argv --folder-uri vscode-remote://ssh-remote%2B10.30.192.26/home/spadin/projects/redacted
Screen Reader no
VM 0%
Item Value
Remote SSH: 10.30.192.26
OS Linux x64 4.15.0-65-generic
CPUs Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz (8 x 800)
Memory (System) 31.31GB (1.16GB free)
VM 0%
Extensions (38)
Extension Author (truncated) Version
gitignore cod 0.6.0
xml Dot 2.5.0
gitlens eam 10.1.1
EditorConfig Edi 0.14.2
vscode-npm-script eg2 0.3.9
json-tools eri 1.0.2
prettier-vscode esb 2.3.0
bitbake Eug 1.1.2
tabsanity jed 0.0.11
svg joc 1.0.2
bash-ide-vscode mad 1.3.3
rainbow-csv mec 1.3.1
git-graph mhu 1.17.0
python ms- 2019.10.41019
cpptools ms- 0.25.1
vscode-typescript-tslint-plugin ms- 1.2.2
config-defaults spa 1.1.0
rewrap stk 1.9.1
git-commit-helper-vscode tre 1.0.1
better-align wwm 1.1.6
arm dan 0.5.0
javascript-ejs-support Dig 1.1.3
tsl-problem-matcher eam 0.0.4
vscode-peacock joh 3.1.5
remote-ssh ms- 0.47.1
remote-ssh-edit ms- 0.47.1
vscode-icons vsc 9.4.0

Metadata

Metadata

Assignees

Labels

*dev-questionVS Code Extension Development QuestionremoteRemote system operations issues

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions