From 54d2d927ac9c3ee290d44405a3028307459a49fb Mon Sep 17 00:00:00 2001 From: Dean Deng Date: Fri, 23 Oct 2020 19:24:51 -0700 Subject: [PATCH] Direct gvisor.dev/issues to the same place as gvisor.dev/issue. Also let the Github bug reviver detect both in TODOs. PiperOrigin-RevId: 338785089 --- tools/github/reviver/github.go | 21 ++++++++++++++++----- tools/github/reviver/reviver_test.go | 9 +++++++++ website/cmd/server/main.go | 2 ++ 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/tools/github/reviver/github.go b/tools/github/reviver/github.go index a95df0fb6..c4b624f2a 100644 --- a/tools/github/reviver/github.go +++ b/tools/github/reviver/github.go @@ -121,13 +121,24 @@ func (b *GitHubBugger) Activate(todo *Todo) (bool, error) { return true, nil } -// parseIssueNo parses the issue number out of the issue url. -func parseIssueNo(url string) (int, error) { - const prefix = "gvisor.dev/issue/" +var issuePrefixes = []string{ + "gvisor.dev/issue/", + "gvisor.dev/issues/", +} +// parseIssueNo parses the issue number out of the issue url. +// +// 0 is returned if url does not correspond to an issue. +func parseIssueNo(url string) (int, error) { // First check if I can handle the TODO. - idStr := strings.TrimPrefix(url, prefix) - if len(url) == len(idStr) { + var idStr string + for _, p := range issuePrefixes { + if str := strings.TrimPrefix(url, p); len(str) < len(url) { + idStr = str + break + } + } + if len(idStr) == 0 { return 0, nil } diff --git a/tools/github/reviver/reviver_test.go b/tools/github/reviver/reviver_test.go index a9fb1f9f1..851306c9d 100644 --- a/tools/github/reviver/reviver_test.go +++ b/tools/github/reviver/reviver_test.go @@ -32,6 +32,15 @@ func TestProcessLine(t *testing.T) { }, }, }, + { + line: "// TODO(foobar.com/issues/123): comment, bla. blabla.", + want: &Todo{ + Issue: "foobar.com/issues/123", + Locations: []Location{ + {Comment: "comment, bla. blabla."}, + }, + }, + }, { line: "// FIXME(b/123): internal bug", want: &Todo{ diff --git a/website/cmd/server/main.go b/website/cmd/server/main.go index c401b6abd..85fcbb351 100644 --- a/website/cmd/server/main.go +++ b/website/cmd/server/main.go @@ -29,6 +29,7 @@ var redirects = map[string]string{ // GitHub redirects. "/change": "https://github.com/google/gvisor", "/issue": "https://github.com/google/gvisor/issues", + "/issues": "https://github.com/google/gvisor/issues", "/issue/new": "https://github.com/google/gvisor/issues/new", "/pr": "https://github.com/google/gvisor/pulls", @@ -60,6 +61,7 @@ var redirects = map[string]string{ var prefixHelpers = map[string]string{ "change": "https://github.com/google/gvisor/commit/%s", "issue": "https://github.com/google/gvisor/issues/%s", + "issues": "https://github.com/google/gvisor/issues/%s", "pr": "https://github.com/google/gvisor/pull/%s", // Redirects to compatibility docs.