<!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="/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="https://tac.apache.org">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">

      <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>
 
  </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="monitor-the-projects-private-mailing-list">Monitor the project's private mailing list<a class="headerlink" href="#monitor-the-projects-private-mailing-list" title="Permalink">&para;</a></h4>
<p>PMC members SHALL be subscribed to their project's private mailing list, and a
sufficient number of them MUST monitor it so that the PMC is responsive
to roll calls and other requests from the Board that are sent there.</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="https://tac.apache.org">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.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>