Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show PR review status #681

Closed
rebornix opened this issue Nov 12, 2018 · 17 comments · Fixed by #4187
Closed

Show PR review status #681

rebornix opened this issue Nov 12, 2018 · 17 comments · Fixed by #4187
Assignees
Labels
feature-request Request for new features or functionality on-testplan
Milestone

Comments

@rebornix
Copy link
Member

  • Extension version: Insiders
  • VSCode Version: 1.29
  • OS: macOS

Now we are using Pull Requests for features and bug fixes always, so I still rely on emails and .com to know if my pr is approved and ready to be merged or not. If we can show indicators of the review status in PRs tree view, I can simply go to category Created By Me.

@rebornix rebornix added the feature-request Request for new features or functionality label Nov 12, 2018
@kieferrm kieferrm mentioned this issue Jan 14, 2019
20 tasks
@kieferrm kieferrm mentioned this issue Feb 6, 2019
8 tasks
@StanleyGoldman
Copy link
Contributor

@queerviolet and I were plotting on possible node structures we are partial to the first, but I thought we could put the others up here for discussion.

- [Checks Icon] [Review Icon] PR Title #xx by @StanleyGoldman
  - Desc
  - File 1
  - File 2
  - File N

- [Avatar] PR Title #xx by @StanleyGoldman
  - Desc
  - Reviewers
    - Ashi: +1
    - Stanley: -1
  - Checks
    - Check 1: +1
    - Check 2: +1
  - File 1
  - File 2
  - File N
  
- [Avatar] PR Title #xx by @StanleyGoldman
  - Desc
  - Reviewers: +1/-1/M
  - Checks:  +1/-1/M
  - File 1
  - File 2
  - File N

@StanleyGoldman
Copy link
Contributor

Displaying two icons in the tree would not be ideal from a UX standpoint. We are trying to figure out how to merge both sets of states into one icon.

Checks states:

  1. Passing
  2. Failture
  3. Pending

Review states:

  1. Approve
  2. Request Changes
  3. Review Requested
  4. Required

Both of those states are not all of what goes into "merge-ability".

@StanleyGoldman
Copy link
Contributor

The simplest answer could very well be to display an icon for merge-ability directly.

@queerviolet
Copy link
Contributor

I think there are really three basic states we want to represent:

  • ✅This PR is good to merge
  • ⛔️This PR can't be merged:
    • checks are failing, so fix them
    • a review is required, so assign reviewers
    • a reviewer requested changes, so make them
  • ⚠️Waiting on:
    • A review from a requested reviewer
    • Checks to complete

@StanleyGoldman
Copy link
Contributor

Okay, so I've been looking deeper into the initial desire and comparing with other Pull Request centric GitHub plugins do.

Both plugins:

  1. Keep the users avatar in a primary position
  2. Display Pull Request Checks to the right instead of a Ready to Merge indicator.
    a. The right side margin is also maintained as the panels shrink horizontally

GitHub for Visual Studio:
image
image

GitHub for Atom:
image
image

Also Visual Studio code already displays an additional checkmark (in text) to the right of a user's avatar to indicate the given pull request is the current checked out branch.

image

TLDR:

  • For consistency, I don't think we should remove the user's avatar in favor of a different status indicator.
  • I would like to add a similar status indicator to the right side of the pull request tree node if possible.
  • I wonder if we could benefit from adding additional informational nodes under the pull request.

@meaghanlewis
Copy link
Member

👋 @misolori do you have any feedback on what @StanleyGoldman described above? Specifically about adding a status indicator to the right side of the pull request tree node.

@miguelsolorio
Copy link
Contributor

I think I like having the indicator in a consistent place, however we currently use a ✔️ to indicate when a PR is checked out, so that would be confusing to have two (we'd have to find a different way to differentiate that)

@meaghanlewis meaghanlewis mentioned this issue Apr 8, 2019
7 tasks
@meaghanlewis meaghanlewis mentioned this issue May 21, 2019
6 tasks
@srescio
Copy link

srescio commented Oct 28, 2019

I think I like having the indicator in a consistent place, however we currently use a ✔️ to indicate when a PR is checked out, so that would be confusing to have two (we'd have to find a different way to differentiate that)

could maybe change the "checked out" indicator to bolded PR title? it would even stand out more, I think sourceTree app does that to tell you which branch you're on

@StanleyGoldman StanleyGoldman removed their assignment Nov 12, 2019
@mix3d
Copy link

mix3d commented Apr 17, 2020

Why not use a branch style icon for the checked out branch, on top of the bolded title? There's nothing stopping someone from putting a ✔️ in the commit title, which would be confusing anyways.

@mix3d
Copy link

mix3d commented Apr 20, 2020

A quick mockup mixing many of the similar suggestions.
image
Notably missing is the PR creation date, which can be helpful when sorting through "which of these needs my attention most", though the PR # should be sufficient.

Noting that when opening one of the PRs, the immediate next row is prepended with a similar branch style icon top open the in-vscode PR editor, I would suggest either replacing with a github logo (similar to the plugin's logo), or remove the icon altogether, leaving "description" in bold and actually pulling in the first bit of the PR message body.

Could also add a row in the expanded view to explain the status icon, "Requires approval", "10/20 tests passing", etc.

Considering most people don't have dozens of PRs assigned to them at a given time, I'm wondering if the two-row layout is more useful; what more information could you add there? (like the Visual Studio example).

@digitarald
Copy link
Contributor

digitarald commented Sep 30, 2022

This should also consider in-progress checks state, to make it easier to follow CI/CD results for your own PRs and the ones you are asked to review.

image

image

Related: Background updates would also be covered here: #3649 . #791 is about showing the checks status per commit.

@alexr00
Copy link
Member

alexr00 commented Nov 14, 2022

We're limited to unicode characters for the status, here's what I have so far. Circle is pending, shaded square is review required, X is CI failed.

image

@alexr00
Copy link
Member

alexr00 commented Nov 15, 2022

With codicons and colors instead:

image

@alexr00
Copy link
Member

alexr00 commented Nov 17, 2022

Tweaking some icons and the color of the checks icon:

image

@daviddossett, what do you think of the git-pull-request-new-changes icon for "changes requested"? Alternatively, should we have a version of the icon without the dot on it?

@mix3d
Copy link

mix3d commented Nov 21, 2022

What a journey! Love it. Thanks for all the work.

@daviddossett
Copy link
Contributor

@daviddossett, what do you think of the git-pull-request-new-changes icon for "changes requested"? Alternatively, should we have a version of the icon without the dot on it?

I see we have these as of today:
CleanShot 2022-11-21 at 15 51 18@2x

..should we use request-changes? Or should that icon be updated to the "file" style pictured above if not used elsewhere?

@alexr00
Copy link
Member

alexr00 commented Nov 22, 2022

I missed the request-changes icon, that seems perfect. I'll update to use it.

eslamashour1 pushed a commit to eslamashour1/vscode-pull-request-github that referenced this issue Dec 31, 2022
* Show PR review status
Fixes microsoft#681

* Always get review required check and add unknown

* Fix tests

* Also add decoration for changes requested

* Use codicons

* Udpate decoration API

* Try to address some feedback
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment