<!DOCTYPE html>
<html lang="en" class="js csstransforms3d">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <meta name="generator" content="Hugo 0.70.0" />
    <meta name="description" content="">
    <meta name="buildDate" content="2023-06-09 17:25:25">


    <link rel="shortcut icon" href="https://shardingsphere.apache.org/document/current/img/favicon.png" type="image/x-icon" />

    <title>New committer voting process :: ShardingSphere</title>
    
    
    <link href="https://shardingsphere.apache.org/community/css/nucleus.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/font-awesome.min.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/hybrid.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/featherlight.min.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/perfect-scrollbar.min.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/auto-complete.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/theme.css?1686302725" rel="stylesheet">
    <link href="https://shardingsphere.apache.org/community/css/hugo-theme.css?1686302725" rel="stylesheet">
    
      <link href="https://shardingsphere.apache.org/community/css/theme-white.css?1686302725" rel="stylesheet">
    

    <script src="https://shardingsphere.apache.org/community/js/jquery-2.x.min.js?1686302725"></script>
    
    <script>
      var _hmt = _hmt || [];
      (function() {
        var hm = document.createElement("script");
        hm.src = "https://hm.baidu.com/hm.js?d5a1dc8dcf63a64ee55b80de01c7fb1a";
        var s = document.getElementsByTagName("script")[0]; 
        s.parentNode.insertBefore(hm, s);
      })();   
    </script>
    
    <script async src="https://www.googletagmanager.com/gtag/js?id=G-HPVGEN405S"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){window.dataLayer.push(arguments);}
      gtag('js', new Date());

      gtag('config', 'G-HPVGEN405S');
    </script>

    <style type="text/css">
      :root #header + #content > #left > #rlblock_left{ 
          display:none !important;
      }
      
      
      
    </style>
    

  </head>
  <body class="" data-url="/en/involved/committer/vote/">
    <div class="change-theme">
    <div class="wrap">
        
        <span data-item="retro">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Retro
        </span>
        <span data-item="eyehelp">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Eye care
        </span>
        <span data-item="haitian">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Haitian
        </span>
        <span data-item="deep">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Deep
        </span>
        <span data-item="dark">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Dark
        </span>
        <span class="active">
            <svg t="1649761460834" class="icon" viewBox="0 0 1243 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2052" width="16" height="16"><path d="M755.093336 61.436797a511.973304 511.973304 0 1 0 207.495466 693.650688l-99.615377-53.757197a398.827204 398.827204 0 1 1-161.637286-540.351253l53.757197-99.615378z" fill="#ffffff" p-id="2053"></path><path d="M1204.971593 188.84501L534.652259 736.217612l-285.242269-364.086159 86.304071-67.653615 216.199012 275.953611 583.649567-476.574007 69.335813 84.987568z" fill="#ffffff" p-id="2054"></path></svg>
            Default
        </span>
        
    </div>
</div>



    <header>
      <div class="wrap">
        <a href="https://shardingsphere.apache.org/"><img src="https://shardingsphere.apache.org/document/current/img/logo_v3.png" /></a>

        
        
        
        
        <section id="prefooter">
          
          <ul>
          
            <li>
              <a class="padding">
                <i class="fa fa-fw fa-language"></i>
              <div class="select-style">
                <select id="select-language" onchange="location = this.value;">
              
              
              
                  
                  
                      
                        
                        
<option id="en" value="/community/en/involved/committer/vote/" selected>English</option>
                        
                      
                  
                      
                  
              
                  
                  
                      
                  
                      
                        
                        
<option id="cn" value="/community/cn/involved/committer/vote/">简体中文</option>
                        
                      
                  
              
            </select>
            <svg t="1645437162166" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2449" width="32" height="32"><path d="M483.072 714.496l30.165333 30.208 415.957334-415.829333a42.837333 42.837333 0 0 0 0-60.288 42.538667 42.538667 0 0 0-60.330667-0.042667l-355.541333 355.413333-355.242667-355.413333a42.496 42.496 0 0 0-60.288 0 42.837333 42.837333 0 0 0-0.085333 60.330667l383.701333 383.872 1.706667 1.749333z" fill="#3D3D3D" p-id="2450"></path></svg>
            </div>
            </a>
            </li>
           
          
          
          </ul>
        </section>
        
      </div>
    </header>
    <div class="wrap">
    <nav id="sidebar" class="">

  
  
    <div id="header-wrapper">
      
      
          <div class="searchbox">
    <label for="search-by"><i class="fa fa-search"></i></label>
    <input data-search-input id="search-by" type="text" placeholder="Search...">
    <span data-search-clear=""><i class="fa fa-close"></i></span>
