<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="description" content="Home page of The Apache Software Foundation">
  <link rel="apple-touch-icon" sizes="57x57" href="/favicons/apple-touch-icon-57x57.png">
  <link rel="apple-touch-icon" sizes="60x60" href="/favicons/apple-touch-icon-60x60.png">
  <link rel="apple-touch-icon" sizes="72x72" href="/favicons/apple-touch-icon-72x72.png">
  <link rel="apple-touch-icon" sizes="76x76" href="/favicons/apple-touch-icon-76x76.png">
  <link rel="apple-touch-icon" sizes="114x114" href="/favicons/apple-touch-icon-114x114.png">
  <link rel="apple-touch-icon" sizes="120x120" href="/favicons/apple-touch-icon-120x120.png">
  <link rel="apple-touch-icon" sizes="144x144" href="/favicons/apple-touch-icon-144x144.png">
  <link rel="apple-touch-icon" sizes="152x152" href="/favicons/apple-touch-icon-152x152.png">
  <link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon-180x180.png">
  <link rel="icon" type="image/png" href="/favicons/favicon-32x32.png" sizes="32x32">
  <link rel="icon" type="image/png" href="/favicons/favicon-194x194.png" sizes="194x194">
  <link rel="icon" type="image/png" href="/favicons/favicon-96x96.png" sizes="96x96">
  <link rel="icon" type="image/png" href="/favicons/android-chrome-192x192.png" sizes="192x192">
  <link rel="icon" type="image/png" href="/favicons/favicon-16x16.png" sizes="16x16">
  <link rel="manifest" href="/favicons/manifest.json">
  <link rel="shortcut icon" href="/favicons/favicon.ico">
  <meta name="msapplication-TileColor" content="#603cba">
  <meta name="msapplication-TileImage" content="/favicons/mstile-144x144.png">
  <meta name="msapplication-config" content="/favicons/browserconfig.xml">
  <meta name="theme-color" content="#282661">

  <title>Project Management Committee Guide</title>
  <link href="/css/Montserrat-300-600.css" rel="stylesheet">
  <link href="/css/min.bootstrap.css" rel="stylesheet">
  <link href="/css/styles.css" rel="stylesheet">
  <style>
.headerlink {
  visibility: hidden;
}
dt:hover > .headerlink, p:hover > .headerlink, td:hover > .headerlink, h1:hover > .headerlink, h2:hover > .headerlink, h3:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, h6:hover > .headerlink {
  visibility: visible
}  </style>

<!-- https://www.apache.org/licenses/LICENSE-2.0 -->
</head>

<body >
  <!-- Navigation -->
  <header>
	<div id="skiptocontent">
		<a href="#maincontent">Skip to Main Content</a>
	</div>
    <nav class="navbar navbar-inverse navbar-fixed-top mainmenu">
      <div class="container">
        <div class="navbar-header">
          <button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#mainnav-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
        </div>
        <div class="collapse navbar-collapse" id="mainnav-collapse">
          <ul class="nav navbar-nav navbar-justified">
            <li><a href="/index.html#news">News</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">About&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/foundation">Overview</a></li>
                <li><a href="/foundation/how-it-works.html">Process</a></li>
                <li><a href="/foundation/governance/">Governance</a></li>
                <li><a href="/theapacheway/index.html">The Apache Way</a></li>
                <li><a href="/foundation/governance/members.html">Membership</a></li>
                <li><a href="https://community.apache.org/">Community</a></li>
                <li><a href="https://diversity.apache.org/">Diversity & Inclusion</a></li>
                <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                <li><a href="/foundation/glossary.html">Glossary</a></li>
				  <li><a href="/apache-name">About Our Name</a></li>
                <li><a href="/foundation/preFAQ.html">FAQ</a></li>
                <li><a href="/foundation/contributing.html">Support Apache</a></li>
                <li><a href="/press/">Media/Analysts</a></li>
                <li><a href="/foundation/contact.html">Contact</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Make a Donation&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/foundation/contributing.html">Donate Now</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via Credit Card</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via ACH</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via PayPal</a></li>
                <li><a href="https://www.redbubble.com/people/comdev">Buy Swag</a></li>
                <li><a href="https://smile.amazon.com/gp/chpf/homepage/ref=smi_se_scyc_srch_stsr?q=apache+software+foundation&orig=%2F">Shop smile.amazon.com</a></li>
                <li><a href="/foundation/sponsorship.html">ASF Sponsorship</a></li>
                <li><a href="/foundation/thanks#targeted-sponsors">Targeted Sponsorship</a></li>
                <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdopwn-toggle" data-toggle="dropdown">The Apache Way&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/theapacheway/index.html">The Apache Way</a></li>
                <li><a href="https://s.apache.org/GhnI">Sustainable Open Source</a></li>
                <li><a href="/foundation/how-it-works.html">How it Works</a></li>
                <li><a href="/foundation/how-it-works.html#meritocracy">Merit</a></li>
                <li><a href="https://blogs.apache.org/foundation/category/SuccessAtApache">Success at Apache</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdopwn-toggle" data-toggle="dropdown">Join Us&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="https://community.apache.org/gettingStarted/101.html">Getting Started</a></li>
                <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                <li><a href="https://www.apachecon.com/">ApacheCon</a></li>
                <li><a href="http://community.apache.org/calendars/">Community Events</a></li>
                <li><a href="/travel/">Travel Assistance</a></li>
                <li><a href="https://community.apache.org/gsoc.html">Summer of Code</a></li>
                <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                <li><a href="https://community.apache.org/contributors/etiquette">Etiquette</a></li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Projects&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/index.html#projects-list">Project List</a></li>
                    <li><a href="/foundation/how-it-works.html#management">How they work</a></li>
                    <li><a href="https://community.apache.org/projectIndependence.html">Independence</a></li>
                    <li><a href="https://projects.apache.org/committees.html?date">Date Founded</a></li>
                    <li><a href="https://projects.apache.org/projects.html?name">Names</a></li>
                    <li><a href="https://projects.apache.org/projects.html?category">Categories</a></li>
                    <li><a href="https://projects.apache.org/projects.html?language">Languages</a></li>
                    <li><a href="https://projects.apache.org/statistics.html">Statistics</a></li>
                    <li><a href="https://incubator.apache.org/">Apache Incubator</a></li>
                    <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                    <li><a href="/foundation/marks/">Brand Management</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">People&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/foundation/how-it-works.html#roles">Roles</a></li>
                    <li><a href="/foundation/members.html">Members</a></li>
                    <li><a href="https://community.apache.org/contributors/">Committers</a></li>
                    <li><a href="/foundation/#who-runs-the-asf">Board of Directors</a></li>
                    <li><a href="/foundation/#who-runs-the-asf">Officers  &amp; Project VPs</a></li>
                    <li><a href="https://community.zones.apache.org/map.html">Location Map</a></li>
                    <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                    <li><a href="https://people.apache.org/">Committer Directory</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Community&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="https://community.apache.org/about/">Community Development</a></li>
                    <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                    <li><a href="https://community.apache.org/">Get Involved</a></li>
                    <li><a href="https://community.apache.org/mentoringprogramme.html">Mentoring</a></li>
                    <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                    <li><a href="https://community.apache.org/calendars/">Community Events</a></li>
                    <li><a href="https://community.apache.org/newbiefaq.html">FAQ</a></li>
                    <li><a href="https://community.apache.org/lists.html">Mailing Lists</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Infrastructure&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/dev/infrastructure.html">Infra overview</a></li>
                    <li><a href="https://infra.apache.org/" target="_blank">Policies and Tools</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/INFRA/Index" target="_blank">CWiki</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">License&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/licenses/LICENSE-2.0">Apache License 2.0</a></li>
                    <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
                    <li><a href="/licenses/contributor-agreements.html">Contributor License Agreements</a></li>
                    <li><a href="/licenses/contributor-agreements.html#grants">Software Grants</a></li>
                    <li><a href="/foundation/marks/list/">Trademarks</a></li>
					<li><a href="/licenses/exports/">Exports</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Sponsors&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/foundation/sponsorship.html">Sponsor the ASF</a></li>
                    <li><a href="/foundation/thanks">Sponsor Thanks</a></li>
                    <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
                    <li><a href="/foundation/contributing.html">Individual Donations</a></li>
                    <li><a href="https://www.redbubble.com/people/comdev/">Buy Stuff</a></li>
                  </ul>
                </li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Downloads&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="https://downloads.apache.org/">Distribution</a></li>
                <li><a href="https://projects.apache.org/releases.html">Releases</a></li>
                <li><a href="https://status.apache.org/">Infrastructure Status</a></li>
                <li><a href="/uptime/">Infrastructure Statistics</a></li>
              </ul>
            </li>
            <li class="dropdown hidden-xs">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button"><span class="glyphicon glyphicon-search"
                  aria-hidden="true"></span><span class="sr-only">Search</span></a>
              <ul class="dropdown-menu search-form" role="search">
                <li>
                  <div class="input-group" style="width: 100%; padding: 0 5px;">
                    <script async src="https://cse.google.com/cse.js?cx=cb41d2753d228d8b7"></script>
                    <div class="gcse-search"></div>
                  </div>
                </li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </nav>
  </header>
  <!-- / Navigation -->
  <header id="main-header" class="container">
    <div class="sideImg">
          <a class="visible-home" href="https://events.apache.org/x/current-event.html">
            <img class="img-responsive" style="width: 125px;" src="/events/current-event-125x125.png" alt="Apache Events"/>
