Apache HugeGraph Committer Guide

This document outlines the requirements and process for becoming an Apache Committer. The corresponding ASF official document can be found at: <https://community.apache.org/newcommitter.html>

Candidate Requirements

  1. Candidates must adhere to the Apache Code of Conduct.
  2. PMC members will assess candidates’ interactions with others and contributions through mailing lists, issues, pull requests, and official documentation.
  3. Considerations for evaluating candidates as potential Committers include:
  4. Ability to collaborate with community members
  5. Mentorship capabilities
  6. Community involvement
  7. Level of contribution
  8. Personal skills/abilities

Nomination Process

Discussion → Vote → Invitation → Announcement

1. Initiate Community Discussion (DISCUSS)

Any (P)PMC member of HugeGraph can initiate a voting discussion. After identifying valuable contributions from a community contributor and obtaining the candidate’s consent, a discussion can be initiated via private@hugegraph.apache.org. The initiator of the discussion should clearly state the candidate’s contributions in the discussion email and provide URLs or other information for confirming the contributions, facilitating discussion and analysis.

Below is a template for HugeGraph emails: (For reference only)

Note: The term xxx will be used to refer to the candidate. Typically, xxx represents an easily readable name (e.g., Simon Jay).

ASF-INFRA recommends avoiding the use of less readable ID directly as a reference to the person in emails (e.g., avoid simon321 or wh0isSim0n 😄).

In addition, it is best to choose the “pure text” mode, otherwise the typesetting may be chaotic in the ASF Mailing-list UI

1. To: private@hugegraph.apache.org
2. Subject: [DISCUSS] XXX as a HugeGraph Committer Candidate

4. Hi all:

6. I am pleased to nominate xxx for the role of HugeGraph Committer based on his/her contributions over the past few months.

