| <!--- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| # Inviting New Committers and PMC Members |
| |
| This is a cookbook of the recommended DataFusion specific process for inviting |
| new committers and PMC members. It is intended to follow the [Apache Project |
| Management Committee guidelines], which takes precedence over this document if |
| there is a conflict. |
| |
| This process is intended for PMC members. While the process is open, the actual |
| discussions and invitations are not (one of the very few things that we do not |
| do in the open). |
| |
| When following this process, in doubt, check the `private@datafusion.apache.org` |
| [mailing list archive] for examples of previous emails. |
| |
| The general process is: |
| |
| 1. A PMC member starts a discussion on `private@datafusion.apache.org` |
| about a candidate they feel should be considered who would use the additional |
| trust granted to a committer or PMC member to help the community grow and thrive. |
| 2. When consensus is reached a formal [vote] occurs |
| 3. Assuming the vote is successful, that person is granted the appropriate |
| access via ASF systems. |
| |
| [apache project management committee guidelines]: https://www.apache.org/dev/pmc.html |
| [mailing list archive]: https://lists.apache.org/list.html?dev@datafusion.apache.org |
| [vote]: https://www.apache.org/foundation/voting |
| |
| ## New Committers |
| |
| ### Step 1: Start a Discussion Thread |
| |
| The goal of this step is to allow free form discussion prior to calling a vote. |
| This helps the other PMC members understand why you are proposing to invite the |
| person to become a committer and makes the voting process easier. |
| |
| Best practice is to include some details about why you are proposing to invite |
| the person. Here is an example: |
| |
| ``` |
| To: private@datafusion.apache.org |
| Subject: [DISCUSS] $PERSONS_NAME for Committer |
| |
| $PERSONS_NAME has been an active contributor to the DataFusion community for the |
| last 6 months[1][2], helping others, answering questions, and improving the |
| project's code. |
| |
| Are there any thoughts about inviting $PERSONS_NAME to become a committer? |
| |
| Thanks, |
| Your Name |
| |
| [1]: https://github.com/apache/datafusion/issues?q=commenter%3A<github id> |
| [2]: https://github.com/apache/datafusion/commits?author=<github id> |
| ``` |
| |
| ### Step 2: Formal Vote |
| |
| Assuming the discussion thread goes well, start a formal vote, with an email like: |
| |
| ``` |
| To: private@datafusion.apache.org |
| Subject: [VOTE] $PERSONS_NAME for DataFusion Committer |
| I propose to invite $PERSONS_NAME to be a committer. See discussion here [1]. |
| |
| [ ] +1 : Invite $PERSONS_NAME to become a committer |
| [ ] +0: ... |
| [ ] -1: I disagree because ... |
| |
| The vote will be open for at least 7 days. |
| |
| My vote: +1 |
| |
| Thanks, |
| Your Name |
| |
| [1] LINK TO DISCUSSION THREAD (e.g. https://lists.apache.org/thread/7rocc026wckknrjt9j6bsqk3z4c0g5yf) |
| ``` |
| |
| If the vote passes (requires 3 `+1`, and no `-1` voites) , send a result email |
| like the following (substitute `N` with the number of `+1` votes) |
| |
| ``` |
| to: private@datafusion.apache.org |
| subject: [RESULT][VOTE] $PERSONS_NAME for DataFusion Committer |
| |
| The vote carries with N +1 votes. |
| ``` |
| |
| ### Step 3: Send Invitation to the Candidate |
| |
| Once the vote on `private@` has passed and the `[RESULT]` e-mail sent, send an |
| invitation to the new committer and cc: `private@datafusion.apache.org` |
| |
| In order to be given write access, the committer needs an apache.org account (e.g. `name@apache.org`). To get one they need: |
| |
| 1. An [ICLA] on file. Note that Sending an ICLA to `secretary@apache.org` will trigger account creation. If they already have an ICLA on file, but no Apache account, see instructions below. |
| 2. Add GitHub username to the account at [id.apache.org](http://id.apache.org/) |
| 3. Connect [gitbox.apache.org] to their GitHub account |
| 4. Follow the instructions at [gitbox.apache.org] to link your GitHub account with your |
| |
| [gitbox.apache.org]: https://gitbox.apache.org |
| |
| If the new committer is already a committer on another Apache project (so they |
| already had an Apache account), The PMC Chair (or an ASF member) simply needs to |
| explicitly add them to the roster on the [Whimsy Roster Tool]. |
| |
| ### Step 4: Announce and Celebrate the New Committer |
| |
| Email to Send an email such as the following to |
| [dev@datafusion.apache.org](mailto:dev@datafusion.apache.org) to celebrate and |
| acknowledge the new committer to the community. |
| |
| ``` |
| To: dev@datafusion.apache.org |
| Subject: [ANNOUNCE] New DataFusion committer: $NEW_COMMITTER |
| |
| On behalf of the DataFusion PMC, I'm happy to announce that $NEW_COMMITTER |
| has accepted an invitation to become a committer on Apache |
| DataFusion. Welcome, and thank you for your contributions! |
| |
| <your name> |
| ``` |
| |
| [icla]: http://www.apache.org/licenses/#clas |
| |
| ## Email Templates for Inviting New Committers |
| |
| ### Committers WITHOUT an Apache account and WITHOUT ICLA on file |
| |
| You can check here to see if someone has an Apache account: http://people.apache.org/committer-index.html |
| |
| If you aren't sure whether someone has an ICLA on file, ask the DataFusion PMC |
| chair or an ASF Member to check [the ICLA file list]. |
| |
| [the icla file list]: https://whimsy.apache.org/officers/unlistedclas.cgi |
| |
| ``` |
| To: $EMAIL |
| Cc: private@datafusion.apache.org |
| Subject: Invitation to become a DataFusion Committer |
| |
| Dear $NEW_COMMITTER, |
| |
| The DataFusion Project Management Committee (PMC) hereby offers you |
| committer privileges to the project. 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 merge PRs to DataFusion git repositories. |
| |
| 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 this email, make sure to reply-all (it should send a copy to |
| private@datafusion.apache.org) for record keeping / log of the project. |
| |
| B. If you accept, the next step is to register an ICLA: |
| |
| Details of the iCLA and how to submit them are found through this link: |
| https://www.apache.org/licenses/contributor-agreements.html#clas |
| |
| When you transmit the completed ICLA, request to notify Apache |
| DataFusion 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. |
| |
| Once you are notified that your Apache account has been created, you must then: |
| |
| 1. Add your GitHub username to your account at id.apache.org |
| |
| 2. Follow the instructions at gitbox.apache.org to link your GitHub account |
| with your Apache account. |
| |
| You will then have write (but not admin) access to the DataFusion repositories. |
| If you have questions or run into issues, please reply-all to this e-mail. |
| ``` |
| |
| After the new account has been created, you can announce the new committer on `dev@` |
| |
| ### Committers WITHOUT an Apache account but WITH an ICLA on file |
| |
| In this scenario, an officer (the project VP or an Apache Member) needs only to |
| request an account to be created for the new committer, since through the |
| ordinary process the ASF Secretary will do it automatically. This is done at |
| https://whimsy.apache.org/officers/acreq. Before requesting the new account, |
| send an e-mail to the new committer (cc'ing `private@`) like this: |
| |
| ``` |
| To: $EMAIL |
| Cc: private@datafusion.apache.org |
| Subject: Invitation to become a DataFusion Committer |
| |
| Dear $NEW_COMMITTER, |
| |
| The DataFusion Project Management Committee (PMC) hereby offers you |
| committer privileges to the project. 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 merge PRs to DataFusion git repositories. |
| |
| 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. |
| |
| This personal invitation is a chance for you to accept or decline |
| in private. Either way, please let us know in reply to this email, make sure to reply-all (it should send a copy to |
| private@datafusion.apache.org) for record keeping / log of the project. We will have to request an |
| Apache account be created for you, so please let us know what user id |
| you would prefer. |
| |
| Once you are notified that your Apache account has been created, you must then: |
| |
| 1. Add your GitHub username to your account at id.apache.org |
| |
| 2. Follow the instructions at gitbox.apache.org to link your GitHub account |
| with your Apache account. |
| |
| You will then have write (but not admin) access to the DataFusion repositories. |
| If you have questions or run into issues, please reply-all to this e-mail. |
| ``` |
| |
| ### Committers WITH an existing Apache account |
| |
| In this scenario, an officer (the project PMC Chair or an ASF Member) can simply add |
| the new committer on the [Whimsy Roster Tool]. Before doing this, e-mail the new |
| committer inviting them to be a committer like so (cc private@): |
| |
| ``` |
| To: $EMAIL |
| Cc: private@datafusion.apache.org |
| Subject: Invitation to become a DataFusion Committer |
| |
| Dear $NEW_COMMITTER, |
| |
| The DataFusion Project Management Committee (PMC) hereby offers you |
| committer privileges to the project. 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 merge PRs to DataFusion git repositories. |
| |
| 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. |
| |
| If you accept, please let us know in reply to this email, make sure to reply-all (it should send a copy to |
| private@datafusion.apache.org) for record keeping / log of the project. |
| ``` |
| |
| ## New PMC Members |
| |
| This is a DataFusion specific cookbook for the Apache Software Foundation |
| instructions on [how to add a PMC member]. |
| |
| [how to add a pmc member]: https://www.apache.org/dev/pmc.html#pmcmembers |
| |
| ### Step 1: Start a Discussion Thread |
| |
| As for committers, start a discussion thread on the `private@` mailing list |
| |
| ``` |
| To: private@datafusion.apache.org |
| Subject: [DISCUSS] $NEW_PMC_MEMBER for PMC |
| |
| I would like to propose adding $NEW_PMC_MEMBER[1] to the DataFusion PMC. |
| |
| $NEW_PMC_MEMBMER has been a committer since $COMMITTER_MONTH [2], has a |
| strong and sustained contribution record for more than a year, and focused on |
| helping the community and the project grow[3]. |
| |
| Are there any thoughts about inviting $NEW_PMC_MEMBER to become a PMC member? |
| |
| [1] https://github.com/$NEW_PMC_MEMBERS_GITHUB_ACCOUNT |
| [2] LINK TO COMMMITER VOTE RESULT THREAD (e.g. https://lists.apache.org/thread/ovgp8z97l1vh0wzjkgn0ktktggomxq9t) |
| [3]: https://github.com/apache/datafusion/pulls?q=commenter%3A<$NEW_PMC_MEMBERS_GITHUB_ACCOUNT>+ |
| |
| Thanks, |
| YOUR NAME |
| ``` |
| |
| ### Step 2: Formal Vote |
| |
| Assuming the discussion thread goes well, start a formal vote with an email like: |
| |
| ``` |
| To: private@datafusion.apache.org |
| Subject: [VOTE] $NEW_PMC_MEMBER for PMC |
| |
| I propose inviting $NEW_PMC_MEMBER to join the DataFusion PMC. We previously |
| discussed the merits of inviting $NEW_PMC_MEMBER to join the PMC [1]. |
| |
| The vote will be open for at least 7 days. |
| |
| [ ] +1 : Invite $NEW_PMC_MEMBER to become a PMC member |
| [ ] +0: ... |
| [ ] -1: I disagree because ... |
| |
| My vote: +1 |
| |
| [1] LINK TO DISCUSSION THREAD (e.g. https://lists.apache.org/thread/x2zno2hs1ormvfy13n7h82hmsxp3j66c) |
| |
| Thanks, |
| Your Name |
| ``` |
| |
| If this vote succeeds, send a "RESULT" email to `private@` like this: |
| |
| ``` |
| To: private@datafusion.apache.org |
| Subject: [RESULT][VOTE] $NEW_PMC_MEMBER for PMC |
| |
| The vote carries with N +1 votes and no -1 votes. I will send an invitation |
| ``` |
| |
| ### Step 3: Send invitation email |
| |
| Assuming the vote passes, the Chair sends an invitation e-mail to the new PMC |
| member (cc'ing `private@`) like this: |
| |
| ``` |
| To: $EMAIL |
| Cc: private@datafusion.apache.org |
| Subject: Invitation to join the DataFusion PMC |
| Dear $NEW_PMC_MEMBER, |
| |
| In recognition of your demonstrated commitment to, and alignment with, the |
| goals of the Apache DataFusion project, the DataFusion PMC has voted to offer you |
| membership in the DataFusion PMC ("Project Management Committee"). |
| |
| Please let us know if you accept by subscribing to the private alias [by |
| sending mail to private-subscribe@datafusion.apache.org], and posting |
| a message to private@datafusion.apache.org. |
| |
| The PMC for every top-level project is tasked by the Apache Board of |
| Directors with official oversight and binding votes in that project. |
| |
| As a PMC member, you are responsible for continuing the general project, code, |
| and community oversight that you have exhibited so far. The votes of the PMC |
| are legally binding. |
| |
| All PMC members are subscribed to the project's private mail list, which is |
| used to discuss issues unsuitable for an open, public forum, such as people |
| issues (e.g. new committers, problematic community members, etc.), security |
| issues, and the like. It can't be emphasized enough that care should be taken |
| to minimize the use of the private list, discussing everything possible on the |
| appropriate public list. |
| |
| The private PMC list is *private* - it is strictly for the use of the |
| PMC. Messages are not to be forwarded to anyone else without the express |
| permission of the PMC. Also note that any Member of the Foundation has the |
| right to review and participate in any PMC list, as a PMC is acting on behalf |
| of the Membership. |
| |
| Finally, the PMC is not meant to create a hierarchy within the committership or |
| the community. Therefore, in our day-to-day interactions with the rest of the |
| community, we continue to interact as peers, where every reasonable opinion is |
| considered, and all community members are invited to participate in our public |
| voting. If there ever is a situation where the PMC's view differs significantly |
| from that of the rest of the community, this is a symptom of a problem that |
| needs to be addressed. |
| |
| With the expectation of your acceptance, welcome! |
| |
| The Apache DataFusion PMC |
| ``` |
| |
| ### Step 4: Chair Promotes the Committer to PMC |
| |
| The PMC chair adds the user to the PMC using the [Whimsy Roster Tool]. |
| |
| ### Step 5: Announce and Celebrate the New PMC Member |
| |
| Send an email such as the following to `dev@datafusion.apache.org` to celebrate: |
| |
| ``` |
| To: dev@datafusion.apache.org |
| Subject: [ANNOUNCE] New DataFusion PMC member: $NEW_PMC_MEMBER |
| |
| The Project Management Committee (PMC) for Apache DataFusion has invited |
| $NEW_PMC_MEMBER to become a PMC member and we are pleased to announce |
| that $NEW_PMC_MEMBER has accepted. |
| |
| Congratulations and welcome! |
| ``` |
| |
| [whimsy roster tool]: https://whimsy.apache.org/roster/committee/datafusion |