* Respect merge message structure for parsing item references Signed-off-by: JustusBunsi <61625851+justusbunsi@users.noreply.github.com> Co-authored-by: zeripath <art27@cantab.net>tags/v1.15.0-rc1
@@ -29,7 +29,7 @@ var ( | |||
// mentionPattern matches all mentions in the form of "@user" or "@org/team" | |||
mentionPattern = regexp.MustCompile(`(?:\s|^|\(|\[)(@[0-9a-zA-Z-_]+|@[0-9a-zA-Z-_]+\/?[0-9a-zA-Z-_]+|@[0-9a-zA-Z-_][0-9a-zA-Z-_.]+\/?[0-9a-zA-Z-_.]+[0-9a-zA-Z-_])(?:\s|[:,;.?!]\s|[:,;.?!]?$|\)|\])`) | |||
// issueNumericPattern matches string that references to a numeric issue, e.g. #1287 | |||
issueNumericPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([#!][0-9]+)(?:\s|$|\)|\]|[:;,.?!]\s|[:;,.?!]$)`) | |||
issueNumericPattern = regexp.MustCompile(`(?:\s|^|\(|\[|\')([#!][0-9]+)(?:\s|$|\)|\]|[:;,.?!]\s|[:;,.?!]$)`) | |||
// issueAlphanumericPattern matches string that references to an alphanumeric issue, e.g. ABC-1234 | |||
issueAlphanumericPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([A-Z]{1,10}-[1-9][0-9]*)(?:\s|$|\)|\]|:|\.(\s|$))`) | |||
// crossReferenceIssueNumericPattern matches string that references a numeric issue in a different repository |
@@ -197,6 +197,13 @@ func TestFindAllIssueReferences(t *testing.T) { | |||
{200, "user3", "repo4", "200", false, XRefActionNone, &RefSpan{Start: 5, End: 20}, nil, ""}, | |||
}, | |||
}, | |||
{ | |||
"Merge pull request '#12345 My fix for a bug' (!1337) from feature-branch into main", | |||
[]testResult{ | |||
{12345, "", "", "12345", false, XRefActionNone, &RefSpan{Start: 20, End: 26}, nil, ""}, | |||
{1337, "", "", "1337", true, XRefActionNone, &RefSpan{Start: 46, End: 51}, nil, ""}, | |||
}, | |||
}, | |||
{ | |||
"Which abc. #9434 same as above", | |||
[]testResult{ |