Skip to content

Commit 1964a4e

Browse files
hyangahsuzmue
authored andcommitted
src/welcome,README: update welcome docs to discuss telemetry
Change-Id: I2332a946807c05e0dbc7768b7403d7309d03bb1b Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/540035 Run-TryBot: Suzy Mueller <[email protected]> Commit-Queue: Suzy Mueller <[email protected]> TryBot-Result: kokoro <[email protected]> Reviewed-by: Suzy Mueller <[email protected]> Reviewed-by: Robert Findley <[email protected]>
1 parent 4ea9b2d commit 1964a4e

File tree

4 files changed

+67
-37
lines changed

4 files changed

+67
-37
lines changed

README.md

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,50 @@ If you'd like to get early access to new features and bug fixes, you can use the
134134
nightly build of this extension. Learn how to install it in by reading the
135135
[Go Nightly documentation](https://github.com/golang/vscode-go/wiki/nightly).
136136

137+
## Telemetry
138+
139+
VS Code Go extension relies on the [Go Telemetry](https://telemetry.go.dev) to
140+
learn insights about the performance and stability of the extension and the
141+
language server (`gopls``).
142+
**Go Telemetry data uploading is disabled by default** and can be enabled
143+
with the following command:
144+
145+
```
146+
go run golang.org/x/telemetry/cmd/gotelemetry@latest on
147+
```
148+
149+
After telemetry is enabled, the language server will upload metrics and stack
150+
traces to [telemetry.go.dev](https://telemetry.go.dev). You can inspect what
151+
data is collected and can be uploaded by running:
152+
153+
```
154+
go run golang.org/x/telemetry/cmdgotelemetry@latest view
155+
```
156+
157+
If we get enough adoption, this data can significantly advance the pace of
158+
the Go extension development, and help us meet a higher standard
159+
of reliability. For example:
160+
161+
- Even with [semi-automated crash
162+
reports](https://github.com/golang/vscode-go/issues?q=is%3Aissue+is%3Aopen+label%3AautomatedReport)
163+
in VS Code, we've seen several crashers go unreported for weeks or months.
164+
- Even with [a suite of
165+
benchmarks](https://perf.golang.org/dashboard/?benchmark=all&repository=tools&branch=release-branch.go1.20),
166+
some performance regressions don't show up in our benchmark environment (such
167+
as the [completion bug](https://go.dev/issue/62665) mentioned below!).
168+
- Even with [lots of great
169+
ideas](https://github.com/golang/go/issues?q=is%3Aissue+is%3Aopen+label%3Agopls+label%3Afeaturerequest)
170+
for how to improve gopls, we have limited resources. Telemetry can help us
171+
identify which new features are most important, and which existing features
172+
aren't being used or aren't working well.
173+
174+
These are just a few ways that telemetry can improve gopls. The [telemetry blog
175+
post series](https://research.swtch.com/telemetry-uses) contains many more.
176+
177+
Go telemetry is designed to be transparent and privacy-preserving. If you have
178+
concerns about enabling telemetry, you can learn more at
179+
[https://telemetry.go.dev/privacy](https://telemetry.go.dev/privacy).
180+
137181
## Contributing
138182

139183
We welcome your contributions and thank you for working to improve the Go

docs/Home.md

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11
Welcome to the VSCode Go Wiki!
22

3-
### 📣 News and Upcoming Changes
4-
5-
[Remote attach debugging](./debugging#connecting-to-headless-delve-with-target-specified-at-server-start-up) is now available via Delve's native DAP implementation with Delve v1.7.3 or newer.
6-
We plan to enable this as the default in 2022 H1 to enhance remote debugging with the same
7-
[debugging features](./debugging.md) that are already in use for local debugging.
8-
We recommend switching your remote attach configurations in `launch.json` to use
9-
`"debugAdapter":"dlv-dap"` now to verify that this works for you.
10-
Please [file a new issue](https://github.com/golang/vscode-go/issues/new/choose) if you encounter any problems.
11-
123
### User Documentation
134

145
* [Overview of Extension Features](features.md)

media/welcome.css

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,16 +26,9 @@
2626
}
2727

2828
.Announcement {
29-
display: flex;
30-
flex-direction: row;
29+
flex-direction: column;
3130
align-items: center;
32-
font-style: italic;
33-
padding: 1rem;
34-
}
35-
.Announcement-image {
36-
height: 2rem;
37-
flex: 0;
38-
margin-right: 1.5rem;
31+
padding: 0.25rem;
3932
}
4033

4134
.Cards {

src/welcome.ts

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -178,28 +178,30 @@ export class WelcomePanel {
178178
<li><a href="#" class="Command" data-command="openDocument" data-document="CHANGELOG.md">Release notes</a></li>
179179
<li><a href="https://github.com/golang/vscode-go">GitHub</a></li>
180180
<li><a href="https://stackoverflow.com/questions/tagged/go+visual-studio-code">Questions</a></li>
181-
<li><a href="https://invite.slack.golangbridge.org/">Slack</a></li>
181+
<li><a href="https://invite.slack.golangbridge.org/">Slack</a></li>
182182
</ul>
183183
</div>
184184
</div>
185185
186186
<div class="Announcement">
187-
<img src="${announceURI}" alt="announce" class="Announcement-image" />
187+
<p>📣 Recent gopls release (v0.14) includes <a href="https://go.dev/issue/58894">opt-in transparent telemetry</a>.
188+
</p>
189+
<p><b>Telemetry uploading is off by default</b> even when Visual Studio Code's telemetry setting is enabled.
190+
Go Telemetry needs to be enabled with the following command:
191+
<br>
192+
<code>go run golang.org/x/telemetry/cmd/gotelemetry@latest on</code>
193+
</p>
194+
<p>
195+
After telemetry is enabled, metrics and crash stack traces will be uploaded to <a href="https://telemetry.go.dev">telemetry.go.dev</a> weekly.
196+
You can see the preview of the collected data using:
197+
<br>
198+
<code>go run golang.org/x/telemetry/cmd/gotelemetry@latest view</code>
199+
</p>
188200
<p>
189-
New!
190-
We are excited to announce a new
191-
<a href="https://github.com/golang/vscode-go/wiki/features#analyze-vulnerabilities-in-dependencies">code analysis feature</a>
192-
that surfaces known vulnerabilities in your dependencies.
193-
<br>
194-
This vulncheck analyzer is backed by <a href="https://go.dev/security/vulndb">
195-
Go's vulnerability database</a> and the Go language server's integration of
196-
<a href="https://golang.org/x/vuln/cmd/govulncheck"><code>govulncheck</code></a>.
197-
Read <a href="https://go.dev/blog/vuln">"Go's support for vulnerability management"</a>
198-
to learn about the Go team's approach to helping Go developers secure their open-source dependencies.
199-
Please share your feedback at
200-
<a href="https://go.dev/s/vsc-vulncheck-feedback">go.dev/s/vsc-vulncheck-feedback</a>,
201-
and report a bug in
202-
<a href="https://github.com/golang/vscode-go/issues/new">our issue tracker</a>.
201+
If we get enough adoption, this data can significantly advance the pace of the go plugin development and help us meet a higher standard of reliability.
202+
Go telemetry is designed to be transparent and privacy-preserving.
203+
If you have concerns about enabling telemetry, you can learn more at
204+
<a href="https://telemetry.go.dev/privacy">Go Telemetry Privacy Policy</a>.
203205
</p>
204206
</div>
205207
@@ -226,7 +228,7 @@ export class WelcomePanel {
226228
<div class="Card-inner">
227229
<p class="Card-title">Troubleshooting</p>
228230
<p class="Card-content">Experiencing problems? Start with our
229-
<a href="https://github.com/golang/vscode-go/blob/master/docs/troubleshooting.md">troubleshooting guide</a>. </p> </div>
231+
<a href="https://github.com/golang/vscode-go/wiki/troubleshooting">troubleshooting guide</a>. </p> </div>
230232
</div>
231233
</div>
232234
</main>
@@ -259,10 +261,10 @@ function joinPath(uri: vscode.Uri, ...pathFragment: string[]): vscode.Uri {
259261
function showGoWelcomePage() {
260262
// Update this list of versions when there is a new version where we want to
261263
// show the welcome page on update.
262-
const showVersions: string[] = ['0.37.0'];
264+
const showVersions: string[] = ['0.40.0'];
263265
// TODO(hyangah): use the content hash instead of hard-coded string.
264266
// https://github.com/golang/vscode-go/issue/1179
265-
let goExtensionVersion = '0.37.0';
267+
let goExtensionVersion = '0.40.0';
266268
let goExtensionVersionKey = 'go.extensionVersion';
267269
if (extensionInfo.isPreview) {
268270
goExtensionVersion = '0.0.0';

0 commit comments

Comments
 (0)