<!-- STALE: <img class="img-responsive" style="width: 125px;" src="https://www.apachecon.com/event-images/default-square-light.png" alt="ApacheCon 2021 Coming Soon!" /> -->
          </a>
      <a class="hidden-home" href="/"><img class="img-responsive" src="/img/asf-estd-1999-logo.jpg" alt="The Apache Software Foundation"></a>
    </div>
    <div class="main">
      <img class="img-responsive center-block visible-home" src="/img/asf-estd-1999-logo.jpg" alt="Apache 20th Anniversary Logo">
      <h2 class="text-center">Community-led development "The&nbsp;Apache&nbsp;Way"</h2>
      <ul class="nav navbar-nav navbar-justified">
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Projects&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/index.html#projects-list">Project List</a></li>
            <li><a href="/foundation/how-it-works.html#management">How they work</a></li>
            <li><a href="https://community.apache.org/projectIndependence.html">Independence</a></li>
            <li><a href="https://projects.apache.org/committees.html?date">Date Founded</a></li>
            <li><a href="https://projects.apache.org/projects.html?name">Names</a></li>
            <li><a href="https://projects.apache.org/projects.html?category">Categories</a></li>
            <li><a href="https://projects.apache.org/projects.html?language">Languages</a></li>
            <li><a href="https://projects.apache.org/statistics.html">Statistics</a></li>
            <li><a href="https://incubator.apache.org/">Apache Incubator</a></li>
            <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
            <li><a href="/foundation/marks/">Brand Management</a></li>
            <li><a href="/foundation/glossary.html">Glossary of Terms</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">People&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/foundation/how-it-works.html#roles">Roles</a></li>
            <li><a href="/foundation/members.html">Members</a></li>
            <li><a href="https://community.apache.org/contributors/">Committers</a></li>
            <li><a href="/foundation/#who-runs-the-asf">Board of Directors</a></li>
            <li><a href="/foundation/#who-runs-the-asf">Officers &amp; Project VPs</a></li>
            <li><a href="https://diversity.apache.org/">Diversity & Inclusion</a></li>
            <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
            <li><a href="https://people.apache.org/">Committer Directory</a></li>
            <li><a href="https://community.zones.apache.org/map.html">Heat Map</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Community&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="https://community.apache.org/about/">Community Development</a></li>
            <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
            <li><a href="https://community.apache.org/">Get Involved</a></li>
            <li><a href="https://community.apache.org/mentoringprogramme.html">Mentoring</a></li>
            <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
            <li><a href="https://community.apache.org/calendars/">Community Events</a></li>
            <li><a href="https://community.apache.org/newbiefaq.html">FAQ</a></li>
            <li><a href="https://community.apache.org/lists.html">Mailing Lists</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Infrastructure&nbsp;<span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
              <li><a href="/dev/infrastructure.html">Infra overview</a></li>
              <li><a href="https://infra.apache.org/" target="_blank">Policies and Tools</a></li>
              <li><a href="https://cwiki.apache.org/confluence/display/INFRA/Index" target="_blank">CWiki</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">License&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/licenses/LICENSE-2.0">Apache License 2.0</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/licenses/contributor-agreements.html">Contributor License Agreements</a></li>
            <li><a href="/licenses/contributor-agreements.html#grants">Software Grants</a></li>
            <li><a href="/foundation/marks/list/">Trademarks</a></li>
			<li><a href="/licenses/exports/">Exports</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Sponsors&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/foundation/sponsorship.html">Sponsor the ASF</a></li>
            <li><a href="/foundation/thanks">Sponsor Thanks</a></li>
            <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
            <li><a href="/foundation/contributing.html">Individual Donations</a></li>
            <li><a href="https://www.redbubble.com/people/comdev/">Buy Stuff</a></li>
          </ul>
        </li>
      </ul>
    </div>
    <div class="sideImg">
      <a href="/foundation/contributing.html"><img class="img-responsive" src="/img/support-apache.jpg" alt="Apache Support Logo" /></a>
    </div>
  </header>
  <main id="maincontent">
