The Apache Software Foundation Apache Incubator

Podling Project Management Committee (PPMC)

The Podling Project Management Committee (PPMC) helps a Podling learn how to govern itself. It works like a PMC but reports to the Incubator PMC instead of to the ASF Board. Initially, it is composed of the Podling's mentors and initial committers. The PPMC is directly responsible for the oversight of the podling and it also decides who to add as a PPMC member.

For general information about PMCs, see the PMC FAQ.

Private Mail List

A private mail list, named project-private, lets the PPMC discuss confidential topics. Most communication should be on the Podling's dev list! The private list is used only for confidential discussions that should not be made public, such as the suitability of a particular individual to become a committer or a member of the PPMC. See the ASF How it Works section titled Balancing confidentiality and public discussion.

The mentors should verify that all PPMC members are actually subscribed to the private list. Mailing list moderators can request the list of subscribers using ezmlm commands, and any subscriber can send a "ping - please reply" message to check who is actually "listening" to the PPMC list.

Don't mix private and public lists in posts!

  • Don't post to both the dev and private lists. Each member of the PPMC should be on the dev list, so posting to dev is sufficient.
  • Likewise, don't post to both the Incubator general and Incubator private lists. Each member of the Incubator PMC is on the Incubator general list, so posting to general is sufficient.

Note that the lists used to be named project-ppmc or pmc@tlp, so you may see those names referenced in other ASF documentation or in the mail list archives. It was resolved that these lists should be named private to make it clear that they should be used for confidential discussion, not as a general purpose way to contact (P)PMC members.

Podling Status Reports

On a regular basis, reports from each incubating project are aggregated and sent to the ASF Board. Watch the Incubator general mail list for when these become due.

The Incubator reports to the ASF Board monthly and includes status for a subset of the incubating projects. Currently new Podlings report to the Incubator monthly for the first three months, then quarterly thereafter. The reporting schedule is on the Incubator Wiki, which is also used for Podlings to provide status.

The PPMC does not have to fill out the report itself; the PPMC is just responsible for making sure that it gets filled out. In fact, it is better to discuss the report on the dev list and ask Podling developers to contribute to it. If Mentors disagree with the posted report, they should say so; otherwise, the Incubator PMC will assume that it speaks for the community.

Please add the following items:

  • Project name and one-line summary.
  • Date of entry to the Incubator.
  • Top three items to resolve before graduation.

Here are the points to be addressed:

  • Is there anything that the Incubator PMC or ASF Board specifically needs to address?
  • Are there any legal, infrastructure, cross-project or personal issues that need to be addressed? (Are there any stumbling blocks that impede the podling?)
  • Check that the project's Incubation Status file up to date. (Also provide the URL.)
  • What has been done (releases, milestones, etc.) since the last report?
  • What are the plans and expectations for the next period?
  • Are there any recommendations for how incubation could run more smoothly for you?
  • etc. (your own thoughts on what is important would be helpful!)

Project Status Page

In addition to the quarterly status reports, each Podling has a page on the Incubator web site that tracks the status (see the complete list for examples). Instructions for updating the status page are in the Incubator web site guide under Edit your project status report.

This is the primary source of information about your podling's status to the Incubator PMC and to the general public. Be sure to keep it updated as your podling progresses!

Voting in a new committer

If a person has made significant contributions of high-quality, is interested in continuing to contribute, and works well with others under the Apache guidelines, the project might want to grant that person commit access. See the ASF How it Works document, which explains meritocracy and roles.

Voting a new committer is one of the most important functions of any PMC, and the Incubator is no different. Only votes of Incubator PMC members are binding (counted) when considering a new committer. But the members of the PPMC, with direct oversight over the podling, are best able to judge the qualifications and suitability of a proposed new committer. Therefore, the process for voting a new committer into an Incubator podling is a bit more complex than voting a new committer into a Top Level Project.

The role of the PPMC in this process is recommendation to the Incubator PMC that one of the contributors to the podling is worthy of committership. The recommendation should reflect consensus of the PPMC. When it comes to voting, an affirmative vote of at least three Incubator PMC members is needed. Since the PPMC often contains only three Incubator PMC members (the podling's Mentors), the challenge for a PPMC to vote a new committer is to obtain three or more Incubator PMC members' votes. If all of the Mentors vote in favor of the new committer, the required number of votes is obtained, and the vote is submitted to the Incubator PMC for approval by acclamation (silent approval, or lazy consensus). But if during private voting in the PPMC, fewer than three Incubator PMC members vote, the conclusion of the PPMC vote can only be considered a recommendation, and the vote must be put to the Incubator PMC.

One of the PPMC members should lead the process of accepting a new committer. For the purposes of this document, the proposing PPMC member is referred to as the proposer, and the proposed committer is referred to as the nominee. Discussion of a nominee should take place on the podling project's private (PPMC) list [in a Top Level Project it would take place on the project's private list]. If there are any concerns raised during the discussion, these need to be resolved so that there is consensus among the PPMC members as to the suitability of the nominee for the project and for Apache. Many projects adopt an approach where, if there are any concerns, the nomination is delayed for a few months. Many concerns go away with continued participation by the nominee in the project.

