vscode-go v0.16.0 Release Notes
Release Date: 2020-08-03 // almost 4 years ago-
v0.16.0 - 3rd Aug, 2020
This version requires VS Code 1.46+.
โก๏ธ Older versions of VS Code will not receive updates any more.
๐ New Features
- ๐ Users can select/install a different version of Go with
Go: Choose Go Environment
command.
0๏ธโฃ When clicking theGo
status bar that displays the currently active Go version, users will be prompted with the list of Go versions installed locally or available for download. This feature was built based on thegolang.org/dl
tools. The selected Go version applies to the workspace, takes precedence over the system default or the"go.goroot"
and"go.alternateTools"
settings, and persists across sessions. You can clear the choice by selecting theClear Selection
item.
(Issue 253) - ๐ When the Go version changes, the extension prepends
$GOROOT/bin
to thePATH
orPath
environment variable which then applies the change to the integrated terminal windows. - ๐ This version includes an experimental version of the new Debug Adapter that uses Delve's native DAP implementation. It currently supports
launch
type requests indebug
ortest
mode. This is still in the early stages and requiresdlv
built from its unreleased, master branch. Subscribe to golang/vscode-go#23 for updates.
โจ Enhancement
- Bundles the extension using webpack, which reduced the extension size (4.7MB -> 1MB) and the extension loading overhead (3.4K files -> 3 files) (Issue 53).
- ๐
Go: Apply Cover Profile
applies code coverage for multiple packages (CL 238697). We fixed bugs in processing coverage profiles on Windows. - Suggests the official Go download page when no
go
tool is found. - Utilizes the
GOMODCACHE
environment variable, introduced in Go 1.15. - Prevents multiple debug sessions from launching (Issue 109).
- โ
Streams test output when tests run with the
-v
option.
This feature requires 1.14 or newer versions of Go (Issue 316). - ๐ Sets
additionalProperties
tofalse
for the settings that don't expect more properties. This allows VS Code to handle these settings better in its new settings GUI (Issue 284). - ๐ง
Go: Locate Configured Go Tools
includesgo env
results (Issue 195). - 0๏ธโฃ Avoids prompting users to switch the default format tool in modules mode if users enable the language server.
๐ Fixed
- ๐ Fixed the
PATH
environment variable adjustment when users use a wrapper as an alternate tool forgo
(CL 239697). - ๐ Fixed a bug in test output processing, which prevented VS code from linking test log messages with locations in the source file.
- ๐ Fixed a
gocode-gomod
installation bug whenGOPATH
includes multiple directories (Issue 368). - Avoids attempting to kill already terminated processes (Issue 334).
- ๐ Fixed
godef
to locate standard packages correctly by passing theGOROOT
environment variable. - ๐ Fixed a
golangci-lint
integration bug that prevented displaying the lint results correctly when linters likenolintlint
are enabled (Issue 411). - ๐ Fixed lost test function name arguments when running
Go: Test Previous
(Issue 269).
Code Health
- โ Many enhancements to improve test reliability and test coverage were made during this dev cycle.
- ๐ TryBot is enabled, and the test results are posted to Gerrit CL. Currently, only the internal team members can see the details of the test results, but we will continue working to make them public.
- ๐ Windows tests are now fixed and enabled in GitHub Action-based CI.
- ๐จ Refactored code shared by the extension and the debug adapters to prevent accidental debug adapter breakages.
- โก๏ธ Updated
json-rpc2
andlodash
to address vulnerability reports fromnpm audit
.
Thanks
Thank you for your contribution, fujimoto kyosuke, OneOfOne, Aditya Thakral, Oleg Butuzov, Rebecca Stambler, Peter Weinberger, Brayden Cloud, Eli Bendersky, Robert Findley, Hana Kim!
- ๐ Users can select/install a different version of Go with