MCPcopy
hub / github.com/cli/cli / issueList

Function issueList

pkg/cmd/issue/list/list.go:232–263  ·  view source on GitHub ↗
(client *http.Client, detector fd.Detector, repo ghrepo.Interface, filters prShared.FilterOptions, limit int)

Source from the content-addressed store, hash-verified

230}
231
232func issueList(client *http.Client, detector fd.Detector, repo ghrepo.Interface, filters prShared.FilterOptions, limit int) (*api.IssuesAndTotalCount, error) {
233 apiClient := api.NewClientFromHTTP(client)
234
235 if filters.Search != "" || len(filters.Labels) > 0 || filters.Milestone != "" || filters.IssueType != "" {
236 if milestoneNumber, err := strconv.ParseInt(filters.Milestone, 10, 32); err == nil {
237 milestone, err := milestoneByNumber(client, repo, int32(milestoneNumber))
238 if err != nil {
239 return nil, err
240 }
241 filters.Milestone = milestone.Title
242 }
243
244 return searchIssues(apiClient, detector, repo, filters, limit)
245 }
246
247 var err error
248 meReplacer := prShared.NewMeReplacer(apiClient, repo.RepoHost())
249 filters.Assignee, err = meReplacer.Replace(filters.Assignee)
250 if err != nil {
251 return nil, err
252 }
253 filters.Author, err = meReplacer.Replace(filters.Author)
254 if err != nil {
255 return nil, err
256 }
257 filters.Mention, err = meReplacer.Replace(filters.Mention)
258 if err != nil {
259 return nil, err
260 }
261
262 return listIssues(apiClient, repo, filters, limit)
263}
264
265func milestoneByNumber(client *http.Client, repo ghrepo.Interface, number int32) (*api.RepoMilestone, error) {
266 var query struct {

Callers 4

Test_issueListFunction · 0.85
listRunFunction · 0.85

Calls 6

ReplaceMethod · 0.95
NewClientFromHTTPFunction · 0.92
milestoneByNumberFunction · 0.85
searchIssuesFunction · 0.85
listIssuesFunction · 0.85
RepoHostMethod · 0.65

Tested by 3

Test_issueListFunction · 0.68