Bug: b/362492031, b/362492070, b/362492356, b/364207037, b/364831690 Change-Id: Ic889c731b98f8876c0ee31c0bda91a5a18b3add1 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/362100 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Artem Titov <titovartem@webrtc.org> Cr-Commit-Position: refs/heads/main@{#42981}
85 lines
3.7 KiB
Markdown
85 lines
3.7 KiB
Markdown
<!-- go/cmark -->
|
|
<!--* freshness: {owner: 'titovartem' reviewed: '2024-09-09'} *-->
|
|
|
|
# How to get tryjob access or become WebRTC committer
|
|
|
|
## Overview
|
|
|
|
There are two levels of WebRTC contributors access:
|
|
|
|
1. Tryjob access - permits contributor to run tests for their changes using
|
|
WebRTC infrastructure
|
|
2. WebRTC committer rights - permits to submit changes to the WebRTC code base.
|
|
This includes tryjob access.
|
|
|
|
## Getting tryjob access
|
|
|
|
To get tryjob access applicant has to do a contribution around 10-20 CLs to the
|
|
WebRTC code base. After that, they should file a bug using
|
|
[Get tryjob access template][7], specifying the email which was used for the
|
|
contributions and to which access will be granted, and listing contributed CLs.
|
|
|
|
The access will be granted when the ticket is resolved by one of the project
|
|
members. In case of rejection the explanation will be provided.
|
|
|
|
## WebRTC committer duties
|
|
|
|
WebRTC committers are responsible for keeping WebRTC codebase in a good shape
|
|
including, but not limited to the following aspects:
|
|
|
|
* Code complexity and correctness
|
|
* C++ best practices
|
|
* Code formatting
|
|
* Test coverage
|
|
* Class/function level and conceptual documentation
|
|
|
|
Whenever a committer sets `Code Review +1` label on the CL, they approve that
|
|
the CL fulfills WebRTC style guides, language mastery, testability and
|
|
documentation. Being a committer means being responsible for the WebRTC codebase
|
|
health and code quality.
|
|
|
|
## Becoming a WebRTC committer
|
|
|
|
To write code in WebRTC you don't need to be a committer (also see [FAQ][1]),
|
|
but to submit code to WebRTC you do. So if you don't plan to work on the WebRTC
|
|
codebase regularly, you can ask other committers through code review to submit
|
|
your patches, but if you are going to work in the WebRTC codebase, then it's
|
|
recommended to apply for WebRTC committer rights obtaining process.
|
|
|
|
1. If you are going to write in C++ make yourself familiar with with C++ style
|
|
guides:
|
|
|
|
* [Google style guide][5]
|
|
* [Chromium style guide][2]
|
|
* [WebRTC style guide][3]
|
|
|
|
2. Create a ticket to obtain WebRTC committers rights in Monorail. Please use
|
|
[this template][6] of it.
|
|
|
|
3. Pick a mentor among WebRTC committers, who will review your CLs. For C++
|
|
authors, the mentor will also look for C++ readability skills. It's
|
|
recommended to ask someone who is familiar with the code base which you will
|
|
be working on (you can check OWNERS files to find such person). Otherwise
|
|
you can reach out to committers mailing list \<committers@webrtc.org\>.
|
|
|
|
4. Send CLs to the mentor for review and attach them to the created ticket.
|
|
|
|
5. When the mentor decides that you are ready (for C++ authors their C++
|
|
readability skills are good enough), they will send a proposal for granting
|
|
WebRTC committer rights to the reviewing committee mailing list to review.
|
|
If the proposal will be approved, then committer rights will be granted.
|
|
Committee members will have up to 5 business days to answer. In case of
|
|
rejection detailed feedback on what aspects should be improved will be
|
|
provided.
|
|
|
|
6. Also as any contributor you must sign and return the
|
|
[Contributor License Agreement][4]
|
|
|
|
[1]: https://webrtc.googlesource.com/src/+/refs/heads/main/docs/faq.md#to-be-a-contributor_do-i-need-to-sign-any-agreements
|
|
[2]: https://chromium.googlesource.com/chromium/src/+/refs/heads/main/styleguide/c++/c++.md
|
|
[3]: https://webrtc.googlesource.com/src/+/refs/heads/main/g3doc/style-guide.md
|
|
[4]: https://developers.google.com/open-source/cla/individual?hl=en
|
|
[5]: https://google.github.io/styleguide/cppguide.html
|
|
[6]: https://bugs.chromium.org/p/webrtc/issues/entry?template=Become+WebRTC+committer
|
|
[7]: https://bugs.chromium.org/p/webrtc/issues/entry?template=Get+tryjob+access
|