Skip to content

Commit def0263

Browse files
committed
gopls: clarify policy with respect to support for older Go versions
Clarify that we have best-effort support for the last 4 major Go versions, and that support for Go releases 3 and 4 versions ago may not block releases and may be dropped if necessary. Also explain that Kokoro CI is not automatically re-run when the result is removed in Gerrit. For golang/go#45919 Change-Id: Ic1480c9276dad9502aaf885b98bb9445deeed0c5 Reviewed-on: https://go-review.googlesource.com/c/tools/+/316349 Trust: Robert Findley <[email protected]> Run-TryBot: Robert Findley <[email protected]> gopls-CI: kokoro <[email protected]> Reviewed-by: Rebecca Stambler <[email protected]> TryBot-Result: Go Bot <[email protected]>
1 parent 7a6108e commit def0263

File tree

2 files changed

+21
-6
lines changed

2 files changed

+21
-6
lines changed

gopls/README.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,18 @@ If you are having issues with `gopls`, please follow the steps described in the
7272

7373
## Supported Go versions and build systems
7474

75-
`gopls` follows the
76-
[Go Release Policy](https://golang.org/doc/devel/release.html#policy),
77-
meaning that it officially supports the last 2 major Go releases. Though we
78-
try not to break older versions, we do not prioritize issues only affecting
79-
legacy Go releases.
75+
`gopls` follows the [Go Release
76+
Policy](https://golang.org/doc/devel/release.html#policy), meaning that it
77+
officially supports the last 2 major Go releases. Per
78+
[issue #39146](golang.org/issues/39146), we attempt to maintain best-effort
79+
support for the last 4 major Go releases, but this support extends only to not
80+
breaking the build and avoiding easily fixable regressions.
81+
82+
Our extended support is enforced via [continuous integration with older Go
83+
versions](doc/contributing.md#ci). This legacy Go CI may not block releases:
84+
test failures may be skipped rather than fixed. Furthermore, if a regression in
85+
an older Go version causes irreconcilable CI failures, we may drop support for
86+
that Go version in CI if it is 3 or 4 Go versions old.
8087

8188
`gopls` currently only supports the `go` command, so if you are using a
8289
different build system, `gopls` will not work well. Bazel support is currently

gopls/doc/contributing.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,15 @@ Jenkins-like Google infrastructure for running Dockerized tests. This allows us
9797
to run gopls tests in various environments that would be difficult to add to
9898
the TryBots. Notably, Kokoro runs tests on
9999
[older Go versions](../README.md#supported-go-versions) that are no longer supported
100-
by the TryBots.
100+
by the TryBots. Per that that policy, support for these older Go versions is
101+
best-effort, and test failures may be skipped rather than fixed.
102+
103+
Kokoro runs are triggered by the `Run-TryBot=1` label, just like TryBots, but
104+
unlike TryBots they do not automatically re-run if the "gopls-CI" result is
105+
removed in Gerrit. In order to force a new run, you must upload a new patch
106+
set. (Technically, Googlers can force a new run on an existing patch-set via an
107+
internal Kokoro dashboard, but unfortunately this ability can't be made more
108+
generally available).
101109

102110
## Debugging
103111

0 commit comments

Comments
 (0)