commit | 3cba53c3f7b72c3d222b8dd5d5349aa99ac7cf0f | [log] [tgz] |
---|---|---|
author | Suzy Mueller <suzmue@golang.org> | Fri Jan 21 13:29:11 2022 -0700 |
committer | Suzy Mueller <suzmue@golang.org> | Fri Jan 21 13:29:11 2022 -0700 |
tree | bb3fffcd2f5ce07c61e8133d2bab6d943cf609f3 | |
parent | 30087b87d7af6c64bd7568d2985886ab12658a86 [diff] | |
parent | 8a5263d5a559ecdf7dc36786ac9d051ffb8bb642 [diff] |
[release] prepare v0.31.0 release 8a5263d5 package.json: update gopls settings for v0.7.5 e79a4888 test: fix default go.delveConfig test ffc92388 tools: fix gopls update tool generation 5bfc2aad build/all.bash: fix jq query to change hideSystemGoroutines default 0c7a9c47 CHANGELOG.md: Update CHANGELOG.md for release 4ef63793 src/goToolsInformation: update latest gopls prerelease version aae8322f package.json: use defaults from package.json for delveConfig 4667012e package.json: change go template file language id to gotmpl 7cabf787 src/goBrowsePackage.ts: use async function syntax 5a7c4f7c build,docs: remove references to all.bash setup_env 9fce485a package.json: pin direct dependencies a22f335d docs/contributing.md: encourage npm ci instead of npm install 3e640751 test: use @vscode/test-electron instead of vscode-test c2fcb4e2 go.mod: update imports to latest versions a0af37bd test: increase sleep time to wait for dlv cleanup b65133ff goDebug.test.ts: stat for output file multiple times 62db19c5 goDebug.test.ts: update switch goroutine test d2c9293e tools/generate.go: fix default value formatting for []string types 85f1be0e test: disable should cleanup when stopped 7abeb7a4 package.json: use 'console' enums consistent with other extensions 1fa51bce package.json: add description of 'console' and 'asRoot' 8d2a31fd src/goDebugFactory,goDebugConfiguration: adjust env computation a807c61f src/goDebugFactory: add support for `asRoot` property c4f5c255 test: disable switch goroutine tests c132833c src/goDebugConfiguration: use 'dlv' instead of 'dlv-dap' binary 094f345c debugging.md: note that 'go build', not 'go run' must be used with dlv 943ff118 src/goDebugFactory: support integrated/external console f4e51542 src/goDebugFactory: start dlv-dap lazily cd0a4628 src/goDebugFactory: use --client-addr when console=integrated/external f4aa041a debugging.md: add a note about using --continue with remote server f4f07b09 test: remove unused dlvDapSkipsEnabled variable 143b6d9b workflow: enable tests with go1.18beta1 691e15fc src/goDebugFactory: improve start-up and session fail messages for remote dlv-dap 25af90d7 src/goTest: fix output for subtests 944fbf71 src/goTest: don't resolve tests in virtual files 1dc72ced test: enable substitutePath tests for remote dlv-dap efdf4bf5 test: enable disconnect remote dlv-dap test bccac790 test: enable remote set breakpoints tests 6de4255b test: enable basic remote tests 482381f1 test: enable unknown request test 13959520 README.md: update debugging video link 08dacee1 src/goStatus: assign id/name to each status bar item 8c3683f9 README: add link to GopherCon Debugging Treasure Hunt presentation e81d4409 package.json: start v0.31.0 dev f5e6bec7 package.json: update gopls settings Change-Id: Ic032bf88783beea865c24398a3582b1b133f02a0
The VS Code Go extension provides rich language support for the Go programming language.
📣 Remote attach debugging is now available via Delve's native DAP implementation with Delve v1.7.3 or newer. We plan to enable this as the default in early 2022 to enhance remote debugging with the same debugging features that are already in use for local debugging. We recommend switching your remote attach configurations in launch.json
to use "debugAdapter":"dlv-dap"
now to verify that this works for you. Please file a new issue if you encounter any problems.
📣📣 Watch Debugging Treasure Hunt from GopherCon 2021 for a fun take on a debugging demo with VS Code Go and Delve DAP.
Welcome! 👋🏻
Whether you are new to Go or an experienced Go developer, we hope this extension fits your needs and enhances your development experience.
You are ready to Go :-) 🎉🎉🎉
Please be sure to learn more about the many features of this extension, as well as how to customize them. Take a look at Troubleshooting and Help for further guidance.
If you are new to Go, this article provides the overview on Go code organization and basic go
commands. Watch “Getting started with VS Code Go” for an explanation of how to build your first Go application using VS Code Go.
This extension provides many features, including IntelliSense, code navigation, and code editing support. It also shows diagnostics as you work and provides enhanced support for testing and debugging your programs. See the full feature breakdown for more details and to learn how to tune its behavior.
In addition to integrated editing features, the extension provides several commands for working with Go files. You can access any of these by opening the Command Palette (Ctrl+Shift+P
on Linux/Windows and Cmd+Shift+P
on Mac), and then typing in the command name. See the full list of commands provided by this extension.
⚠️ Note: the default syntax highlighting for Go files is provided by a TextMate rule embedded in VS Code, not by this extension.
The extension uses a few command-line tools developed by the Go community. In particular, go
, gopls
, and dlv
must be installed for this extension to work correctly. See the tools documentation for a complete list of tools the extension depends on.
In order to locate these command-line tools, the extension searches GOPATH/bin
and directories specified in the PATH
environment variable (or Path
on Windows) with which the VS Code process has started. If the tools are not found, the extension will prompt you to install the missing tools and show the “⚠️ Analysis Tools Missing” warning in the bottom right corner. Please install them by responding to the warning notification, or by manually running the Go: Install/Update Tools
command.
Go modules are how Go manages dependencies in recent versions of Go. Modules replace the GOPATH
-based approach to specifying which source files are used in a given build, and they are the default build mode in go1.16+. While this extension continues to support both Go modules and GOPATH
modes, we highly recommend Go development in module mode. If you are working on existing projects, please consider migrating to modules.
Unlike the traditional GOPATH
mode, module mode does not require the workspace to be located under GOPATH
nor to use a specific structure. A module is defined by a directory tree of Go source files with a go.mod
file in the tree's root directory.
Your project may involve one or more modules. If you are working with multiple modules or uncommon project layouts, you will need to configure your workspace by using Workspace Folders. Please see this documentation about supported workspace layouts.
The extension needs no configuration and should work out of the box. However, you may wish to adjust settings to customize its behavior. Please see the settings documentation for a comprehensive list of settings. See advanced topics for further customizations and unique use cases.
If the extension isn't working as you expect, you can take a look at our troubleshooting guides. There is one for general troubleshooting, and another specifically for troubleshooting the debugging feature.
If the troubleshooting guides did not resolve the issue, please reach out to us by filing an issue, starting a GitHub discussion, or by asking a question on Stack Overflow.
Also, you can take a look at go.dev/learn and golang.org/help for more general guidance on using Go.
If you'd like to get early access to new features and bug fixes, you can use the nightly build of this extension. Learn how to install it in by reading the Go Nightly documentation.
We welcome your contributions and thank you for working to improve the Go development experience in VS Code. If you would like to help work on the VS Code Go extension, please see our contribution guide. It explains how to build and run the extension locally, and describes the process of sending a contribution.
This project follows the Go Community Code of Conduct. If you encounter a conduct-related issue, please mail conduct@golang.org.