<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8"/>
    <title>Frequently Asked Questions</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <meta name="author" content="">
    <meta name="keywords" content="">
    <meta name="generator" content="JBake">

    <!-- Le styles -->
    <link href="css/incubator.css" rel="stylesheet">
    <link href="css/bootstrap.css" rel="stylesheet">
    <link href="css/asciidoctor.css" rel="stylesheet">
    <link href="css/base.css" rel="stylesheet">
    <link href="css/prettify.css" rel="stylesheet">

    <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="js/html5shiv.min.js"></script>
    <![endif]-->

    <!-- Fav and touch icons -->
    <!--<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../assets/ico/apple-touch-icon-144-precomposed.png">
    <link rel="apple-touch-icon-precomposed" sizes="114x114" href="../assets/ico/apple-touch-icon-114-precomposed.png">
    <link rel="apple-touch-icon-precomposed" sizes="72x72" href="../assets/ico/apple-touch-icon-72-precomposed.png">
    <link rel="apple-touch-icon-precomposed" href="../assets/ico/apple-touch-icon-57-precomposed.png">-->
    <link rel="shortcut icon" href="https://www.apache.org/favicon.ico">
    <script src="https://www.apachecon.com/event-images/snippet.js"></script>
  </head>
  <body onload="prettyPrint()">
    <div id="wrap">
   


	<!-- Fixed navbar -->
    <div class="navbar navbar-default navbar-fixed-top" role="navigation">
      <div class="container">
        <div class="navbar-header">
          <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="/"><i class="icon-home"></i>Apache Incubator</a>
        </div>
        <div class="navbar-collapse collapse">
          <ul class="nav navbar-nav">
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Policies <b class="caret"></b></a>
              <ul class="dropdown-menu">
                <li><a href="/policy/incubation.html">Incubation Policy</a></li>
                <li><a href="/ip-clearance/">Intellectual Property Clearance</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Proposals <b class="caret"></b></a>
              <ul class="dropdown-menu">
                <li><a href="/guides/proposal.html">A Guide To Proposal Creation</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">Podling Guides <b class="caret"></b></a>
              <ul class="dropdown-menu">
                <li><a href="/cookbook">Cookbook</a></li>
              
                <li><hr><a href="/guides/roles_and_responsibilities.html">Roles and Responsibilities</a></li>
                <li><a href="/guides/committer.html">Committers</a></li>
                <li><a href="/guides/ppmc.html">Podling Project Management Committee</a></li>
                <li><a href="/guides/community.html">Guide to Successful Community Building</a></li>

                <li><hr><a href="/guides/branding.html">Incubator Branding Guide</a></li>
                <li><a href="/guides/publicity.html">Podling Publicity/Media Guidelines</a></li>
                <li><a href="/guides/press-kit.html">Podling Press Kit</a></li>
              
                <li><hr><a href="/guides/transitioning_asf.html">Initial Code Import</a></li>
                <li><a href="/guides/names.html">Podling Name Search Guide</a></li>
                <li><a href="/guides/ip_clearance.html">Podling IP Clearance</a></li>

                <li><hr><a href="/guides/sites.html">Podling Websites</a></li>
                <li><a href="/guides/podling_sourcecontrol.html">Podling Source Control</a></li>

                <li><hr><a href="/guides/releasemanagement.html">Release Management</a></li>
                <li><a href="/guides/distribution.html">Release Distribution</a></li>
              
                <li><hr><a href="/guides/graduation.html">Guide to Successful Graduation</a></li>
                <li><a href="/guides/retirement.html">Guide to Retirement</a></li>
                <li><a href="/guides/transferring.html">Transferring Resources out of the Incubator</a></li>

                <li><hr><a href="/projects/#current">Current Podlings</a></li>
                <li><a href="/clutch/">Clutch Report</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">PMC Guides <b class="caret"></b></a>
              <ul class="dropdown-menu">     
                <li><a href="/guides/participation.html">Guide to Participation</a></li>
                <li><a href="/guides/lists.html">Incubator Mailing Lists Guide</a></li>

                <li><a href="/guides/chair.html">Incubator Chair Guide</a></li>  
                <li><a href="/guides/mentor.html">Mentors' Guide</a></li>

                <li><hr><a href="/guides/website.html">Updating the top-level Incubator website</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown">ASF <b class="caret"></b></a>
              <ul class="dropdown-menu">
                <li><a href="https://www.apache.org/foundation/how-it-works.html">How Apache Works</a></li>
                <li><a href="https://www.apache.org/dev/">Developer Documentation</a></li>
                <li><a href="https://www.apache.org/foundation/">Foundation</a></li>
                <li><a href="https://www.apache.org/legal/">Legal</a></li>
		<hr/>
                <li><a href="https://www.apache.org/licenses/">License</a></li>
		<li><a href="https://privacy.apache.org/policies/privacy-policy-public.html">Privacy Policy</a></li>
		<li><a href="https://www.apache.org/security/">Security</a></li>
                <li><a href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li>
                <li><a href="https://www.apache.org/foundation/thanks.html">Thanks</a></li>
		<li><a href="https://www.apache.org/events/current-event">Current Events</a></li>
              </ul>
            </li>
            <li><a href="/faq.html">FAQs</a></li>
          </ul>
        </div><!--/.nav-collapse -->
      </div>
    </div>
    <div class="container">
      <div class="row">
        <div class="col-md-4 vcenter"><a href="https://www.apache.org/"><img src="https://www.apache.org/img/asf_logo.png" alt="The Apache Software Foundation" border="0" style="margin-top: 2px" width="200"></a></div>
        <div class="col-md-4 vcenter"><a href="/"><img src="https://incubator.apache.org/images/incubator_feather_egg_logo_sm.png" alt="The Apache Software Foundation Incubator" border="0" style="margin-top: 2px" width="256"></a></div>
        <div class="col-md-4 vcenter">
	    <a href="https://www.apache.org/foundation/contributing.html"><img src="https://www.apache.org/images/SupportApache-small.png" height="64" width="64"></a>
	    &nbsp;&nbsp;&nbsp;&nbsp;
	    <a class="acevent" data-format="square" data-width="100" data-mode="light" data-event="random"></a>
	</div>
      </div>
    </div>
    <div class="top-container container">


