Commit graph

42 commits

Author SHA1 Message Date
Kynan Ware
df317d4a05 FIX: conditionally fetching team reviewers
Updated the logic for fetching team reviewers in PR edit and create flows. In `pr edit`, team reviewers are always fetched for consistency with existing behavior, with a note to potentially align with `pr create` logic in the future. In `pr create`, team reviewers are now only fetched if a reviewer contains a slash, aligning with behavior before the regression.
2025-07-22 11:00:47 -06:00
Andy Feller
5cf3d3b9a5 Use constant for Copilot name
Based on PR feedback from @bagtoad, this commit creates a new constant for the Copilot bot name, which is used in the assignee / reviewer selection as well as replacing `@copilot` when going to GitHub.com UI
2025-07-16 15:06:43 -04:00
Andy Feller
4f0a5807bf Refactor CopilotReplacer logic based on PR feedback
Thanks to @bagtoad, this commit refactors the argument to `NewCopilotReplacer(bool)` from being where this is used to what it effect is has.

Because there is already precedence for display name being `<login> (<name>)`, I worried there would be confusion for `Copilot (AI)` being display name for assignees and reviewers but `Copilot` when going to GitHub.com UI.  Instead, I renamed the argument based on whether the login is returned / replaced.
2025-07-16 14:42:11 -04:00
Andy Feller
554fe0f51f Fix gh issue create tests, copilot web assign
This commit is primarily focused on fixing the existing `gh issue create` tests with the changes to the underlying queries retrieving the data for resolving metadata.

Additionally, a new test case for `gh issue create --web --assignee @copilot` was added to mirror existing tests.  While exercising this capability, I found out the web UI apparently wants `copilot` instead of the `copilot-swe-agent` login, so changes to address that were a part of this commit.
2025-07-11 12:19:36 -04:00
Andy Feller
a8053d19a9 Resolve issue and PR metadata consistently
This commit refactors how `gh issue create` and `gh pr create` retrieve information needed to resolve metadata to be more in line with the approach used in `gh issue edit` and `gh pr edit`.