</div>

<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/lunr.min.js?1686302725"></script>
<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/auto-complete.js?1686302725"></script>
<script type="text/javascript">
    
        var baseurl = "\/en";
    
</script>
<script type="text/javascript" src="https://shardingsphere.apache.org/community/js/search.js?1686302725"></script>

      
    </div>
  
      <div class="highlightable">
      <div class="leftMenu">
      <ul class="topics">
  
          
            
            
  
  
   
    
      
      <li data-nav-id="/en/involved/" title="Get Involved" class="dd-item 
          parent
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/involved/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
               <svg  class="icon icon-down" 
                style="display: inline-block;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"   width="20" height="20" fill="#777">
                <path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
              </svg>
              <svg  class="icon icon-right" 
                style="display: none;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"  width="20" height="20" fill="#777">
                <path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
              </svg>
            
            </i>
            <b>1. </b>Get Involved
            
        </a>
        
        
          <ul>
            
            
              
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/subscribe/" title="Subscribe Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/subscribe/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Subscribe Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
      <li data-nav-id="/en/involved/contribute/" title="Contribute Guide" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/involved/contribute/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
               <svg  class="icon icon-down" 
                style="display: none;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"   width="20" height="20" fill="#777">
                <path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
              </svg>
              <svg  class="icon icon-right" 
                style="display: inline-block;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"  width="20" height="20" fill="#777">
                <path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
              </svg>
            
            </i>
            Contribute Guide
            
        </a>
        
        
          <ul>
            
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/contribute/contributor/" title="Contributor Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/contribute/contributor/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Contributor Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/contribute/dev-env/" title="How to Set Up Your DEV Environment" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/contribute/dev-env/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          How to Set Up Your DEV Environment
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/contribute/document/" title="Documents Contribute Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/contribute/document/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Documents Contribute Guide
          
          </a>
      </li>
       
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
              
            
              
              
  
  
   
    
      
      <li data-nav-id="/en/involved/conduct/" title="Contribution Conduct" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/involved/conduct/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
               <svg  class="icon icon-down" 
                style="display: none;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"   width="20" height="20" fill="#777">
                <path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
              </svg>
              <svg  class="icon icon-right" 
                style="display: inline-block;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"  width="20" height="20" fill="#777">
                <path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
              </svg>
            
            </i>
            Contribution Conduct
            
        </a>
        
        
          <ul>
            
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/conduct/issue/" title="Issue of Conduct" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/conduct/issue/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Issue of Conduct
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/conduct/code/" title="Code of Conduct" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/conduct/code/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Code of Conduct
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/conduct/document/" title="Document of Conduct" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/conduct/document/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Document of Conduct
          
          </a>
      </li>
       
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
              
            
              
              
  
  
   
    
      
      <li data-nav-id="/en/involved/committer/" title="Committer Guide" class="dd-item 
          parent
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/involved/committer/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
               <svg  class="icon icon-down" 
                style="display: inline-block;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"   width="20" height="20" fill="#777">
                <path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
              </svg>
              <svg  class="icon icon-right" 
                style="display: none;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"  width="20" height="20" fill="#777">
                <path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
              </svg>
            
            </i>
            Committer Guide
            
        </a>
        
        
          <ul>
            
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/committer/responsibilities/" title="Responsibilities &amp; Routine" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/committer/responsibilities/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Responsibilities &amp; Routine
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/committer/vote/" title="New committer voting process" class="dd-item active">
          <a href="https://shardingsphere.apache.org/community/en/involved/committer/vote/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          New committer voting process
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/committer/icla/" title="Sign ICLA Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/committer/icla/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          Sign ICLA Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/committer/2fa/" title="2FA" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/committer/2fa/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          2FA
          
          </a>
      </li>
       
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
              
            
              
              
  
  
   
    
      
      <li data-nav-id="/en/involved/release/" title="Release Guide" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/involved/release/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
               <svg  class="icon icon-down" 
                style="display: none;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"   width="20" height="20" fill="#777">
                <path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
              </svg>
              <svg  class="icon icon-right" 
                style="display: inline-block;"
                viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"  width="20" height="20" fill="#777">
                <path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
              </svg>
            
            </i>
            Release Guide
            
        </a>
        
        
          <ul>
            
            
            
            
          
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/release/shardingsphere/" title="ShardingSphere Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/release/shardingsphere/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          ShardingSphere Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/release/shardingsphere-on-cloud/" title="ShardingSphere on Cloud Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/release/shardingsphere-on-cloud/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          ShardingSphere on Cloud Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/release/elasticjob/" title="ElasticJob Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/release/elasticjob/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          ElasticJob Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
              
              
  
  
   
    
      
        <li data-nav-id="/en/involved/release/elasticjob-ui/" title="ElasticJob UI Release Guide" class="dd-item ">
          <a href="https://shardingsphere.apache.org/community/en/involved/release/elasticjob-ui/">
            <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
          ElasticJob UI Release Guide
          
          </a>
      </li>
       
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
              
            
          
          </ul>
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/powered-by/" title="Powered By ShardingSphere" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/powered-by/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
              <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
            
            </i>
            <b>2. </b>Powered By ShardingSphere
            
        </a>
        
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/team/" title="Team" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/team/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
              <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
            
            </i>
            <b>3. </b>Team
            
        </a>
        
                
      </li>
    
   
  
            
            
  
  
   
    
      
      <li data-nav-id="/en/security/" title="Security" class="dd-item 
          
          
          
          ">
              
        <a href="https://shardingsphere.apache.org/community/en/security/">
           <i class="collapse" style="display:inline; font-family:'courier';">
           
              <svg  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
            
            </i>
            <b>4. </b>Security
            
        </a>
        
                
      </li>
    
   
  
            
           
      </ul>
  
      
      
    </div>
      
  
      
      
      
        <a class="padding" href="https://shardingsphere.apache.org/pdf/shardingsphere_docs_en.pdf">
          Download PDF
      
      </a>
      
      <section id="footer">
        <p></p>

      </section>
    </div>
  </nav>
  
  
  
  
  
        <section id="body">
        <div id="overlay"></div>
        <div class="padding highlightable">
              
              <div>
                <div id="top-bar">
                
                  
                  
                  
                  <div id="top-github-link">
                    <a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/community/content/involved/committer/vote.en.md" target="blank">
                      <i class="fa fa-code-fork"></i>
                      <span id="top-github-link-text">Edit this page</span>
                    </a>
                  </div>
                  
                
                
                <div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
                    <span id="sidebar-toggle-span">
                        <a href="#" id="sidebar-toggle" data-sidebar-toggle="">
                          <i class="fa fa-bars"></i>
                        </a>
                    </span>
                  
                  <span class="links">
                    
          
          
            
            
          
          
            
            
          
          
            
            
          
          
            <a href='https://shardingsphere.apache.org/community/en/'>ShardingSphere</a> > <a href='https://shardingsphere.apache.org/community/en/involved/'>Get Involved</a> > <a href='https://shardingsphere.apache.org/community/en/involved/committer/'>Committer Guide</a> > New committer voting process
          
         
          
         
          
         
          
           
                  </span>
                </div>
                
              </div>
            </div>
            

        
          <div id="chapter">
        
        <div id="body-inner">
          

        