<div class="incubator-page-header">
    <h1>Frequently Asked Questions</h1>
</div>

<div id="toc" class="toc">
<div id="toctitle">Table of Contents</div>
<ul class="sectlevel1">
<li><a href="#questions">Questions</a>
<ul class="sectlevel2">
<li><a href="#1_incubation">1. Incubation</a></li>
<li><a href="#2_participation">2. Participation</a></li>
<li><a href="#3_infrastructure">3 Infrastructure</a></li>
</ul>
</li>
</ul>
</div>
<div class="sect1">
<h2 id="questions">Questions</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="1_incubation">1. Incubation</h3>
<div class="sect3">
<h4 id="1_1_does_the_x_project_really_have_to_go_in_the_incubator_to_get_to_apache">1.1. Does the X Project really have to go in the Incubator to get to Apache?</h4>
<div class="paragraph">
<p>Yes.
Code that has existed outside the ASF can <strong>only</strong>
enter the ASF through the Incubator. There is no other option.
The Incubator, among other things, is where the due-diligence of
making sure the licence is correct, that we have received the <a href="http://www.apache.org/licenses/#grants">copyright license</a>, and that all of the initial developers submit their <a href="http://www.apache.org/licenses/#clas">CLAs</a> takes place.
The Incubator is also where projects can familiarize
themselves with how the ASF works under the guidance of Incubator
PMC (IPMC) members (<a href="incubation/Roles_and_Responsibilities.html#Mentors">mentors</a>).</p>
</div>
</div>
<div class="sect3">
<h4 id="1_2_im_the_mentor_of_this_project_and_i_think_that_im_able_to_do_it_by_myself_the_incubator_doesnt_add_anything_so_can_we_skip_it">1.2. I&#8217;m the mentor of this project, and I think that I&#8217;m able to do it by myself. The Incubator doesn&#8217;t add anything, so can we skip it?</h4>
<div class="paragraph">
<p>No.
Do it right, do it well, and add something in the process.
Incubation is not about handing a project over to some other group and
seeing what happens. The Incubator is simply the name of the place
that governs your actions when you process a new project into
Apache. It moves at the same rate you do, and achieves whatever
you achieve&#8201;&#8212;&#8201;the only difference is that we have a permanent
record in <strong>one</strong> place that we can go back to if
there are later IP problems, and there is a gate that the project must
pass through before it gains the right to release
software on behalf of the ASF.
The ASF will not let a project ignore or bypass that gate just because one
group or another feels they have earned the right to bypass it. Allowing that kind of exception would destroy the potential to build a
tradition of effective oversight, which is the reason we created
the Incubator.</p>
</div>
</div>
<div class="sect3">
<h4 id="1_3_project_xxx_makes_no_mention_of_the_incubator_for_accepting_new_projects_but_the_incubator_site_says_that_all_projects_entering_apache_must_pass_the_incubator_what_do_we_need_to_do_to_move_to_the_apache_xxx_project">1.3. Project XXX makes no mention of the Incubator for accepting new projects, but the Incubator site says that all projects entering Apache must pass the Incubator. What do we need to do to move to the Apache XXX project?</h4>
<div class="paragraph">
<p>The incubation process, WRT responsibilities, is roughly as
follows:
- Any Apache PMC (project management committee), including the IPMC
(Incubator PMC) itself, can approve the entrance of a project
at Apache.  They are the <a href="incubation/Roles_and_Responsibilities.html#Sponsor">Sponsor</a>.  (In rare cases, the Apache Board of Directors
will approve the entrance of a project.)
- The IPMC is from that moment on responsible for the
project. The assigned <a href="incubation/Roles_and_Responsibilities.html#Mentors">Mentors</a> (ASF members who have volunteered to help with
the incubation process) will have the primary responsibility
for overseeing the progress of the project.  Each quarter, the
project will submit an update to the entire IPMC about its progress in Incubation.
- This will continue until the IPMC approves the
project to be "graduated". After graduation, if another
PMC sponsored the podling, it will then be transferred to
the PMC that asked for incubation.  If the IPMC or the Board sponsored the podling, the Board must also approve the project to have its own PMC.
- At this point, Incubation is complete.</p>
</div>
<div class="paragraph">
<p>So, since you would like to have a place under the XXX Project,
ask that PMC to sponsor you.  After that vote, you will
automatically be under the Incubator, and incubation will
start.</p>
</div>
</div>
<div class="sect3">
<h4 id="1_4_someone_has_proposed_donating_their_codeproject_to_project_x_within_the_asf_for_continued_development_what_do_we_need_to_do_to_accept_the_code">1.4. Someone has proposed donating their code/project to project X within the ASF for continued development. What do we need to do to accept the code?</h4>
<div class="paragraph">
<p>The Incubator will only accept code for incubation if a PMC
has voted to accept it. So when a proposal for the donation of
code occurs, the project in question should discuss the proposal
(usually on their public mailing lists!), leading to a decision
by that project&#8217;s PMC on whether or not to sponsor the code (and,
potentially, the project surrounding it).
If the PMC agrees, it should approach the Incubator, and the Incubator can accept the
code for incubation. Record the grant by
following the procedure outlined in the <a href="/ip-clearance/">IP Clearance forms</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="1_5_the_code_came_from_outside_the_asf_so_its_ours_to_do_with_as_we_like_right">1.5. The code came from outside the ASF, so it&#8217;s ours to do with as we like, right?</h4>
<div class="paragraph">
<p>Wrong.
Here are some generally-agreed points that you should take
into consideration:
- No codebase within the ASF is an exclusive
location for a general technology within the ASF.
- All initial codebases are just that: initial. Once the code is
here, if people feel that the code sucks or the architecture
sucks, or whatever else someone wants to complain about,
all parties understand that the future direction of the
architecture and code is, as with everything at the ASF,
subject to communal will.
- Other contributors interested in any ASF codebase, with or
without existing codebases, are free to contribute code, or to
propose additional related projects.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="2_participation">2. Participation</h3>
<div class="sect3">
<h4 id="2_1_how_can_i_update_the_site">2.1. How can I update the site?</h4>
<div class="paragraph">
<p>Refer to <a href="guides/website.html">our guide to updating the website</a>.
If you are not a committer on the Incubator project,
you can still submit patches for the source documents.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_2_how_do_i_update_the_incubation_status_of_a_project">2.2. How do I update the incubation status of a project?</h4>
<div class="paragraph">
<p>See <a href="guides/mentor.html#Overview">notes</a>
about maintaining your project entry in the podlings summary file
and on your project&#8217;s status page.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_3_why_dont_we_use_an_issue_tracking_system_to_track_incubation_process">2.3. Why don&#8217;t we use an issue tracking system to track incubation process?</h4>
<div class="paragraph">
<p>Issue trackers do not meet the long-term archival and tracking
requirements for our legal purposes and they do not authenticate
that the person entering the status information has the authority
to do so, which is what we get with our version control system.
Note that how a project does its actual day-to-day tracking (i.e.
bugs in code) is not the same as filing the legal forms -
for those issues, so you can use our normal issue trackers to record bug resolution and development of features.
Nevertheless, SVN is our only authoritative and formal tracking
system for incubation status.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_4_how_do_i_update_the_site_of_an_incubating_project">2.4. How do I update the site of an incubating project?</h4>
<div class="paragraph">
<p>First read our <a href="/policy/incubation.html">Incubation Policy</a>.
Refer to the <a href="guides/sites.html">Website Guide</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_5_how_do_i_obtain_karma_for_the_infrastructure_site">2.5 How do I obtain karma for the Infrastructure site?</h4>
<div class="paragraph">
<p>Direct all requests for karma (whether for a podling web site or for the infrastructure site itself)
to the Incubator general email list.</p>
</div>
<div class="paragraph">
<p>Please read the <a href="/guides/website.html">website guide</a> before editing the website.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_6_how_do_i_set_up_the_podling_website">2.6 How do I set up the Podling website?</h4>
<div class="paragraph">
<p>To set up the website for a podling, start by requesting <a href="#site-karma">karma</a>.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_7_how_do_i_grant_karma_to_an_existing_apache_committer">2.7 How do I grant karma to an existing Apache committer?</h4>
<div class="paragraph">
<p>This <a href="http://apache.org/dev/pmc.html#karma">document</a> describes how to grant karma to an
existing Apache committer.</p>
</div>
</div>
<div class="sect3">
<h4 id="2_8_what_facilities_assist_with_incubator_management_and_how_are_they_generated_and_maintained">2.8 What facilities assist with Incubator management, and how are they generated and maintained?</h4>
<div class="paragraph">
<p>See <a href="facilities.html">Facilities for Incubator management</a>.</p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="3_infrastructure">3 Infrastructure</h3>
<div class="sect3">
<h4 id="3_1_how_does_our_project_request_resources">3.1 How does our project request resources?</h4>
<div class="paragraph">
<p>Co-ordinate via your project&#8217;s dev list and PPMC. Often someone
there will know what is necessary.
Some notes are in the
<a href="guides/mentor.html#request-required-resources">Mentor guide</a> and in the <a href="https://infra.apache.org/contact.html">Infrastructure instructions</a>.</p>
</div>
</div>
</div>
</div>
</div>

		</div>
		<div id="push"></div>
    </div>

    <div id="footer">
      <div class="container">
          <p class="muted credit">&copy; 2024 The Apache Software Foundation | Licensed under the Apache License, Version 2.0.<br/>
          Apache Incubator, Apache, the Apache feather logo, and the Apache Incubator project logo are trademarks or registered trademarks of The Apache Software Foundation.</p>
      </div>
    </div>
    <script src="js/jquery-1.11.1.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/prettify.js"></script>
    <script src="js/readingTime.js"></script>
    <script src="js/incubator.js"></script>
  </body>
</html>
