bin/mk-notes: correct the anchor links to the CVE descriptions
[openssl-web.git] / policies / committers.html
1 <!DOCTYPE html>
2 <html lang="en">
3   <!--#include virtual="/inc/head.shtml" -->
4
5   <body>
6     <!--#include virtual="/inc/banner.shtml" -->
7
8     <div id="main">
9       <div id="content">
10         <div class="blog-index">
11           <article>
12             <header>
13               <h1>Policy for OpenSSL Committers</h1>
14             </header>
15
16             <div class="entry-content">
17               <h2>Who is a committer?</h2>
18
19               <p>OpenSSL committers are contributors who have commit access
20               to the
21               <a href="https://git.openssl.org">OpenSSL source code repository</a>.
22               Committers review and commit their own patches as well as
23               those of other contributors.</p>
24
25               <h2>How to become a committer?</h2>
26               <p>Commit access is granted by the OpenSSL Management Committee
27               (OMC) typically on the recommendation of the OpenSSL Technical Committee (OTC)
28               (see the <a href="/policies/omc-bylaws.html">OpenSSL Bylaws</a>).
29
30               <p>We welcome contributors who become domain experts in some
31               part of the library (for example, low-level crypto) as well as
32               generalists who contribute to all areas of the codebase. All
33               committers share the responsibility for the overall health
34               of the project: aside from contributing quality features,
35               committers are team players who fix bugs, address open
36               issues, review community contributions, and improve tests and
37               documentation. Committers are also shepherds of the OpenSSL
38               community and its
39               <a href="/community/conduct.html">code of conduct</a>.</p>
40
41               <p>To become a committer, start by contributing code. Read our
42               <a href="/policies/codingstyle.html">coding style</a>, and get
43               to know our build and test system. Then, use the
44               <a href="/policies/roadmap.html">project roadmap</a>,
45               <a href="https://github.com/openssl/openssl/issues">Github issue tracker</a>,
46               and our
47               <a href="/community/mailinglists.html">mailing lists</a>
48               find impactful ideas to work on.</p>
49
50               <h2>How to maintain committer status?</h2>
51               <p>To maintain committer status, you must stay active in the
52               project. Refer to the <a href="/policies/omc-bylaws.html">OpenSSL Bylaws</a>
53               for details.</p>
54               <p>In the unlikely and unfortunate event that your actions
55               conflict with the project objectives or are otherwise
56               disruptive, committer status may also be revoked by the OMC.</p>
57
58               <h2>Approvals and code reviews</h2>
59               <p>All submissions must be reviewed and approved by at least two
60               committers, one of whom must also be an OTC member. If the
61               author is also a committer then that counts as one of the
62               reviews. In other words:</p>
63               <ul>
64                 <li>OTC members need one approval from any committer</li>
65                 <li>Committers need one approval from an OTC member</li>
66                 <li>Contributors without commit rights need two approvals,
67                 including one from an OTC member.</li>
68               </ul>
69
70               <p>An OMC member may apply an OMC-hold to a submission.
71               An OTC member may apply an OTC-hold to a submission.
72               An OMC-hold may be cleared by being removed by the member
73               that put in place the hold or by a vote of the OMC.
74               An OTC-hold may be cleared by being removed by the member
75               that put in place the hold or by a vote of the OTC.</p>
76
77               <p>Approved submissions (outside of the automated release process and NEWS and
78               CHANGES file updates) shall only be applied after a 24-hour delay from the
79               approval (except for minor build and test breakage fix approvals).</p>
80
81               <p>Contributors without commit rights cannot formally approve
82               patches but are nevertheless welcome to comment on submissions
83               and do technical reviews. We always value another pair of eyes,
84               and volunteering for reviews counts favourably towards becoming
85               a committer. As an author, we ask that you address all comments,
86               even if you already have the necessary approvals.</p>
87  
88               <p>If you have trouble finding consensus on a difficult review,
89               reach out to the OMC at
90               <a href="mailto:openssl-omc@openssl.org">openssl-omc@openssl.org</a>
91               (private, moderated) or the project at
92               <a
93                 href="mailto:openssl-project@openssl.org">openssl-project@openssl.org</a>
94               (public, moderated).
95               On GitHub, you can target the OMC members with @openssl/omc,
96               OTC members with @openssl/otc, or committers with @openssl/committers.</p>
97
98               <h2>Commit workflow</h2>
99               <p>We do code reviews on GitHub. The
100               <a href="https://github.com/openssl/openssl">OpenSSL GitHub repository</a>
101               is a mirror, so we do not merge on GitHub. When you become a
102               committer, we'll send you instructions to get commit access to
103               the main repository. To have handy links to review history, we
104               record the reviewers and GitHub pull request IDs in commit
105               headers. We have some helper scripts in the
106               <a href="https://github.com/openssl/tools">tools repo</a>
107               to add these headers automatically.</p>
108
109               <p>We don't use merge commits.</p>
110
111               <p>If at any point during development or review you discover
112               a potential security issue, we ask that you report it to
113               <a href="mailto:openssl-security@openssl.org"> openssl-security@openssl.org</a>
114               and don't discuss it further in public. We review security
115               issues privately, however acceptance of a submission for a security issue
116               does not bypass the review process that applies to all submissions.</p>
117
118               <h2>A note on CLAs</h2>
119               <p>All authors, including committers,
120               must have current <a href="/policies/cla.html">CLAs</a> on
121               file. A CLA is not required for trivial contributions (e.g. the
122               fix of a spelling mistake). Refer to the
123               <a href="cla.html">CLA</a> page for further details.
124               </p>
125
126             </div>
127
128             <footer>
129               You are here: <a href="/">Home</a>
130               : <a href="/policies"> Policies</a>
131               : <a href="">Guidelines for Committers</a>.
132               <br><a href="/sitemap.txt">Sitemap</a>
133             </footer>
134           </article>
135         </div>
136         <!--#include virtual="sidebar.shtml" -->
137       </div>
138     </div>
139
140     <!--#include virtual="/inc/footer.shtml" -->
141   </body>
142 </html>