[xwiki-devs] [proposal] Process to handle Pull Requests
Hi devs, I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge. I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request. Something like: Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied What do you think ? Ludovic -- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost
Where exactly do you propose this status to be indicated (I may have missed it) ? On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either: 1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization. Ludovic 2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ? In general, +1 for a clearly defined workflow Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests. And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice. Ludoivc 2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost
+1 for jira. It will force having a jira issue associated to any contribution. On Thu, Aug 9, 2012 at 5:05 PM, Ludovic Dubost <[email protected]> wrote:
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests.
Well that's exactly what Jerome suggested.
And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice.
It should be very easy with jira macro but it would maybe make more sense to have it on jira home page (can also be both).
Ludoivc
2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
Definitely +1 for JIRA. I've created a custom field called "Pull Request Status" with 3 states: * awaiting creation of pull request * awaiting committer feedback * awaiting contributor feedback The workflow is the following: * If someone creates a jira issue with a patch we should ask him for a pull request, "awaiting creation of pull request" * Then once the PR is created, the contributor (or us when we do jira cleanup) should move it to "awaiting committer feedback" * If the PR is missing stuff (tests, code best practices, design issue, etc) then the committer should comment in jira or in the PR itself and change the state to "awaiting contributor feedback" We have a filter that finds all issues having "patch" as a label, "patch" as a keyword or the "Pull Request Status" value not being empty (I hope this one works, I haven't tested it). You can see it here: http://jira.xwiki.org/secure/Dashboard.jspa#Issue-Statistics/10472 It's listed on the JIRA home page. There are 43 open issues with patches ATM. We need to review them and set the "Pull Request Status". We need to decide what to do with "old" patches from the time when we didn't have PR. We should probably just consider them as having PR and set the field status to either "awaiting committer feedback" or "awaiting contributor feedback". WDYT? Is that good enough? Thanks -Vincent On Aug 10, 2012, at 9:17 AM, Thomas Mortagne wrote:
+1 for jira. It will force having a jira issue associated to any contribution.
On Thu, Aug 9, 2012 at 5:05 PM, Ludovic Dubost <[email protected]> wrote:
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests.
Well that's exactly what Jerome suggested.
And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice.
It should be very easy with jira macro but it would maybe make more sense to have it on jira home page (can also be both).
Ludoivc
2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
What do you think ?
Ludovic
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
On Mon, Aug 13, 2012 at 12:49 PM, Vincent Massol <[email protected]> wrote:
Definitely +1 for JIRA.
I've created a custom field called "Pull Request Status" with 3 states: * awaiting creation of pull request * awaiting committer feedback * awaiting contributor feedback
The workflow is the following: * If someone creates a jira issue with a patch we should ask him for a pull request, "awaiting creation of pull request" * Then once the PR is created, the contributor (or us when we do jira cleanup) should move it to "awaiting committer feedback"
And the link to the pull request should be indicated.
* If the PR is missing stuff (tests, code best practices, design issue, etc) then the committer should comment in jira or in the PR itself and change the state to "awaiting contributor feedback"
We have a filter that finds all issues having "patch" as a label, "patch" as a keyword or the "Pull Request Status" value not being empty (I hope this one works, I haven't tested it).
You can see it here: http://jira.xwiki.org/secure/Dashboard.jspa#Issue-Statistics/10472
It's listed on the JIRA home page.
There are 43 open issues with patches ATM. We need to review them and set the "Pull Request Status". We need to decide what to do with "old" patches from the time when we didn't have PR. We should probably just consider them as having PR and set the field status to either "awaiting committer feedback" or "awaiting contributor feedback".
Yes I think we should see them as pull requests IMO. And in general I don't think we force people to do pull request if for some reason they don't want to as long as the patch is easy to apply.
WDYT? Is that good enough?
Sounds good.
Thanks -Vincent
On Aug 10, 2012, at 9:17 AM, Thomas Mortagne wrote:
+1 for jira. It will force having a jira issue associated to any contribution.
On Thu, Aug 9, 2012 at 5:05 PM, Ludovic Dubost <[email protected]> wrote:
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests.
Well that's exactly what Jerome suggested.
And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice.
It should be very easy with jira macro but it would maybe make more sense to have it on jira home page (can also be both).
Ludoivc
2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote: > > Hi devs, > > I don't think there is currently a process that is in place to handle > pull requests and I have the feeling that the way there are handled > today is a bit random. > There are usually comments sent out on each pull request but sometimes > it seems that some pull requests are going in sleep mode and it's not > clear who is in charge. > > I would like to suggest that a process is put in place where it's > clear who is responsible for a pull request and a status is given to > the contributors that propose that pull request. > > Something like: > > Assigned developer: XXXX > Status: > New -> new pull request, not yet assigned > Assigned -> assigned to a developer, he is in charge of reviewing the > pull request and ask for modifications or accept it. The developer can > auto assign it to himself. If nobody does, we need to decide how they > will be taken into account. > ModificationsRequired -> for now rejected with comments. Contributor > needs to apply comments and then change back to Assigned for further > evaluation > VoteRequired -> there are no more comments, but a vote is required as > the changes to XWiki core are important > WaitingFinalAuthorization -> optional step for complex patches where > a additional authorization would be required (need to define who would > be the persons that give the authorization) > WaitingApplication -> there are no more comments and no changes or > vote required. The pull request can be applied and is waiting for a > developer to apply it > Abandoned -> contributors is abandoning the pull request (cannot do > the changes, no more time, etc..) > Rejected -> pull request is rejected (quality not enough, etc..) > Applied -> pull request is applied > > What do you think ? > > Ludovic > > -- > Ludovic Dubost > Founder and CEO > Blog: http://blog.ludovic.org/ > XWiki: http://www.xwiki.com > Skype: ldubost GTalk: ldubost > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne
Great. We should add a field to the pull request and either: 1/ Write an XWiki application to show the list of patch marked JIRAs with the link to the pull request and the pull request comments in one UI 2/ Or just list the issues with patches using the JIRA macro And put this in a nice place on xwiki.org where contributors can see what is going on. 1/ would be better as we would see who has something assigned. Ludovic 2012/8/13 Vincent Massol <[email protected]>:
Definitely +1 for JIRA.
I've created a custom field called "Pull Request Status" with 3 states: * awaiting creation of pull request * awaiting committer feedback * awaiting contributor feedback
The workflow is the following: * If someone creates a jira issue with a patch we should ask him for a pull request, "awaiting creation of pull request" * Then once the PR is created, the contributor (or us when we do jira cleanup) should move it to "awaiting committer feedback" * If the PR is missing stuff (tests, code best practices, design issue, etc) then the committer should comment in jira or in the PR itself and change the state to "awaiting contributor feedback"
We have a filter that finds all issues having "patch" as a label, "patch" as a keyword or the "Pull Request Status" value not being empty (I hope this one works, I haven't tested it).
You can see it here: http://jira.xwiki.org/secure/Dashboard.jspa#Issue-Statistics/10472
It's listed on the JIRA home page.
There are 43 open issues with patches ATM. We need to review them and set the "Pull Request Status". We need to decide what to do with "old" patches from the time when we didn't have PR. We should probably just consider them as having PR and set the field status to either "awaiting committer feedback" or "awaiting contributor feedback".
WDYT? Is that good enough?
Thanks -Vincent
On Aug 10, 2012, at 9:17 AM, Thomas Mortagne wrote:
+1 for jira. It will force having a jira issue associated to any contribution.
On Thu, Aug 9, 2012 at 5:05 PM, Ludovic Dubost <[email protected]> wrote:
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests.
Well that's exactly what Jerome suggested.
And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice.
It should be very easy with jira macro but it would maybe make more sense to have it on jira home page (can also be both).
Ludoivc
2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>:
Where exactly do you propose this status to be indicated (I may have missed it) ?
On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> wrote: > > Hi devs, > > I don't think there is currently a process that is in place to handle > pull requests and I have the feeling that the way there are handled > today is a bit random. > There are usually comments sent out on each pull request but sometimes > it seems that some pull requests are going in sleep mode and it's not > clear who is in charge. > > I would like to suggest that a process is put in place where it's > clear who is responsible for a pull request and a status is given to > the contributors that propose that pull request. > > Something like: > > Assigned developer: XXXX > Status: > New -> new pull request, not yet assigned > Assigned -> assigned to a developer, he is in charge of reviewing the > pull request and ask for modifications or accept it. The developer can > auto assign it to himself. If nobody does, we need to decide how they > will be taken into account. > ModificationsRequired -> for now rejected with comments. Contributor > needs to apply comments and then change back to Assigned for further > evaluation > VoteRequired -> there are no more comments, but a vote is required as > the changes to XWiki core are important > WaitingFinalAuthorization -> optional step for complex patches where > a additional authorization would be required (need to define who would > be the persons that give the authorization) > WaitingApplication -> there are no more comments and no changes or > vote required. The pull request can be applied and is waiting for a > developer to apply it > Abandoned -> contributors is abandoning the pull request (cannot do > the changes, no more time, etc..) > Rejected -> pull request is rejected (quality not enough, etc..) > Applied -> pull request is applied > > What do you think ? > > Ludovic > > -- > Ludovic Dubost > Founder and CEO > Blog: http://blog.ludovic.org/ > XWiki: http://www.xwiki.com > Skype: ldubost GTalk: ldubost > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost
+1 for the JIRA field idea. I had issues with this, because I always had to ping or remind committers to take a look at my pull requests. I think this is a good idea, which will encourage more contributors. Thanks Ludovic for proposing this ! Regards, Sorin B. On Mon, Aug 13, 2012 at 3:34 PM, Ludovic Dubost <[email protected]> wrote:
Great. We should add a field to the pull request and either:
1/ Write an XWiki application to show the list of patch marked JIRAs with the link to the pull request and the pull request comments in one UI 2/ Or just list the issues with patches using the JIRA macro
And put this in a nice place on xwiki.org where contributors can see what is going on. 1/ would be better as we would see who has something assigned.
Ludovic
2012/8/13 Vincent Massol <[email protected]>:
Definitely +1 for JIRA.
I've created a custom field called "Pull Request Status" with 3 states: * awaiting creation of pull request * awaiting committer feedback * awaiting contributor feedback
The workflow is the following: * If someone creates a jira issue with a patch we should ask him for a pull request, "awaiting creation of pull request" * Then once the PR is created, the contributor (or us when we do jira cleanup) should move it to "awaiting committer feedback" * If the PR is missing stuff (tests, code best practices, design issue, etc) then the committer should comment in jira or in the PR itself and change the state to "awaiting contributor feedback"
We have a filter that finds all issues having "patch" as a label, "patch" as a keyword or the "Pull Request Status" value not being empty (I hope this one works, I haven't tested it).
You can see it here: http://jira.xwiki.org/secure/Dashboard.jspa#Issue-Statistics/10472
It's listed on the JIRA home page.
There are 43 open issues with patches ATM. We need to review them and set the "Pull Request Status". We need to decide what to do with "old" patches from the time when we didn't have PR. We should probably just consider them as having PR and set the field status to either "awaiting committer feedback" or "awaiting contributor feedback".
WDYT? Is that good enough?
Thanks -Vincent
On Aug 10, 2012, at 9:17 AM, Thomas Mortagne wrote:
+1 for jira. It will force having a jira issue associated to any contribution.
On Thu, Aug 9, 2012 at 5:05 PM, Ludovic Dubost <[email protected]> wrote:
Yes JIRA is a good solution but then we would need a field in JIRA to manage the special status for pull requests.
Well that's exactly what Jerome suggested.
And a nice page on xwiki.org to list all pull requests JIRA with their associated status would be nice.
It should be very easy with jira macro but it would maybe make more sense to have it on jira home page (can also be both).
Ludoivc
2012/8/9 Jerome Velociter <[email protected]>:
On 08/09/2012 04:54 PM, Ludovic Dubost wrote:
I don't think we can modify the GitHub pull request UI (https://github.com/xwiki/xwiki-platform/pulls for platform) which would have been best. Now this can be either:
1/ put the status in a comment to the pull request and manage all that manually 2/ put the status a comment to the pull request and manage an XWiki page that finds the latest STATUS published in a pull request using the github API (http://developer.github.com/v3/pulls/comments/) 3/ use an AppWithinMinutes application to manage the pull request statuses. Using the pull request API the XWiki page could be automatically be created and also send status changes as comments to the pull request
Why not a field in the associated JIRA ?
In general, +1 for a clearly defined workflow
Jerome
My post is not that much about where the statuses would be than about asking for a pull request process which will make sure we don't let pull request sleep without having anybody being responsible and wasting contributors' work because of a lack of organization.
Ludovic
2012/8/9 Thomas Mortagne <[email protected]>: > > Where exactly do you propose this status to be indicated (I may have > missed it) ? > > On Thu, Aug 9, 2012 at 12:23 PM, Ludovic Dubost <[email protected]> > wrote: >> >> Hi devs, >> >> I don't think there is currently a process that is in place to handle >> pull requests and I have the feeling that the way there are handled >> today is a bit random. >> There are usually comments sent out on each pull request but sometimes >> it seems that some pull requests are going in sleep mode and it's not >> clear who is in charge. >> >> I would like to suggest that a process is put in place where it's >> clear who is responsible for a pull request and a status is given to >> the contributors that propose that pull request. >> >> Something like: >> >> Assigned developer: XXXX >> Status: >> New -> new pull request, not yet assigned >> Assigned -> assigned to a developer, he is in charge of reviewing the >> pull request and ask for modifications or accept it. The developer can >> auto assign it to himself. If nobody does, we need to decide how they >> will be taken into account. >> ModificationsRequired -> for now rejected with comments. Contributor >> needs to apply comments and then change back to Assigned for further >> evaluation >> VoteRequired -> there are no more comments, but a vote is required as >> the changes to XWiki core are important >> WaitingFinalAuthorization -> optional step for complex patches where >> a additional authorization would be required (need to define who would >> be the persons that give the authorization) >> WaitingApplication -> there are no more comments and no changes or >> vote required. The pull request can be applied and is waiting for a >> developer to apply it >> Abandoned -> contributors is abandoning the pull request (cannot do >> the changes, no more time, etc..) >> Rejected -> pull request is rejected (quality not enough, etc..) >> Applied -> pull request is applied >> >> What do you think ? >> >> Ludovic >> >> -- >> Ludovic Dubost >> Founder and CEO >> Blog: http://blog.ludovic.org/ >> XWiki: http://www.xwiki.com >> Skype: ldubost GTalk: ldubost >> _______________________________________________ >> devs mailing list >> [email protected] >> http://lists.xwiki.org/mailman/listinfo/devs > > > > -- > Thomas Mortagne > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs
-- Peace, —Jerome
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ludovic Dubost Founder and CEO Blog: http://blog.ludovic.org/ XWiki: http://www.xwiki.com Skype: ldubost GTalk: ldubost _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
On 08/13/2012 06:49 AM, Vincent Massol wrote:
Definitely +1 for JIRA.
I've created a custom field called "Pull Request Status" with 3 states: * awaiting creation of pull request * awaiting committer feedback * awaiting contributor feedback
The workflow is the following: * If someone creates a jira issue with a patch we should ask him for a pull request, "awaiting creation of pull request" * Then once the PR is created, the contributor (or us when we do jira cleanup) should move it to "awaiting committer feedback" * If the PR is missing stuff (tests, code best practices, design issue, etc) then the committer should comment in jira or in the PR itself and change the state to "awaiting contributor feedback"
We have a filter that finds all issues having "patch" as a label, "patch" as a keyword or the "Pull Request Status" value not being empty (I hope this one works, I haven't tested it).
You can see it here: http://jira.xwiki.org/secure/Dashboard.jspa#Issue-Statistics/10472
It's listed on the JIRA home page.
There are 43 open issues with patches ATM. We need to review them and set the "Pull Request Status". We need to decide what to do with "old" patches from the time when we didn't have PR. We should probably just consider them as having PR and set the field status to either "awaiting committer feedback" or "awaiting contributor feedback".
WDYT? Is that good enough?
Sounds good to me. -- Sergiu Dumitriu http://purl.org/net/sergiu/
On 08/09/2012 06:23 AM, Ludovic Dubost wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX
For this there's a field on GitHub. A committer should assign himself on the pull requests that's in his area of expertise.
Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
This is a bit too fine-grained for my taste, it's looking a bit too corporate, too rigid. I prefer what Vincent has been doing on Jira, with a two-state field: - waiting for committer feedback - waiting for contributor feedback
What do you think ?
Ludovic
-- Sergiu Dumitriu http://purl.org/net/sergiu/
Just a small note: there is also an edge case where JIRA is showing that the PR has been Merged, but we actually ended up REVERTING the contribution. Examples: https://jira.xwiki.org/browse/XWIKI-10606 or https://jira.xwiki.org/browse/XWIKI-106 On Tue, Aug 14, 2012 at 11:07 PM Sergiu Dumitriu <[email protected]> wrote:
On 08/09/2012 06:23 AM, Ludovic Dubost wrote:
Hi devs,
I don't think there is currently a process that is in place to handle pull requests and I have the feeling that the way there are handled today is a bit random. There are usually comments sent out on each pull request but sometimes it seems that some pull requests are going in sleep mode and it's not clear who is in charge.
I would like to suggest that a process is put in place where it's clear who is responsible for a pull request and a status is given to the contributors that propose that pull request.
Something like:
Assigned developer: XXXX
For this there's a field on GitHub. A committer should assign himself on the pull requests that's in his area of expertise.
Status: New -> new pull request, not yet assigned Assigned -> assigned to a developer, he is in charge of reviewing the pull request and ask for modifications or accept it. The developer can auto assign it to himself. If nobody does, we need to decide how they will be taken into account. ModificationsRequired -> for now rejected with comments. Contributor needs to apply comments and then change back to Assigned for further evaluation VoteRequired -> there are no more comments, but a vote is required as the changes to XWiki core are important WaitingFinalAuthorization -> optional step for complex patches where a additional authorization would be required (need to define who would be the persons that give the authorization) WaitingApplication -> there are no more comments and no changes or vote required. The pull request can be applied and is waiting for a developer to apply it Abandoned -> contributors is abandoning the pull request (cannot do the changes, no more time, etc..) Rejected -> pull request is rejected (quality not enough, etc..) Applied -> pull request is applied
This is a bit too fine-grained for my taste, it's looking a bit too corporate, too rigid. I prefer what Vincent has been doing on Jira, with a two-state field:
- waiting for committer feedback - waiting for contributor feedback
What do you think ?
Ludovic
-- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
participants (7)
-
Ecaterina Moraru (Valica) -
Jerome Velociter -
Ludovic Dubost -
Sergiu Dumitriu -
Sorin Burjan -
Thomas Mortagne -
Vincent Massol