vscode-go
vscode-go copied to clipboard
feature request: add dependency library explorer
Is it possible to merge go-mod-explorer into vscode-go? I can work with this plan.
related to #2236 #2156 #2591
Thanks for initiating the conversation. @r3inbowari I also think it will be nice if the go extension has a dependency explorer. Unfortunately, we don't have time to review for this major feature addition right now. But I am happy to discuss the feature / functionalities / UX aiming to integrate that in the extension later this year.
Is there any pressing issue that the current go-mod-explorer faces because
it is a separate extension? If so, we are happy to see if there is an easy fix we
can add while we have this discussion flowing.
What I was thinking was to implement a custom LSP execute command
in gopls that returns the list of active modules for the workspace, instead of
making the extension directly call go list, and the extension itself focus on
rendering of the returned data.
And some initial topics to discuss:
- go.work support (not sure what's the right UX yet)
- prevent scanning of the whole workspace as much as possible
- change the view as the module of the file in focus changes.
What I was thinking was to implement a custom LSP execute command in gopls that returns the list of active modules for the workspace, instead of making the extension directly call go list, and the extension itself focus on rendering of the returned data.
Hi, Thanks for reply. You're right, that's why it needs to be integrated into vscode-go, the same goes for go.work. Secondly, a precise dependency code navigation is required, which cannot be work well by separate extension. because the file information of each navigation cannot be obtained.
@hyangah : is there a plan to implement this feature this year (2024)? Go mod explorer sometimes does not open the lib's file and while 2 panels show source code, it's hard to know which file we are currently open
I love this feature in Goland when we open the lib's file, it automatically navigate to this file in the Explorer file tree