Request for pull mailbot

Erik Massop edited this page Nov 4, 2017 · 1 revision

This page contains discussion about a certain issue or technical concept - feel free to edit and add comments. Once the issue has been resolved and/or the relevant details have been worked out, the comments and discussion will be moved to the talk page and this page will be finalised.

This page outlines ideas for a more well defined process for integrating code in the main repository

The main point of this change is to foster peer review. But as a side effect it should also make it easier to do automated sanity checks on code and changesets and hopefully make it _easier_ to get code integrated. Today the developer (DEV) needs to tell/nag someone with write access to -devel, the integrator (IGR), to get their changes accepted and propagated to -devel. There is no well-defined process of what the requirements are, and how easy it is depends on the IGR and his/her mood, how busy (s)he is and a lot of other things (like how annoying the DEV is).

My idea is to have a little mailbot.

DEV has done some (at least (s)he thinks so) nice commits in his tree. To integrate the changes in -devel the following steps need to be taken:

  • push the commits to his public repository, git://git.xmms.se/xmms2/xmms2-randdev.git.
  • send a mail to rfp@xmms.se stating the commit id for the top of tree he wishes to integrate into -devel
    • Is this really necessary, isn't the idea that whatever is pushed is something you want to get included? tru
  • rfp@xmms.se is the mailbot, which now does some sanitychecking. Suggested tests:
    • check that current -devel is included in the tree to integrate.
    • check that all changeset comments have correct tagging (OTHER/BUG/FEATURE)
    • merge / compilation test? tru
  • If any of the tests failed DEV will get a reply informing him of the tests that failed.
  • If all tests passed a mail is sent to the mailinglist. This will include:
    • Each commit's changelog and diffstat.
    • If small enough, the diff.
    • Any non fatal warnings that the sanitychecker may have produced.
  • Other DEVs/IGRs can review the code, and reply to the mail (to the mailinglist).
    • If they think it is ok to integrate they include a RFP OK line in their mail.
    • The change can also be vetoed by including RFP VETO in the mail.
  • When required number of OK's is received, the changesets are automatically pulled into -devel.

The criteria could be something like (this is just an example!):

  • No vetos from core developers
  • Two OK from core developers, or...
    • One OK from core developers and more than 2 OK from non core developers

Other ideas:

  • How about mailing patches more or less in the same way? Maybe pulled directly from mantis? tru
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.