<!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>Board Meeting Minutes, 2005 - 2009</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>

  <!-- pagefind search -->
  <link href="/_pagefind/pagefind-ui.css" rel="stylesheet">
  <script src="/_pagefind/pagefind-ui.js" type="text/javascript"></script>
  <script>
    window.addEventListener('DOMContentLoaded', (event) => {
        new PagefindUI({ element: "#pagefind-search" });
    });
  </script>

<!-- 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 id="pagefind-search" class="input-group" style="width: 100%; padding: 0 5px;"></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">    <p>Formal board meeting minutes from 2005 - 2009.  Other <a href="/foundation/records/">corporate records</a> are posted.
A <a href="https://whimsy.apache.org/board/minutes/">categorized view of all board meeting minutes</a> is also available.</p>
<p><a href="calendar.html#2019">2019</a> |
<a href="calendar.html#2018">2018</a> | <a href="calendar.html#2017">2017</a> |
<a href="calendar.html#2016">2016</a> | <a href="calendar.html#2015">2015</a> |
<a href="calendar-2010-2014.html#2014">2014</a> | <a href="calendar-2010-2014.html#2013">2013</a> |
<a href="calendar-2010-2014.html#2012">2012</a> | <a href="calendar-2010-2014.html#2011">2011</a> |
<a href="calendar-2010-2014.html#2010">2010</a> | <a href="calendar-2005-2009.html#2009">2009</a> |
<a href="calendar-2005-2009.html#2008">2008</a> | <a href="calendar-2005-2009.html#2007">2007</a> |
<a href="calendar-2005-2009.html#2006">2006</a> | <a href="calendar-2005-2009.html#2005">2005</a> |
<a href="calendar-1999-2004.html#2004">2004</a> | <a href="calendar-1999-2004.html#2003">2003</a> |
<a href="calendar-1999-2004.html#2002">2002</a> | <a href="calendar-1999-2004.html#2001">2001</a> |
<a href="calendar-1999-2004.html#2000">2000</a> | <a href="calendar-1999-2004.html#1999">1999</a> |
<a href="calendar-1999-2004.html#preorg">Pre-organization meetings</a></p>
<h1 id="2009">2009 Board meeting minutes<a class="headerlink" href="#2009" title="Permalink">&para;</a></h1>
<ul>
<li><a href="../records/minutes/2009/board_minutes_2009_12_16.txt">16 Dec 2009</a>
<ul>
<li>Establish the Apache Pivot Project</li>
<li>Establish the Apache OpenWebBeans Project</li>
<li>Appoint a Vice President of W3C Relations</li>
<li>Establish the Apache Axis Project</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_11_18.txt">18 Nov 2009</a>
<ul>
<li>Revoke Tetsuya Kitahata's Access and Privileges</li>
<li>Establish the Apache Click Project</li>
<li>Termination of the Beehive PMC</li>
<li>Executive officer appointments</li>
<li>Terminate the Apache Public Relations Committee</li>
<li>Appoint a Vice President of Brand Management</li>
<li>Appoint a Vice President of Fundraising</li>
<li>Appoint a Vice President of Marketing and Publicity</li>
<li>Change the Perl-Apache Project Chair</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_11_01.txt">01 Nov 2009</a>
<ul>
<li>Establish the Apache Community Development Project</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_10_21.txt">21 Oct 2009</a>
<ul>
<li>Update Public Relations Committee Membership</li>
<li>Change of Maven PMC Chair</li>
<li>Change the Apache James Project Chair</li>
<li>Change the Apache Xerces Project Chair</li>
<li>Change the Public Relations Committee Chair</li>
<li>Change the Apache Abdera Project Chair</li>
<li>Change the Apache Velocity Project Chair</li>
<li>Establish the Apache PDFBox Project</li>
<li>Update Legal Affairs Committee Membership</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_09_23.txt">23 Sep 2009</a>
<ul>
<li>Budget $30,000 for the Conference Planning Committee</li>
<li>Update Public Relations Committee Membership</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_08_19.txt">19 Aug 2009</a>
<ul>
<li>Change the Apache Lenya Project Chair</li>
<li>Change the Apache Commons Chair</li>
<li>Update Public Relations Committee Membership</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_07_15.txt">15 Jul 2009</a>
<ul>
<li>Change the Apache Jakarta Chair</li>
<li>Update Legal Affairs Committee Membership</li>
<li>Change of Public Relations Committee Charter</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_06_17.txt">17 Jun 2009</a>
<ul>
<li>Change of Public Relations Committee Charter (tabled)</li>
<li>Establish the Apache Sling Project</li>
<li>Change the Conference Planning Chair</li>
<li>Appoint Raul Benito as Apache Santuario chairman</li>
<li>Update Legal Affairs Committee Membership</li>
<li>Update Public Relations Committee Membership</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_05_20.txt">20 May 2009</a>
<ul>
<li>Approval of ASF 2009-2010 Budget</li>
<li>Termination of the Shale PMC</li>
<li>PMC chair change for XML Graphics</li>
<li>Change of Public Relations Committee Charter (tabled)</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_04_28.txt">28 Apr 2009</a>
<ul>
<li>Special Meeting to discuss proposed 2009-2010 Budget</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_04_15.txt">15 Apr 2009</a>
<ul>
<li>Change of Directory PMC Chair</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_03_18.txt">18 Mar 2009</a>
<ul>
<li>Termination of the HiveMind PMC</li>
<li>Update Public Relations Committee Membership</li>
<li>Appoint David Bertoni as Apache Xalan chairman</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_02_18.txt">18 Feb 2009</a>
<ul>
<li>Appoint Executive Officers</li>
<li>Appoint David Bertoni as Apache Xalan chairman</li>
<li>Dissolve the standing Audit Committee</li>
</ul>
</li>
<li><a href="../records/minutes/2009/board_minutes_2009_01_21.txt">21 Jan 2009</a>
<ul>
<li>Appoint Julien Vermillard as Apache MINA chairman</li>
<li>Update Apache Travel Assistance Committee Membership</li>
<li>TAC Funding Requirements Proposal</li>
<li>Creation of Budget Committee (President's Committee)</li>
<li>Creation of Administrative Search Committee (President's Committee)</li>
</ul>
</li>
</ul>
<h1 id="2008">2008 Board meeting minutes<a class="headerlink" href="#2008" title="Permalink">&para;</a></h1>
<ul>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_12_17.txt">17 Dec 2008</a></p>
<ul>
<li>Amending the Bylaws pertaining to Reinstatement of Emeritus Members</li>
<li>Establish the Apache Camel Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_11_19.txt">19 Nov 2008</a></p>
<ul>
<li>Establish the Apache CouchDB project</li>
<li>Establish the Apache Buildr project</li>
<li>Change the Apache MyFaces Project Chair</li>
<li>Establish the Apache Attic Project</li>
<li>Establish the Apache Qpid Project</li>
<li>Establish the Apache Abdera Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_10_15.txt">15 Oct 2008</a></p>
<ul>
<li>Change the Apache DB Project Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_09_17.txt">17 Sep 2008</a></p>
<ul>
<li>Change the Apache Labs Project Chair</li>
<li>Empower PMC chairs to change the membership of their PMCs (tabled)</li>
<li>Establish the Travel Assistance Committee</li>
<li>TAC Funding Requirements Proposal</li>
<li>HALO Worldwide Contract Renewal</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_08_20.txt">20 Aug 2008</a></p>
<ul>
<li>Change the Apache SpamAssassin Project Chair</li>
<li>Update Public Relations Committee Membership</li>
<li>Secretarial Assistant Renewal</li>
<li>Executive Assistant Renewal</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_07_16.txt">16 Jul 2008</a></p>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_06_25.txt">25 Jun 2008</a></p>
<ul>
<li>Appoint Executive Officers</li>
<li>Change the Apache MINA Project Chair</li>
<li>Change the Apache iBATIS Project Chair</li>
<li>Update Public Relations Committee Membership</li>
<li>Change the Apache APR Project Chair</li>
<li>Change of standing Audit Committee Chair</li>
<li>Update standing Audit Committee Membership</li>
<li>Appointment of Infrastructure Committee Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_05_21.txt">21 May 2008</a></p>
<ul>
<li>Change the Apache Cocoon Project Chair</li>
<li>Establish the Apache Tuscany Project</li>
<li>Update Audit Committee Membership</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_04_16.txt">16 Apr 2008</a></p>
<ul>
<li>Update Legal Affairs Committee Membership</li>
<li>Establish the Apache CXF project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_03_19.txt">19 Mar 2008</a></p>
<ul>
<li>Establish the Apache Archiva Project</li>
<li>Update Public Relations Committee Membership</li>
<li>Change the Apache Shale Project Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_02_20.txt">20 Feb 2008</a></p>
<ul>
<li>Change the Apache Lucene Project Chair</li>
<li>Establish the Apache Continuum Project</li>
<li>Resolution for Executive Assistant</li>
<li>Resolution for Secretarial Assistant</li>
<li>Update Legal Affairs Committee Membership</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2008/board_minutes_2008_01_16.txt">16 Jan 2008</a></p>
<ul>
<li>Sponsorship of ASF Hackathon Europe 2008</li>
<li>Change the Apache Geronimo Project Chair</li>
<li>Establish the Apache Hadoop Project</li>
</ul>
</li>
</ul>
<h1 id="2007">2007 Board meeting minutes<a class="headerlink" href="#2007" title="Permalink">&para;</a></h1>
<ul>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_12_19.txt">19 Dec 2007</a></p>
<ul>
<li>Establish the Apache Synapse Project</li>
<li>Change the Apache JAMES Project Chair</li>
<li>Terminate the Apache Travel Assistance Committee</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_11_14.txt">14 Nov 2007</a></p>
<ul>
<li>Establish the Apache C++ Standard Library Project</li>
<li>Establish the Apache HttpComponents project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_10_17.txt">17 Oct 2007</a></p>
<ul>
<li>Change the Conference Planning Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_09_19.txt">19 Sep 2007</a></p>
<ul>
<li>Establish the Apache ServiceMix project</li>
<li>Change the Apache Web Services Project Chair</li>
<li>Change the Apache Excalibur Project Chair</li>
<li>Update Public Relations Committee Membership</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_08_29.txt">29 Aug 2007</a></p>
<ul>
<li>Dissolve Chief Media Officer Office</li>
<li>Update Apache Travel Assistance Committee Chair and Membership</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_08_01.txt">01 Aug 2007</a></p>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_07_18.txt">18 Jul 2007</a></p>
<ul>
<li>Change the Apache Tomcat Project Chair</li>
<li>Establish the Apache ODE project</li>
<li>Change the Apache ActiveMQ Project Chair</li>
<li>Change the Apache Harmony Project Chair</li>
<li>Update Legal Affairs Committee Membership</li>
<li>Change the Apache Vice President of Legal Affairs</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_07_09.txt">09 Jul 2007</a></p>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_06_20.txt">20 Jun 2007</a></p>
<ul>
<li>Appoint Executive Officers</li>
<li>Establish the Apache Quetzalcoatl Project</li>
<li>Establish the Apache Wicket project</li>
<li>Establish the Apache Commons project</li>
<li>Change the Apache Velocity Project Chair</li>
<li>Change the Apache Portals Project Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_05_16.txt">16 May 2007</a></p>
<ul>
<li>Establish the Apache Turbine Project</li>
<li>Establish the Apache POI project</li>
<li>Establish Apache OpenEJB Project</li>
<li>Establish Apache OpenJPA Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_04_25.txt">25 Apr 2007</a></p>
<ul>
<li>Change the Apache Portable Runtime Project Chair</li>
<li>Update Apache Security Team Membership</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_03_28.txt">28 Mar 2007</a></p>
<ul>
<li>Establish the Apache Felix Project</li>
<li>Appointing a new chair for Apache Directory</li>
<li>Establish the Legal Affairs Committee</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_02_21.txt">21 Feb 2007</a></p>
<ul>
<li>Establish the Apache Felix Project (tabled)</li>
<li>Establish the Apache Roller Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2007/board_minutes_2007_01_17.txt">17 Jan 2007</a></p>
<ul>
<li>Establish the Apache ActiveMQ Project</li>
<li>Establishing the Apache Travel Assistance Committee</li>
</ul>
</li>
</ul>
<h1 id="2006">2006 Board meeting minutes<a class="headerlink" href="#2006" title="Permalink">&para;</a></h1>
<ul>
<li><a href="../records/minutes/2006/board_minutes_2006_12_20.txt">20 Dec 2006</a>
<ul>
<li>Update Apache Security Team Membership</li>
<li>Establish Apache Open for Business Project</li>
<li>Establish Apache Cayenne Project</li>
<li>Establish Apache Tiles Project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_11_15.txt">15 Nov 2006</a>
<ul>
<li>Reestablishing the Apache Public Relations Committee</li>
<li>Establishing the Apache Labs project</li>
<li>Appointing a new chair for Apache Geronimo</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_10_25.txt">25 Oct 2006</a>
<ul>
<li>Establish the Apache Velocity Project</li>
<li>Establish the Apache MINA Project</li>
<li>Change the Apache DB Project Chair</li>
<li>Change of Public Relations Committee Chair</li>
<li>Establish the Apache Harmony project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_09_20.txt">20 Sep 2006</a>
<ul>
<li>Reestablishing the Apache Security Team</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_08_16.txt">16 Aug 2006</a>
<ul>
<li>Resolution to change the Chair of the Jackrabbit PMC</li>
<li>Resolution to approve contract with Jon Jagielski</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_07_19.txt">19 Jul 2006</a>
<ul>
<li>Change of standing Audit Committee Chair</li>
<li>Change of Jakarta PMC Chair</li>
<li>Resolution to change chair of the Apache SpamAssassin Project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_06_27.txt">27 Jun 2006</a>
<ul>
<li>Officer Appointments</li>
<li>Change of Tomcat PMC Chair</li>
<li>Establish the Apache Shale Project</li>
<li>Establish the Apache Santuario project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_05_24.txt">24 May 2006</a>
<ul>
<li>Resolution to change chair of the Apache Cocoon Project</li>
<li>Resolution to change chair of the Apache Logging Services Project</li>
<li>Establish guidelines for handling copyright notices and license</li>
<li>Establish the Apache Testing Project (tabled)</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_04_26.txt">26 Apr 2006</a>
<ul>
<li>Change of XMLBeans PMC Chair</li>
<li>Establish the Apache HiveMind Project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_03_15.txt">15 Mar 2006</a>
<ul>
<li>Establish the Apache Jackrabbit Project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_02_15.txt">15 Feb 2006</a>
<ul>
<li>Establish the Apache Tapestry Project</li>
</ul>
</li>
<li><a href="../records/minutes/2006/board_minutes_2006_01_18.txt">18 Jan 2006</a>
<ul>
<li>Change the Chair of the Apache Portable Runtime Project</li>
</ul>
</li>
</ul>
<h1 id="2005">2005 Board meeting minutes<a class="headerlink" href="#2005" title="Permalink">&para;</a></h1>
<ul>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_12_21.txt">21 Dec 2005</a></p>
<ul>
<li>Creation of Bylaw Recommendation Committee</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_11_16.txt">16 Nov 2005</a></p>
<ul>
<li>Change the Chair of the Apache XML Project</li>
<li>LGPL resolution (tabled)</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_10_26.txt">26 Oct 2005</a></p>
<ul>
<li>Update Public Relations Committee Membership</li>
<li>Changing the Apache Geronimo Project Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_09_29.txt">29 Sep 2005</a></p>
<ul>
<li>Spending Resolution</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_09_21.txt">21 Sep 2005</a></p>
<ul>
<li>Change the Chair of the Apache DB Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_08_17.txt">17 Aug 2005</a></p>
<ul>
<li>Change the HTTP Server Project Chair</li>
<li>Allow redistribution of MPL- and NPL-licensed executables</li>
<li>Allow product dependencies on LGPL-licensed libraries (tabled)</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_07_28.txt">28 Jul 2005</a></p>
<ul>
<li>Creation of standing audit committee</li>
<li>Rename pmc lists to private</li>
<li>Appoint Susan Wu as Chief Media Officer</li>
<li>Creation of the Apache Beehive Project</li>
<li>Allow product dependencies on LGPL-licensed libraries (tabled)</li>
<li>Allow redistribution of MPL- and NPL-licensed executables (tabled)</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_06_22.txt">22 Jun 2005</a></p>
<ul>
<li>Appoint new officers of the corporation</li>
<li>Appoint a Vice President of Legal Affairs</li>
<li>Endorsement of MPL for dependencies</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_05_18.txt">18 May 2005</a></p>
<ul>
<li>Establish the Apache Tomcat Project</li>
<li>Estalish the Apache iBATIS Project</li>
<li>Change of Logging Services PMC Chair</li>
<li>Change of Lenya PMC Chair</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_04_27.txt">27 Apr 2005</a></p>
<ul>
<li>Establish a new Excalibur PMC Chair</li>
<li>Establish the Apache Tomcat Project (tabled)</li>
<li>Estalish the Apache iBATIS Project (tabled)</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_03_30.txt">30 Mar 2005</a></p>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_02_23.txt">23 Feb 2005</a></p>
<ul>
<li>Change the Chair of the Apache Struts Project</li>
<li>Establish the Apache MyFaces Project</li>
<li>Establish the Apache Xerces Project</li>
<li>Establish the Apache Directory Project</li>
</ul>
</li>
<li>
<p><a href="../records/minutes/2005/board_minutes_2005_01_19.txt">19 Jan 2005</a></p>
<ul>
<li>Establish Lucene as a top level project</li>
<li>Change the Chair of the Apache Perl Project</li>
<li>Forbid the Conference Committee to use Security Travel for any 2005
ApacheCon Conferences</li>
</ul>
</li>
</ul>
<p><a href="calendar-1999-2004.html">Previous years Board minutes, 1999-2004</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="https://privacy.apache.org/policies/privacy-policy-public.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>