tree 48c8878dcafad7019c1ca7fa9e7c266e4b9741ba
parent d4056198a62b78506c5259b5a50c851c6b5da98c
author Hongxiang Jiang <hxjiang@golang.org> 1790868119 -0400
committer Gopher Robot <gobot@golang.org> 1790970439 -0700

extension/src: let gopls prompt for struct tags unless configured

With the interactive refactoring supported, the vscode-go should
start deligate the business logic to gopls (including determination
of what information needs to be collected from the user).

For adding / removing tags, vscode-go offers "promptForTags" setting
to use setting already filled in by the user previously.

When "promptForTags" is true, the vscode-go execute the command w/o
any argument and gopls will ask user questions.

When "promptForTags" is false, the vscode-go execute the command w
all the arguments from the user setting and gopls will not ask user
any questions (if the user setting is non empty).

However, the gopls today only ask for tags & transformation, to
keep the same user experience, we will also introduce two more
questions from the gopls side.

Also, remove all the default value for the adding / removing tags
as it makes hard for the extension to capture the user intention.

Fixes golang/vscode-go#4070

Change-Id: I163ac125becb0f9674c260122ca70ea67fea5d5d
Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/842965
Reviewed-by: Alan Donovan <adonovan@google.com>
Auto-Submit: Hongxiang Jiang <hxjiang@golang.org>
LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
