Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/tools/gopls: show progress reporting for all commands #40634

Closed
stamblerre opened this issue Aug 7, 2020 · 5 comments
Closed

x/tools/gopls: show progress reporting for all commands #40634

stamblerre opened this issue Aug 7, 2020 · 5 comments
Labels
FrozenDueToAge gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Milestone

Comments

@stamblerre
Copy link
Contributor

Right now, it's difficult to tell if a command is executing or to see if it succeeded/failure. We should add progress and error reporting for all commands.

@stamblerre stamblerre added this to the gopls/v1.0.0 milestone Aug 7, 2020
@gopherbot gopherbot added Tools This label describes issues relating to any tools in the x/tools repository. gopls Issues related to the Go language server, gopls. labels Aug 7, 2020
@hasheddan
Copy link
Contributor

@stamblerre thanks for all of your work on gopls! I would be happy to help out on this issue

@stamblerre
Copy link
Contributor Author

Thanks @hasheddan! I actually spent a bit of time looking into this with https://golang.org/cl/247320, but it turned out to be a little more complex than I expected, so it may not be the best issue to start with (basically each command type needs its own progress reporting, which is a little unpleasant). Also, I think this needs to wait until #40527 is resolved.

However, any issue with the help wanted label is totally available. Let me know if any of those sound good to you!

@hasheddan
Copy link
Contributor

Thanks for following up so quickly @stamblerre! I'll take a look 🙂

@findleyr findleyr self-assigned this Aug 10, 2020
@gopherbot
Copy link

Change https://golang.org/cl/248918 mentions this issue: internal/lsp: consolidate progress reporting

gopherbot pushed a commit to golang/tools that referenced this issue Aug 21, 2020
This change contains several improvements for progress reporting:

 + Consolidate the 'progressWriter' interface into the workDone
   interface.  Now all progress reporting should use workDone, and the
   workDoneWriter struct is just an io.Writer adapter on top of
   workDone.
 + Factor out the pattern of progress reporting, and use for all
   asynchronous commands.
 + Make several commands that were previously synchronous async.
 + Add a test for cancellation when the WorkDone API is not supported.
 + Always report workdone progress using a detached context.
 + Update 'run tests' to use the -v option, and merge stderr and stdout,
   to increase the amount of information reported.
 + Since $/progress reporting is now always run with a detached context,
   the 'NoOutstandingWork' expectation should now behave correctly. Use
   it in a few places.

A follow-up CL will improve the messages reported on command completion.

For golang/go#40634

Change-Id: I7401ae62f7ed22d76e558ccc046e981622a64b12
Reviewed-on: https://go-review.googlesource.com/c/tools/+/248918
Run-TryBot: Robert Findley <rfindley@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Heschi Kreinick <heschi@google.com>
@findleyr
Copy link
Contributor

Fixed by https://golang.org/cl/248918.

@golang golang locked and limited conversation to collaborators Aug 25, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge gopls Issues related to the Go language server, gopls. Tools This label describes issues relating to any tools in the x/tools repository.
Projects
None yet
Development

No branches or pull requests

4 participants