<div class="container">    <h1 id="project-management-committee-guide">Project Management Committee Guide<a class="headerlink" href="#project-management-committee-guide" title="Permalink">&para;</a></h1>
<p>This guide outlines the general responsibilities
of <a href="/foundation/how-it-works.html#pmc">Project Management Committee</a> (PMC) members in managing their projects and common how-to procedures for
day to day maintenance. For a high-level overview of the what and why of PMCs,
read the <a href="/foundation/governance/pmcs" target="_blank">PMC Governance overview</a>.</p>
<h2 id="contents">Contents<a class="headerlink" href="#contents" title="Permalink">&para;</a></h2>
<ul>
<li><a href="pmc.html#audience">Intended audience</a></li>
<li><a href="pmc.html#what-is-a-pmc">What is a PMC?</a></li>
<li><a href="pmc.html#policy">PMC required policies</a></li>
<li><a href="pmc.html#chair%7D">How to perform the duties of the PMC chair</a></li>
<li><a href="pmc.html#pmcmembers">PMC membership management</a></li>
<li><a href="pmc.html#committer-management">Project committer management</a></li>
<li><a href="pmc.html#faq">PMC FAQs and how-tos</a></li>
</ul>
<h2 id="audience">Intended audience<a class="headerlink" href="#audience" title="Permalink">&para;</a></h2>
<p>This document is for <em>PMC members</em> of ASF projects. A PMC is responsible for the proper
<a href="/foundation/governance/pmcs">management and oversight of an Apache project</a>, and reports directly to the board four times a year.
Every PMC has a Chairperson, who is also an <a href="/foundation/#who-runs-the-asf">officer of the ASF</a> with the title "Vice President, Apache <em>Projectname</em>".</p>
<ul>
<li>If you are a committer who is not yet a PMC member, you probably want to <a href="committers.html">read the committers guide</a> instead.</li>
<li>If you are not yet a committer but are interested in joining an Apache project, please start at the <a href="contributors.html">Contributors Tech Guide</a>.</li>
<li>For more information on how Apache projects operate, see
<ul>
<li><a href="https://blogs.apache.org/comdev/entry/what_makes_apache_projects_different">What makes Apache projects different?</a></li>
<li>the <a href="/foundation/governance/pmcs.html">Apache PMC governance overview</a></li>
<li><a href="https://community.apache.org/projectIndependence.html">Project independence</a></li>
</ul>
</li>
</ul>
<h2 id="what-is-a-pmc">What is a PMC?<a class="headerlink" href="#what-is-a-pmc" title="Permalink">&para;</a></h2>
<p>A project management committee (PMC) is a committee of the Apache Software
Foundation charged with <a href="/foundation/governance/pmcs.html">responsibility and governance</a> for their top level project. The PMC is
the vehicle through which decision-making power and responsibility for
oversight devolves to developers.</p>
<p>While committers on a project have the ability to update the code, only
the PMC as a body has the authority to vote on formal releases of the
project's software. The PMC is also responsible for voting in new
committers and PMC members to the project, and following other
policies as outlined in this document.</p>
<h2 id="policy">PMC required policies<a class="headerlink" href="#policy" title="Permalink">&para;</a></h2>
<p>Terms in this section are used as per <a href="https://www.ietf.org/rfc/rfc2119.txt">RFC2119</a>.
The Board expects all PMCs to understand and comply with these policies.</p>
<h4 id="reporting">Report project status quarterly or when requested<a class="headerlink" href="#reporting" title="Permalink">&para;</a></h4>
<p>PMC Chairs / Vice Presidents <strong>SHALL</strong> submit a
<a href="/foundation/board/reporting">report on their project health</a>
on a quarterly basis to the Board, or when requested by a director. In the
absence of the PMC Chair, or at their direction, any other PMC members may write and submit the report.</p>
<p>Similarly, PMC Chairs <strong>SHALL</strong> provide replies to board questions about the PMC report or other project operations <strong>to the board@ mailing list</strong> and <strong>SHALL</strong> ensure the PMC
takes any actions required by the board.</p>
<p>PMC Chairs/Vice Presidents have <a href="#chair">specific additional duties</a> listed below.</p>
<h4 id="legal-policy">Comply with Legal Affairs policies<a class="headerlink" href="#legal-policy" title="Permalink">&para;</a></h4>
<p>PMCs <strong>SHALL</strong> ensure that the work on their project and the code that
they produce complies with relevant <a href="/legal/">Legal Affairs Committee</a>
policies, including using the Apache License appropriately, handling IP and
copyrights correctly, handling cryptography, and
<a href="/dev/release">producing official software releases</a> of their products.</p>
<h4 id="brand-policy">Comply with Brand Management policies<a class="headerlink" href="#brand-policy" title="Permalink">&para;</a></h4>
<p>PMCs <strong>SHALL</strong> ensure that they manage their projects' brand and treat
all Apache&reg; marks properly as defined in the overview of<br/>
<a href="/foundation/marks/responsibility">PMC Branding Responsibilities</a> and the <a href="/foundation/marks/pmcs">Apache Project Branding Requirements</a>
for project websites.</p>
<h4 id="brand-report">Responsibly report misuses of Apache brands<a class="headerlink" href="#brand-report" title="Permalink">&para;</a></h4>
<p>PMCs <strong>SHALL</strong> review use of their Apache project brand by third parties
and follow the <a href="../foundation/marks/reporting.html">Apache trademark use reporting guidelines</a> when appropriate.</p>
<h4 id="mailing-list-naming-policy">Conduct project business on public mailing lists<a class="headerlink" href="#mailing-list-naming-policy" title="Permalink">&para;</a></h4>
<p>All technical decisions and the great majority of the work of any PMC should
take place on their normal public mailing lists, such as dev@ or user@. Decisions
<strong>SHALL NOT</strong> be made in other media, like IRC, Slack channels, or face to face at conferences; project members should bring proposals arising from such settings back to the appropriate mailing
list for all participants to discuss and decide upon.</p>
<p>PMCs <strong>SHOULD</strong> ensure that decision-making processes allow input over a sufficient
amount of time - typically at least 72 hours - so that project participants in various time
zones have a chance to participate in the decision.</p>
<h4 id="mailing-list-private">Limit project business on private mailing lists<a class="headerlink" href="#mailing-list-private" title="Permalink">&para;</a></h4>
<p>All PMCs <strong>SHALL</strong> restrict their communication on
private mailing lists <strong>only</strong> to issues that <a href="#private-or-public">cannot be discussed in public</a>, such as discussion of:</p>
<ul>
<li>pre-disclosure security problems</li>
<li>pre-agreement discussions with third parties that require
confidentiality</li>
<li>nominees for project committer, PMC or Foundation membership</li>
<li>personal conflicts among project personnel</li>
</ul>
<p>All projects <strong>SHALL</strong> use the name <code>private@*project*.apache.org</code> for this
private list (where <em>project</em> is the name of the project). PMC members must
maintain the confidentiality of messages on privately-archived mailing lists.</p>
<h2 id="chair">How to perform the duties of the PMC chair<a class="headerlink" href="#chair" title="Permalink">&para;</a></h2>
<p>See the <a href="../foundation/how-it-works.html#pmc">definition of PMC and chair</a>
, and be familiar with the <a href="../foundation/bylaws.html">ASF Bylaws</a>. The  <a href="https://svn.apache.org/repos/private/foundation/officers/advice-for-new-pmc-chairs.txt">advice for new PMC chairs</a> has additional useful information.</p>
<h3 id="review-board-meeting-minutes-about-their-project">Review board meeting minutes about their project<a class="headerlink" href="#review-board-meeting-minutes-about-their-project" title="Permalink">&para;</a></h3>
<p>PMC chairs should monitor the minutes of board meetings for entries that are relevant to their
project, especially any comments directors make on their project's reports,
pass relevant information back to the project PMC, and otherwise
serve as a conduit for any questions between the board and the PMC.</p>
<p><strong>Note:</strong> Feedback from the board and the unedited minutes of board meetings are
<strong>not</strong> normally public information, and should be treated confidentially.  Only after
the board has formally approved the minutes of a meeting (normally the following month) are they published publicly.
Feedback on meeting minutes is usually sent to the private@ list.</p>
<h3 id="ensure-the-projects-quarterly-board-report-is-submitted">Ensure the project's quarterly board report is submitted<a class="headerlink" href="#ensure-the-projects-quarterly-board-report-is-submitted" title="Permalink">&para;</a></h3>
<p>While the PMC chair is not required to write the quarterly board report personally, they are
responsible for ensuring the report is complete and submitted on time.</p>
<ul>
<li>The reporting schedule is listed in <a href="https://svn.apache.org/repos/private/committers/board/committee-info.txt">committee-info.txt</a>, along with the procedure.</li>
<li>See the <a href="../foundation/board/reporting">Board reporting guidelines and how-to</a> for what the reports should contain. (Note that new PMCs are required to report monthly for the first quarter.)</li>
<li>Project reports are about the status of the project, together with any community and
legal issues or other general impediments. If there are issues requiring board assistance, make
that apparent, separate from any general project news.</li>
<li>You should seek input from your PMC, but it is mainly your report to the board on behalf of your project. The chair does not report
to the PMC - the chair reports to the board (and ultimately to the ASF membership).</li>
<li>You can use the <a href="https://reporter.apache.org/"><strong>Apache Committee Reporter</strong> tool</a> to simplify some data collection for your report.</li>
<li>Examples of past project reports are in the <a href="../foundation/board/calendar.html">Board Meetings and Calendar</a>.</li>
</ul>
<p>Remember that, as in any committee, the chair is a <strong>facilitator</strong> and their role within the PMC
is to ensure that everyone has a chance to be heard and to enable meetings and mailing lists
to flow smoothly. A well-run PMC works together to draw up the information for
their board report, but the chair is specifically responsible for getting it to the board. There is no concept of "leader" in the Apache way.</p>
<h3 id="ensure-new-committer-requests-are-made">Ensure new committer requests are made<a class="headerlink" href="#ensure-new-committer-requests-are-made" title="Permalink">&para;</a></h3>
<p>After the project has elected new committers and followed the process to
get their account created, the PMC chair ensures
the new committer has <a href="#newcommitter">karma</a> (access) to the project repositories.</p>
<h3 id="send-notices-and-followup-when-adding-pmc-members">Send NOTICEs and followup when adding PMC members<a class="headerlink" href="#send-notices-and-followup-when-adding-pmc-members" title="Permalink">&para;</a></h3>
<p>The chair is responsible for sending the NOTICE email to the board, then
updating <a href="https://svn.apache.org/repos/private/committers/board/committee-info.txt">committee-info.txt</a>
and the LDAP committee group after the candidate accepts -- see the <a href="#newpmc">detailed procedure</a>.</p>
<h3 id="maintain-asf-records-on-the-pmc-roster">Maintain ASF records on the PMC roster<a class="headerlink" href="#maintain-asf-records-on-the-pmc-roster" title="Permalink">&para;</a></h3>
<p>Maintain information about your PMC's composition in the SVN "committers" repository
at <a href="https://svn.apache.org/repos/private/committers/board/committee-info.txt">committee-info.txt</a> and keep it up-to-date.
Remember to update the LDAP committee  group as well.</p>
<p>Be aware of anything currently in incubation at
<a href="https://incubator.apache.org">incubator.apache.org</a>.</p>
<h3 id="subscribe-to-the-board-mailing-list-if-desired">Subscribe to the <code>board@</code> mailing list if desired<a class="headerlink" href="#subscribe-to-the-board-mailing-list-if-desired" title="Permalink">&para;</a></h3>
<p>PMC Chairs are welcome to subscribe to the <code>board@</code> mailing list to stay aware of Foundation level issues that may affect
their project. This used to be a requirement, but the Board made it optional in June 2020. Note that <code>board@</code> is a privately-
archived mailing list, so <strong>information from board@ must NOT be forwarded elsewhere</strong>.</p>
<h3 id="newchair">How to change your PMC's chair<a class="headerlink" href="#newchair" title="Permalink">&para;</a></h3>
<p>If your PMC wishes to change their VP / Chair, typically you hold
a vote or otherwise reach a consensus in the PMC about who the
new Chair should be.  Then anyone on the PMC can
send <code>board@</code> an official resolution for the board to approve (or reject) at the next monthly board meeting
before this change officially takes place.</p>
<p>Use the <a href="https://whimsy.apache.org/board/agenda">Whimsy Board Agenda</a>
(requires Apache login) to submit the formal chair change resolution to
the next month's board meeting. Log in to the Board Agenda and click the
<em>add item</em> button at the bottom to add the appropriate resolution. If your PMC
members have difficulty logging into Whimsy, contact the <code>board@</code> mailing list for help.</p>
<p>After the board approves the resolution (typically at the next monthly meeting), you must change the VP/chair name on the <a href="../foundation/">foundation</a> website by <a href="infra-site.html">editing the top-level website</a>.</p>
<h3 id="is-a-pmc-chair-an-officer-or-member-of-the-asf">Is a PMC Chair an officer or Member of the ASF?<a class="headerlink" href="#is-a-pmc-chair-an-officer-or-member-of-the-asf" title="Permalink">&para;</a></h3>
<p>Yes, they are officers of the corporation, and no, they are not necessarily "Members". PMC Chairs are appointed by the board to be the
Vice President of their top level project and to serve as the Chair of their
Project Management Committee. <a href="../foundation/faq.html#why-are-PMC-chairs-officers">Read an explanation why PMC Chairs are legal officers of the
corporation</a>.</p>
<p>PMC Chairs/VPs are not necessarily Members of the ASF. Members of
a PMC and the Chair/VP have merit within their project, which is different from
the governance of the ASF as a whole Foundation. Members of the Foundation
are essentially <a href="/foundation/governance/members">shareholders in the legal corporation</a> that hosts our hundreds of
software projects.</p>
<h3 id="board-feedback">How to reply to board feedback on a project's report<a class="headerlink" href="#board-feedback" title="Permalink">&para;</a></h3>
<p>The board reads each submitted project report at its monthly meetings, and sometimes
individual directors make comments or ask questions, using the Whimsy tool, in
the meeting agenda. Shortly after each month's meeting, the Secretary uses
Whimsy to automatically send all comments out to each project's <code>private@</code>
mailing list and to the PMC chair directly.</p>
<p>Some comments are simple feedback or notes on the report; some comments are
specific questions from directors. If there is any question
or unusual feedback in this email, the board expects that a PMC member
will send a reply-all response to <code>board@</code>.</p>
<h3 id="move-to-attic">Why would a project move to the Attic?<a class="headerlink" href="#move-to-attic" title="Permalink">&para;</a></h3>
<p>As described on <a href="http://attic.apache.org">its homepage</a>, the Attic is meant
to <em>provide oversight for projects which otherwise would not have oversight</em>.</p>
<p>It's fine for ASF projects to be mature and quiet, with little development
activity happening, and that in itself is not a reason to move to the Attic.</p>
<p>However, to be viable, an ASF project must have enough active PMC Members
who provide oversight for the project. They fix and release code and handle
security vulnerabilities or other serious bugs, for example.</p>
<p>While the PMC doesn't have to fix all the bugs or requests that come
in, the Board must be able to verify that there are at least three PMC
members monitoring the project's mailing lists who <strong>could</strong> reply and act
in such cases.</p>
<p>To this end, the Board will sometimes perform a <a href="#roll-call">PMC roll call</a>.</p>
<p>Sometimes, members leaving a project would result in fewer than three PMC
members remaining, while other community members are willing to continue
maintaining the project. In such a case, the best way forward, if possible,
is to elect a few of those community members to the PMC to keep it viable.</p>
<p>If that does not happen, the Board can "reboot" a PMC by re-establishing
it with a new or modified PMC. As an example, see the
<a href="/foundation/records/minutes/2019/board_minutes_2019_02_20.txt">Board resolution to reboot the Apache Xalan PMC</a>
from the February 2019 Board minutes.</p>
<p>Mature or very slow-running projects should periodically (we recommend
once a year) do a PMC roll call to confirm their viability.</p>
<p>In summary, the only reason for a project to move to the Attic is lack
of oversight due to an insufficient number of active PMC members.</p>
<p>Note that going to the Attic is not necessarily a bad thing: it's
merely a reflection that there isn't currently an <strong>active</strong> community
to manage the project. It's also a clear way to set the right expectations
for users of the project's code.</p>
<h3 id="roll-call">How to perform a PMC roll call<a class="headerlink" href="#roll-call" title="Permalink">&para;</a></h3>
<p>The Board sometimes asks for a roll call for projects that fail to
report regularly, have very little visible activity on their mailing lists
or releases, or do not seem to be responsive to security issues.</p>
<p>If a Director (on behalf of the Board) asks a PMC to perform a roll
call, the PMC <strong>must</strong> respond by showing via an email thread that
<a href="/legal/release-policy.html#release-approval">at least three PMC members</a>
are active.</p>
<p>A PMC can do this by each of its active members replying to a thread
to <code>board@</code>, or by having one PMC member send a link to a thread on the PMC's
lists where at least three PMC members reply that they are still monitoring
the project and could assist with creating new releases if needed. <strong>Be sure</strong>
to let the <code>board@</code> mailing list know when at least three PMC members have
responded (or always cc: <code>board@</code>).</p>
<p>Projects <strong>must</strong> reply to the Board's request for a roll call. Failure
to show that at least three PMC members are present before the next monthly
Board meeting can lead to the Board concluding the project is due to
shut down and move to the <a href="https://attic.apache.org/">Apache Attic</a>
for lack of oversight.</p>
<p>See also <a href="pmc.html#move-to-attic">why would a project move to the Attic?</a>, above.</p>
<h2 id="pmcmembers">PMC membership management<a class="headerlink" href="#pmcmembers" title="Permalink">&para;</a></h2>
<h3 id="newpmc">How to add a PMC member<a class="headerlink" href="#newpmc" title="Permalink">&para;</a></h3>
<p>The usual process for adding a member to a PMC is to:</p>
<ul>
<li>Elect the new member by having the PMC vote on the project's private list, according to the <a href="/foundation/voting">ASF voting rules</a></li>
<li>Follow the below process to finalize the nomination.</li>
</ul>
<p>In specific cases, however, such as low PMC participation preventing the number
of required votes from being reached, or the PMC chair being unavailable for an
extended period of time, PMC members can ask the Board to make the necessary
changes to the PMC without a successful vote. In such a case, the Board would only
be concerned if there is opposition within the PMC.</p>
<h4 id="send-the-board-a-notice-of-the-vote-to-add-someone">Send the board a NOTICE of the vote to add someone<a class="headerlink" href="#send-the-board-a-notice-of-the-vote-to-add-someone" title="Permalink">&para;</a></h4>
<p>Adding a PMC member requires sending an email notification
to the Board's mailing list and the PMC's private mailing list.
Be sure to send a <em>separate</em> [NOTICE] email for <em>each</em> individual you are nominating.</p>
<p>Once the notification appears in the <a href="#board_archive"><strong>archives</strong></a>, an invitation
may be sent out.</p>
<p>The PMC Chair or any other PMC member can send this notification if they include
a link to the formal PMC decision or a vote thread on their private@ list.</p>
<p><strong>Ensure the PMC private list is copied - but do not CC the potential member</strong>. For example:</p>
<pre><code>
    To: board@apache.org
    Cc: private@&lt;project&gt;.apache.org
    Subject: [NOTICE] Jane Doe for &lt;project&gt; PMC

    &lt;project&gt; proposes to invite Jane Doe (janedoe) to join the PMC.