8. [ Candidate's Contribution Summary ]

10. Here are the relevant PRs (issues) he/she has participated in:

12. **Core Features:**
13. - Feature 1: [ Reference Links ]
14. - ...

16. **Fix/Chore/Release:**

18. **Doc:**

20. [ Candidate's Current Notable Contributions ]

22. His/Her contributions bring the following benefits to the community, helping us in the following ways:

24. [ Candidate's Contributions and Benefits to the Community ]

26. In view of the above contributions, I elect xxx as Committer of the HugeGraph project.

28. [ Reference Links ]
29. 1. PR1
30. 2. PR2
31. 3. ...

33. Welcome everyone to share opinions~

35. Thanks!

For contribution links in discussion emails, you can use the statistical feature of GitHub Search by entering corresponding keywords as needed. You can also adjust parameters and add new repositories such as repo:apache/incubator-hugegraph-computer. Pay special attention to adjusting the time range (below is a template reference, please adjust the parameters accordingly):

  • Number of PR submissions
  • is:pr author:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Lines of code submissions/changes
  • <https://github.com/apache/incubator-hugegraph/graphs/contributors?from=2023-06-01&to=2023-12-25&type=c>
  • <https://github.com/apache/incubator-hugegraph-doc/graphs/contributors?from=2023-06-01&to=2023-12-25&type=c>
  • Number of PR submissions associated with issues
  • linked:issue involves:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Number of PR reviews
  • type:pr reviewed-by:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Number of merge commits
  • type:pr author:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Effective lines merged
  • <https://github.com/apache/incubator-hugegraph/graphs/contributors?from=2023-06-01&to=2023-12-25&type=c>
  • <https://github.com/apache/incubator-hugegraph-doc/graphs/contributors?from=2023-06-01&to=2023-12-25&type=c>
  • Number of issue submissions
  • type:issue author:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Number of issue fixes
  • Based on the number of issue submissions, select those with a closed status.
  • Number of issue participations
  • type:issue involves:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Number of issue comments
  • type:issue commenter:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25
  • Number of PR comments
  • type:pr commenter:xxx repo:apache/incubator-hugegraph repo:apache/incubator-hugegraph-doc created:>2023-06-01 updated:<2023-12-25

For participation in mailing lists, you can use <https://lists.apache.org/list?dev@hugegraph.apache.org:lte=10M:xxx>.

2. Initiate Community Voting Email (VOTE)

If there are no dissenting opinions within the specified time frame of the discussion email, the initiator of the discussion needs to initiate a voting email for the committer election at private@hugegraph.apache.org.

Below is the corresponding email template:

1. To: private@hugegraph.apache.org
2. Subject: [VOTE] xxx as a HugeGraph Committer

4. Hi all:

6. Through the discussion of last week:
7. [ Discussion Mailing List Link ]

9. We have discussed and listed what xxx participated in the HugeGraph community.
10. I believe making him/her a Committer will enhance the work for HugeGraph.

12. So, I am happy to call VOTE to accept xxx as a HugeGraph Committer.

14. Voting will continue for at least 72 hours or until the required number of votes is reached.

16. Please vote accordingly:
17. [ ] +1 approve
18. [ ] +0 no opinion
19. [ ] -1 disapprove with the reason

21. Thanks!

Then, (P)PMC members reply to the email with +1 or -1 to express their opinions. Generally, at least 3 votes of +1 are needed to conclude the vote.

Announcement of Voting Results (RESULT)

After the voting email concludes, the initiator of the vote needs to remind the end of the voting in the email. Additionally, the initiator needs to announce the voting results via email to private@hugegraph.apache.org. The email template can be as follows:

1. To: private@hugegraph.apache.org
2. Subject: [RESULTS][VOTE] xxx as a HugeGraph Committer

4. Hi all: The vote for "xxx" as an HugeGraph Committer has PASSED and closed now.

6. The result is as follows: X PMC +1 Votes:
7. - A (PMC ID)
8. - B
9. - C...

11. Vote thread:
12. put vote thread link here

14. Then I'm going to invite xxx to join us soon. Thanks for everyone's support!

Send Invitation Email to Candidate (INVITE)

After the announcement of the voting results email is sent, the initiator of the vote should send an invitation email to the candidate. The invitation email is addressed to the candidate and cc’d to private@hugegraph.apache.org. The invited candidate must reply to the specified email address to accept or reject the invitation.

Below is a template for reference:

1. To: [ Candidate's Email ]
2. Cc: private@hugegraph.apache.org
3. Subject: Invitation to become HugeGraph committer: xxx

5. Hello xxx,

7. The HugeGraph Project Management Committee (PPMC)
8. hereby offers you committer privileges to the project.
9. These privileges are offered on the understanding that you'll use them
10. reasonably and with common sense. We like to work on trust
11. rather than unnecessary constraints.

13. Being a committer enables you to more easily make
14. changes without needing to go through the patch
15. submission process.

17. Being a committer does not require you to
18. participate any more than you already do. It does
19. tend to make one even more committed.  You will
20. probably find that you spend more time here.

22. Of course, you can decline and instead remain as a
23. contributor, participating as you do now.

25. A. This personal invitation is a chance for you to
26. accept or decline in private.  Either way, please
27. let us know in reply to the private@hugegraph.apache.org
28. address only.

30. B. If you accept, the next step is to register an iCLA:
31. 1. Details of the iCLA and the forms are found
32. through this link: https://www.apache.org/licenses/#clas

34. 2. Instructions for its completion and return to
35. the Secretary of the ASF are found at
36. https://www.apache.org/licenses/#submitting

38. 3. When you transmit the completed iCLA, request
39. to notify the Apache HugeGraph project and choose a
40. unique Apache ID. Look to see if your preferred
41. ID is already taken at
42. https://people.apache.org/committer-index.html
43. This will allow the Secretary to notify the PMC
44. when your iCLA has been recorded.

46. When recording of your iCLA is noted, you will
47. receive a follow-up message with the next steps for
48. establishing you as a committer.

50. With the expectation of your acceptance, welcome!

52. The Apache HugeGraph(incubating) PPMC

Candidate Accepts Invitation (ACCEPT)

The candidate should reply to the aforementioned email (select reply all) to indicate acceptance of the invitation. Below is a template for the email:

1. To: [ Sender's Email ]
2. Cc: private@hugegraph.apache.org
3. Subject: Re: Invitation to become HugeGraph committer: xxx

5. Hello Apache HugeGraph(incubating) PPMC,

7. I accept the invitation.

9. Thanks to the Apache HugeGraph Community for recognizing my work, I
10. will continue to actively participate in the work of the Apache
11. HugeGraph(incubating).

13. Next, I will follow the instructions to complete the next steps:
14. Signing and submitting iCLA and registering Apache ID.

16. xxx

Of course, the candidate may also choose to decline the invitation, in which case there is no template:)

Once the invitation is accepted, the candidate needs to complete the following tasks:

ICLA Signing Process

  1. Download the ICLA
  2. Open the PDF and fill in the required information. All fields must be filled in English. It is recommended to use a PDF tool to edit and sign.
  3. Full name: First name followed by last name
  4. Public name: Optional, defaults to the same as Full name
  5. Check the box only if you entered names with your family name first
  6. Postal Address: English address, starting from small to large, including detailed street address
  7. Country: Country of residence in English
  8. E-mail: Email address, preferably the same as the one used in the invitation email
  9. (optional) preferred Apache id(s): Choose an SVN ID that is not listed on the Apache committer page
  10. (optional) notify project: Apache HugeGraph(incubating)
  11. Signature: Must be handwritten using a PDF tool
  12. Date: Format as xxxx-xx-xx
  13. After signing, rename icla.pdf to name-pinyin-icla.pdf
  14. Send the following email and attach name-pinyin-icla.pdf as a reference.
1. To: secretary@apache.org
2. Subject: ICLA Information

4. Hello everyone:

6. I have accepted the Apache HugeGraph(incubating) PPMC invitation to
7. become a HugeGraph committer, the attachment is my ICLA information.

9. (Optional) My GitHub account is https://github.com/xxx. Thanks!

11. xxx

For more details, please refer to <https://github.com/apache/hugegraph/issues/1732>.

PMC members will await confirmation of the ICLA record from the Apache secretary team. Candidates and PMC members will receive the following email:

1. Dear xxx,

3. This message acknowledges receipt of your ICLA, which has been filed in the Apache Software Foundation records.

5. Your account (with id xxx) has been requested for you and you should receive email with next steps
6. within the next few days (this process can take up to a week).

8. Please refer to https://www.apache.org/foundation/how-it-works.html#developers
9. for more information about roles at Apache.

Setting Up Apache Account and Development Environment (CONFIG)

After the record is completed, the candidate will receive an email from root@apache.org with the subject Welcome to the Apache Software Foundation. At this point, the candidate needs to follow the steps in the email to set up the Apache account and development environment:

  1. Reset the password at <https://id.apache.org/reset/enter>.
  2. Configure personal information at <https://whimsy.apache.org/roster/committer/xxx>.
  3. Associate GitHub account at <https://gitbox.apache.org/boxer>.
  4. This step requires configuring GitHub Two-Factor Authentication (2FA).
  5. The nominating PMC member must add the new Committer to the official list of committers via the Roster page. (Important, otherwise repository permissions will not take effect).
  6. After this step, the candidate becomes a new Committer and gains write access to the GitHub HugeGraph repository.
  7. (Optional) The new Committer can apply for free use of JetBrains’ full range of products with their Apache account here.

Announcing via Email (ANNOUNCE)

After the candidate completes the above steps, they will officially become a Committer of HugeGraph. At this point, they need to send an announcement email to dev@hugegraph.apache.org. Below is a template for the email:

1. To: dev@hugegraph.apache.org
2. Subject: [ANNOUNCE] New Committer: xxx

4. Hi everyone, The PPMC for Apache HugeGraph(incubating) has invited xxx to
5. become a Committer and we are pleased to announce that he/she has accepted.

7. xxx is being active in the HugeGraph community & dedicated to ... modules,
8. and we are glad to see his/her more interactions with the community in the future.

10. (Optional) His/Her GitHub account is https://github.com/xxx

12. Welcome xxx, and please enjoy your community journey~

14. Thanks!

16. The Apache HugeGraph PPMC

References

  1. <https://community.apache.org/newcommitter.html> (ASF official documentation)
  2. <https://infra.apache.org/new-committers-guide.html>
  3. <https://www.apache.org/dev/pmc.html#newcommitter>
  4. <https://linkis.apache.org/zh-CN/community/how-to-vote-a-committer-pmc>
  5. <https://www.apache.org/licenses/contributor-agreements.html#submitting>
  6. <https://www.apache.org/licenses/cla-faq.html#printer>
  7. <https://linkis.apache.org/zh-CN/community/how-to-sign-apache-icla>
  8. <https://github.com/apache/hugegraph/issues/1732> (HugeGraph ICLA related issue)

Last modified February 20, 2024: fix: guideline email title (#328) (11c5c33e)