Skip to content

Commit 6186c78

Browse files
committed
Add become a committer doc.
1 parent 485de52 commit 6186c78

File tree

2 files changed

+54
-6
lines changed

2 files changed

+54
-6
lines changed

community/become-a-committer.md

Lines changed: 50 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,52 @@
11
# Become a Slang Committer
22

3-
[//]: # (TODO: link more internal documentation about how to become a slang committer.)
3+
Becoming a committer is a significant step, as it gives you direct access to the repository, enabling you to merge changes, review code, and help shape the future of the project. Below are the expectations and process for becoming a committer in Slang.
4+
5+
## Show Consistent Contribution Quality
6+
Your journey to becoming a committer starts with consistent, high-quality contributions to the Slang codebase. This typically includes:
7+
8+
Frequent, Meaningful Contributions: Regularly submit contributions, whether they are features, bug fixes, or performance improvements. Each contribution should align with Slang’s goals and maintain the bar of code quality.
9+
High-Impact Contributions: Aim to contribute changes that significantly benefit the project, such as optimizations, core feature enhancements, or critical bug fixes. Contributions that demonstrate a deep understanding of Slang’s architecture and design are highly valued.
10+
11+
## Engage in Code Reviews
12+
In open-source projects, reviewing others’ code is as important as submitting your own. Before becoming a committer, you should:
13+
14+
*Participate in Code Reviews:* Actively participate in code reviews by providing insightful feedback. Look for issues in logic, style, performance, and alignment with Slang’s objectives.
15+
16+
*Help Raise the Code Quality:* Encourage adherence to Slang’s standards and practices by providing constructive feedback. The ability to review others’ code with a critical yet supportive approach is essential for committers.
17+
18+
## Build Trust and Collaboration
19+
Committer status is granted based on the trust that you are deeply committed to Slang’s success. You can demonstrate this by:
20+
21+
*Being Reliable and Responsive:* Maintain a regular and responsive presence in the project, whether in pull requests, discussions, or reviews.
22+
23+
*Work Well with Others:* Slang is a community effort, so committers are expected to work well with other contributors, listen to feedback, and adapt where needed.
24+
25+
*Take Ownership of Work:* Show a sense of responsibility by following up on contributions and addressing issues that arise in areas of the code you’ve worked on.
26+
27+
## Demonstrate Technical Understanding of Slang
28+
To maintain and develop the Slang codebase, committers need a comprehensive understanding of its internals. Demonstrate that you:
29+
30+
*Understand Slang’s Architecture:* Learn and follow Slang’s core architecture, coding patterns, and design principles.
31+
32+
*Know the Shading Language and Compiler Space:* Familiarize yourself with shading languages and compilers in general. This domain knowledge helps you contribute effectively and make informed decisions as a committer.
33+
34+
## Maintain a Record of High-Quality Contributions
35+
Consistent quality and dedication are key criteria. Committers typically have:
36+
37+
*A History of Reviewed Contributions:* Have at least 10 high-quality patches merged, with a record of thorough and constructive review feedback.
38+
39+
*Positive Reviewer Feedback:* Accumulate reviews from existing committers that acknowledge your contribution quality and readiness.
40+
41+
## The Committer Nomination Process
42+
43+
Once you meet the criteria above, you can nominate yourself to become a committer. This process includes:
44+
45+
*Nomination:* You can nominate yourself to become a committer by creating a discussion thread on GitHub discussions.
46+
47+
*Internal Review:* Existing committers will review your contributions, code review feedback, and responsiveness to determine your readiness.
48+
49+
*Final Approval:* Upon a positive consensus, you will be granted committer status along with write access to the Slang repository.
50+
51+
Becoming a committer is a meaningful responsibility, and we value contributors who are invested in maintaining and advancing Slang. Thank you for your continued contributions, and we look forward to welcoming you as a committer!
52+

community/index.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ report issues, start discussion threads, or submit pull requests.
1919

2020
#### Committer
2121

22-
A committer is a community member who can review and approve pull requests. This is a status that can be earned by maintaining a track record of submiting and landing code changes to the Slang project. All community members can review code submitted by other community members, but for a pull request to be considered approved and ready for merging, at least one **owner** (more info below) of each file you are touching must provide an approving review. Ideally a committer should choose reviewers who are familiar with the area of code you are touching. If you have doubts, look at the git blame for the file and the OWNERS files.
22+
A committer is a community member who has write access to the Slang repository and can approve pull requests. This is a status that can be earned by maintaining a track record of submiting and landing code changes to the Slang project. All community members can review code submitted by other community members, but for a pull request to be considered approved and ready for merging, at least one **owner** (more info below) of each file you are touching must provide an approving review. Ideally a committer should choose reviewers who are familiar with the area of code you are touching. If you have doubts, look at the git blame for the file and the OWNERS files.
2323

2424
Submissions to a repository by a change contributor who is not a Slang committer require two committers to approve the submission. If the author of the pull request is already a committer, then only one other committer is needed to review.
2525

26-
If you think you might be ready to be a committer, ask one of the reviewers of your pull request or another committer familiar with your work to see if they will nominate you. They will discuss that in #slang-committers discord — two others in that will need to second the nomination. See the [detailed document](/community/become-a-committer) for this process.
26+
If you think you might be ready to be a committer, ask one of the reviewers of your pull request or another committer familiar with your work to see if they will nominate you. They will discuss that in #slang-committers discord — two others in that will need to second the nomination. See [how to become a committer here](/community/become-a-committer).
2727

2828
#### Owner
2929

@@ -36,13 +36,12 @@ A language owner is the owner of the [`/docs/proposals/`](https://github.com/sha
3636
## Processes for Code Changes
3737

3838
#### Process for Bug Fixes
39-
A bug fix starts with an GitHub issue describing the bug. Any community member can submit a pull request coming from your personal fork of Slang containing fixes for the bug. Such pull requests needs to be reviewed and approved by two committers who are owners of the files being changed by the pull request. Once the pull request is approved and passed all CI tests, it can be merged to the main branch. All pull requests are expected to meet
40-
our [bar of code quality](/community/code-quality).
39+
A bug fix starts with an GitHub issue describing the bug. Any community member can submit a pull request coming from your personal fork of Slang containing fixes for the bug. Such pull requests needs to be reviewed and approved by two committers who are owners of the files being changed by the pull request. Once the pull request is approved and passed all CI tests, it can be merged to the main branch.
4140

4241
#### Process for Slang Feature Changes
4342

4443
Changes that add or modify syntax, language feature, Slang's core module, or the compilation and reflection API must go through our process for language changes. The full process is [documented here](/community/language-change-process).
4544

4645
## Submitting a Pull Request
4746

48-
If you are ready to start contributing, please follow our [guide for creating a pull request](https://github.com/shader-slang/slang/blob/master/CONTRIBUTION.md).
47+
If you are ready to start contributing, please follow our [guide for creating a pull request](https://github.com/shader-slang/slang/blob/master/CONTRIBUTION.md). All pull requests are expected to meet our [bar of code quality](/community/code-quality).

0 commit comments

Comments
 (0)