</code></pre>
<p>If a vote was held, include</p>
<pre><code>The vote result is available here: https://lists.apache.org/...
</code></pre>
<p>The link should be a permalink from the <code>https://lists.apache.org/</code> mail archive.
This allows any member to review the mail vote.</p>
<p>If the candidate does not (yet) have an Apache account, include
that fact in the notification email.</p>
<h4 id="board_archive">Check the board archive for mail delivery<a class="headerlink" href="#board_archive" title="Permalink">&para;</a></h4>
<p>Also the list is moderated, so it may take a day or two before the email appears on the list and is seen by the board members.
If the email is not moderated in time, it will never reach the list.
The invite can only be sent out once the notice email has been posted to the list.</p>
<p><strong>The PMC Chair MUST check the board archives to ensure that the NOTICE has actually been delivered to the board mailing list.</strong></p>
<p>You can do this by sending a mail to the EZMLM server at <code>board-index@apache.org</code> followed by a <code>board-get.XXX@apache.org</code> (<code>XXX</code> = message number).
If the EZMLM server refuses the request, check that you are <a href="#subscribe-to-the-board-mailing-list">subscribed to the board@ list</a>
ASF Members can also access the <a href="https://mail-search.apache.org/members/private-arch/board" target="_blank">board archive</a>.</p>
<p>It is not sufficient to check that you have seen the email; the email must appear in the board archives.</p>
<h4 id="invite-the-person">Invite the person<a class="headerlink" href="#invite-the-person" title="Permalink">&para;</a></h4>
<p>To formally add the candidate to your PMC -  the PMC Chair needs to:</p>
<ul>
<li>Formally invite the new PMC member (with copy to the private@ list). If they accept, then:</li>
<li>Update the <strong><a href="https://whimsy.apache.org/roster/committee/">roster</a></strong>
with the new PMC member.</li>
<li>This gives the new PMC member access to the PMC-only parts of SVN for the project.</li>
</ul>
<p>The new PMC member should now subscribe to your PMC's private@ mailing list in the normal way.</p>
<p><strong>Note</strong> that the appointment to the PMC does not become official until the Foundation's records (i.e. committee-info.txt) have been updated
(see 7C of the September 2022 board minutes).</p>
<p>If the candidate declines PMC membership or doesn't respond to the invitation, please follow up the original notice to the board to say that
the change did not happen, and do not update the records.</p>
<p>New PMC members are required to read the <a href="/foundation/marks/responsibility">PMC Branding Responsibilities</a>.</p>
<h3 id="membersleave">When members leave the PMC<a class="headerlink" href="#membersleave" title="Permalink">&para;</a></h3>
<h4 id="resign">How to resign from a PMC<a class="headerlink" href="#resign" title="Permalink">&para;</a></h4>
<p>"Resignation of a member of a PMC shall take effect
immediately upon receipt of their resignation, as recorded on any of
the Foundation's mailing list archives, but can be revoked by that
member within 72 hours of receipt."</p>
<p>The detailed process can be found
in the <a href="/foundation/records/minutes/2022/board_minutes_2022_09_21.txt">September 2022 board minutes</a>
under section <a href="https://whimsy.apache.org/board/minutes/PMC_Membership_Change_Process.html">7 C. PMC Membership Change Process</a>.</p>
<h4 id="emeritus">How to mark a PMC member as resigned or emeritus<a class="headerlink" href="#emeritus" title="Permalink">&para;</a></h4>
<p>The ASF does not have any formal concept for an "emeritus PMC member" - an individual is either a member
of the PMC or not. Projects are free to establish their own policies for designating members of the PMC
who are inactive but remain on the PMC, or those who were formerly on the PMC and have resigned. Some
projects have also established guidelines to allow former PMC members to remain on the private PMC list,
and to allow a PMC member to request reinstatement simply by asking (note that
the standard Board notification procedures must still be followed for reinstatement).</p>
<p>Once the PMC member's resignation is received on a mailing list of
the Foundation, the resignation is considered effective. However, the
PMC member has 72 hours to withdraw their resignation. Notifying the board is not required, but
encouraged to ease tracking.</p>
<p>Once the resignation has taken effect, the PMC Chair should:</p>
<ul>
<li>Update <strong><a href="https://svn.apache.org/repos/private/committers/board/committee-info.txt">committee-info.txt</a></strong>
to remove the former member's entry.</li>
<li>Update the appropriate LDAP committee group - See the <a href="#SVNaccess">SVN access</a> section above.</li>
</ul>
<p>You can do these updates using the <a href="https://whimsy.apache.org/roster/committee/">Whimsy roster</a>.</p>
<h4 id="pmc-removal">Should a PMC remove inactive members?<a class="headerlink" href="#pmc-removal" title="Permalink">&para;</a></h4>
<p>Projects can establish their own policy on handling inactive members,
as long as they apply it consistently. It is not a problem to retain members of the PMC who have become inactive,
and it can make it
easier for them to stay in touch with the project if they choose to become active again.</p>
<p>Typically, PMC members who are no longer able to participate will resign from the PMC.
However, if a PMC chooses to remove one of its members (without that member's request or consent), it must request the
Board to make that decision (which is typically done with a resolution at the Board's
next meeting). The PMC chair should send an email to the board@ mailing list
detailing the request for removal and the justification the PMC has for that removal, and
copy the project's private@ list.</p>
<h4 id="deceased">What to do if a committer or PMC member has died<a class="headerlink" href="#deceased" title="Permalink">&para;</a></h4>
<p>This is a tragic occurrence, but with so many communities here at
the Foundation, it is bound to happen occasionally. Each community can
decide how they want to handle this issue:</p>
<ul>
<li>You <strong>must</strong> notify <a href="mailto:root@apache.org">root@apache.org</a> and <a href="mailto:secretary@apache.org">secretary@apache.org</a>. This will allow the person's account to be disabled,
and any necessary Foundation records to be updated, for example removal from PMC/podling membership rosters
and cancellation of email subscriptions.</li>
<li>Feel free to add a page to our <a href="/memorials/">memorial site</a>. Many communities have
gathered eulogies and remembrances.</li>
</ul>
<h2 id="committer-management">Project committer management<a class="headerlink" href="#committer-management" title="Permalink">&para;</a></h2>
<h3 id="newcommitter">How to invite new project committers<a class="headerlink" href="#newcommitter" title="Permalink">&para;</a></h3>
<p>It is the responsibility of each project PMC to review productive contributors
to their project and consider nominating those contributors as committers, and then
voting them in as committers (and possibly PMC members as well). PMCs
should be guiding their new committers, to make sure that they have access to the proper resources and ASF documentation (e.g. the <a href="new-committers-guide.html">Guide for new
committers</a> and the <a href="committers.html">Committers'
FAQ</a> ). If a productive individual is
<em>already</em> an Apache committer on another project, you can just
<a href="#karma">grant them karma to your project</a>.</p>
<h3 id="noncommitter">How to submit new committer account requests<a class="headerlink" href="#noncommitter" title="Permalink">&para;</a></h3>
<p>Most PMCs hold formal votes on committer nominees to decide whether to invite them,
although PMCs are free to follow their own documented process for finding
consensus on adding new committers.</p>
<p>Once the PMC formally wants to invite an individual to be a committer,
it should invite the person, and require the new committer to
<a href="/licenses/#clas">submit an Individual Contributor License Agreement (ICLA) to the secretary</a>.
The secretary <strong>cannot process new committer accounts</strong> without receiving the CLA acknowledged by the ASF secretary or
a board member. Your PMC needs to work with the new committer to ensure
that their CLA is received and recorded properly, so you need to monitor
the file <code>iclas.txt</code> in the <code>foundation/officers</code> repository. Only ASF
members and officers (PMC chairs) have access. The Apache Phone Book
has an <a href="https://home.apache.org/unlistedclas.html">Unlisted CLAs</a> page
which is generated daily from the <code>iclas.txt</code> file, and recently received CLAs
appear there.</p>
<p>Encourage your new committer to include both the PMC name and their desired account ID
on the submitted ICLA. If both of these pieces of information are provided on the ICLA
form, the ICLA is sent to the correct address (<code>secretary@apache.org</code>), and the secretary
or assistant can verify a [VOTE][RESULT] for the new committer, the account will be requested
by the person (secretary or assistant) filing the ICLA.</p>
<p>If the new account information is not provided on the ICLA, the PMC chair is responsible to
get the new committer's desired account ID and request the new account.</p>
<p>Once the ICLA has been filed, use the <a href="https://whimsy.apache.org/officers/acreq">ASF New Account Request form</a>
to generate the request.  Should the PMC chair be unavailable for any
reason, any ASF member can act on their behalf.</p>
<p><strong>For incubating projects</strong>: If</p>
<ul>
<li>the podling has its status page set up</li>
<li>the podling is identified on the ICLA</li>
<li>a valid account id is provided on the ICLA</li>
<li>the podling is listed on the incubator's ProjectProposals page</li>
<li>the submitter is named on the project proposal</li>
</ul>
<p>the secretary or assistant will request the account. In other cases, the Mentors will request
the account. If the podling you're requesting accounts for
doesn't appear in the drop-down list of podlings,
provide the podling name in the free text input box.</p>
<p>Most PMCs decide on new committers through an election process on
their private mailing list. Please include a URL or message-id
reference to the final vote tally using the <a href="https://lists.apache.org">Apache Mail Archives</a>.</p>
<p>New account requests will only be accepted from PMC chairs and ASF members.
If you are acting on behalf of a project which was accepted for incubation,
please get in touch with the sponsoring PMC and let them take care of
requesting any new accounts.</p>
<p>The request will be CC'd to the PMC mailing list. Barring objections from the
PMC, the infrastructure team will create the account and assign the
appropriate group permissions. This may take a few days. A message
confirming the new account will be sent to the PMC mailing list and to the new
committer.</p>
<p>If the ICLA included the PMC name, normally the account will already have been set up
in the correct LDAP group that will grant access to the project source repository.</p>
<p>If not, the PMC takes over and provides the rest of the infrastructure
needs. In particular, the PMC chair has the ability <strong>and the
responsibility</strong> to provide write access to the project's source
repository.</p>
<h4 id="SVNaccess">How to grant SVN access (karma) to a project source repository<a class="headerlink" href="#SVNaccess" title="Permalink">&para;</a></h4>
<p>For most operations, PMCs do not need to do anything to grant new committers SVN access to their areas. However, if the automatic LDAP process does not work for some reason, the PMC can use  the <a href="https://github.com/apache/infrastructure-p6/blob/production/modules/subversion_server/files/authorization/asf-authorization-template" target="_blank">ASF authorization template</a>.</p>
<p>The <strong>[groups]</strong> section of the file defines SVN group names and
their members. The groups are defined as LDAP references; see below
for how to update them.</p>
<p>To grant or deny access to directories in SVN, the PMC chair needs to
update the appropriate <strong>[group]</strong> entry. The PMC chair has access to make
changes to the project groups held in LDAP.</p>
<h4 id="SVNWhimsy">Updating LDAP group membership using Whimsy Roster<a class="headerlink" href="#SVNWhimsy" title="Permalink">&para;</a></h4>
<p>PMC Chairs may use the <a href="https://whimsy.apache.org/roster/committee/">Whimsy roster</a> tool,
navigate to the committee, and either double click on the person or the plus
sign to modify or add a person.</p>
<h4 id="karma-podling">How to grant karma to incubator podling committers<a class="headerlink" href="#karma-podling" title="Permalink">&para;</a></h4>
<p>Podling authorization is managed using LDAP groups, just like PMCs - use the <a href="#SVNWhimsy">Whimsy Roster tool</a>.</p>
<h4 id="karma">How To grant karma to someone who already has an Apache account<a class="headerlink" href="#karma" title="Permalink">&para;</a></h4>
<p>In this case, <strong>contact your PMC first</strong>. All PMC chairs can give an existing
Apache ID access to their project's repositories. See <a href="#SVNaccess">how-to</a> above.
For podlings, the PMC is the Incubator.</p>
<p>Chairs may use <a href="#SVNWhimsy">Whimsy's roster tool</a> to modify their project membership lists.</p>
<p><em>ONLY</em> if a PMC chair is not responsive or unavailable, then <a href="https://infra.apache.org/contact.html" target="_blank">contact
the Apache Infra team</a> for assistance. This should only be for people who already
have an Apache account and need extended commit access.</p>
<pre><code>    
Karma request form:

    To: infrastructure
    Cc: private@&lt;project&gt;.apache.org, committers@email.address
    Subject: Karma request

    Userid:       ...

    Requested karma:  &lt;project&gt;[/&lt;subproject&gt;]...
    Reason:       [a few lines explaining why someone needs karma]

    [Vote:        reference to mail archive for PMC bookkeeping]
</code></pre>
<p>Once the request has been received, a person with appropriate access will
extend the karma and reply accordingly.</p>
<h4 id="machine">How to access other Apache infrastructure servers<a class="headerlink" href="#machine" title="Permalink">&para;</a></h4>
<p>Most committers can access all needed resources with just their
Apache ID and their project's repositories and mailing lists.  But if
you do need access to
<a href="machines.html">other official ASF servers</a>, request an
account by <a href="https://infra.apache.org/contact.html" target="_blank">contacting
the Apache Infra team</a>.</p>
<pre><code>
    Account request form:

    To: infrastructure
    Cc: private@&lt;project&gt;.apache.org, committers@email.address
    Subject: Machine account request - &lt;machine&gt;

    Userid:     ...
    Machine:    ...
    Groups required:...
    Reason:      [a few lines explaining why an account is required]

    [Vote:       reference to mail archive for PMC bookkeeping]
</code></pre>
<p>The administrator of the machine will then reply accordingly.</p>
<h2 id="faq">PMC FAQs and how-tos<a class="headerlink" href="#faq" title="Permalink">&para;</a></h2>
<h4 id="import">How to import code from an external source<a class="headerlink" href="#import" title="Permalink">&para;</a></h4>
<p>If the code to be imported is licensed under a Category A license and the intent is to
distribute the code under its original license, copy the code into
the Apache source repository, preserving its original header. Add the license for the code
to the top level LICENSE file. If the team makes changes to the code, add an
Apache header to the file(s) that notes the changes.</p>
<p>If the code to be imported is intended to have continued development in Apache,
and the owners of the code are willing to contribute their Intellectual Property
to Apache under an
<a href="/licenses/#clas">Individual Contributor License Agreement</a>,
<a href="/licenses/#clas">Corporate Contributor License Agreement</a>, or
<a href="/licenses/#grants">Software Grant Agreement</a>,
you can copy the code to the Apache repository, changing the license header
to the standard Apache header. In this case, the code needs to be
reviewed by the
<a href="https://incubator.apache.org">Incubator</a> via the
<a href="https://incubator.apache.org/ip-clearance/index.html">Intellectual Property Clearance process</a>.</p>
<h4 id="mail-archives">How to search the archives for private lists<a class="headerlink" href="#mail-archives" title="Permalink">&para;</a></h4>
<p>There are a number of Apache lists whose archives are not available to the
public. Posts to these lists are considered
<a href="../foundation/how-it-works.html#confidential">confidential</a>. Do not quote them on public lists our outside the ASF without the permission of the author.</p>
<p>PMC members may search archives of their project's <code>private@</code> list. ASF members
and officers may also read PMC mailing list archives. There
are several ways to access our private archives:</p>
<ul>
<li><a href="https://lists.apache.org/">lists.apache.org</a>, also called PonyMail, is the preferred archive system.</li>
<li><a href="https://mail-search.apache.org/">mail-search.apache.org</a> is the older mod_mbox system.</li>
<li>PMC members who are not also ASF Members can
<a href="/foundation/mailinglists.html">fetch</a> archives in the normal way: via the
<code>-get</code> administrative command to ezmlm to download groups of mails.</li>
</ul>
<h4 id="who-can-be-on-private">Who can subscribe to a project's private list?<a class="headerlink" href="#who-can-be-on-private" title="Permalink">&para;</a></h4>
<p>All PMC members of a project should be subscribed to their project's <code>private@</code>
list. In addition, ASF Members may read any project's private list. In general,
people not on a PMC should not be allowed to subscribe to <code>private@</code> lists unless they are ASF Members.</p>
<p>You can <a href="https://whimsy.apache.org/committers/subscribe">self-subscribe to mailing lists</a>.</p>
<h4 id="data-checks">How to check PMC and LDAP memberships<a class="headerlink" href="#data-checks" title="Permalink">&para;</a></h4>
<p>There are two main ways to check the membership of PMCs and LDAP groups:</p>
<ul>
<li>Committers can view, and PMC chairs can update, PMC rosters using
<a href="https://whimsy.apache.org/roster/committee/">Whimsy</a>.</li>
<li>Anyone may view Apache Phonebook pages at <a href="https://home.apache.org/phonebook.html">https://home.apache.org/phonebook.html</a>.
From there you can link to a specific PMC like this: <a href="http://home.apache.org/phonebook.html?pmc=gump">home.apache.org/phonebook.html?pmc=gump</a></li>
</ul>
<p>Please allow time for any changes to LDAP and committee-info.txt to propagate to the Phonebook app.</p>
<p><strong>Note:</strong> The official record for PMC membership is the committee-info.txt file, and not the LDAP committee group.</p>
<h4 id="new-wiki">How to request a wiki, a blog, or a new mailing list<a class="headerlink" href="#new-wiki" title="Permalink">&para;</a></h4>
<!--{#new-blog} {#new-mail-list}-->
<p>See <a href="infra-contact#requesting-action">the Contact Infra roadmap</a> to request these and other resources for your project.</p>
<h4 id="private-or-public">Where should we discuss project business?<a class="headerlink" href="#private-or-public" title="Permalink">&para;</a></h4>
<p>In almost all cases, discussion of project business should happen on that project's publicly archived
mailing lists - the <a href="#mailing-list-naming-policy">detailed policy</a> explains the few exceptions.</p>
<p>Discuss any topic which does not specifically need to be private on an appropriate public mailing list. This
allows the public to read about the direction of the project and to offer early feedback.</p>
<p>Most projects do their work on their <strong>dev@</strong><em>project</em>.apache.org mailing list.
Some projects also have a <strong>user@</strong> mailing lists for more general or non-technical
questions, and may have a <strong>general@</strong> mailing list. Every project should have
a clear <a href="/foundation/mailinglists.html">mailing lists page</a> that has instructions for subscribing to their lists and
for reading the archives.</p>
<h4 id="escalation">How to get help or escalate issues<a class="headerlink" href="#escalation" title="Permalink">&para;</a></h4>
<p>Normally, Apache projects are expected to manage their own affairs; the
people on a PMC and regular committers typically know the best way to
work within their project communities.  However, if things don't work
well, or the project community has serious policy questions or disagreements
about how to work together, you can ask for help elsewhere around the ASF.</p>
<p>The <a href="/board/escalation">detailed Escalation Guide</a>
helps communities figure out where to get help from other groups at Apache,
or, if all else fails, to ask for help or appeal issues to the Board.<br/>
The <a href="/foundation/governance/orgchart">Apache Organizational Chart</a>
can help you find the right officer or group to ask for help on most issues,
like legal, branding, press, or the many <a href="/board/services">other services the ASF offers projects</a>.</p>

</div>  </main>

  <!-- Footer -->
  <footer class="bg-primary">
    <div class="container">
      <div class="row">
        <br />
        <div class="col-sm-1">

        </div>
        <div class="col-sm-2">
          <h5 class="white">Community</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="http://community.apache.org/">Overview</a></li>
            <li><a href="/foundation/conferences.html">Conferences</a></li>
            <li><a href="http://community.apache.org/gsoc.html">Summer of Code</a></li>
            <li><a href="http://community.apache.org/newcomers/">Getting Started</a></li>
            <li><a href="/foundation/how-it-works.html">The Apache Way</a></li>
            <li><a href="/travel/">Travel Assistance</a></li>
            <li><a href="/foundation/getinvolved.html">Get Involved</a></li>
            <li><a href="/foundation/policies/conduct.html">Code of Conduct</a></li>
            <li><a href="http://community.apache.org/newbiefaq.html">Community FAQ</a></li>
            <li><a href="/memorials/">Memorials</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Innovation</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="http://incubator.apache.org/">Incubator</a></li>
            <li><a href="http://labs.apache.org/">Labs</a></li>
            <li><a href="/licenses/">Licensing</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/foundation/marks/">Trademark Policy</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Tech Operations</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/dev/">Developer Information</a></li>
            <li><a href="/dev/infrastructure.html">Infrastructure</a></li>
            <li><a href="/security/">Security</a></li>
            <li><a href="http://status.apache.org">Status</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Press</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/press/">Overview</a></li>
            <li><a href="https://blogs.apache.org/">ASF News</a></li>
            <li><a href="https://blogs.apache.org/foundation/">Announcements</a></li>
            <li><a href="https://twitter.com/TheASF">Twitter Feed</a></li>
            <li><a href="/press/#contact">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Legal</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/legal/">Legal Affairs</a></li>
            <li><a href="/legal/dmca.html">DMCA</a></li>
            <li><a href="/licenses/">Licensing</a></li>
            <li><a href="/foundation/marks/">Trademark Policy</a></li>
            <li><a href="/foundation/records/">Public Records</a></li>
            <li><a href="/foundation/policies/privacy.html">Privacy Policy</a></li>
            <li><a href="/licenses/exports/">Export Information</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-1">
        </div>

      </div>
      <hr class="col-lg-12 hr-white" />
      <div class="row">
        <div class="col-lg-12">
          <p class="text-center">Copyright &#169; 2023 The Apache Software Foundation, Licensed under the <a class="white" href="/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
          <p class="text-center">Apache and the Apache feather logo are trademarks of The Apache Software Foundation. </p>
        </div>
      </div>
    </div>

  </footer>

  <!-- / Footer -->

  <script src="/js/jquery-2.1.1.min.js"></script>
  <script src="/js/bootstrap.js"></script>
  <script src="/js/slideshow.js"></script>
  <script>
    (function($){
    $(document).ready(function(){
    $('ul.dropdown-menu [data-toggle=dropdown]').on('click', function(event) {
    event.preventDefault();
    event.stopPropagation();
    $(this).parent().siblings().removeClass('open');
    $(this).parent().toggleClass('open');
    console.log('WOrked');
    });
    });
    })(jQuery);
  </script>
</body>
</html>