From 172a9de2fe8384e533a5ec5affd2ceed0218a5c3 Mon Sep 17 00:00:00 2001 From: William Martin Date: Thu, 11 Jul 2024 16:30:35 +0200 Subject: [PATCH] Ensure PR does not panic when stateReason is requested --- api/query_builder.go | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/api/query_builder.go b/api/query_builder.go index 0f131232c..0aa89513d 100644 --- a/api/query_builder.go +++ b/api/query_builder.go @@ -249,7 +249,7 @@ func RequiredStatusCheckRollupGraphQL(prID, after string, includeEvent bool) str }`), afterClause, prID, eventField) } -var IssueFields = []string{ +var sharedIssuePRFields = []string{ "assignees", "author", "body", @@ -268,10 +268,20 @@ var IssueFields = []string{ "title", "updatedAt", "url", +} + +// Some fields are only valid in the context of issues. +// They need to be enumerated separately in order to be filtered +// from existing code that expects to be able to pass Issue fields +// to PR queries, e.g. the PullRequestGraphql function. +var issueOnlyFields = []string{ + "isPinned", "stateReason", } -var PullRequestFields = append(IssueFields, +var IssueFields = append(sharedIssuePRFields, issueOnlyFields...) + +var PullRequestFields = append(sharedIssuePRFields, "additions", "autoMergeRequest", "baseRefName", @@ -299,12 +309,6 @@ var PullRequestFields = append(IssueFields, "statusCheckRollup", ) -// Some fields are only valid in the context of issues. -var issueOnlyFields = []string{ - "isPinned", - "stateReason", -} - // IssueGraphQL constructs a GraphQL query fragment for a set of issue fields. func IssueGraphQL(fields []string) string { var q []string