Previously, both commands used `prshared.fillMetadata(...)` function to retrieve assignees, reviewers, labels, and teams outside of `api.RepoMetadata(..)`.  Now, these commands will consistently use the same logic and data for resolving metadata.
2025-07-11 10:21:17 -04:00
Andy Feller
49821b20f9 Add non-TTY issue create copilot test, todos 2025-07-08 15:19:09 -04:00
Kynan Ware
6f1906073f
doc(params): incorrect func name in comment
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-16 12:51:09 -06:00
Kynan Ware
a28e2d8784 refactor(api): use constant for Copilot login 2025-05-16 12:28:46 -06:00
Kynan Ware
871671be52 fix(params): remove needless err return 2025-05-16 09:40:29 -06:00
Kynan Ware
375c6cd28f feat(issue/pr edit): support @copilot in assignee flags
- Introduced CopilotReplacer to handle `@copilot` mentions in assignee lists.
2025-05-15 12:50:03 -06:00
William Martin
e995a873cb Feature detect v1 projects on non-interactive pr create 2025-05-02 15:08:34 +02:00
William Martin
c208b1f075 Feature detect v1 projects on web mode issue create 2025-04-17 21:04:08 +02:00
William Martin
c8dd61d837 Feature detect v1 projects on non-interactive issue create 2025-04-17 17:51:38 +02:00
nilvng
2eaab56912 chore: tidy up 2024-11-07 10:20:23 +11:00
nilvng
a780b488a3 fix: ignore template flag 2024-11-07 10:20:23 +11:00
Ilya Yatsishin
179e9c256d
Add projectsV2 support to issue create, issue edit, pr create, and pr edit (#6735)
Co-authored-by: pshevche <pavel.shevchenko.95@gmail.com>
Co-authored-by: Sam Coe <samcoe@users.noreply.github.com>
2023-01-19 22:13:09 +00:00
Sam Coe
e7102f9d84
Migrate to go-gh text package (#6236) 2022-09-14 09:23:55 +04:00
Sam Coe
db85b1d3cb
Properly handle issue and pr state options when building search queries (#5513) 2022-04-25 20:18:58 +02:00
Sam Coe
31da9b1360
Replace old search utility with new search (#5366) 2022-04-06 16:44:52 +02:00
Mislav Marohnić
f6b33572fd
Merge pull request #4279 from SiarheiFedartsou/sf-pr-list-head-filter
Add `--head` filter to `gh pr list`
2021-10-14 20:54:56 +02:00
Sam Coe
d14715f1e3
Convert bool to string early for pr list draft flag 2021-09-20 11:29:37 -07:00
Siarhei Fedartsou
6a34f53c6c Change pr list --draft UX 2021-09-17 22:05:47 +03:00
Siarhei Fedartsou
11466fda12 Add --draft and --non-draft filters to gh pr list 2021-09-12 20:48:23 +03:00
Siarhei Fedartsou
a133e9d9a7 Add --head filter to gh pr list 2021-09-05 21:13:16 +03:00
Mislav Marohnić
11fbb60ae7 Rename the module to "github.com/cli/cli/v2" 2021-08-25 12:41:30 +02:00
Mislav Marohnić
e1b5f78df3 💅 grammar in comment 2021-06-10 14:09:43 +02:00
Mislav Marohnić
606deaf134 Allow setting empty body via editor in issue/pr create 2021-06-04 21:50:51 +02:00
Gowtham Munukutla
e160dd3eae
fix listing of PRs when merged ones are searched (#3730)
Co-authored-by: Mislav Marohnić <mislav@github.com>
2021-05-28 10:11:12 +00:00
Mislav Marohnić
abe452bb19 Add --json export flag for issues and pull requests
The `--json` flag accepts a list of GraphQL fields to query for and
output in JSON format. To get the list of available flags, run the
command with a blank value for `--json`. Additional `--jq` and
`--template` flags are available just like in `gh api`.
2021-04-13 20:29:31 +02:00
Mislav Marohnić
57536e7b0d 💅 cleanup URL length checking 2021-03-30 19:12:31 +02:00
Cristian Dominguez
fb39c38c85 Disable preview option in prompts if URL size is too long 2021-03-30 19:12:31 +02:00
Mislav Marohnić
2fa8a85813 Unify checking whether search filters were passed by the user 2021-03-24 18:11:21 +01:00
Mislav Marohnić
179d3f0249 Add a unified GitHub Search query builder 2021-03-23 18:52:58 +01:00
Gowtham Munukutla
70d4873914 add generic search naming for issues and PRs @samcoe 2021-03-23 18:10:46 +01:00
Mislav Marohnić
80035aa686 💅 cleanup switching to search mode in issue list 2021-03-23 18:08:14 +01:00
Gowtham Munukutla
f791bbdbcb add search feature in listing issues 2021-03-23 18:08:14 +01:00
Mislav Marohnić
28c2d042e7 Extend @me replacing behavior to issue list 2021-01-22 22:05:33 +01:00
Marc Lopez
6ad0c57a31 issue/pr create: add "@me" syntax to self-assign
Signed-off-by: Marc Lopez <marc5.12@outlook.com>
2021-01-22 20:41:17 +01:00
Mislav Marohnić
d6add864b8 Ensure efficient resolving of issue/pr create metadata to GraphQL IDs
For metadata types chosen in interactive flow, we fetch all records from
the API in order to be able to display a multi-select interface.

For metadata defined via command-line flags, we resolve records that can
be looked up directly, avoiding fetching the entirety of expensive
datasets (e.g. all members of an organization) if we can.

The new approach ensures efficient fetching when interactive flow is
combined with values from flags.
2020-12-03 15:53:13 +01:00
vilmibm
6671106448 WIP works, probably some title/body input edge cases 2020-11-12 12:03:20 -08:00
Mislav Marohnić
82661c197e Isolate pr list command 2020-08-04 18:38:06 +02:00
Mislav Marohnić
558e3f3dea Isolate pr create command 2020-08-04 18:29:42 +02:00