Commit graph

90 commits

Author SHA1 Message Date
Corey Johnson
9b5f7a8148 Use new error.As method 2019-12-12 11:09:50 -08:00
Corey Johnson
92642f4d53 Create NotFoundError 2019-12-11 10:58:59 -08:00
Corey Johnson
2218e60264 Label as pull request 2019-12-11 10:24:58 -08:00
Corey Johnson
573dda22a1 Simplify flag setting 2019-12-11 10:19:18 -08:00
Corey Johnson
9b40efcad5 Add better gh pr view message 2019-12-10 16:03:10 -08:00
Corey Johnson
5296f72189 Better messaging for gh pr checkout 2019-12-10 16:03:05 -08:00
Corey Johnson
5949ca4b56 Merge pull request #142 from github/empty-pr-list
Add empty state for `gh pr list`
2019-12-10 12:04:41 -08:00
Corey Johnson
4de0a76234 Merge pull request #141 from github/add-url-branch-to-usage
Add better usage docs for `gh pr view` `gh pr checkout` `gh issue view`
2019-12-06 14:39:43 -08:00
Corey Johnson
f70473c234 Replace excessive whitespace 2019-12-06 14:32:55 -08:00
Corey Johnson
00b38bb11c Add better message to empty gh issue list 2019-12-06 14:10:01 -08:00
Corey Johnson
9aa3f35f8a Better language in the "no pr" state 2019-12-06 13:33:57 -08:00
Mislav Marohnić
5f90cdc801 Elaborate on what is accepted as issue/PR arguments 2019-12-06 18:01:36 +01:00
Mislav Marohnić
4b8921f011 Consistently use {} to denote mutually exclusive options 2019-12-06 18:01:14 +01:00
Mislav Marohnić
8222e7d74f Consistently use <> to denote placeholders 2019-12-06 17:59:36 +01:00
Corey Johnson
bbb91d6a2a Replace newlines 2019-12-05 14:12:12 -08:00
Corey Johnson
fee303699a Show message when there are no PRs 2019-12-05 12:01:05 -08:00
Corey Johnson
cce2fd4a22 Add better usage docs 2019-12-05 11:40:36 -08:00
Mislav Marohnić
4e859fa7ca Validate PR passed as pr view <url> before opening it 2019-12-03 21:45:28 +01:00
Mislav Marohnić
29de133ccf Accept PR URL or branch argument in pr checkout <pr> 2019-12-03 21:19:09 +01:00
Mislav Marohnić
519e731038 Allow specifying PR URL or branch name for pr view <pr> 2019-12-03 20:52:36 +01:00
Mislav Marohnić
2621bccc44 Use RunCommand in tests to ensure flags reset between runs 2019-12-03 17:26:28 +01:00
Mislav Marohnić
6aa1efcf9f Support --base and --label in combination with pr list --assignee 2019-12-03 16:00:11 +01:00
Mislav Marohnić
51d570e141 Merge remote-tracking branch 'origin/master' into pr-list-assignee 2019-12-03 11:41:50 +01:00
Mislav Marohnić
3e06cfff0d Improve mapping current branch to a PR in pr status 2019-12-02 20:40:14 +01:00
Mislav Marohnić
3b4c9a5309 Extract finding selector for PR belonging to current branch 2019-12-02 20:21:28 +01:00
Mislav Marohnić
db8c2d4e01 Merge remote-tracking branch 'origin/master' into pr-current-branch 2019-12-02 18:56:11 +01:00
Mislav Marohnić
64dcdd68e5 Merge pull request #118 from github/win-ansi-color
Fix ANSI color output on Windows
2019-11-28 11:47:02 +01:00
Mislav Marohnić
b6fa88337d Ensure that commands print to a colorable output
If a command does `fmt.Print(...)` for output that contains ANSI color
codes, this not safe on Windows. We have to ensure that we always use
the `fmt.Fprint*` family of functions with a writer that was transformed
using `utils.NewColorable()`.
2019-11-27 20:51:51 +01:00
Mislav Marohnić
1bf28927f0 Support -a, --assignee in pr list
This is for symmetry with `issue list`.

