Open
Description
In #50825, we want to allow developers to build gopls with a recent version of Go while still developing for older versions of Go. One blocker to doing this properly is that the set of release tags used in go list
is not configurable: they are implied by the version of cmd/go.
We had speculated that #42504 (ignore all build constraints) could help here, but the amount of post-processing required by gopls in that case is prohibitive.
Can we add a flag to cmd/go that allows us to mutate the set of release tags? For example, could we:
- add a
-release
flag (-release=1.16
)? - overload the
-compat
flag (-compat=1.16
)? - add a
-notags
flag (-notags=go1.17,go1.18
)?
I defer entirely to the cmd/go team for flag design, but it would be great to have some way to achieve this.