It seems several similar tools already exist. https://about.pullapprove.com/
and https://lgtm.co/ are two that were pointed out to me.  They both seem
more focused on making sure a review happens before merging, which I'm less
worried about. My main concern is seeing which PRs are ready for review.

Aaron Meurer

On Thu, Sep 1, 2016 at 4:21 PM, Isuru Fernando <[email protected]> wrote:

> See https://github.com/isuruf/symengine/pull/19 for a demo.
>
> Code is here, https://github.com/isuruf/sympy-pr-webapp
>
> Isuru Fernando
>
> On Fri, Sep 2, 2016 at 12:58 AM, Aaron Meurer <[email protected]> wrote:
>
>> Yes, that's the question.
>>
>> You need some kind of webapp that runs somewhere to trigger the status.
>> Perhaps as a UI you could reuse the existing label system, where setting a
>> label triggers the app to set the status. Or maybe the webapp has a page
>> that you can go to for each commit to trigger the status (the default
>> status could be set as green, to give a link). And yes, you need some way
>> to invert the status for a given commit, in case it's decided that no
>> changes are in fact needed.
>>
>> Honestly, it would be better if GitHub implemented the sign-off UI
>> directly. The most elegant (from a reviewer's point of view) solution I can
>> think of is a browser extension that puts a simple "Sign off / Needs more
>> work" button on each PR. But then reviewers have to install the extension...
>>
>> Aaron Meurer
>>
>> On Thu, Sep 1, 2016 at 3:17 PM, Isuru Fernando <[email protected]> wrote:
>>
>>> I think that's great idea, given the large number of open PRs.
>>>
>>> Implementing this is very easy to do. What's hard is to find the correct
>>> workflow.
>>>
>>> How do you trigger the red X status? A comment in the PR with a specific
>>> message?
>>> How do you suggest turning the red X status off when the reviewer's
>>> comments are addressed, but no new commits are sent?
>>>
>>>
>>> Isuru Fernando
>>>
>>> On Thu, Sep 1, 2016 at 10:47 PM, Aaron Meurer <[email protected]>
>>> wrote:
>>>
>>>> One problem with PR reviewing is that it isn't always clear which PRs
>>>> are ready to review, and which require more work.
>>>>
>>>> One solution that has been proposed in the past is these "PR: author's
>>>> turn" and "PR: sympy's turn" labels. But the problem is that you can't
>>>> change PR labels unless you have push access. So once a PR has a "PR:
>>>> author's turn" label, the only way to remove it is if someone with push
>>>> access removes it. And aside from that, people aren't diligent enough to
>>>> always keep the labels updated.
>>>>
>>>> But I just noticed that as I go through the PRs list, I generally skip
>>>> those PRs that have failing status label (a red X), as that means that some
>>>> tests have failed, so there is already some work to do on the author's part
>>>> to fix the PR (I also generally skip PRs with WIP, unless I am specifically
>>>> interested in them).
>>>>
>>>> So my idea is to have some kind of "CI service" that lets any PR
>>>> reviewer assign a status label to the PR, either a checkmark for "passes
>>>> review" or an X for "needs work". The status itself could link to a comment
>>>> that points out what needs to be done. That way, any PR that "needs work"
>>>> will have a red X, and I can see when going through the list that I can
>>>> skip it.
>>>>
>>>> The nice thing about this is that, because the status is only assigned
>>>> to the most recent commit, as soon as the PR author pushes a new commit,
>>>> the red X status for the "needs work" will go away.
>>>>
>>>> This could also bring accountability for our "all PRs must be reviewed"
>>>> policy.
>>>>
>>>> Bitbucket actually has this feature built into their PR system, which
>>>> is one thing I like about it, but I think it should be possible to do the
>>>> same thing with GitHub with a bit of work.
>>>>
>>>> What do you think? Anyone have any idea how to implement something like
>>>> this? Does anyone know if someone already has?
>>>>
>>>> Aaron Meurer
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "sympy" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at https://groups.google.com/group/sympy.
>>>> To view this discussion on the web visit https://groups.google.com/d/ms
>>>> gid/sympy/CAKgW%3D6KVtuOF4CNBd2tUKr%2BOQSB0vSWbhkOLnAN19y7iZ
>>>> dW%3DPw%40mail.gmail.com
>>>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6KVtuOF4CNBd2tUKr%2BOQSB0vSWbhkOLnAN19y7iZdW%3DPw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "sympy" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> Visit this group at https://groups.google.com/group/sympy.
>>> To view this discussion on the web visit https://groups.google.com/d/ms
>>> gid/sympy/CA%2B01voMmV5HYj-5KNFO2HwRGgaKjvq_b0ZN6QmcSkX3iaS7
>>> ZqQ%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/sympy/CA%2B01voMmV5HYj-5KNFO2HwRGgaKjvq_b0ZN6QmcSkX3iaS7ZqQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sympy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at https://groups.google.com/group/sympy.
>> To view this discussion on the web visit https://groups.google.com/d/ms
>> gid/sympy/CAKgW%3D6%2BFwknyQVq%3Dj2rgxvTQo8pEqqFGSwLh12svo5n
>> KhNZgNQ%40mail.gmail.com
>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2BFwknyQVq%3Dj2rgxvTQo8pEqqFGSwLh12svo5nKhNZgNQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sympy.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/sympy/CA%2B01voPhn8dOE-%3D%2B6%2BG0LwN2z3A5tZuGsuQ5pGPGgP2Lea
> 93Mw%40mail.gmail.com
> <https://groups.google.com/d/msgid/sympy/CA%2B01voPhn8dOE-%3D%2B6%2BG0LwN2z3A5tZuGsuQ5pGPGgP2Lea93Mw%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAKgW%3D6LVac3rkYiVVDTdtk7RyESQqa2cA2fsLK7FKsd7oVzrgQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to