The problem is that the `Repository.pullRequests` connection doesn't
support filtering by assignee, therefore we need to switch to search API
in case an assignee was specified. This is awkward, but I don't see
another way.
2019-11-27 18:15:07 +01:00
Mislav Marohnić
b8a0754a03 💅 Sentence case for CLI flags 2019-11-27 17:09:40 +01:00
Mislav Marohnić
002aac3519 Remove global -B, --current-branch flag
Now `pr list --base` has shorthand `-B`
2019-11-27 17:05:49 +01:00
Mislav Marohnić
cdf40cc6ed Merge pull request #98 from github/more-specific-help-summaries
More specific help summaries
2019-11-25 11:34:19 +01:00
Mislav Marohnić
eabcae84c7 Merge pull request #81 from github/pr-status-single-check
`pr status`: avoid printing a lonely "1" when there is only one Check
2019-11-21 15:27:53 +01:00
evelyn masso
98062b7c0e slightly more specific command summaries 2019-11-20 11:38:27 -08:00
Mislav Marohnić
eff8847513 Improve detecting PR for the current branch
Now reads git branch configuration and handles these cases:

    branch ["foo"]
      remote origin
      merge  refs/heads/bar

    branch ["foo"]
      remote other-remote
      merge  refs/heads/foo

    branch ["foo"]
      remote https://github.com/OWNER/REPO.git
      merge  refs/heads/bar

    branch ["foo"]
      remote origin
      merge  refs/pull/123/head
2019-11-20 15:20:36 +01:00
Mislav Marohnić
508f6787f0 Have PullRequestForBranch accept "owner:branch" value for forks
When on a `patch-1` branch locally, `gh pr view` would happily open the
first open PR it finds with "patch-1" as its head, even those coming
from forks.
2019-11-20 15:20:36 +01:00
Mislav Marohnić
97a6dc494b Redesign TablePrinter to avoid SetContentWidth / FitColumns steps
The API is now:
- AddField;
- EndRow;
- Render.
2019-11-20 13:29:27 +01:00
Mislav Marohnić
02b1f60a24 Merge remote-tracking branch 'origin/master' into table-output 2019-11-20 12:12:09 +01:00
Mislav Marohnić
26c1e4a170 Align checks wording with dotcom 2019-11-20 12:00:24 +01:00
Mislav Marohnić
39f535f0a1 Only show ratio of PR checks when some are failing
Now the possible outputs are:

- "checks: pending" (yellow)
- "checks: success" (green)
- "checks: failing" (red) - 1 out of 1 check failed
- "checks: 3/5 failing" (red) - 3 out of 5 checks failed
2019-11-19 12:01:46 +01:00
Mislav Marohnić
f58b7ecb3e Merge remote-tracking branch 'origin/master' into pr-status-single-check 2019-11-19 11:09:15 +01:00
Amanda Pinsker
5e7557e8fa Copy edits 2019-11-18 23:26:18 -08:00
Mislav Marohnić
b640a3027a Merge pull request #80 from github/status-check-rollup
Strengthen PR Reviews+Checks GraphQL via `pe_mobile` feature flag
2019-11-18 20:00:25 +01:00
Mislav Marohnić
f30e973b9d Extract generic row printer that adjusts itself for receiving terminal
This makes the approach from `pr list` reusable across other commands
that may benefit from table-based output, e.g. `issue list` or `pr status`

The idea is: instantiate a printer, connect it to stdout, feed it some
data, and it does the rest: colored, truncated column output that fits
into a terminal, or tab-delimited output (no color, no truncation) for
scripts.
2019-11-15 19:19:41 +01:00
Mislav Marohnić
d1eac7b211 pr status: avoid printing a lonely "1" when there is only one Check
In a repository that only has a single Check configured (e.g. this
repo), we would print "checks: 1" for PRs where the CI is passing. This
looks akward when repeated for each PR and provides little useful
information.

This avoids ever printing "1" and instead prints "failing", "pending",
or "success", respectively. We now only show numbers for repositories
that have more than one Check runs.
2019-11-15 12:35:44 +01:00
Mislav Marohnić
be55f81e16 Add "review required" notice to PRs if applicable 2019-11-15 12:05:05 +01:00
Mislav Marohnić
760fac906d Merge remote-tracking branch 'origin/master' into pr-checkout 2019-11-15 09:31:11 +01:00
Mislav Marohnić
624c44efda Merge pull request #63 from github/branch-from-fork
Use `OWNER:BRANCH` syntax for cross-repo PRs
2019-11-15 09:28:00 +01:00
Mislav Marohnić
d8308b4c15 Allow pr checkout while not on any branch 2019-11-14 20:54:44 +01:00
Mislav Marohnić
1fc9c8f9d6 Test the scenario where the target branch already exists 2019-11-14 20:29:24 +01:00