Skip to content

Releases: golang/vscode-go

Release 0.40.0

16 Nov 18:37
Compare
Choose a tag to compare

v0.40.0 - 16 Nov, 2023

This extension uses Go Telemetry to gather insights about the performance and stability of the extension and the language server it employs.

By default, Telemetry uploading is disabled, but starting from this version, a small number of users will be prompted to enable it.
Users can uploading of telemetry data by either responding to the prompt or running the following command:

go run golang.org/x/telemetry/cmd/gotelemetry@latest on

Once uploading is enabled, the data will be sent to https://telemetry.go.dev each week.

You can find more information about this process at https://telemetry.go.dev/privacy and in the gopls v0.14 release notes.

A comprehensive list of changes can be found in the complete commit history.

Changes

  • In this release, we have removed legacy language feature providers that were supported by outdated tools. As a result, features such as code completion, navigation, documentation, diagnostics, and refactoring will only function when the language server (gopls) is enabled. (Issue 2799)

  • The "Go: Fill struct" command has been retired. The same functionality is provided by gopls as a Code Action for refactoring. You can refer to the screenshot for details. (Issue 2107))

  • The "Go: Extract to function" and "Go: Extract to variable" commands are no longer needed, as they have been replaced by Code Actions provided by gopls. (Issue 2862)

  • The "buildFlags" attribute for Go launch configuration now accepts more than one string. If using delve at v1.22.2 or newer, this list is passed directly to delve. This should help with bugs related to parsing the string of buildFlags, such as in Issue 1831 and Issue 1027. (Issue 3009)

  • The "Go: Toggle Hide System Goroutines" command makes it easier to switch between showing / hiding the system goroutines in the callstack view. This command is also available in the callstack context menu. The default setting can be updated by updating
    "hideSystemGoroutines" in either the launch.json or in the "go.delveConfig" setting. (Issue 1797)

Fixes

  • Environment variables may now be used in additional configuration settings. Environment variable references like ${env:VAR} in the go.toolsEnvVars setting (Issue 2680) and the go.goroot setting
    (Issue 3006) are now correctly substituted. Patterns like ${VAR} inside environment files (go.testEnvFile) can be used to reference other environment variables as well. (Issue 1902)

Compatibilities

  • This extension version requires VS Code 1.75 (January 2023 version) or newer. The README.md provides a list of VS Code and Go version requirements.
  • For tools installation managed by the extension, you need go1.18 or a newer version. (Issue 2898)
  • The extension has been tested with gopls v0.14 and delve v1.21.

Thanks

Thank you for your contribution @n1lesh, @suzmue, @hyangah!

Release 0.40.0-rc.1

09 Nov 17:12
Compare
Choose a tag to compare
Release 0.40.0-rc.1 Pre-release
Pre-release

Release 0.39.1

17 Jul 14:54
Compare
Choose a tag to compare

v0.39.1 - 17 Jul, 2023

This is a point release to update the link for the upcoming Go developer survey.
A list of changes can be found in the full commit history.

Release 0.39.1-rc.1

17 Jul 13:53
Compare
Choose a tag to compare
Release 0.39.1-rc.1 Pre-release
Pre-release
[release] prepare v0.39.1 release

3eafcb48 CHANGELOG.md: update for v0.39.1
9e7f8580 src/goDeveloperSurvey: update survey link and dates
75770e1f package.json: add gopls.start_debugging
5f5a8752 build/Dockerfile: skip global typescript, vsce installation
0de0e113 build: remove unused, outdated cloudbuild config
3b2da9a1 package.json: prepare for the v0.40.0 dev cycle
fb1dce6d package.json: align snippetsPreventQuickSuggestions with VS Code default

Change-Id: I9e1f5d40b5128c4c829850139aef92d26c18907f

Release 0.39.0

13 Jun 17:33
Compare
Choose a tag to compare

v0.39.0 - 12 Jun, 2023

We are in the process of removing legacy language features that were replaced by gopls since early 2021. The versions released after September 2023 will no longer offer features like code completion, navigation, documentation, formatting, and refactoring if the language server is disabled. In this release, we are showing deprecation notification messages if you are using the legacy language features. (Issue 2799)

A list of all issues and changes can be found in the v0.39.0 milestone and commit history.

Changes

  • Added the go.showWelcome setting that controls whether to show the Welcome page. (PR 2704)

  • Report when go.toolsManagement.go setting is invalid and ignored. (Issue 2753)

  • Removed go.languageServerExperimentalFeatures setting which was deprecated in v0.21.0. (Issue 1109)

  • Deprecated settings that affect only legacy language features and tools. They will be removed in the release after September 2023. (Issue 2799)

  • "Go: Update/Install Tools" will install the latest version of golangci-lint instead of a vetted, pinned version. The extension chose to pin the versions of third-party go tools it installs in order to manage version skew and reduce security risks. However, golangci-lint is frequently released and its community is active enough to handle compatibility/security issues. We decided to install the latest version by default. (Issue 2763, 2485)

  • Debug: show error when the process picker is hidden (CL 499601). To learn more about the process picker in debug, see Launch.json "processId" documentation.

  • Debug: args attribute now accepts a string typed value. The argument string is parsed into word arguments with rules similar to bash except that there is no shell expansion. This change allows to use vscode variables like ${input:args}. (Issue 2621)

  • The extension no longer caches PATH environment variable, which helps interoperate with extensions that modify PATH. (Issue 2617)

  • Updated LSP to v3.17.3 and VS Code language client library to v8.1.0. This includes fixes for request ordering issues around full document sync and bugs around shutdown.

  • Replaced the extension user survey link to https://go.dev/s/ide-hats-survey. (CL 497536)

  • Updated settings to sync with [email protected].

  • Third-party go tools dependencies: use [email protected] and [email protected] and install [email protected] when building with go1.18 or older.

Delopment process updates

Documentation

Thanks

Release 0.39.0-rc.1

08 Jun 21:46
Compare
Choose a tag to compare
Release 0.39.0-rc.1 Pre-release
Pre-release
  • Milestone: https://github.com/golang/vscode-go/issues?q=milestone%3Av0.39.0

  • Commits: v0.38.0...v0.39.0-rc.1

  • How to test prerelease

    • Download the .vsix file from this Releases page.
    • Navigate to the Extensions view in VS Code (Ctrl+Shift+X). Click on the "..." in the top-right corner, select "Install from VSIX", and select the .vsix file you downloaded. Alternatively, you can run code --install-extension Go-latest.vsix or open the Command Palette and run the "Extensions: Install from VSIX..." command.
    • If prompted, reload VS Code.

Release 0.38.0

28 Feb 17:56
Compare
Choose a tag to compare

v0.38.0 - 28 Feb, 2023

This release adds default go tasks to help build and test your Go projects.

A list of all issues and changes can be found in the v0.38.0 milestone and commit history.

Changes

  • Added default go task provider (Issue 194)
  • Updated pinned golangci-lint version to fix memory leak issue with Go 1.20 (Issue 2654)
  • gopls releases will now have a staged rollout in VS Code (CL 468497)
  • Added extension keywords to make this extension easier to find in the VS Code Extension Marketplace (Issue 2657)
  • Deleted the broken references codelens code (Issue 2519)
  • Added support to handle missing variables in legacy debug adapter gracefully (Issue 2397)

Development process updates

  • Upgraded esbuild to support s390x (Issue 2668)
  • Use --profile-temp for testing with clean env (Issue 2458)

Thanks

Thank you for your contribution, @ankon, @hyangah, @jamalc, and @suzmue!

Release 0.38.0-rc.3

24 Feb 19:05
Compare
Choose a tag to compare
Release 0.38.0-rc.3 Pre-release
Pre-release
.github/workflows: fix release.yml to use npx vsce for packaging

Updates golang/vscode-go#2676

Change-Id: Idba55e5976bf85e587a4cef04773c15114446087
Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/470975
Run-TryBot: Hyang-Ah Hana Kim <[email protected]>
TryBot-Result: kokoro <[email protected]>
Reviewed-by: Suzy Mueller <[email protected]>
(cherry picked from commit dde5592e3d5a3825cc9a68b7d7268c672d4c319a)
Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/471036
Run-TryBot: Suzy Mueller <[email protected]>
Reviewed-by: Jamal Carvalho <[email protected]>

Release 0.37.1

17 Jan 21:41
Compare
Choose a tag to compare

v0.37.1 - 17 Jan, 2023

Fixes

  • Fixed spurious file creation bugs on branch switches. (Issue 2570)

Changes

  • Added promotion for the annual Go developer survey (2023 Winter).

Thanks

Thank you for your contribution, @suzmue!

Release 0.37.1-rc.2

17 Jan 21:31
Compare
Choose a tag to compare
Release 0.37.1-rc.2 Pre-release
Pre-release
[release] src/goDeveloperSurvey: drop extra " from message

Change-Id: I3badc68ee7b9c983ee70a836173accc794d4c913
Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/462475
TryBot-Result: kokoro <[email protected]>
Run-TryBot: Hyang-Ah Hana Kim <[email protected]>
Reviewed-by: Robert Findley <[email protected]>