<nav id="TableOfContents"></nav>

<p>The Apache ShardingSphere community follows the <a href="http://community.apache.org/newcommitter.html">Apache Community’s process</a> on accepting a new committer.
After a contributor participates community actively, PMC and Committers will make a decision to invite the contributor to join Committers and PMC.</p>
<p><strong>1. Start the discussion and vote in @private. Only current PMC member could nominate.</strong></p>
<p>Example:</p>
<pre><code>To：private@shardingsphere.apache.org

Title: [VOTE] New committer:(nominee)

Content:

Hi, everyone

This is ^a formal vote^ about inviting (nominee)as our new committer.
He/She really made an effort to improve ShardingSphere Parser and fix many issues.
The following links will direct you to his/her work.

https://github.com/apache/shardingsphere/pull/xxxx
https://github.com/apache/shardingsphere/pull/xxxx
https://github.com/apache/shardingsphere/pull/xxxx
https://github.com/apache/shardingsphere/pull/xxxx

[^ means these words are subject to change in different case]
</code></pre><p><strong>2. Wait 3*24 hours to get vote result from community committers.</strong></p>
<p><strong>3. PMC sends vote result over email.</strong></p>
<p>Example:</p>
<pre><code>To: private@shardingsphere.apache.org

Title: [RESULT] [VOTE] New committer: (nominee)

