vscode-go v0.20.0 Release Notes

  • A list of all issues and changes can be found in the v0.20.0 milestone.

    โœจ Enhancements

    • Debugging
      • The new substitutePath config property allows users to translate their symlinked directories to the actual paths, and the local paths to the remote paths. See Launch Configurations and Remote Debugging for details.
      • Quick pick menu for creating launch.json was added. (Issue 131)
      • Report that next is automatically cancelled by delve if interrupted, for example, because breakpoint is set. See Issue 787 for details. (CL 261078)
    • The new tyf snippet for type name func() was added. (Issue 1002)
    • Include the gopls settings section definition based on gopls v0.6.0. (Issue 197, CL 278355)
    • ๐Ÿ— go.buildFlags and go.buildTags are propagated to gopls unless "gopls": {"buildFlags": ..} is set. (Issue 155)
    • โšก๏ธ The new go.toolsManagement.checkForUpdates setting allows users to completely disable version checks. โšก๏ธ This deprecates go.useGoProxyToCheckForToolUpdates. (Issue 963)

    ๐Ÿ›  Fixes

    • โž• Added a workaround for the VSCode PATH setup issue. When go isn't found from PATH, the extension will check /usr/local/bin too (Issue 971).
    • ๐Ÿ›  Fixed language client crashes or duplicate language features on the guest side of a VS Live Share session. The initial fix added in v0.19.0 for VS Live Share wasn't sufficient. (Issue 605, 1024)
    • Stop requiring to install legacy tools when the language server is used. (Issue 51)
    • โšก๏ธ Update gopls if the existing version in the system is older than the minimum required version when the extension enables gopls automatically. (Issue 938)
    • ๐Ÿ‘‰ Show language server start progress and allow only one outstanding language server restart request. (Issue 1011)
    • ๐Ÿ›  Fixed a gocode-gomod installation bug that caused to ignore GOBIN setting. (CL 275877)
    • Marked settings that are not applicable when using the language server. (Issue 155)

    Code Health

    • ๐Ÿ—„ Deprecated unused settings such as go.overwriteGoplsMiddleware and marked deprecated settings.
    • ๐Ÿ‘Œ Improved stability of debug functionality tests on windows.
    • ๐Ÿ‘Œ Improve the automated gopls issue template message. It includes the extension name and version.
    • Prompt users to file an issue for feedback when they choose to opt out of gopls.
    • ๐Ÿ“ฆ CI test workflow now runs vsce package to detect packaging errors early.

    Thanks

    Thank you for your contribution, @hyangah, @suzmue, and @programmer04!