Title: NewCommitter Identifying potential new commiters, calling a vote for their recognition as a committer and processing the relevant documents is something that the whole community can contribute to. Each project has different appraoches to managing new committers, this page describes a common process found in many Apache projects. It also provides drafts for the various communications that are necessary. # Guidelines for assessing new candidates for committership When voting, all PMC members need to make up your own mind, perhaps search mailing lists and Jira, etc. The following are some tips that we developed. Also consider the Apache Forrest [committer guidelines](http://forrest.apache.org/committed.html). ## Ability to work co-operatively with peers. How do we evaluate? By the interactions they have through mail. By how they respond to criticism. By how they participate in decision-making process. ## Ability to be a mentor. How do we evaluate? By the interactions they have through mail. By how clear they are and how willing they are to point at appropriate background materials (or even create them). ## Community How do we evaluate? By the interactions they have through mail. ## Committment How do we evaluate? By time, by sticking through tough issues, by helping on not-so-fun tasks as well. ## Personal skill/ability How do we evaluate? A solid general understanding of the project. Quality of discussion in mail. Patches (where applicable) easy to apply with only a cursory review. # New Committer Process This section describes a typical Apache projects process for handling the voting of a new committer. Templates mentioned in the process appear at later in this document. ## Summary 1. Call a vote: templates/committerVote.txt 1. Invite the new committer: templates/committerInvite.txt If they accept, then do: 1. Accept the committer - note this assumes the committer is also to be a PMC member (templates/committerAccept.txt) 1. wait until we see that receipt of CLA is recorded 1. Request creation of the committer account (template/committerCreate.txt) 1. now wait until root says it is done 1. chair to enable their svn access 1. add committer to the appropriate groups in Jira and CWiki 1. Notify the committer of completion (template/committerDone.txt) 1. chair send email to board@ asking for acknowledgement of new PMC member (templates/email-member-ack.txt) 1. Announce the new committer (template/committerAnnounce.txt) ## Discussion We do the vote on the private mailing list to enable a frank discussion. Start a separate Vote thread for each new person. This makes it much easier to review the mail archives. In most cases, we will be inviting people to go straight from developer to PMC member. However, there may be extraordinary cases where we want limited work-related commit access. This will be resolved during the vote discussion. We need to be sure that they are committed people that we can work with. They will be our peers. We will have already observed that they are committed to the project and graceful toward users and other developers. Don't wait too long before proposing and don't be too hasty. There is a trade-off and something about timeliness. A point is reached where it becomes obvious that we should invite them. This encourages them and keeps them enthusiastic. If we leave it too long, then we risk them becoming disillusioned. On the PMC list we can each say exactly what we feel about each person, with no holds barred. Keep the discussion concise. The praise part can be done later in public. See the end of this document for some guidelines to help you to assess a candidate. Let the Vote thread run for one week. A positive result is achieved by Consensus Approval i.e. at least 3 +1 votes and no vetoes. Any veto must be accompanied by reasoning and be prepared to defend it. Other members can attempt to encourage them to change. New PMC members can be either quiet or active as they choose. If we find that certain people lapse and don't ever contribute, then we can take steps to retire them. After a positive result, we give them a chance to decline in private. They can post a reply to the PMC mailing list. After we reach a decision on the PMC list, and after the steps above, we will announce it on the dev list. We can then each follow up with our praise in public. Other notes about the process are available on the main [Apache site](http://www.apache.org/dev/pmc.html#newcommitter) # Email Templates ## Committer Vote Template This is the email to commence a vote for a new committer member. Some projects make committers PMC members automatically, if this is the case then merge this with the following template (PMC Vote Template) ------------------------------------------------------------ To: private@[PROJECT].apache.org Subject: [Vote] new committer: Joe Bloggs [ add the reasons behind your nomination here ] Voting ends one week from today, i.e. midnight UTC on YYYY-MM-DD http://www.timeanddate.com/counters/customcounter.html?year=YYYY&month=MM&day=DD See voting guidelines at https://svn.apache.org/repos/private/pmc/forrest/pmc-member-vote.txt (yes, this links to the Apache Forrest Guidelines, we don't have our own yet) ------------------------------------------------------------ ## PMC Vote Template This is the email to commence a vote for a new PMC candidate. New PMC members need to be voted for by the existing PMC members and subsequently approved by the Board (or Incubator PMC for Incubating projects). ------------------------------------------------------------ To: private@[PROJECT].apache.org Subject: [Vote] new PMC candidate: Joe Bloggs [ add the reasons behind your nomination here ] Voting ends one week from today, i.e. midnight UTC on YYYY-MM-DD http://www.timeanddate.com/counters/customcounter.html?year=YYYY&month=MM&day=DD See voting guidelines at https://svn.apache.org/repos/private/pmc/forrest/pmc-member-vote.txt (yes, this links to the Apache Forrest Guidelines, we don't have our own yet) ## Close Vote This is the email ends the vote and reports the result to the project. ------------------------------------------------------------ To: private@[PROJECT].a.o Subject: [RESULT] [Vote] new PMC candidate: Joe Bloggs The vote has now closed. The results are: Binding Votes: +1 [TOTAL BINDING +1 VOTES] 0 [TOTAL BINDING +0/-0 VOTES] -1 [TOTAL BINDING -1 VOTES] The vote is ***successful/not successful*** #Board Approval of new PMC member Assuming that a vote for a new PMC member passes it is now necessary to get approval from the Board. Send the mail below to the board. This will be acknowledged by a bard member. 72 hours after the acknowledgement the PMC can proceed. See http://www.apache.org/dev/pmc.html#newpmc for more details ------------------------------------------------------------ To: board@apache.org Cc: private@[PROJECT].apache.org Subject: Approve new PMC member for [PROJECT]: Joe Blogs The [PROJECT] PMC has voted to invite Joe Blogs ([Apache ID]) to the PMC. Please approve/acknowledge this PMC addition ## Committer Invite Template This is the invitation email, sent after a positive result from the vote for a new committer. ------------------------------------------------------------ To: JoeBloggs@foo.net Cc: private@[PROJECT].apache.org Subject: invitation to become [PROJECT] committer: Joe Bloggs Hello [invitee name], The [Project] Project Management Committee] (PMC) hereby offers you committer privileges to the project [as well as membership in the PMC]. These privileges are offered on the understanding that you'll use them reasonably and with common sense. We like to work on trust rather than unnecessary constraints. Being a committer enables you to more easily make changes without needing to go through the patch submission process. [Being a PMC member enables you to guide the direction of the project.] Being a committer does not require you to participate any more than you already do. It does tend to make one even more committed. You will probably find that you spend more time here. Of course, you can decline and instead remain as a contributor, participating as you do now. A. This personal invitation is a chance for you to accept or decline in private. Either way, please let us know in reply to the [privae@project.apache.org] address only. B. If you are accepting, the next step is to register an iCLA with the Apache Software Foundation: 1. Details of the iCLA and the forms are found through this link: . 2. The form (text or PDF version) provides instructions for its completion and return to the Secretary of the ASF. 3. When you transmit the completed iCLA, request to notify the Apache [Project] and choose a unique Apache id. Look to see if your preferred id is already taken at http://people.apache.org/committer-index.html This will allow the Secretary to notify the PMC when your iCLA has been recorded. When recording of your iCLA is noticed, you will receive a follow-up message with the next steps for establishing you as a committer. ## Committer Accept Template This is the followup email after the new committer has accepted the invitation ------------------------------------------------------------------------ To: JoeBloggs@foo.net Cc: private@[PROJECT].apache.org Subject: Re: invitation to become [PROJECT] committer Welcome. Here are the next steps. After that we will make an announcement to the [PROJECT]-dev list. You need to send a Contributor License Agreement to the ASF. Normally you would send an Individual CLA. If you also make contributions done in work time or using work resources then see the Corporate CLA. Ask us if you have any issues. http://www.apache.org/licenses/#clas You need to choose a preferred ASF user name and alternatives. In order to ensure it is available you can view a list of taken ids at http://people.apache.org/committer-index.html Please notify us when you have submitted the CLA and by what means you did so. This will enable us to monitor its progress. We will arrange for your Apache user account when the CLA has been recorded. After that is done, please make followup replies to the [PROJECT]-dev list. We generally discuss everything there and keep the private@[PROJECT].apache.org list for occasional matters which must be private. The developer section of the website describes the roles and provides other resources: http://www.apache.org/foundation/how-it-works.html http://www.apache.org/dev/ The incubator also has some useful information for new committers in incubating projects: http://incubator.apache.org/guides/committer.html http://incubator.apache.org/guides/ppmc.html In the absence of our own guidelines document we are currently using those developed at Apache Forrest: http://forrest.apache.org/guidelines.html Yours, The Apache [PROJECT] PMC ## Committer Account Creation Follow the instructions at: http://www.apache.org/dev/pmc.html#newcommitter In summary the account creation request is made by the PMC Chair (or any ASF Member if the chair is unavailable) PMC chair needs to use the [ASF New Account Request][1] form to send a new account request. Members may use [ASF New Account Request][2] page for ASF members to use. For elections held on public lists, please supply the [mail-archives.apache.org][3] url. For private lists, you can use the [Mail Search tool][4] to locate the apprpropriate url. ## Committer Announce Template This is the email to announce to [PROJECT]-dev once the account has been created. ------------------------------------------------------------ To: dev@[PROJECT].apache.org Subject: new committer: ###Joe Bloggs The Project Management Committee (PMC) for Apache [PROJECT] has asked Joe Bloggs to become a committer and we are pleased to announce that they have accepted. ### add specific details here ### Being a committer enables easier contribution to the project since there is no need to go via the patch submission process. This should enable better productivity. Being a PMC member enables assistance with the management and to guide the direction of the project. ## Committer Done Template After the committer account is established. ------------------------------------------------------------ To: private@[PROJECT].a.o, ###JoeBloggs@foo.net Subject: account request: ###Joe Bloggs ####, as you know, the ASF Infrastructure has set up your committer account as the username '####'. Please follow the instructions to set up your SSH, svn password, svn configuration, mail forwarding, etc. http://www.apache.org/dev/#committers Please subscribe to the [PROJECT] Project Management Committee mailing list private@[PROJECT].apache.org. You have commit access to specific sections of the ASF repository, as follows: [PROJECT] has various resources at: https://svn.apache.org/repos/asf/[PROJECT] The general "committers" at: https://svn.apache.org/repos/private/committers You will probably need to 'svn switch" previous checkouts to now use https, for example: svn switch --relocate http://svn.apache.org/repos/asf/[PROJECT] https://svn.apache.org/repos/asf/[PROJECT] If you have any questions during this phase, then please see the following resources: Apache developer's pages: http://www.apache.org/dev/ Incubator committer guide: http://incubator.apache.org/guides/committer.html Naturally, if you don't understand anything be sure to ask us on the [PROJECT] dev mailing list. Documentation is maintained by volunteers and hence can be out-of-date and incomplete - of course you can now help fix that. One of us will announce you to the dev list soon. [1]: https://id.apache.org/acreq/pmc-chairs/ [2]: https://id.apache.org/acreq/members/ [3]: http://mail-archives.apache.org/ [4]: https://mail-search.apache.org/