After vetting the nominee, the vote can be called using either one of the two approaches listed below (notice the difference between private and public lists). And note that binding votes are those cast by Incubator PMC members.

  1. Vote on the podling's private (PPMC) list, with notice posted to the Incubator private list. The notice is a separate email forwarding the vote email with a cover statement that this vote is underway on the podling's private list. Many consider this approach to be best practice. After completing the vote on the PPMC list, the proposer takes the results to the Incubator PMC.
    • if there are three binding +1 votes, and no binding -1 votes, the proposer asks for lazy consensus by the Incubator PMC by sending email to the Incubator PMC private list, summarizing the discussion and vote, with a reference to the archived discussion and vote threads by the PPMC. Any member of the Incubator PMC can ACK the receipt of the vote. This starts a 72-hour window for lazy consensus. After 72 hours and no requests by any Incubator PMC member for a full vote by the Incubator PMC, the committer request is considered approved by the Incubator PMC and the PPMC can start the committer invitation process.
    • if there are not three binding +1 votes in the PPMC vote, or there are any -1 votes, or if any Incubator PMC member requests a full vote, the proposer calls for a vote by the Incubator PMC. Note that only the Incubator PMC members can see the Incubator private discussion, and the podling's Mentors should review all Incubator PMC feedback with the PPMC. Moreover, only Apache members may review the private PPMC list (this is normally not an issue since most Incubator PMC members are Apache members).

    Many projects then follow the Incubator PMC vote with a pro forma vote on the public project dev list, or have a welcome thread on the public dev list. These are intended to make the new committer feel welcome.

  2. Vote on the podling's developer list, with notice posted to the Incubator general list. The notice is a separate email forwarding the vote email with a cover statement that this vote is underway on the podling's developer list. Incubator PMC members vote on the public developer list. Three binding +1 votes and no binding -1 votes are required for a successful vote. This approach is considered inferior by many because it is a source of discord to have a public vote like this fail or take a very long time.

If the vote is positive, the proposer offers committership to the nominee. If the nominee accepts the responsibility of being a committer for the project, the nominee formally becomes an Apache committer.

The proposer then asks an Incubator PMC member to follow the documented procedures to complete the process. Normally, the Incubator PMC member is a Mentor on the podling's PPMC but if the Mentors are temporarily unavailable, the proposer can ask any Incubator PMC member.

  • If the nominee is already an Apache committer on another project, the Incubator PMC member simply updates the authorization file to include the nominee as a committer on the podling.
  • If the nominee is not already an Apache committer, the Incubator PMC member CC's both the Incubator PMC and the PPMC when sending the necessary e-mails to root.

After root creates the new account, a Mentor updates the authorization file to add the new committer to both the committer-? section and the podling section of the file https://svn.apache.org/repos/infra/infrastructure/trunk/subversion/authorization/asf-authorization

The proposer then directs the new committer to the Apache developer's pages, to the Apache Incubator site and to the Incubator Committers Guide for important additional information.

Voting in a new PPMC member

It should be a goal of a podling to have all committers participate in the PPMC. The PPMC should take an active role in watching committers develop into community participants, identify those who are participating at a community level, not just a technical one, and approach them with an offer of PPMC membership.

Any member of the PPMC can propose a new member of the PPMC. The proposal should be discussed in private on the PPMC private alias, with a subject line of [DISCUSS] Joe Bob PPMC membership. If there is consensus that the proposed member is suitable, then there should be a formal vote in the PPMC private alias, with the subject line of [VOTE] Joe Bob PPMC membership. The [VOTE] message should be forwarded to the IPMC ( private@incubator.apache.org) to notify them that the vote is underway. If the vote is successful, the proposer should send a message to the PPMC private alias, with the subject line of [VOTE][RESULT] Joe Bob PPMC membership. The message id of the [VOTE][RESULT] message should be preserved for the message to the Incubator PMC after Joe Bob accepts. Now, Joe Bob should be invited to join the PPMC, using a sample message like this.

Once the proposed member has accepted, the moderator for the PPMC mail alias will accept the new member's subscription request. The nominating PPMC member should send a message to the IPMC ( private@incubator.apache.org) with a reference to the vote results message id of the following form:

to: private@incubator.apache.org

subject: New member of Frizzle PPMC Joe Bob

body: Joe Bob has been voted as a new member of the Frizzle PPMC.

the vote thread is at:

msgid: 23985678912386778989056789659048357@sponsoring.member.org

The new member should be directed to this page for PPMC membership information.

The nominating member should also update the PPMC membership list.