From a09fc174a7ecbbcec76785b2b087b4afea32f190 Mon Sep 17 00:00:00 2001 From: Hyang-Ah Hana Kim Date: Sat, 16 May 2020 18:26:26 -0400 Subject: [PATCH 1/6] README: repo migration announcement (#3237) --- .github/ISSUE_TEMPLATE/bug_report.md | 15 +++++------ .github/ISSUE_TEMPLATE/config.yml | 8 ++++++ .github/ISSUE_TEMPLATE/feature_request.md | 22 --------------- .../pull_request_template.md | 6 ++--- README.md | 27 ++++++++++++++++++- 5 files changed, 43 insertions(+), 35 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE/config.yml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 2e9768d5c2..42496d0adb 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -8,14 +8,13 @@ assignees: '' --- Please direct general questions to: -- [Gitter](https://gitter.im/Microsoft/vscode-go) - [Gophers Slack](https://invite.slack.golangbridge.org/messages/vscode) -Please review the [Wiki](https://github.com/microsoft/vscode-go/wiki) before filing an issue. +Please review the [documentation](https://github.com/golang/vscode-go/tree/master/docs) before filing an issue. Helpful pages include: -- [GOPATH](https://github.com/Microsoft/vscode-go/wiki/GOPATH-in-the-VS-Code-Go-extension) -- [Module Support](https://github.com/microsoft/vscode-go/wiki/Go-modules-support-in-Visual-Studio-Code) -- [Debugging](https://github.com/Microsoft/vscode-go/wiki/Debugging-Go-code-using-VS-Code) +- [GOPATH](https://github.com/golang/vscode-go/tree/master/docs/GOPATH-in-the-VS-Code-Go-extension.md) +- [Module Support](https://github.com/golang/vscode-go/tree/master/docs/Go-modules-support-in-Visual-Studio-Code.md) +- [Debugging](https://github.com/golang/vscode-go/tree/master/docs/Debugging-Go-code-using-VS-Code.md) - Set "trace": "log" and share the resulting logs in the debug console when logging an issue. Please answer these questions before submitting your issue. Thanks! @@ -27,13 +26,13 @@ Please answer these questions before submitting your issue. Thanks! - - Check your installed extensions to get the version of the VS Code Go extension - -- Run `go env GOOS GOARCH` to get the operating system and processor architecture details - - +- Run `go env` to get the go development environment details + - ### Share the Go related settings you have added/edited Run `Preferences: Open Settings (JSON)` command to open your settings.json file. -Share all the settings with the `go.` or `["go"]` prefixes. +Share all the settings with the `go.` or `["go"]` or `gopls` prefixes. ### Describe the bug A clear and concise description of what the bug. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000000..f6678015da --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: true +contact_links: + - name: Question + url: https://invite.slack.golangbridge.org/ + about: Ask and answer questions in the #vscode Gopher slack channel + - name: Feature Request + url: https://github.com/golang/vscode-go/issues/new?template=feature_request.md + about: Suggest ideas for improvement in the new repo \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index b99614c179..0000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: '' -labels: '' -assignees: '' - ---- - -If you have a question, please ask it on https://gitter.im/Microsoft/vscode-go or on the VSCode channel in Gophers Slack(https://invite.slack.golangbridge.org/) - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md index ec82fddf0f..391b13ac3f 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -1,4 +1,2 @@ - -Closes ISSUE #NUMBER (identify the issue associated with this PR) - -**Describe your PR** +We are moving to a new home! +Please send your Pull Request to https://github.com/golang/vscode-go diff --git a/README.md b/README.md index afed2c2715..91d5922e42 100644 --- a/README.md +++ b/README.md @@ -4,10 +4,11 @@ This extension adds rich language support for the [Go language](https://golang.org/) to VS Code. -Read the [Changelog](https://github.com/Microsoft/vscode-go/blob/master/CHANGELOG.md) to know what has changed over the last few versions of this extension. +> Read the [We are moving!](#we-are-moving!) section to learn about the new home for this extension. ## Table of Contents +- [We are moving!](#we-are-moving!) - [Language Features](#language-features) - [IntelliSense](#intellisense) - [Code Navigation](#code-navigation) @@ -32,6 +33,30 @@ Read the [Changelog](https://github.com/Microsoft/vscode-go/blob/master/CHANGELO - [Code of Conduct](#code-of-conduct) - [License](#license) +## We are moving! + +🏡 🚚 🏡 + +Our new home will be https://github.com/golang/vscode-go. + +As the extension grows in features and popularity, it requires more maintenance and support. +Since the introduction of Go modules, we have been collaborating with the Go team, particularly on support +for `gopls`, the [Go language server](https://golang.org/s/gopls/README.md). More exciting work is on the horizon with the +[debug adapter service](https://github.com/go-delve/delve/tree/master/service/dap) in delve which will help +improve the debugging experience. + +Moving to the [golang GitHub organization](https://github.com/golang) brings us closer to the home of other tools +and libraries that the Go extension depends on. We hope this will help keep the extension tightly coupled with the Go +language and encourage more Gophers to get involved. + +As of May 2020, this repository is effectively frozen. We are currently focused on migration tasks, such as resolving +and transferring open issues and PRs and updating documentation. Critical bug fixes and PRs related +to migration will still be accepted. You can open new feature requests, bug reports, and PRs in +the new repository: https://github.com/golang/vscode-go. Please follow the progress of the migration work +[here](http://TODO). + +For questions and discussion, please join us in the [`#vscode-dev`](https://gophers.slack.com/messages/vscode-dev) Gophers Slack channel. + ## Language Features ### IntelliSense From 58988de7e2afb4c9369d5f8b2af2fd55f0bf29bb Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 16 May 2020 15:42:11 -0700 Subject: [PATCH 2/6] Replace gitter with slack as communication channel --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 91d5922e42..4e0bce0de5 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Go for Visual Studio Code -[![Join the chat at https://gitter.im/Microsoft/vscode-go](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/Microsoft/vscode-go?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://travis-ci.org/Microsoft/vscode-go.svg?branch=master)](https://travis-ci.org/Microsoft/vscode-go) +[![Slack](https://img.shields.io/badge/slack-gophers-green.svg?style=flat)](https://gophers.slack.com/messages/vscode/) [![Build Status](https://travis-ci.org/Microsoft/vscode-go.svg?branch=master)](https://travis-ci.org/Microsoft/vscode-go) This extension adds rich language support for the [Go language](https://golang.org/) to VS Code. From ed66a71864023996a5f0a658adb3ed31263f770f Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 16 May 2020 15:42:38 -0700 Subject: [PATCH 3/6] Add the changelog link that got removed in a prior commit --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 4e0bce0de5..141594ac88 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,8 @@ This extension adds rich language support for the [Go language](https://golang.org/) to VS Code. +See the [Changelog](https://github.com/Microsoft/vscode-go/blob/master/CHANGELOG.md) to know what has changed over the last few versions of this extension. + > Read the [We are moving!](#we-are-moving!) section to learn about the new home for this extension. ## Table of Contents From 11b3c40173a8861547ace0beaf7141a894822521 Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 16 May 2020 15:48:14 -0700 Subject: [PATCH 4/6] Replace wiki links with docs links --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 141594ac88..fea5ac26fa 100644 --- a/README.md +++ b/README.md @@ -114,11 +114,11 @@ This extension requires the `go` tools. See [Go's installation guide](https://go Install and open [Visual Studio Code](https://code.visualstudio.com). Press `Ctrl+Shift+X` or `Cmd+Shift+X` to open the Extensions pane. Find and install the Go extension. You can also install the extension from the [Marketplace](https://marketplace.visualstudio.com/items?itemName=ms-vscode.Go). Open any `.go` file in VS Code. The extension is now activated. -This extension uses a set of Go tools to provide the various rich features. These tools are installed in your GOPATH by default. If you wish to have these tools in a separate location, provide the desired location in the setting `go.toolsGopath`. Read more about this and the tools at [Go tools that the Go extension depends on](https://github.com/Microsoft/vscode-go/wiki/Go-tools-that-the-Go-extension-depends-on). +This extension uses a set of Go tools to provide the various rich features. These tools are installed in your GOPATH by default. If you wish to have these tools in a separate location, provide the desired location in the setting `go.toolsGopath`. Read more about this and the tools at [Go tools that the Go extension depends on](https://github.com/microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md). You will see `Analysis Tools Missing` in the bottom right, clicking this will offer to install all of the dependent Go tools. You can also run the [command](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette) `Go: Install/Update tools` to install/update the same. You need to have git installed for these tool installations to work. -**Note 1**: Read [GOPATH in the VS Code Go extension](https://github.com/Microsoft/vscode-go/wiki/GOPATH-in-the-VS-Code-Go-extension) to learn about the different ways you can get the extension to set GOPATH. +**Note 1**: Read [GOPATH in the VS Code Go extension](https://github.com/Microsoft/vscode-go/blob/master/docs/GOPATH-in-the-VS-Code-Go-extension.md) to learn about the different ways you can get the extension to set GOPATH. **Note 2**: The `Format on save` feature has a timeout of 750ms after which the formatting is aborted. You can change this timeout using the setting `editor.formatOnSaveTimeout`. This feature gets disabled when you have enabled the `Auto Save` feature in Visual Studio Code. @@ -126,12 +126,12 @@ You will see `Analysis Tools Missing` in the bottom right, clicking this will of ### Customizing the Go extension features -The Go extension is ready to use on the get go. If you want to customize the features, you can edit the settings in your User or Workspace settings. Read [All Settings & Commands in Visual Studio Code Go extension](https://github.com/Microsoft/vscode-go/wiki/All-Settings-&-Commands-in-Visual-Studio-Code-Go-extension) for the full list of options and their descriptions. +The Go extension is ready to use on the get go. If you want to customize the features, you can edit the settings in your User or Workspace settings. Read [All Settings & Commands in Visual Studio Code Go extension](https://github.com/Microsoft/vscode-go/blob/master/docs/All-Settings-&-Commands-in-Visual-Studio-Code-Go-extension.md) for the full list of options and their descriptions. ### Go Language Server -The Go extension uses a host of [Go tools](https://github.com/Microsoft/vscode-go/wiki/Go-tools-that-the-Go-extension-depends-on) to provide the various language features. An alternative is to use a single language server that provides the same features using the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) +The Go extension uses a host of [Go tools](https://github.com/Microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md) to provide the various language features. An alternative is to use a single language server that provides the same features using the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) Previously, we added support to use `go-langserver`, the [language server from Sourcegraph](https://github.com/sourcegraph/go-langserver). There is no active development for it anymore and it doesn't support Go modules. Therefore, we are now switching to use `gopls`, the [language server from Google](https://github.com/golang/go/wiki/gopls) which is currently in active development. @@ -236,7 +236,7 @@ A few of these are available in the editor context menu as an experimental featu ### _Optional_: Debugging -To use the debugger, you must currently manually [install delve](https://github.com/derekparker/delve/tree/master/Documentation/installation). For more read [Debugging Go Code Using VS Code](https://github.com/Microsoft/vscode-go/wiki/Debugging-Go-code-using-VS-Code). +To use the debugger, you must currently manually [install delve](https://github.com/derekparker/delve/tree/master/Documentation/installation). For more read [Debugging Go Code Using VS Code](https://github.com/microsoft/vscode-go/blob/master/docs/Debugging-Go-code-using-VS-Code.md). #### Debugging in WSL @@ -244,24 +244,24 @@ If using WSL on Windows, you will need the WSL 2 Linux kernel. See [WSL 2 Insta #### Remote Debugging -To remote debug using VS Code, read [Remote Debugging](https://github.com/Microsoft/vscode-go/wiki/Debugging-Go-code-using-VS-Code#remote-debugging). +To remote debug using VS Code, read [Remote Debugging](https://github.com/microsoft/vscode-go/blob/master/docs/Debugging-Go-code-using-VS-Code.md#remote-debugging). ## Install or update all dependencies -To quickly get all dependencies installed (or updated) see the [Go Tools wiki page](https://github.com/Microsoft/vscode-go/wiki/Go-tools-that-the-Go-extension-depends-on). +To quickly get all dependencies installed (or updated) see the [Go Tools wiki page](https://github.com/microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md). ## Building and Debugging the Extension You can set up a development environment for debugging the extension during extension development. -Read more at [Building, Debugging and Sideloading the extension in Visual Studio Code](https://github.com/Microsoft/vscode-go/wiki/Building,-Debugging-and-Sideloading-the-extension-in-Visual-Studio-Code). +Read more at [Building, Debugging and Sideloading the extension in Visual Studio Code](https://github.com/microsoft/vscode-go/blob/master/docs/Building,-Debugging-and-Sideloading-the-extension-in-Visual-Studio-Code.md). ## Tools this extension depends on -This extension uses a host of Go tools to provide the various rich features. These tools are installed in your GOPATH by default. If you wish to have the extension use a separate GOPATH for its tools, provide the desired location in the setting `go.toolsGopath`. Read more about this and the tools at [Go tools that the Go extension depends on](https://github.com/Microsoft/vscode-go/wiki/Go-tools-that-the-Go-extension-depends-on). +This extension uses a host of Go tools to provide the various rich features. These tools are installed in your GOPATH by default. If you wish to have the extension use a separate GOPATH for its tools, provide the desired location in the setting `go.toolsGopath`. Read more about this and the tools at [Go tools that the Go extension depends on](https://github.com/microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md). ## Frequently Asked Questions (FAQ) -Please see our wiki on [Frequently Asked Questions](https://github.com/Microsoft/vscode-go/wiki/Go-with-VS-Code-FAQ-and-Troubleshooting) to get answers to your questions or get started with troubleshooting. +Please see our wiki on [Frequently Asked Questions](https://github.com/microsoft/vscode-go/blob/master/docs/Go-with-VS-Code-FAQ-and-Troubleshooting.md) to get answers to your questions or get started with troubleshooting. ## Contributing From c2cc0e61304aa533c4ec6f09a1db9fd66e1ffbb4 Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 16 May 2020 15:49:37 -0700 Subject: [PATCH 5/6] Remove references to go-langserver support in docs --- README.md | 11 +++++------ docs/Go-tools-that-the-Go-extension-depends-on.md | 1 - 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index fea5ac26fa..e0e6fb3573 100644 --- a/README.md +++ b/README.md @@ -131,14 +131,13 @@ The Go extension is ready to use on the get go. If you want to customize the fea ### Go Language Server -The Go extension uses a host of [Go tools](https://github.com/Microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md) to provide the various language features. An alternative is to use a single language server that provides the same features using the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/) +The Go extension uses a host of [Go tools](https://github.com/Microsoft/vscode-go/blob/master/docs/Go-tools-that-the-Go-extension-depends-on.md) to provide the various language features. An alternative is to use a single language server that provides the same features using the [Language Server Protocol](https://microsoft.github.io/language-server-protocol/). -Previously, we added support to use `go-langserver`, the [language server from Sourcegraph](https://github.com/sourcegraph/go-langserver). There is no active development for it anymore and it doesn't support Go modules. Therefore, we are now switching to use `gopls`, the [language server from Google](https://github.com/golang/go/wiki/gopls) which is currently in active development. +[`gopls`](https://golang.org/s/gopls/README.md) from Google is the official language server for +the Go language and is currently in active development. You can choose to use this by setting +`go.useLanguageServer` to `true` in your settings. -- If you are already using the language server from Sourcegraph, you can continue to use it as long as you are not using Go modules. We do suggest you to move to using `gopls` though. - - To do so, delete the `go-langserver` binary/executable in your machine and this extension will prompt you to install `gopls` after a reload of the VS Code window. -- If you are working on a project that uses Go modules, you will be prompted to use the language server from Google as it provides much better support for Go modules. -- If you have never used language server before, and now opt to use it, you will be prompted to install and use the language server from Google as long as you are using a Go version > 1.10. +If you are working on a project that uses Go modules, you will be prompted to use the language server as it provides much better support for Go modules. > Note: The language server from Google supports Go version > 1.10 only diff --git a/docs/Go-tools-that-the-Go-extension-depends-on.md b/docs/Go-tools-that-the-Go-extension-depends-on.md index dcc1c16e9e..d07029a999 100644 --- a/docs/Go-tools-that-the-Go-extension-depends-on.md +++ b/docs/Go-tools-that-the-Go-extension-depends-on.md @@ -28,7 +28,6 @@ There are other features of this extension which you most probably wouldn't be u - [impl](https://github.com/josharian/impl) for generating stubs for interfaces - [gotype-live](https://github.com/tylerb/gotype-live) for providing diagnostics as you type - [gotests](https://github.com/cweill/gotests/) for generating unit tests -- [go-langserver](https://github.com/sourcegraph/go-langserver) for using the Go language server by Sourcegraph - [fillstruct](https://github.com/davidrjenni/reftools/tree/master/cmd/fillstruct) for filling a struct literal with default values You can install all these tools at once by running the command `Go: Install/Update Tools`. The same command can be used to keep the tools up to date as well as to re-compile in case you change the version of Go being used. From ecd5824897737a56973c531666ec46ef44702b7b Mon Sep 17 00:00:00 2001 From: Ramya Achutha Rao Date: Sat, 16 May 2020 15:53:37 -0700 Subject: [PATCH 6/6] Remove note on migration process as we don't have an issue yet. --- README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/README.md b/README.md index e0e6fb3573..b6a51f4713 100644 --- a/README.md +++ b/README.md @@ -54,8 +54,7 @@ language and encourage more Gophers to get involved. As of May 2020, this repository is effectively frozen. We are currently focused on migration tasks, such as resolving and transferring open issues and PRs and updating documentation. Critical bug fixes and PRs related to migration will still be accepted. You can open new feature requests, bug reports, and PRs in -the new repository: https://github.com/golang/vscode-go. Please follow the progress of the migration work -[here](http://TODO). +the new repository: https://github.com/golang/vscode-go. For questions and discussion, please join us in the [`#vscode-dev`](https://gophers.slack.com/messages/vscode-dev) Gophers Slack channel.