Content:

Hi all PMCs,

I am glad to receive your votes, and the voting result is,
6   +1 votes, 0   +/-1 votes, 0   -1 votes

Therefore, I will send the invitation to (nominee).
</code></pre><p><strong>4. (For PMC nomination) Send email to <a href="mailto:board@apache.org">board@apache.org</a> and ensure the <a href="mailto:private@shardingsphere.apache.org">private@shardingsphere.apache.org</a> is copied.</strong></p>
<p>After email sent, wait for 72 hours and ensure that there is no objection.</p>
<pre><code>To: board@apache.org

cc: private@shardingsphere.apache.org

Title: [NOTICE] (nominee) for ShardingSphere PMC

The Apache ShardingSphere project proposes to invite (nominee) to join the PMC.
The vote result is available here:
(Vote link here. The link should be a permalink from the https://lists.apache.org/ mail archive.)

Thank you,
(initiator)
</code></pre><p>Reference: <a href="https://www.apache.org/dev/pmc.html#newpmc">https://www.apache.org/dev/pmc.html#newpmc</a></p>
<p><strong>5. If the vote passes, send an offer to become a committer with @private CC’ed.</strong></p>
<pre><code>To: (nominee email address)

cc: private@shardingsphere.apache.org

Title Invitation to become ShardingSphere committer: (nominee)

Content:

Hello (nominee),

The ShardingSphere 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 more easily make changes without needing to go through the patch submission process.
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 the private@shardingsphere.apache.org 
address only.
B. If you accept, the next step is to register an iCLA:
    1. Details of the iCLA and the forms are found through this link: http://www.apache.org/licenses/#clas

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

    3. When you transmit the completed iCLA, request to notify the Apache ShardingSphere 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.
When recording of your iCLA is noticed, you will receive a follow-up message with the next steps for establishing you as a committer.

Best wishes,
(PMC)
</code></pre><p><strong>6. Nominee replies the invitation, including content like accept the offer and give thanks.</strong></p>
<p><strong>7. PMC replies the email.</strong></p>
<pre><code>Hi (nominee),

Welcome! Here are the next steps. After that we will make an announcement to the shardingsphere-dev list.

You need to send a Contributor License Agreement to the ASF. Normally you would send an Individual CLA. If you also make contributions done in work time or using work resources then see the Corporate CLA. Ask us if you have any issues. 
http://www.apache.org/licenses/#clas

You need to choose a preferred ASF user name and alternatives. In order to ensure it is available you can view a list of taken ids at
http://people.apache.org/committer-index.html
Please notify us when you have submitted the CLA and by what means you did so. This will enable us to monitor its progress.

We will arrange for your Apache user account when the CLA has been recorded.

After that is done, please make follow-up replies to the shardingsphere-dev list. We generally discuss everything there and keep the private@shardingsphere.apache.org list for occasional matters which must be private.

The developer section of the website describes the roles and provides other resources:
http://www.apache.org/foundation/how-it-works.html
http://www.apache.org/dev/

The incubator also has some useful information for new committers in incubating projects:
http://incubator.apache.org/guides/committer.html

Just as before you became a committer, participation in any ASF community requires adherence to the ASF Code of Conduct:
https://www.apache.org/foundation/policies/conduct.html

Here is the guideline for all of the ShardingSphere committers:
https://shardingsphere.apache.org/community/en/involved/committer/
</code></pre><p><strong>8. New committer signs iCLA, this step refers to <a href="https://shardingsphere.apache.org/community/en/involved/committer/icla/">Sign ICLA Guide</a>.</strong></p>
<p><strong>9. New committer waits for secretary to create a new account.</strong></p>
<p><strong>10. (For PMC nomination) PMC adds new PMC in <a href="https://whimsy.apache.org/roster/committee/shardingsphere">roster</a>.</strong></p>
<p><strong>11. New committer could setup an account, refers to <a href="https://gitbox.apache.org/setup/">apache setup</a>.</strong></p>
<p><strong>12. PMC announces new committer in the community.</strong></p>
<pre><code>To: dev@shardingsphere.apache.org

Title: [ANNOUNCE] New committer: (nominee)

Content:

Hi community,

The Project Management Committee (PMC) for Apache ShardingSphere
has invited (nominee) to become a committer and we are pleased to announce that he has accepted.

(nominee) is active in ShardingSphere community, hope see your further interactions with the community! 

Thanks for your contributions.
</code></pre><p><strong>13. New Committer updates <a href="https://shardingsphere.apache.org/community/en/team/">Team</a> list.</strong></p>


<footer class=" footline" >
	
</footer>



</div> 

</div> 


</div>

<div id="navigation" >






    
        
        
    
    

        
        
            
        
        

        
            


    
        
        
    
    

        
        
            
        
        

        
            


    
        
            
            
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        


        
            


    
        
    
    

        
        
        

        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        


        
            


    
        
        
    
    

        
        
        

        
            


    
        
            
            
        
    
    

        
        
        

        


        
            


    
        
        
    
    

        
        
        

        


        
            


    
        
            
            
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        


        
            


    
        
    
    

        
        
        

        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        


        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        
            


    
        
    
    

        
        
        

        


        








    <a class="nav nav-prev" href="https://shardingsphere.apache.org/community/en/involved/committer/responsibilities/" title="Responsibilities &amp; Routine"> <i class="fa fa-long-arrow-left fa-lg"></i> Previous</a>




    <a class="nav nav-next" href="https://shardingsphere.apache.org/community/en/involved/committer/icla/" title="Sign ICLA Guide" style="margin-right: 0px;">Next<i class="fa fa-long-arrow-right fa-lg"></i></a>


</div>

</section>
</div>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>

<script src="https://shardingsphere.apache.org/community/js/clipboard.min.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.min.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/perfect-scrollbar.jquery.min.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/jquery.sticky.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/featherlight.min.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/html5shiv-printshiv.min.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/highlight.pack.js?1686302725"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="https://shardingsphere.apache.org/community/js/modernizr.custom.71422.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/learn.js?1686302725"></script>
<script src="https://shardingsphere.apache.org/community/js/hugo-learn.js?1686302725"></script>
<script>
try{

function log(fileName, category, locale){
    window._hmt.push(['_trackEvent', 'document', 'download', locale ? 'PDF_'+locale : fileName]);

    gtag('event', 'Downloads', {
        'event_category' : locale ? 'PDF' : category,
        'event_label' : locale ? locale+'.pdf' : fileName
    });
}

$('.padding[href*=shardingsphere]').on('click', function(){
    var locale = /cn/.test(location.pathname) ?'cn':'en';
    log('','', locale)
})

function getFileName(str){
    var strs = str.split('/');
    return strs[strs.length - 1]
}

$('a[href$="src.zip"]').on('click', function(){
    log(getFileName($(this).attr('href')), "SRC")
})

$('a[href$="zip.asc"]').on('click', function(){
    log(getFileName($(this).attr('href')), "ASC")
})

$('a[href$="zip.sha512"]').on('click', function(){
    log(getFileName($(this).attr('href')), "SHA512")
})

$('a[href$="tar.gz.asc"]').on('click', function(){
    log(getFileName($(this).attr('href')), "ASC")
})

$('a[href$="tar.gz.sha512"]').on('click', function(){
    log(getFileName($(this).attr('href')), "SHA512")
})

$('a[href$="tar.gz"]').on('click', function(){
    log(getFileName($(this).attr('href')), "TAR")
})

}catch(ex){}
</script>


</body>
</html>

