git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@274739 13f79535-47bb-0310-9956-ffa450edef68master
| @@ -1,606 +0,0 @@ | |||||
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |||||
| <html lang="en"> | |||||
| <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! --> | |||||
| <head> | |||||
| <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |||||
| <title>Apache Ant - Ant 1.5 Release To-Do List</title> | |||||
| <link type="text/css" href="./page.css" rel="stylesheet"> | |||||
| <meta name="author" content="Erik Hatcher"> | |||||
| <meta name="email" content="ehatcher@apache.org"> | |||||
| </head> | |||||
| <body> | |||||
| <p class="navpath"> | |||||
| <script src="./breadcrumbs.js" language="JavaScript" type="text/javascript"></script> | |||||
| </p> | |||||
| <div class="logobar"> | |||||
| <table width="100%" border="0" cellspacing="0" cellpadding="0"> | |||||
| <tr> | |||||
| <td align="left"><img border="0" alt="Apache Ant site" src="./images/group-logo.gif"></td> | |||||
| <td align="center" width="100%"><img alt="Apache Ant logo" border="0" src="./images/project-logo.gif"></td> | |||||
| <td align="right"> | |||||
| <form target="_blank" onsubmit="q.value = query.value + ' site:ant.apache.org'" action="http://www.google.com/search" method="get"> | |||||
| <table summary="search" border="0" cellspacing="0" cellpadding="0" bgcolor="#4C6C8F"> | |||||
| <tr> | |||||
| <td colspan="3"><img height="10" width="1" alt="" src="./images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td> | |||||
| <td nowrap="nowrap" class="searchcaption"> | |||||
| <input name="q" type="hidden"> | |||||
| <input size="15" id="query" type="text"> | |||||
| <img height="1" width="5" alt="" src="./images/spacer.gif"> | |||||
| <input name="Search" value="Search" type="submit"> | |||||
| <br> | |||||
| the Apache Ant site | |||||
| </td> | |||||
| <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img alt="" border="0" height="10" width="9" src="./images/search-left.gif"></td> | |||||
| <td><img height="1" width="1" alt="" src="./images/spacer.gif"></td> | |||||
| <td><img alt="" border="0" height="10" width="9" src="./images/search-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </form> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| <div class="tab"> | |||||
| <table summary="tab bar" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td width="8"><img alt="" height="5" width="8" src="./images/spacer.gif"></td><td valign="bottom"> | |||||
| <table summary="selected tab" style="height: 1.5em" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="./images/tabSel-left.gif"></td><td valign="middle" bgcolor="#4C6C8F"><font color="#ffffff" size="2" face="Arial, Helvetica, Sans-serif"><b>Home</b></font></td><td valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="./images/tabSel-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| <td width="5"><img alt="" height="8" width="8" src="./images/spacer.gif"></td><td valign="bottom"> | |||||
| <table summary="non selected tab" style="height: 1.4em" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td valign="top" width="5" bgcolor="#B2C4E0"><img height="5" width="5" alt="" src="./images/tab-left.gif"></td><td valign="middle" bgcolor="#B2C4E0"><a href="./projects/index.html"><font size="2" face="Arial, Helvetica, Sans-serif">Projects</font></a></td><td valign="top" width="5" bgcolor="#B2C4E0"><img height="5" width="5" alt="" src="./images/tab-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| <div class="bluebar"></div> | |||||
| <div class="menucontainer"> | |||||
| <div class="menu"> | |||||
| <ul> | |||||
| <li class="menuheader">Apache Ant | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./index.html">Welcome</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./license.html">License</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./antnews.html">News</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li class="menuheader">Documentation | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./manual/index.html">Manual</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./projects.html">Related Projects</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./external.html">External Tools and Tasks</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./resources.html">Resources</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./faq.html">Frequently Asked Questions</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./problems.html">Having Problems?</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li class="menuheader">Download | |||||
| <ul> | |||||
| <li> | |||||
| <a href="http://ant.apache.org/bindownload.cgi">Binary Distributions</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://ant.apache.org/srcdownload.cgi">Source Distributions</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li class="menuheader">Contributing | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./mail.html">Mailing Lists</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./cvs.html">CVS Repositories</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant">Bug Database</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://issues.apache.org/bugzilla/enter_bug.cgi?product=Ant&bug_severity=Enhancement">Enhancement Requests</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://www.apache.org/foundation/contributing.html">Donations</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li class="menuheader">Project Management | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./contributors.html">Contributors</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./mission.html">Apache Ant Mission</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./guidelines.html">Project Guidelines</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./bylaws.html">Project Bylaws</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./legal.html">Legal</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| </ul> | |||||
| </div> | |||||
| <img style="float: left" height="10" width="10" border="0" alt="" src="./images/menu-left.gif"> | |||||
| <img style="float: right" height="10" width="10" border="0" alt="" src="./images/menu-right.gif"> | |||||
| </div> | |||||
| <div class="lightbluebar"> </div> | |||||
| <div class="main"> | |||||
| <div class="content"> | |||||
| <h1 class="title">Ant 1.5 Release To-Do List</h1> | |||||
| <h3 class="section"> | |||||
| <a name="Ant 1.5 Release To-Do List"></a> | |||||
| Ant 1.5 Release To-Do List | |||||
| </h3> | |||||
| <h4 class="subsection"> | |||||
| <a name="Open"></a> | |||||
| Open | |||||
| </h4> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Item | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Details | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Assigned | |||||
| </th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Bugzilla bugs under 30 | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| or at least address most of them in some way | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| All Committers | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Document Path datatype | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| It's documented, but more hidden than the other types | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Erik | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Novell NetWare support | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Jeff Tulley | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| XMLCatalog more integrated | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Several tasks could still use XMLCatalog integration | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Make default excludes customizable | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| With the setting of an ant.default.excludes property? | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Erik | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Fully functional on Java 1.4 | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Fix outstanding java1.4 defects, maybe add an | |||||
| assertions datatype for java and other tasks (junit?) | |||||
| which lets people turn on asserts. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Steve + any other help he can get | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <h4 class="subsection"> | |||||
| <a name="Done"></a> | |||||
| Done | |||||
| </h4> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Item | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Details | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Assigned | |||||
| </th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Selectors | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Bruce | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Extension utilities | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Port across task that prints out details of extensions for | |||||
| a certain library/jar, or all jars in a path. Port across task | |||||
| that generates a manifest (including dependencies and extension | |||||
| specification) based on a set of jars in path. Port across task | |||||
| that checks that the list of pre-req extensions are present in | |||||
| path. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Peter | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| XmlLogger implements BuildLogger | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Its currently a BuildListener, lets remove the confusion | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Erik | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Dotnet library tweaks | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| update to release, add uptodateness, add a web service | |||||
| import (for Axis interop testing) | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Steve, in a really long meeting | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| compiler attribute for rmic | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| PGP signing task if possible | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Not done, but deemed impossible - at least in the 1.5 | |||||
| time frame. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| JUnit's System.err/.out handling | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| showoutput attribute has been added - doesn't work in | |||||
| some cases yet (same reason as bug PR 7980) | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Base compiler command line switches on the selected | |||||
| compiler, not the current JDK | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <input> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Make javadoc a real directory based task | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Stefan | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <h4 class="subsection"> | |||||
| <a name="Bug Reports Short-Cuts"></a> | |||||
| Bug Reports Short-Cuts | |||||
| </h4> | |||||
| <p>Note: You can sort the report results by clicking on the column-headings.</p> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| New|Assigned|Reopened Bug Reports: | |||||
| </th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Build+Process&component=Core&component=Core+tasks&component=Documentation&component=Optional+Tasks&component=Other&component=Wrapper+scripts&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">All</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Build+Process&component=Core&component=Core+tasks&component=Documentation&component=Optional+Tasks&component=Other&component=Wrapper+scripts&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| New|Assigned|Reopened Bug Reports by Component: | |||||
| </th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Build+Process&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Build Process</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Build+Process&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Core&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Core</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Core&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Core+Tasks&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Core Tasks</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Core+Tasks&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Documentation&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Documentation</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Documentation&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Optional+Tasks&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Optional Tasks</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Optional+Tasks&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Other&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Other</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Other&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Wrapper+Scripts&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">Wrapper Scripts</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <a href="http://nagoya.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_severity=Blocker&bug_severity=Critical&bug_severity=Major&bug_severity=Normal&bug_severity=Minor&email1=&emailtype1=substring&emailassigned_to1=1&email2=&emailtype2=substring&emailreporter2=1&bugidtype=include&bug_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&product=Ant&component=Wrapper+Scripts&short_desc=&short_desc_type=allwordssubstr&long_desc=&long_desc_type=allwordssubstr&bug_file_loc=&bug_file_loc_type=allwordssubstr&keywords=&keywords_type=anywords&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit">- minus Enhancements</a> | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| </div> | |||||
| <p class="copyright"> | |||||
| Copyright © 2000-2003 The Apache Software Foundation. All rights reserved. | |||||
| <script type="text/javascript" language="JavaScript"><!-- | |||||
| document.write(" - "+"Last Published: " + document.lastModified); | |||||
| // --> | |||||
| </script> | |||||
| </p> | |||||
| </body> | |||||
| </html> | |||||
| @@ -1,257 +0,0 @@ | |||||
| /* | |||||
| ============================================================================ | |||||
| The Apache Software License, Version 1.1 | |||||
| ============================================================================ | |||||
| Copyright (C) 2002 The Apache Software Foundation. All rights reserved. | |||||
| Redistribution and use in source and binary forms, with or without modifica- | |||||
| tion, are permitted provided that the following conditions are met: | |||||
| 1. Redistributions of source code must retain the above copyright notice, | |||||
| this list of conditions and the following disclaimer. | |||||
| 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
| this list of conditions and the following disclaimer in the documentation | |||||
| and/or other materials provided with the distribution. | |||||
| 3. The end-user documentation included with the redistribution, if any, must | |||||
| include the following acknowledgment: "This product includes software | |||||
| developed by the Apache Software Foundation (http://www.apache.org/)." | |||||
| Alternately, this acknowledgment may appear in the software itself, if | |||||
| and wherever such third-party acknowledgments normally appear. | |||||
| 4. The names "Jakarta", "Avalon", "Excalibur" and "Apache Software Foundation" | |||||
| must not be used to endorse or promote products derived from this software | |||||
| without prior written permission. For written permission, please contact | |||||
| apache@apache.org. | |||||
| 5. Products derived from this software may not be called "Apache", nor may | |||||
| "Apache" appear in their name, without prior written permission of the | |||||
| Apache Software Foundation. | |||||
| THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, | |||||
| INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | |||||
| FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | |||||
| APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- | |||||
| DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS | |||||
| OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | |||||
| ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |||||
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |||||
| THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| This software consists of voluntary contributions made by many individuals | |||||
| on behalf of the Apache Software Foundation. For more information on the | |||||
| Apache Software Foundation, please see <http://www.apache.org/>. | |||||
| */ | |||||
| /** | |||||
| * This script, when included in a html file, builds a neat breadcrumb trail | |||||
| * based on its url. That is, if it doesn't contains bugs (I'm relatively | |||||
| * sure it does). | |||||
| * | |||||
| * Typical usage: | |||||
| * <script type="text/javascript" language="JavaScript" src="breadcrumbs.js"></script> | |||||
| * | |||||
| *@author <a href="mailto:leosimons@apache.org">Leo Simons</a> (main author) | |||||
| *@author <a href="mailto:nicolaken@apache.org">Nicola Ken Barozzi</a> (integration in skin) | |||||
| *@created July 12, 2002 | |||||
| *@version 1.0 | |||||
| */ | |||||
| /* ======================================================================== | |||||
| CONSTANTS | |||||
| ======================================================================== */ | |||||
| /** | |||||
| * Two-dimensional array containing extra crumbs to place at the front of | |||||
| * the trail. Specify first the name of the crumb, then the URI that belongs | |||||
| * to it. You'll need to modify this for every domain or subdomain where | |||||
| * you use this script (you can leave it as an empty array if you wish) | |||||
| */ | |||||
| var PREPREND_CRUMBS = new Array(); | |||||
| if(!("apache"=="")){ | |||||
| PREPREND_CRUMBS.push( new Array( "apache", "http://www.apache.org/" ) ); | |||||
| } | |||||
| if(!("xml.apache"=="")){ | |||||
| PREPREND_CRUMBS.push( new Array( "ant.apache", "http://ant.apache.org/" ) ); | |||||
| } | |||||
| if(!(""=="")){ | |||||
| PREPREND_CRUMBS.push( new Array( "", "" ) ); | |||||
| } | |||||
| /** | |||||
| * String to include between crumbs: | |||||
| */ | |||||
| var DISPLAY_SEPARATOR = " > "; | |||||
| /** | |||||
| * String to include at the beginning of the trail | |||||
| */ | |||||
| var DISPLAY_PREPREND = ""; | |||||
| /** | |||||
| * String to include at the end of the trail | |||||
| */ | |||||
| var DISPLAY_POSTPREND = ""; | |||||
| /** | |||||
| * CSS Class to use for a single crumb: | |||||
| */ | |||||
| var CSS_CLASS_CRUMB = "breadcrumb"; | |||||
| /** | |||||
| * CSS Class to use for the complete trail: | |||||
| */ | |||||
| var CSS_CLASS_TRAIL = "breadcrumbTrail"; | |||||
| /** | |||||
| * CSS Class to use for crumb separator: | |||||
| */ | |||||
| var CSS_CLASS_SEPARATOR = "crumbSeparator"; | |||||
| /** | |||||
| * Array of strings containing common file extensions. We use this to | |||||
| * determine what part of the url to ignore (if it contains one of the | |||||
| * string specified here, we ignore it). | |||||
| */ | |||||
| var FILE_EXTENSIONS = new Array( ".html", ".htm", ".jsp", ".php", ".php3", ".php4" ); | |||||
| /** | |||||
| * String that separates parts of the breadcrumb trail from each other. | |||||
| * When this is no longer a slash, I'm sure I'll be old and grey. | |||||
| */ | |||||
| var PATH_SEPARATOR = "/"; | |||||
| /* ======================================================================== | |||||
| UTILITY FUNCTIONS | |||||
| ======================================================================== */ | |||||
| /** | |||||
| * Capitalize first letter of the provided string and return the modified | |||||
| * string. | |||||
| */ | |||||
| function sentenceCase( string ) | |||||
| { | |||||
| var lower = string.toLowerCase(); | |||||
| return lower.substr(0,1).toUpperCase() + lower.substr(1); | |||||
| } | |||||
| /** | |||||
| * Returns an array containing the names of all the directories in the | |||||
| * current document URL | |||||
| */ | |||||
| function getDirectoriesInURL() | |||||
| { | |||||
| var trail = document.location.pathname.split( PATH_SEPARATOR ); | |||||
| // check whether last section is a file or a directory | |||||
| var lastcrumb = trail[trail.length-1]; | |||||
| for( var i = 0; i < FILE_EXTENSIONS.length; i++ ) | |||||
| { | |||||
| if( lastcrumb.indexOf( FILE_EXTENSIONS[i] ) ) | |||||
| { | |||||
| // it is, remove it and send results | |||||
| return trail.slice( 1, trail.length-1 ); | |||||
| } | |||||
| } | |||||
| // it's not; send the trail unmodified | |||||
| return trail.slice( 1, trail.length ); | |||||
| } | |||||
| /* ======================================================================== | |||||
| BREADCRUMB FUNCTIONALITY | |||||
| ======================================================================== */ | |||||
| /** | |||||
| * Return a two-dimensional array describing the breadcrumbs based on the | |||||
| * array of directories passed in. | |||||
| */ | |||||
| function getBreadcrumbs( dirs ) | |||||
| { | |||||
| var prefix = "/"; | |||||
| var postfix = "/"; | |||||
| // the array we will return | |||||
| var crumbs = new Array(); | |||||
| if( dirs != null ) | |||||
| { | |||||
| for( var i = 0; i < dirs.length; i++ ) | |||||
| { | |||||
| prefix += dirs[i] + postfix; | |||||
| crumbs.push( new Array( dirs[i], prefix ) ); | |||||
| } | |||||
| } | |||||
| // preprend the PREPREND_CRUMBS | |||||
| if(PREPREND_CRUMBS.length > 0 ) | |||||
| { | |||||
| return PREPREND_CRUMBS.concat( crumbs ); | |||||
| } | |||||
| return crumbs; | |||||
| } | |||||
| /** | |||||
| * Return a string containing a simple text breadcrumb trail based on the | |||||
| * two-dimensional array passed in. | |||||
| */ | |||||
| function getCrumbTrail( crumbs ) | |||||
| { | |||||
| var xhtml = DISPLAY_PREPREND; | |||||
| for( var i = 0; i < crumbs.length; i++ ) | |||||
| { | |||||
| xhtml += '<a href="' + crumbs[i][1] + '" >'; | |||||
| xhtml += sentenceCase( crumbs[i][0] ) + '</a>'; | |||||
| if( i != (crumbs.length-1) ) | |||||
| { | |||||
| xhtml += DISPLAY_SEPARATOR; | |||||
| } | |||||
| } | |||||
| xhtml += DISPLAY_POSTPREND; | |||||
| return xhtml; | |||||
| } | |||||
| /** | |||||
| * Return a string containing an XHTML breadcrumb trail based on the | |||||
| * two-dimensional array passed in. | |||||
| */ | |||||
| function getCrumbTrailXHTML( crumbs ) | |||||
| { | |||||
| var xhtml = '<span class="' + CSS_CLASS_TRAIL + '">'; | |||||
| xhtml += DISPLAY_PREPREND; | |||||
| for( var i = 0; i < crumbs.length; i++ ) | |||||
| { | |||||
| xhtml += '<a href="' + crumbs[i][1] + '" class="' + CSS_CLASS_CRUMB + '">'; | |||||
| xhtml += sentenceCase( crumbs[i][0] ) + '</a>'; | |||||
| if( i != (crumbs.length-1) ) | |||||
| { | |||||
| xhtml += '<span class="' + CSS_CLASS_SEPARATOR + '">' + DISPLAY_SEPARATOR + '</span>'; | |||||
| } | |||||
| } | |||||
| xhtml += DISPLAY_POSTPREND; | |||||
| xhtml += '</span>'; | |||||
| return xhtml; | |||||
| } | |||||
| /* ======================================================================== | |||||
| PRINT BREADCRUMB TRAIL | |||||
| ======================================================================== */ | |||||
| // check if we're local; if so, only print the PREPREND_CRUMBS | |||||
| if( document.location.href.toLowerCase().indexOf( "http://" ) == -1 ) | |||||
| { | |||||
| document.write( getCrumbTrail( getBreadcrumbs() ) ); | |||||
| } | |||||
| else | |||||
| { | |||||
| document.write( getCrumbTrail( getBreadcrumbs( getDirectoriesInURL() ) ) ); | |||||
| } | |||||
| @@ -1,874 +0,0 @@ | |||||
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |||||
| <html> | |||||
| <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! --> | |||||
| <head> | |||||
| <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |||||
| <title>Apache Ant - Apache Ant Project Bylaws</title> | |||||
| <link type="text/css" href="page.css" rel="stylesheet"> | |||||
| </head> | |||||
| <body text="#000000" bgcolor="#ffffff"> | |||||
| <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" border="0" src="images/spacer.gif"><font size="2" face="Arial, Helvetica, Sans-serif"><script src="breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" border="0" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td bgcolor="#294563"><a href="http://ant.apache.org/"><img border="0" alt="Apache Ant site" src="images/group-logo.gif"></a></td><td width="100%" align="center" bgcolor="#294563"><a href="http://ant.apache.org/"><img alt="Apache Ant logo" border="0" src="images/project-logo.gif"></a></td><td valign="top" rowspan="2" bgcolor="#294563"> | |||||
| <form target="_blank" onsubmit="q.value = query.value + ' site:ant.apache.org'" action="http://www.google.com/search" method="get"> | |||||
| <table summary="search" border="0" cellspacing="0" cellpadding="0" bgcolor="#4C6C8F"> | |||||
| <tr> | |||||
| <td colspan="3"><img height="10" width="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img height="1" width="1" alt="" src="images/spacer.gif"></td><td nowrap="nowrap"><input name="q" type="hidden"><input size="15" id="query" type="text"><img height="1" width="5" alt="" src="images/spacer.gif"><input name="Search" value="Search" type="submit"> | |||||
| <br> | |||||
| <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> | |||||
| the Apache Ant site | |||||
| </font></td><td><img height="1" width="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img alt="" border="0" height="10" width="9" src="images/search-left.gif"></td><td><img height="1" width="1" alt="" src="images/spacer.gif"></td><td><img alt="" border="0" height="10" width="9" src="images/search-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </form> | |||||
| </td><td bgcolor="#294563"><img height="10" width="10" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td valign="bottom" bgcolor="#294563" colspan="2"> | |||||
| <div class="tab"> | |||||
| <table summary="tab bar" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td width="8"><img alt="" height="8" width="8" src="images/spacer.gif"></td><td valign="bottom"> | |||||
| <table summary="selected tab" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td height="30" valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="images/tabSel-left.gif"></td><td valign="middle" bgcolor="#4C6C8F"><font color="#ffffff" size="2" face="Arial, Helvetica, Sans-serif"><b>Home</b></font></td><td valign="top" width="5" bgcolor="#4C6C8F"><img height="5" width="5" alt="" src="images/tabSel-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| </td><td bgcolor="#294563"><img alt="" width="1" height="1" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="page content" bgcolor="#ffffff" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td valign="top"> | |||||
| <table summary="menu" border="0" cellspacing="0" cellpadding="0"> | |||||
| <tr> | |||||
| <td rowspan="3" valign="top"> | |||||
| <table summary="blue line" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td bgcolor="#294563"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="#CFDCED"><font color="#4C6C8F" size="4" face="Arial, Helvetica, Sans-serif"> </font></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="#294563"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td><td bgcolor="#294563"><img width="1" height="1" alt="" src="images/spacer.gif"></td><td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="images/spacer.gif"></td><td nowrap="nowrap" valign="top" bgcolor="#4C6C8F"> | |||||
| <div class="menu"><ul> | |||||
| <li><font color="#CFDCED">Apache Ant</font> | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./index.html">Welcome</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./license.html">License</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./antnews.html">News</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li><font color="#CFDCED">Documentation</font> | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./manual/index.html">Manual</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./projects.html">Related Projects</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./external.html">External Tools and Tasks</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./resources.html">Resources</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./faq.html">Frequently Asked Questions</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./problems.html">Having Problems?</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li><font color="#CFDCED">Download</font> | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./bindownload.cgi">Binary Distributions</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./srcdownload.cgi">Source Distributions</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li><font color="#CFDCED">Get Involved</font> | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./mail.html">Mailing Lists</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./cvs.html">CVS Repositories</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://nagoya.apache.org/bugzilla/enter_bug.cgi?product=Ant">Bug Database</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="http://nagoya.apache.org/bugzilla/enter_bug.cgi?product=Ant&bug_severity=Enhancement">Enhancement Requests</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| <li><font color="#CFDCED">Project Management</font> | |||||
| <ul> | |||||
| <li> | |||||
| <a href="./contributors.html">Contributors</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./mission.html">Apache Ant Mission</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./guidelines.html">Project Guidelines</a> | |||||
| </li> | |||||
| <li> | |||||
| <a href="./legal.html">Legal</a> | |||||
| </li> | |||||
| </ul> | |||||
| </li> | |||||
| </ul></div> | |||||
| </td><td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="images/spacer.gif"></td><td bgcolor="#294563"><img width="1" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td valign="bottom" align="left" colspan="2" rowspan="2" bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="images/menu-left.gif"></td><td bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="images/spacer.gif"></td><td valign="bottom" align="right" colspan="2" rowspan="2" bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="images/menu-right.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td height="1" bgcolor="#294563"><img width="1" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td><td valign="top" width="100%"> | |||||
| <table summary="content" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td align="left" width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="images/spacer.gif"></td><td align="left" width="50%" bgcolor="#CFDCED"><font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif"> | |||||
| | |||||
| </font><img width="10" height="8" alt="" src="images/spacer.gif"></td><td align="right" width="50%" bgcolor="#CFDCED"><font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif"> | |||||
| | |||||
| </font><img width="10" height="8" alt="" src="images/spacer.gif"></td><td width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td align="left" width="10"><img width="10" height="1" alt="" src="images/spacer.gif"></td><td align="left" width="100%"> | |||||
| <div class="content"> | |||||
| <table class="title"> | |||||
| <tr> | |||||
| <td valign="middle"> | |||||
| <h1>Apache Ant Project Bylaws</h1> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <br/> | |||||
| <table class="nowrap" border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#294563"><font color="#ffffff"><a name="Apache Ant Project Bylaws"><strong>Apache Ant Project Bylaws</strong></a></font></td></tr> | |||||
| </table> | |||||
| <p> | |||||
| This document defines the bylaws under which the Apache Ant project | |||||
| operates. It defines the roles and responsibilities of the | |||||
| project, who may vote, how voting works, how conflicts are resolved, | |||||
| etc. | |||||
| </p> | |||||
| <p> | |||||
| Ant is a project of the | |||||
| <a href="http://www.apache.org/foundation/">Apache Software | |||||
| Foundation</a>. The foundation holds the copyright on Apache | |||||
| code including the code in the Ant codebase. The | |||||
| <a href="http://www.apache.org/foundation/faq.html">foundation FAQ</a> | |||||
| explains the operation and background of the foundation. | |||||
| </p> | |||||
| <p> | |||||
| Ant is typical of Apache projects in that it operates under a set of | |||||
| principles, known collectively as the "Apache Way". If you are | |||||
| new to Apache development, please refer to the | |||||
| <a href="http://incubator.apache.org">Incubator project</a> | |||||
| for more information on how Apache projects operate. <b>Note:</b> the | |||||
| incubator project has only been recently set up and does not yet explain | |||||
| the Apache Way in great detail. | |||||
| </p> | |||||
| <ul> | |||||
| <li><a href="#Roles and Responsibilities">Roles and Responsibilities</a></li> | |||||
| <li><a href="#Decision Making">How decisions are made</a></li> | |||||
| </ul> | |||||
| <br/> | |||||
| <table class="nowrap" border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#294563"><font color="#ffffff"><a name="Roles and Responsibilities"><strong>Roles and Responsibilities</strong></a></font></td></tr> | |||||
| </table> | |||||
| <p> | |||||
| Apache projects define a set of roles with associated rights and | |||||
| responsibilities. These roles govern what tasks an individual may perform | |||||
| within the project. The roles are defined in the following sections | |||||
| </p> | |||||
| <ul> | |||||
| <li><a href="#Users">Users</a></li> | |||||
| <li><a href="#Developers">Developers</a></li> | |||||
| <li><a href="#Committers">Committers</a></li> | |||||
| <li><a href="#Project Management Committee"> | |||||
| Project Management Committee (PMC)</a> | |||||
| </li> | |||||
| </ul> | |||||
| <br/> | |||||
| <a name="Users"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Users</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| The most important participants in the project are people who use our | |||||
| software. The majority of our developers start out as users and guide | |||||
| their development efforts from the user's perspective. | |||||
| </p> | |||||
| <p> | |||||
| Users contribute to the Apache projects by providing feedback to | |||||
| developers in the form of bug reports and feature suggestions. As | |||||
| well, users participate in the Apache community by helping other users | |||||
| on mailing lists and user support forums. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Developers"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Developers</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| All of the volunteers who are contributing time, code, documentation, | |||||
| or resources to the Ant Project. A developer that makes sustained, | |||||
| welcome contributions to the project may be invited to become a | |||||
| Committer, though the exact timing of such invitations depends on many | |||||
| factors. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Committers"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Committers</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| The project's Committers are responsible for the project's technical | |||||
| management. All committers have write access to the project's source | |||||
| repositories. Committers may cast binding votes on any technical | |||||
| discussion regarding the project. | |||||
| </p> | |||||
| <p> | |||||
| Committer access is by invitation only and must be approved by lazy | |||||
| consensus of the active PMC members. A Committer is considered emeritus | |||||
| by their own declaration or by not contributing in any form to the | |||||
| project for over six months. An emeritus committer may request | |||||
| reinstatement of commit access from the PMC. Such reinstatement is | |||||
| subject to lazy consensus of active PMC members. | |||||
| </p> | |||||
| <p> | |||||
| Commit access can be revoked by a unanimous vote of all the active | |||||
| PMC members (except the committer in question if they are also a PMC member). | |||||
| </p> | |||||
| <p> | |||||
| All Apache committers are required to have a signed Contributor License | |||||
| Agreement (CLA) on file with the Apache Software Foundation. There is a | |||||
| <a href="http://www.apache.org/dev/committers.html">Committer FAQ</a> | |||||
| which provides more details on the requirements for Committers | |||||
| </p> | |||||
| <p> | |||||
| A committer who makes a sustained contribution to the project may be | |||||
| invited to become a member of the PMC. The form of contribution is | |||||
| not limited to code. It can also include code review, helping out | |||||
| users on the mailing lists, documentation, etc. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Project Management Committee"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Project Management Committee</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| The Project Management Committee (PMC) for Apache Ant was created by a | |||||
| <a href="mission.html">resolution</a> of the board of the Apache | |||||
| Software Foundation on 18<sup>th</sup> November 2002. The PMC is | |||||
| responsible to the board and the ASF for the management and oversight | |||||
| of the Apache Ant codebase. The responsibilities of the PMC include | |||||
| </p> | |||||
| <ul> | |||||
| <li>Deciding what is distributed as products of the Apache Ant project. | |||||
| In particular all releases must be approved by the PMC | |||||
| </li> | |||||
| <li>Maintaining the project's shared resources, including the codebase | |||||
| repository, mailing lists, websites. | |||||
| </li> | |||||
| <li>Speaking on behalf of the project. | |||||
| </li> | |||||
| <li>Resolving license disputes regarding products of the project | |||||
| </li> | |||||
| <li>Nominating new PMC members and committers | |||||
| </li> | |||||
| <li>Maintaining these bylaws and other guidelines of the project | |||||
| </li> | |||||
| </ul> | |||||
| <p> | |||||
| Membership of the PMC is by invitation only and must be approved by a | |||||
| lazy consensus of active PMC members. A PMC member is considered | |||||
| "emeritus" by their own declaration or by not contributing in | |||||
| any form to the project for over six months. An emeritus member may | |||||
| request reinstatement to the PMC. Such reinstatement is subject to lazy | |||||
| consensus of the active PMC members. Membership of the PMC can be | |||||
| revoked by an unanimous vote of all the active PMC members other than | |||||
| the member in question. | |||||
| </p> | |||||
| <p> | |||||
| The chair of the PMC is appointed by the ASF board. The chair is an | |||||
| office holder of the Apache Software Foundation (Vice President, | |||||
| Apache Ant) and has primary responsibility to the board for the | |||||
| management of the projects within the scope of the Ant PMC. The chair | |||||
| reports to the board quarterly on developments within the Ant project. | |||||
| The PMC may consider the position of PMC chair annually and if | |||||
| supported by 2/3 Majority may recommend a new chair to the board. | |||||
| Ultimately, however, it is the board's responsibility who it chooses | |||||
| to appoint as the PMC chair. | |||||
| </p> | |||||
| <br/> | |||||
| <table class="nowrap" border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#294563"><font color="#ffffff"><a name="Decision Making"><strong>Decision Making</strong></a></font></td></tr> | |||||
| </table> | |||||
| <p> | |||||
| Within the Ant project, different types of decisions require different | |||||
| forms of approval. For example, the | |||||
| <a href="#Roles and Responsibilities">previous section</a> describes | |||||
| several decisions which require "lazy consensus" approval. This | |||||
| section defines how voting is performed, the types of approvals, and which | |||||
| types of decision require which type of approval. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Voting"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Voting</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| Decisions regarding the project are made by votes on the primary project | |||||
| development mailing list (ant-dev@jakarta.apache.org). Where necessary, | |||||
| PMC voting may take place on the private Ant PMC mailing list. | |||||
| Votes are clearly indicated by subject line starting with [VOTE] or | |||||
| [PMC-VOTE]. Votes may contain multiple items for approval and these | |||||
| should be clearly separated. Voting is carried out by replying to the | |||||
| vote mail. Voting may take four flavours | |||||
| </p> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>+1</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| "Yes," "Agree," or "the action should be | |||||
| performed." In general, this vote also indicates a willingness | |||||
| on the behalf of the voter in "making it happen" | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>+0</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| This vote indicates a willingness for the action under | |||||
| consideration to go ahead. The voter, however will not be able | |||||
| to help. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>-0</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| This vote indicates that the voter does not, in general, agree with | |||||
| the proposed action but is not concerned enough to prevent the | |||||
| action going ahead. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>-1</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| This is a negative vote. On issues where consensus is required, | |||||
| this vote counts as a <strong>veto</strong>. All vetoes must | |||||
| contain an explanation of why the veto is appropriate. Vetoes with | |||||
| no explanation are void. It may also be appropriate for a -1 vote | |||||
| to include an alternative course of action. | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <p> | |||||
| All participants in the Ant project are encouraged to show their | |||||
| agreement with or against a particular action by voting. For technical | |||||
| decisions, only the votes of active committers are binding. Non binding | |||||
| votes are still useful for those with binding votes to understand the | |||||
| perception of an action in the wider Ant community. For PMC decisions, | |||||
| only the votes of PMC members are binding. | |||||
| </p> | |||||
| <p> | |||||
| Voting can also be applied to changes made to the Ant codebase. These | |||||
| typically take the form of a veto (-1) in reply to the commit message | |||||
| sent when the commit is made. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Approvals"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Approvals</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| These are the types of approvals that can be sought. Different actions | |||||
| require different types of approvals | |||||
| </p> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Consensus</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| For this to pass, all voters with binding votes must vote and there | |||||
| can be no binding vetoes (-1). Consensus votes are rarely required | |||||
| due to the impracticality of getting all eligible voters to cast a | |||||
| vote. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Lazy Consensus</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy consensus requires 3 binding +1 votes and no binding vetoes. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Lazy Majority</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| A lazy majority vote requires 3 binding +1 votes and more binding +1 | |||||
| votes that -1 votes. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Lazy Approval</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| An action with lazy approval is implicitly allowed unless a -1 vote | |||||
| is received, at which time, depending on the type of action, either | |||||
| lazy majority or lazy consensus approval must be obtained. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>2/3 Majority</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Some actions require a 2/3 majority of active committers or PMC | |||||
| members to pass. Such actions typically affect the foundation | |||||
| of the project (e.g. adopting a new codebase to replace an existing | |||||
| product). The higher threshold is designed to ensure such changes | |||||
| are strongly supported. To pass this vote requires at least 2/3 of | |||||
| binding vote holders to vote +1 | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <br/> | |||||
| <a name="Vetoes"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Vetoes</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| A valid, binding veto cannot be overruled. If a veto is cast, it must be | |||||
| accompanied by a valid reason explaining the reasons for the veto. The | |||||
| validity of a veto, if challenged, can be confirmed by anyone who has | |||||
| a binding vote. This does not necessarily signify agreement with the | |||||
| veto - merely that the veto is valid. | |||||
| </p> | |||||
| <p> | |||||
| If you disagree with a valid veto, you must lobby the person casting | |||||
| the veto to withdraw their veto. If a veto is not withdrawn, the action | |||||
| that has been vetoed must be reversed in a timely manner. | |||||
| </p> | |||||
| <br/> | |||||
| <a name="Actions"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Actions</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| This section describes the various actions which are undertaken within | |||||
| the project, the corresponding approval required for that action and | |||||
| those who have binding votes over the action. | |||||
| </p> | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| <tr> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Action | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Description | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Approval | |||||
| </th> | |||||
| <th colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Binding Votes | |||||
| </th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Code Change</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| A change made to a codebase of the project and committed | |||||
| by a committer. This includes source code, documentation, website | |||||
| content, etc. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy approval and then lazy consensus. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active committers. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Release Plan</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Defines the timetable and actions for a release. The plan also | |||||
| nominates a Release Manager. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy majority | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active committers | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Product Release</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| When a release of one of the project's products is ready, a vote is | |||||
| required to accept the release as an official release of the | |||||
| project. | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy Majority | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Adoption of New Codebase</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <p> | |||||
| When the codebase for an existing, released product is to be | |||||
| replaced with an alternative codebase. If such a vote fails to | |||||
| gain approval, the existing code base will continue. | |||||
| </p> | |||||
| <p> | |||||
| This also covers the creation of new sub-projects | |||||
| within the project | |||||
| </p> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| 2/3 majority | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active committers | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>New Committer</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| When a new committer is proposed for the project | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy consensus | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>New PMC Member</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| When a committer is proposed for the PMC | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Lazy consensus | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>Committer Removal</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <p>When removal of commit privileges is sought.</p> | |||||
| <p><b>Note: </b> Such actions will also be referred to the ASF | |||||
| board by the PMC chair</p> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Consensus | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active PMC members (excluding the committer in question if a | |||||
| member of the PMC). | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <strong>PMC Member Removal</strong> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| <p>When removal of a PMC member is sought.</p> | |||||
| <p><b>Note: </b> Such actions will also be referred to the | |||||
| ASF board by the PMC chair</p> | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Consensus | |||||
| </td> | |||||
| <td colspan="1" rowspan="1" | |||||
| valign="top" align="left"> | |||||
| Active PMC members (excluding the member in question). | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <br/> | |||||
| <a name="Voting Timeframes"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="#4C6C8F"> | |||||
| <font color="#ffffff" face="arial,helvetica,sanserif"> | |||||
| <strong>Voting Timeframes</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <p> | |||||
| Votes are open for a period of 1 week to allow all active voters | |||||
| time to consider the vote. Votes relating to code changes are not | |||||
| subject to a strict timetable but should be made as timely as possible. | |||||
| </p> | |||||
| </div> | |||||
| </td><td width="10"><img width="10" height="4" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> | |||||
| <tr> | |||||
| <td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="images/spacer.gif"><a href="images/label.gif"></a><a href="images/page.gif"></a><a href="images/chapter.gif"></a><a href="images/chapter_open.gif"></a><a href="images/current.gif"></a><a href="/favicon.ico"></a></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © | |||||
| 2000-2003 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- | |||||
| document.write(" - "+"Last Published: " + document.lastModified); | |||||
| // --></script></font></td> | |||||
| </tr> | |||||
| </table> | |||||
| </body> | |||||
| </html> | |||||
| @@ -1,52 +0,0 @@ | |||||
| body { background-color: #FFFFFF; margin: 0px 0px 0px 0px; font-family: Verdana, Helvetica, sans-serif; font-size : 90%; } | |||||
| a:link { color: #0F3660; } | |||||
| a:visited { color: #009999; } | |||||
| a:active { color: #000066; } | |||||
| a:hover { color: #000066; } | |||||
| .menu { background-color: #4C6C8F; margin: 0px; padding: 3px 8px 5px 3px; font-size : 90%; } | |||||
| .menu a:link { color: #FFFFFF; text-decoration : none; } | |||||
| .menu a:visited { color: #FFFFFF; text-decoration : none; } | |||||
| /*.menu a:active { font-weight: bold }*/ | |||||
| .menu a:hover { color: #FFCC00; text-decoration : none; } | |||||
| .menu ul { margin: 0px 0px 0px 20px; padding: 0px; } | |||||
| .menu li { list-style-image: url('images/label.gif'); font-weight : bold; } | |||||
| .menu ul ul li .sel { list-style-image: url('images/current.gif'); font-weight : normal; } | |||||
| .menu ul ul li { list-style-image: url('images/page.gif'); font-weight : normal; } | |||||
| table .title { background-color: #FFFFFF; width:100%; border: 0px; } | |||||
| .dida { font-size: 60%; } | |||||
| .pre { white-space: pre;} | |||||
| .nowrap { white-space: nowrap;} | |||||
| .content { padding: 5px 5px 5px 10px; font : small; font-size : 90%; } | |||||
| .content .ForrestTable { width: 100%; background-color: #7099C5; color: #ffffff; font-size : 90%;} | |||||
| .content .ForrestTable caption { text-align: left; color: black; font-weight: bold; } | |||||
| .content .ForrestTable th { text-align: center; } | |||||
| .content .ForrestTable td { background-color: #f0f0ff; color: black; } | |||||
| .frame { margin: 5px 20px 5px 20px; font-size: 90%; } | |||||
| .frame .content { margin: 0px; } | |||||
| .note { border: solid 1px #7099C5; background-color: #f0f0ff; } | |||||
| .note .label { background-color: #7099C5; color: #ffffff; } | |||||
| .warning { border: solid 1px #D00000; background-color: #fff0f0; } | |||||
| .warning .label { background-color: #D00000; color: #ffffff; } | |||||
| .fixme { border: solid 1px #C6C600; background-color: #FAF9C3; } | |||||
| .fixme .label { background-color: #C6C600; color: #ffffff; } | |||||
| .code { border-color: #CFDCED; border-style: solid; border-width: 1px; } | |||||
| .codefrag { font-family: "Courier New", Courier, monospace; } | |||||
| .highlight { background-color: yellow; } | |||||
| .minitoc {margin: 5px 5px 5px 40px;} | |||||
| .dtdElement { width: 100%; font-size: 90%; background-color : #ffffff; } | |||||
| .dtdTag { color: #990000; text-transform : uppercase; font-style : normal; font-size : 120%; font-weight : bold; } | |||||
| @@ -1,460 +0,0 @@ | |||||
| <?xml version="1.0"?> | |||||
| <document> | |||||
| <properties> | |||||
| <title>Apache Ant Project Bylaws</title> | |||||
| </properties> | |||||
| <body> | |||||
| <section name="Apache Ant Project Bylaws"> | |||||
| <p> | |||||
| This document defines the bylaws under which the Apache Ant project | |||||
| operates. It defines the roles and responsibilities of the | |||||
| project, who may vote, how voting works, how conflicts are resolved, | |||||
| etc. | |||||
| </p> | |||||
| <p> | |||||
| Ant is a project of the | |||||
| <a href="http://www.apache.org/foundation/">Apache Software | |||||
| Foundation</a>. The foundation holds the copyright on Apache | |||||
| code including the code in the Ant codebase. The | |||||
| <a href="http://www.apache.org/foundation/faq.html">foundation FAQ</a> | |||||
| explains the operation and background of the foundation. | |||||
| </p> | |||||
| <p> | |||||
| Ant is typical of Apache projects in that it operates under a set of | |||||
| principles, known collectively as the "Apache Way". If you are | |||||
| new to Apache development, please refer to the | |||||
| <a href="http://incubator.apache.org">Incubator project</a> | |||||
| for more information on how Apache projects operate. <b>Note:</b> the | |||||
| incubator project has only been recently set up and does not yet explain | |||||
| the Apache Way in great detail. | |||||
| </p> | |||||
| <ul> | |||||
| <li><a href="#Roles and Responsibilities">Roles and Responsibilities</a></li> | |||||
| <li><a href="#Decision Making">How decisions are made</a></li> | |||||
| </ul> | |||||
| </section> | |||||
| <section name="Roles and Responsibilities"> | |||||
| <p> | |||||
| Apache projects define a set of roles with associated rights and | |||||
| responsibilities. These roles govern what tasks an individual may perform | |||||
| within the project. The roles are defined in the following sections | |||||
| </p> | |||||
| <ul> | |||||
| <li><a href="#Users">Users</a></li> | |||||
| <li><a href="#Developers">Developers</a></li> | |||||
| <li><a href="#Committers">Committers</a></li> | |||||
| <li><a href="#Project Management Committee"> | |||||
| Project Management Committee (PMC)</a> | |||||
| </li> | |||||
| </ul> | |||||
| <subsection name="Users"> | |||||
| <p> | |||||
| The most important participants in the project are people who use our | |||||
| software. The majority of our developers start out as users and guide | |||||
| their development efforts from the user's perspective. | |||||
| </p> | |||||
| <p> | |||||
| Users contribute to the Apache projects by providing feedback to | |||||
| developers in the form of bug reports and feature suggestions. As | |||||
| well, users participate in the Apache community by helping other users | |||||
| on mailing lists and user support forums. | |||||
| </p> | |||||
| </subsection> | |||||
| <subsection name="Developers"> | |||||
| <p> | |||||
| All of the volunteers who are contributing time, code, documentation, | |||||
| or resources to the Ant Project. A developer that makes sustained, | |||||
| welcome contributions to the project may be invited to become a | |||||
| Committer, though the exact timing of such invitations depends on many | |||||
| factors. | |||||
| </p> | |||||
| </subsection> | |||||
| <subsection name="Committers"> | |||||
| <p> | |||||
| The project's Committers are responsible for the project's technical | |||||
| management. All committers have write access to the project's source | |||||
| repositories. Committers may cast binding votes on any technical | |||||
| discussion regarding the project. | |||||
| </p> | |||||
| <p> | |||||
| Committer access is by invitation only and must be approved by lazy | |||||
| consensus of the active PMC members. A Committer is considered emeritus | |||||
| by their own declaration or by not contributing in any form to the | |||||
| project for over six months. An emeritus committer may request | |||||
| reinstatement of commit access from the PMC. Such reinstatement is | |||||
| subject to lazy consensus of active PMC members. | |||||
| </p> | |||||
| <p> | |||||
| Commit access can be revoked by a unanimous vote of all the active | |||||
| PMC members (except the committer in question if they are also a PMC member). | |||||
| </p> | |||||
| <p> | |||||
| All Apache committers are required to have a signed Contributor License | |||||
| Agreement (CLA) on file with the Apache Software Foundation. There is a | |||||
| <a href="http://www.apache.org/dev/committers.html">Committer FAQ</a> | |||||
| which provides more details on the requirements for Committers | |||||
| </p> | |||||
| <p> | |||||
| A committer who makes a sustained contribution to the project may be | |||||
| invited to become a member of the PMC. The form of contribution is | |||||
| not limited to code. It can also include code review, helping out | |||||
| users on the mailing lists, documentation, etc. | |||||
| </p> | |||||
| </subsection> | |||||
| <subsection name="Project Management Committee"> | |||||
| <p> | |||||
| The Project Management Committee (PMC) for Apache Ant was created by a | |||||
| <a href="mission.html">resolution</a> of the board of the Apache | |||||
| Software Foundation on 18<sup>th</sup> November 2002. The PMC is | |||||
| responsible to the board and the ASF for the management and oversight | |||||
| of the Apache Ant codebase. The responsibilities of the PMC include | |||||
| </p> | |||||
| <ul> | |||||
| <li>Deciding what is distributed as products of the Apache Ant project. | |||||
| In particular all releases must be approved by the PMC | |||||
| </li> | |||||
| <li>Maintaining the project's shared resources, including the codebase | |||||
| repository, mailing lists, websites. | |||||
| </li> | |||||
| <li>Speaking on behalf of the project. | |||||
| </li> | |||||
| <li>Resolving license disputes regarding products of the project | |||||
| </li> | |||||
| <li>Nominating new PMC members and committers | |||||
| </li> | |||||
| <li>Maintaining these bylaws and other guidelines of the project | |||||
| </li> | |||||
| </ul> | |||||
| <p> | |||||
| Membership of the PMC is by invitation only and must be approved by a | |||||
| lazy consensus of active PMC members. A PMC member is considered | |||||
| "emeritus" by their own declaration or by not contributing in | |||||
| any form to the project for over six months. An emeritus member may | |||||
| request reinstatement to the PMC. Such reinstatement is subject to lazy | |||||
| consensus of the active PMC members. Membership of the PMC can be | |||||
| revoked by an unanimous vote of all the active PMC members other than | |||||
| the member in question. | |||||
| </p> | |||||
| <p> | |||||
| The chair of the PMC is appointed by the ASF board. The chair is an | |||||
| office holder of the Apache Software Foundation (Vice President, | |||||
| Apache Ant) and has primary responsibility to the board for the | |||||
| management of the projects within the scope of the Ant PMC. The chair | |||||
| reports to the board quarterly on developments within the Ant project. | |||||
| The PMC may consider the position of PMC chair annually and if | |||||
| supported by 2/3 Majority may recommend a new chair to the board. | |||||
| Ultimately, however, it is the board's responsibility who it chooses | |||||
| to appoint as the PMC chair. | |||||
| </p> | |||||
| </subsection> | |||||
| </section> | |||||
| <section name="Decision Making"> | |||||
| <p> | |||||
| Within the Ant project, different types of decisions require different | |||||
| forms of approval. For example, the | |||||
| <a href="#Roles and Responsibilities">previous section</a> describes | |||||
| several decisions which require "lazy consensus" approval. This | |||||
| section defines how voting is performed, the types of approvals, and which | |||||
| types of decision require which type of approval. | |||||
| </p> | |||||
| <subsection name="Voting"> | |||||
| <p> | |||||
| Decisions regarding the project are made by votes on the primary project | |||||
| development mailing list (ant-dev@jakarta.apache.org). Where necessary, | |||||
| PMC voting may take place on the private Ant PMC mailing list. | |||||
| Votes are clearly indicated by subject line starting with [VOTE] or | |||||
| [PMC-VOTE]. Votes may contain multiple items for approval and these | |||||
| should be clearly separated. Voting is carried out by replying to the | |||||
| vote mail. Voting may take four flavours | |||||
| </p> | |||||
| <table> | |||||
| <tr> | |||||
| <td><strong>+1</strong></td> | |||||
| <td> | |||||
| "Yes," "Agree," or "the action should be | |||||
| performed." In general, this vote also indicates a willingness | |||||
| on the behalf of the voter in "making it happen" | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>+0</strong></td> | |||||
| <td> | |||||
| This vote indicates a willingness for the action under | |||||
| consideration to go ahead. The voter, however will not be able | |||||
| to help. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>-0</strong></td> | |||||
| <td> | |||||
| This vote indicates that the voter does not, in general, agree with | |||||
| the proposed action but is not concerned enough to prevent the | |||||
| action going ahead. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>-1</strong></td> | |||||
| <td> | |||||
| This is a negative vote. On issues where consensus is required, | |||||
| this vote counts as a <strong>veto</strong>. All vetoes must | |||||
| contain an explanation of why the veto is appropriate. Vetoes with | |||||
| no explanation are void. It may also be appropriate for a -1 vote | |||||
| to include an alternative course of action. | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <p> | |||||
| All participants in the Ant project are encouraged to show their | |||||
| agreement with or against a particular action by voting. For technical | |||||
| decisions, only the votes of active committers are binding. Non binding | |||||
| votes are still useful for those with binding votes to understand the | |||||
| perception of an action in the wider Ant community. For PMC decisions, | |||||
| only the votes of PMC members are binding. | |||||
| </p> | |||||
| <p> | |||||
| Voting can also be applied to changes made to the Ant codebase. These | |||||
| typically take the form of a veto (-1) in reply to the commit message | |||||
| sent when the commit is made. | |||||
| </p> | |||||
| </subsection> | |||||
| <subsection name="Approvals"> | |||||
| <p> | |||||
| These are the types of approvals that can be sought. Different actions | |||||
| require different types of approvals | |||||
| </p> | |||||
| <table> | |||||
| <tr> | |||||
| <td><strong>Consensus</strong></td> | |||||
| <td> | |||||
| For this to pass, all voters with binding votes must vote and there | |||||
| can be no binding vetoes (-1). Consensus votes are rarely required | |||||
| due to the impracticality of getting all eligible voters to cast a | |||||
| vote. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Lazy Consensus</strong></td> | |||||
| <td> | |||||
| Lazy consensus requires 3 binding +1 votes and no binding vetoes. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Lazy Majority</strong></td> | |||||
| <td> | |||||
| A lazy majority vote requires 3 binding +1 votes and more binding +1 | |||||
| votes that -1 votes. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Lazy Approval</strong></td> | |||||
| <td> | |||||
| An action with lazy approval is implicitly allowed unless a -1 vote | |||||
| is received, at which time, depending on the type of action, either | |||||
| lazy majority or lazy consensus approval must be obtained. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>2/3 Majority</strong></td> | |||||
| <td> | |||||
| Some actions require a 2/3 majority of active committers or PMC | |||||
| members to pass. Such actions typically affect the foundation | |||||
| of the project (e.g. adopting a new codebase to replace an existing | |||||
| product). The higher threshold is designed to ensure such changes | |||||
| are strongly supported. To pass this vote requires at least 2/3 of | |||||
| binding vote holders to vote +1 | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </subsection> | |||||
| <subsection name="Vetoes"> | |||||
| <p> | |||||
| A valid, binding veto cannot be overruled. If a veto is cast, it must be | |||||
| accompanied by a valid reason explaining the reasons for the veto. The | |||||
| validity of a veto, if challenged, can be confirmed by anyone who has | |||||
| a binding vote. This does not necessarily signify agreement with the | |||||
| veto - merely that the veto is valid. | |||||
| </p> | |||||
| <p> | |||||
| If you disagree with a valid veto, you must lobby the person casting | |||||
| the veto to withdraw their veto. If a veto is not withdrawn, the action | |||||
| that has been vetoed must be reversed in a timely manner. | |||||
| </p> | |||||
| </subsection> | |||||
| <subsection name="Actions"> | |||||
| <p> | |||||
| This section describes the various actions which are undertaken within | |||||
| the project, the corresponding approval required for that action and | |||||
| those who have binding votes over the action. | |||||
| </p> | |||||
| <table> | |||||
| <tr> | |||||
| <th>Action</th> | |||||
| <th>Description</th> | |||||
| <th>Approval</th> | |||||
| <th>Binding Votes</th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Code Change</strong></td> | |||||
| <td> | |||||
| A change made to a codebase of the project and committed | |||||
| by a committer. This includes source code, documentation, website | |||||
| content, etc. | |||||
| </td> | |||||
| <td> | |||||
| Lazy approval and then lazy consensus. | |||||
| </td> | |||||
| <td> | |||||
| Active committers. | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Release Plan</strong></td> | |||||
| <td> | |||||
| Defines the timetable and actions for a release. The plan also | |||||
| nominates a Release Manager. | |||||
| </td> | |||||
| <td> | |||||
| Lazy majority | |||||
| </td> | |||||
| <td> | |||||
| Active committers | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Product Release</strong></td> | |||||
| <td> | |||||
| When a release of one of the project's products is ready, a vote is | |||||
| required to accept the release as an official release of the | |||||
| project. | |||||
| </td> | |||||
| <td> | |||||
| Lazy Majority | |||||
| </td> | |||||
| <td> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Adoption of New Codebase</strong></td> | |||||
| <td> | |||||
| <p> | |||||
| When the codebase for an existing, released product is to be | |||||
| replaced with an alternative codebase. If such a vote fails to | |||||
| gain approval, the existing code base will continue. | |||||
| </p> | |||||
| <p> | |||||
| This also covers the creation of new sub-projects | |||||
| within the project | |||||
| </p> | |||||
| </td> | |||||
| <td> | |||||
| 2/3 majority | |||||
| </td> | |||||
| <td> | |||||
| Active committers | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>New Committer</strong></td> | |||||
| <td> | |||||
| When a new committer is proposed for the project | |||||
| </td> | |||||
| <td> | |||||
| Lazy consensus | |||||
| </td> | |||||
| <td> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>New PMC Member</strong></td> | |||||
| <td> | |||||
| When a committer is proposed for the PMC | |||||
| </td> | |||||
| <td> | |||||
| Lazy consensus | |||||
| </td> | |||||
| <td> | |||||
| Active PMC members | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>Committer Removal</strong></td> | |||||
| <td> | |||||
| <p>When removal of commit privileges is sought.</p> | |||||
| <p><b>Note: </b> Such actions will also be referred to the ASF | |||||
| board by the PMC chair</p> | |||||
| </td> | |||||
| <td> | |||||
| Consensus | |||||
| </td> | |||||
| <td> | |||||
| Active PMC members (excluding the committer in question if a | |||||
| member of the PMC). | |||||
| </td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><strong>PMC Member Removal</strong></td> | |||||
| <td> | |||||
| <p>When removal of a PMC member is sought.</p> | |||||
| <p><b>Note: </b> Such actions will also be referred to the | |||||
| ASF board by the PMC chair</p> | |||||
| </td> | |||||
| <td> | |||||
| Consensus | |||||
| </td> | |||||
| <td> | |||||
| Active PMC members (excluding the member in question). | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </subsection> | |||||
| <subsection name="Voting Timeframes"> | |||||
| <p> | |||||
| Votes are open for a period of 1 week to allow all active voters | |||||
| time to consider the vote. Votes relating to code changes are not | |||||
| subject to a strict timetable but should be made as timely as possible. | |||||
| </p> | |||||
| </subsection> | |||||
| </section> | |||||
| </body> | |||||
| </document> | |||||
| @@ -1,49 +0,0 @@ | |||||
| <?xml version="1.0" encoding="ISO-8859-1"?> | |||||
| <project name="Apache Ant" href="http://ant.apache.org/"> | |||||
| <title>Apache Ant</title> | |||||
| <logo href="images/ant_logo_large.gif">Apache Ant</logo> | |||||
| <body> | |||||
| <menu name="Apache Ant"> | |||||
| <item name="Welcome" href="/index.html"/> | |||||
| <item name="License" href="/license.html"/> | |||||
| <item name="News" href="/antnews.html"/> | |||||
| </menu> | |||||
| <menu name="Documentation"> | |||||
| <item name="Manual" | |||||
| href="/manual/index.html"/> | |||||
| <item name="Related Projects" | |||||
| href="/projects.html"/> | |||||
| <item name="External Tools and Tasks" | |||||
| href="/external.html"/> | |||||
| <item name="Resources" | |||||
| href="/resources.html"/> | |||||
| <item name="Frequently Asked Questions" | |||||
| href="/faq.html"/> | |||||
| <item name="Having Problems?" | |||||
| href="/problems.html"/> | |||||
| </menu> | |||||
| <menu name="Download"> | |||||
| <item name="Binary Distributions" href="/bindownload.cgi"/> | |||||
| <item name="Source Distributions" href="/srcdownload.cgi"/> | |||||
| </menu> | |||||
| <menu name="Get Involved"> | |||||
| <item name="Mailing Lists" href="/mail.html"/> | |||||
| <item name="CVS Repositories" href="/cvs.html"/> | |||||
| <item name="Bug Database" href="http://nagoya.apache.org/bugzilla/enter_bug.cgi?product=Ant"/> | |||||
| <item name="Enhancement Requests" href="http://nagoya.apache.org/bugzilla/enter_bug.cgi?product=Ant&amp;bug_severity=Enhancement"/> | |||||
| </menu> | |||||
| <menu name="Project Management"> | |||||
| <item name="Contributors" href="/contributors.html"/> | |||||
| <item name="Apache Ant Mission" href="/mission.html"/> | |||||
| <item name="Project Guidelines" href="/guidelines.html"/> | |||||
| <item name="Legal" href="/legal.html"/> | |||||
| </menu> | |||||
| </body> | |||||
| </project> | |||||
| @@ -1,209 +0,0 @@ | |||||
| #* | |||||
| * ============================================================================ | |||||
| * The Apache Software License, Version 1.1 | |||||
| * ============================================================================ | |||||
| * | |||||
| * Copyright (C) 2000-2002 The Apache Software Foundation. All | |||||
| * rights reserved. | |||||
| * | |||||
| * Redistribution and use in source and binary forms, with or without modifica- | |||||
| * tion, are permitted provided that the following conditions are met: | |||||
| * | |||||
| * 1. Redistributions of source code must retain the above copyright notice, | |||||
| * this list of conditions and the following disclaimer. | |||||
| * | |||||
| * 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
| * this list of conditions and the following disclaimer in the documentation | |||||
| * and/or other materials provided with the distribution. | |||||
| * | |||||
| * 3. The end-user documentation included with the redistribution, if any, must | |||||
| * include the following acknowledgment: "This product includes software | |||||
| * developed by the Apache Software Foundation (http://www.apache.org/)." | |||||
| * Alternately, this acknowledgment may appear in the software itself, if | |||||
| * and wherever such third-party acknowledgments normally appear. | |||||
| * | |||||
| * 4. The names "Ant" and "Apache Software Foundation" must not be used to | |||||
| * endorse or promote products derived from this software without prior | |||||
| * written permission. For written permission, please contact | |||||
| * apache@apache.org. | |||||
| * | |||||
| * 5. Products derived from this software may not be called "Apache", nor may | |||||
| * "Apache" appear in their name, without prior written permission of the | |||||
| * Apache Software Foundation. | |||||
| * | |||||
| * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, | |||||
| * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | |||||
| * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | |||||
| * APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- | |||||
| * DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS | |||||
| * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | |||||
| * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |||||
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |||||
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| * | |||||
| * This software consists of voluntary contributions made by many individuals | |||||
| * on behalf of the Apache Software Foundation. For more information on the | |||||
| * Apache Software Foundation, please see <http://www.apache.org/>. | |||||
| * | |||||
| *# | |||||
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |||||
| ## Content Stylesheet for Site | |||||
| ## Defined variables | |||||
| #set ($lightbg = "#ffffff") | |||||
| #set ($lightfg = "#ffffff") | |||||
| #set ($darkfg = "#000000") | |||||
| #set ($active = "#ffcc00") | |||||
| #set ($blue3 = "#294563") | |||||
| #set ($blue2 = "#4C6C8F") | |||||
| #set ($blue1 = "#CFDCED") | |||||
| #set ($sourceborder = "#023264") | |||||
| #set ($pound = "#" ) | |||||
| ## start the processing | |||||
| #document() | |||||
| ## end the processing | |||||
| ## This is where the common page macro's live | |||||
| #macro ( subsection $subsection) | |||||
| <br/> | |||||
| <a name="$escape.getText($subsection.getAttributeValue("name"))"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue2"> | |||||
| <font color="$lightfg" face="arial,helvetica,sanserif"> | |||||
| <strong>$subsection.getAttributeValue("name")</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| #foreach ( $items in $subsection.getChildren() ) | |||||
| #if ($items.getName().equals("img")) | |||||
| #image ($items) | |||||
| #elseif ($items.getName().equals("source")) | |||||
| #source ($items) | |||||
| #elseif ($items.getName().equals("table")) | |||||
| #table ($items) | |||||
| #else | |||||
| $xmlout.outputString($items) | |||||
| #end | |||||
| #end | |||||
| #end | |||||
| #macro ( section $section) | |||||
| <br/> | |||||
| <table class="nowrap" border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue3"><font color="$lightfg"><a name="$escape.getText($section.getAttributeValue("name"))"><strong>$section.getAttributeValue("name")</strong></a></font></td></tr> | |||||
| </table> | |||||
| #foreach ( $items in $section.getChildren() ) | |||||
| #if ($items.getName().equals("img")) | |||||
| #image ($items) | |||||
| #elseif ($items.getName().equals("source")) | |||||
| #source ($items) | |||||
| #elseif ($items.getName().equals("table")) | |||||
| #table ($items) | |||||
| #elseif ($items.getName().equals("subsection")) | |||||
| #subsection ($items) | |||||
| #else | |||||
| $xmlout.outputString($items) | |||||
| #end | |||||
| #end | |||||
| #end | |||||
| ## This is where the FAQ specific macro's live | |||||
| #macro (toc $section) | |||||
| <br/> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue2"> | |||||
| <font color="$lightfg" face="arial,helvetica,sanserif"> | |||||
| <strong>$section.getAttributeValue("title")</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| <ul> | |||||
| #foreach ($faq in $section.getChildren("faq") ) | |||||
| #subtoc ($faq) | |||||
| #end | |||||
| </ul> | |||||
| #end | |||||
| #macro (subtoc $faq) | |||||
| #set ($id = $faq.getAttributeValue("id")) | |||||
| <li><a href="$pound$id"> | |||||
| $xmlout.outputString($faq.getChild("question"), true) | |||||
| </a></li> | |||||
| #end | |||||
| #macro (answers $section) | |||||
| #foreach ($faq in $section.getChildren("faq") ) | |||||
| #faq ($faq) | |||||
| #end | |||||
| #end | |||||
| #macro (faq $faq) | |||||
| #set ($id = $faq.getAttributeValue("id")) | |||||
| <br/> | |||||
| <a name="$id"></a> | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue2"> | |||||
| <font color="$lightfg" face="arial,helvetica,sanserif"> | |||||
| <strong> | |||||
| $xmlout.outputString($faq.getChild("question"), true) | |||||
| </strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| #foreach ($item in $faq.getChild("answer").getChildren()) | |||||
| #if ($item.getName().equals("img")) | |||||
| #image ($item) | |||||
| #elseif ($item.getName().equals("source")) | |||||
| #source ($item) | |||||
| #elseif ($item.getName().equals("table")) | |||||
| #table ($item) | |||||
| #else | |||||
| $xmlout.outputString($item) | |||||
| #end | |||||
| #end | |||||
| #end | |||||
| #macro (document) | |||||
| #header() | |||||
| <table class="title"> | |||||
| <tr> | |||||
| <td valign="middle"> | |||||
| <h1>$root.getChild("properties").getChild("title").getText()</h1> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| #set ($allSections = $root.getChild("body").getChildren("section")) | |||||
| #foreach ( $section in $allSections ) | |||||
| #section ($section) | |||||
| #end | |||||
| #if ($root.getChildren("faqsection").size() > 0) | |||||
| #set ($allFaqSections = $root.getChildren("faqsection")) | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue3"> | |||||
| <font color="$lightfg" face="arial,helvetica,sanserif"> | |||||
| <strong>Questions</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| #foreach ( $faqSection in $allFaqSections ) | |||||
| #toc ($faqSection) | |||||
| #end | |||||
| <table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||||
| <tr><td bgcolor="$blue3"> | |||||
| <font color="$lightfg" face="arial,helvetica,sanserif"> | |||||
| <strong>Answers</strong> | |||||
| </font> | |||||
| </td></tr> | |||||
| </table> | |||||
| #foreach ( $faqSection in $allFaqSections ) | |||||
| #answers ($faqSection) | |||||
| #end | |||||
| #end | |||||
| #footer() | |||||
| #end | |||||
| @@ -1,334 +0,0 @@ | |||||
| #* | |||||
| * ============================================================================ | |||||
| * The Apache Software License, Version 1.1 | |||||
| * ============================================================================ | |||||
| * | |||||
| * Copyright (C) 2000-2003 The Apache Software Foundation. All | |||||
| * rights reserved. | |||||
| * | |||||
| * Redistribution and use in source and binary forms, with or without modifica- | |||||
| * tion, are permitted provided that the following conditions are met: | |||||
| * | |||||
| * 1. Redistributions of source code must retain the above copyright notice, | |||||
| * this list of conditions and the following disclaimer. | |||||
| * | |||||
| * 2. Redistributions in binary form must reproduce the above copyright notice, | |||||
| * this list of conditions and the following disclaimer in the documentation | |||||
| * and/or other materials provided with the distribution. | |||||
| * | |||||
| * 3. The end-user documentation included with the redistribution, if any, must | |||||
| * include the following acknowledgment: "This product includes software | |||||
| * developed by the Apache Software Foundation (http://www.apache.org/)." | |||||
| * Alternately, this acknowledgment may appear in the software itself, if | |||||
| * and wherever such third-party acknowledgments normally appear. | |||||
| * | |||||
| * 4. The names "Ant" and "Apache Software Foundation" must not be used to | |||||
| * endorse or promote products derived from this software without prior | |||||
| * written permission. For written permission, please contact | |||||
| * apache@apache.org. | |||||
| * | |||||
| * 5. Products derived from this software may not be called "Apache", nor may | |||||
| * "Apache" appear in their name, without prior written permission of the | |||||
| * Apache Software Foundation. | |||||
| * | |||||
| * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, | |||||
| * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND | |||||
| * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE | |||||
| * APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- | |||||
| * DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS | |||||
| * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | |||||
| * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |||||
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | |||||
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| * | |||||
| * This software consists of voluntary contributions made by many individuals | |||||
| * on behalf of the Apache Software Foundation. For more information on the | |||||
| * Apache Software Foundation, please see <http://www.apache.org/>. | |||||
| * | |||||
| *# | |||||
| ## This is where the common macro's live | |||||
| #macro ( table $table) | |||||
| <table class="ForrestTable" cellspacing="1" cellpadding="4"> | |||||
| #foreach ( $items in $table.getChildren() ) | |||||
| #if ($items.getName().equals("tr")) | |||||
| #tr ($items) | |||||
| #end | |||||
| #end | |||||
| </table> | |||||
| #end | |||||
| #macro ( tr $tr) | |||||
| <tr> | |||||
| #foreach ( $items in $tr.getChildren() ) | |||||
| #if ($items.getName().equals("td")) | |||||
| #td ($items) | |||||
| #elseif ($items.getName().equals("th")) | |||||
| #th ($items) | |||||
| #end | |||||
| #end | |||||
| </tr> | |||||
| #end | |||||
| #macro ( td $value) | |||||
| #if ($value.getAttributeValue("colspan")) | |||||
| #set ($colspan = $value.getAttributeValue("colspan")) | |||||
| #else | |||||
| #set ($colspan = 1) | |||||
| #end | |||||
| #if ($value.getAttributeValue("rowspan")) | |||||
| #set ($rowspan = $value.getAttributeValue("rowspan")) | |||||
| #else | |||||
| #set ($rowspan = 1) | |||||
| #end | |||||
| <td colspan="$!colspan" rowspan="$!rowspan" | |||||
| valign="top" align="left"> | |||||
| #if ($value.getText().length() != 0 || $value.hasChildren()) | |||||
| $xmlout.outputString($value, true) | |||||
| #else | |||||
| | |||||
| #end | |||||
| </td> | |||||
| #end | |||||
| #macro ( th $value) | |||||
| #if ($value.getAttributeValue("colspan")) | |||||
| #set ($colspan = $value.getAttributeValue("colspan")) | |||||
| #else | |||||
| #set ($colspan = 1) | |||||
| #end | |||||
| #if ($value.getAttributeValue("rowspan")) | |||||
| #set ($rowspan = $value.getAttributeValue("rowspan")) | |||||
| #else | |||||
| #set ($rowspan = 1) | |||||
| #end | |||||
| <th colspan="$!colspan" rowspan="$!rowspan" | |||||
| valign="top" align="left"> | |||||
| #if ($value.getText().length() != 0 || $value.hasChildren()) | |||||
| $xmlout.outputString($value, true) | |||||
| #else | |||||
| | |||||
| #end | |||||
| </th> | |||||
| #end | |||||
| #macro ( projectanchor $name $value ) | |||||
| #if ($value.startsWith("http://")) | |||||
| <a href="$value">$name</a> | |||||
| #elseif ($value.startsWith("/site")) | |||||
| <a href="http://jakarta.apache.org$value">$name</a> | |||||
| #else | |||||
| <a href="$relativePath$value">$name</a> | |||||
| #end | |||||
| #end | |||||
| #macro ( metaauthor $author $email ) | |||||
| <meta name="author" content="$author"> | |||||
| <meta name="email" content="$email"> | |||||
| #end | |||||
| #macro ( image $value ) | |||||
| #if ($value.getAttributeValue("width")) | |||||
| #set ($width=$value.getAttributeValue("width")) | |||||
| #end | |||||
| #if ($value.getAttributeValue("height")) | |||||
| #set ($height=$value.getAttributeValue("height")) | |||||
| #end | |||||
| #if ($value.getAttributeValue("align")) | |||||
| #set ($align=$value.getAttributeValue("align")) | |||||
| #end | |||||
| #if ($value.getAttributeValue("alt")) | |||||
| #set ($align=$value.getAttributeValue("alt")) | |||||
| #end | |||||
| <img src="$relativePath$value.getAttributeValue("src")" | |||||
| width="$!width" height="$!height" align="$!align" alt="$!alt"> | |||||
| #end | |||||
| #macro ( source $value) | |||||
| <pre class="code">$escape.getText($value.getText())</pre> | |||||
| #end | |||||
| #macro ( makeProject ) | |||||
| #set ($menus = $project.getChild("body").getChildren("menu")) | |||||
| <div class="menu"><ul> | |||||
| #foreach ( $menu in $menus ) | |||||
| <li><font color="$blue1">$menu.getAttributeValue("name")</font> | |||||
| <ul> | |||||
| #foreach ( $item in $menu.getChildren() ) | |||||
| #set ($name = $item.getAttributeValue("name")) | |||||
| #set ($current = $root.getChild("properties").getChild("title").getText() ) | |||||
| <li> | |||||
| #if ( $current.trim().equals( $name ) ) | |||||
| <span class="sel"><font color="$active">$name</font></span> | |||||
| #else | |||||
| #projectanchor($name $item.getAttributeValue("href")) | |||||
| #end | |||||
| </li> | |||||
| #end | |||||
| </ul> | |||||
| </li> | |||||
| #end | |||||
| </ul></div> | |||||
| #end | |||||
| #macro (getProjectImage) | |||||
| #if ($project.getChild("logo")) | |||||
| <td align="left"> | |||||
| <a href="http://jakarta.apache.org"><img src="images/jakarta-logo.gif" alt="Apache Jakarta Project" border="0"/></a> | |||||
| </td> | |||||
| <td align="right"> | |||||
| #set ( $logoString = $project.getChild("logo").getAttributeValue("href") ) | |||||
| #if ( $logoString.startsWith("/") ) | |||||
| <a href="$project.getAttributeValue("href")"><img src="$relativePath$logoString" alt="$project.getChild("logo").getText()" border="0"/></a> | |||||
| #else | |||||
| <a href="$project.getAttributeValue("href")"><img src="$relativePath/$logoString" alt="$project.getChild("logo").getText()" border="0"/></a> | |||||
| #end | |||||
| </td> | |||||
| #else | |||||
| <td colspan="2"> | |||||
| <a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" alt="Apache Jakarta Project" align="left" border="0"/></a> | |||||
| </td> | |||||
| #end | |||||
| #end | |||||
| #macro (header) | |||||
| <html> | |||||
| <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! --> | |||||
| <head> | |||||
| <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |||||
| <title>$project.getChild("title").getText() - $root.getChild("properties").getChild("title").getText()</title> | |||||
| <link type="text/css" href="page.css" rel="stylesheet"> | |||||
| #set ($authors = $root.getChild("properties").getChildren("author")) | |||||
| #foreach ( $au in $authors ) | |||||
| #metaauthor ( $au.getText() $au.getAttributeValue("email") ) | |||||
| #end | |||||
| </head> | |||||
| <body text="$darkfg" bgcolor="$lightbg"> | |||||
| <table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td nowrap="nowrap" valign="middle" bgcolor="$blue1" height="20"><img height="1" width="5" alt="" border="0" src="images/spacer.gif"><font size="2" face="Arial, Helvetica, Sans-serif"><script src="breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="$blue2" height="2"><img height="2" width="2" alt="" border="0" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td bgcolor="$blue3"><a href="http://ant.apache.org/"><img border="0" alt="Apache Ant site" src="images/group-logo.gif"></a></td><td width="100%" align="center" bgcolor="$blue3"><a href="http://ant.apache.org/"><img alt="Apache Ant logo" border="0" src="images/project-logo.gif"></a></td><td valign="top" rowspan="2" bgcolor="$blue3"> | |||||
| <form target="_blank" onsubmit="q.value = query.value + ' site:ant.apache.org'" action="http://www.google.com/search" method="get"> | |||||
| <table summary="search" border="0" cellspacing="0" cellpadding="0" bgcolor="$blue2"> | |||||
| <tr> | |||||
| <td colspan="3"><img height="10" width="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img height="1" width="1" alt="" src="images/spacer.gif"></td><td nowrap="nowrap"><input name="q" type="hidden"><input size="15" id="query" type="text"><img height="1" width="5" alt="" src="images/spacer.gif"><input name="Search" value="Search" type="submit"> | |||||
| <br> | |||||
| <font face="Arial, Helvetica, Sans-serif" size="2" color="white"> | |||||
| the Apache Ant site | |||||
| </font></td><td><img height="1" width="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td><img alt="" border="0" height="10" width="9" src="images/search-left.gif"></td><td><img height="1" width="1" alt="" src="images/spacer.gif"></td><td><img alt="" border="0" height="10" width="9" src="images/search-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </form> | |||||
| </td><td bgcolor="$blue3"><img height="10" width="10" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td valign="bottom" bgcolor="$blue3" colspan="2"> | |||||
| <div class="tab"> | |||||
| <table summary="tab bar" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td width="8"><img alt="" height="8" width="8" src="images/spacer.gif"></td><td valign="bottom"> | |||||
| <table summary="selected tab" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td height="30" valign="top" width="5" bgcolor="$blue2"><img height="5" width="5" alt="" src="images/tabSel-left.gif"></td><td valign="middle" bgcolor="$blue2"><font color="$lightfg" size="2" face="Arial, Helvetica, Sans-serif"><b>Home</b></font></td><td valign="top" width="5" bgcolor="$blue2"><img height="5" width="5" alt="" src="images/tabSel-right.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| </div> | |||||
| </td><td bgcolor="$blue3"><img alt="" width="1" height="1" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="$blue2" colspan="4"><img width="1" height="10" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="page content" bgcolor="$lightbg" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td valign="top"> | |||||
| <table summary="menu" border="0" cellspacing="0" cellpadding="0"> | |||||
| <tr> | |||||
| <td rowspan="3" valign="top"> | |||||
| <table summary="blue line" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td bgcolor="$blue3"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="$blue1"><font color="$blue2" size="4" face="Arial, Helvetica, Sans-serif"> </font></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td bgcolor="$blue3"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td><td bgcolor="$blue3"><img width="1" height="1" alt="" src="images/spacer.gif"></td><td valign="bottom" bgcolor="$blue2"><img width="10" height="10" alt="" src="images/spacer.gif"></td><td nowrap="nowrap" valign="top" bgcolor="$blue2"> | |||||
| #makeProject() | |||||
| </td><td valign="bottom" bgcolor="$blue2"><img width="10" height="10" alt="" src="images/spacer.gif"></td><td bgcolor="$blue3"><img width="1" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td valign="bottom" align="left" colspan="2" rowspan="2" bgcolor="$blue2"><img height="10" width="10" border="0" alt="" src="images/menu-left.gif"></td><td bgcolor="$blue2"><img height="10" width="10" border="0" alt="" src="images/spacer.gif"></td><td valign="bottom" align="right" colspan="2" rowspan="2" bgcolor="$blue2"><img height="10" width="10" border="0" alt="" src="images/menu-right.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td height="1" bgcolor="$blue3"><img width="1" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td><td valign="top" width="100%"> | |||||
| <table summary="content" width="100%" border="0" cellpadding="0" cellspacing="0"> | |||||
| <tr> | |||||
| <td colspan="4" bgcolor="$blue3"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td align="left" width="10" bgcolor="$blue1"><img width="10" height="1" alt="" src="images/spacer.gif"></td><td align="left" width="50%" bgcolor="$blue1"><font color="$blue2" size="3" face="Arial, Helvetica, Sans-serif"> | |||||
| | |||||
| </font><img width="10" height="8" alt="" src="images/spacer.gif"></td><td align="right" width="50%" bgcolor="$blue1"><font color="$blue2" size="3" face="Arial, Helvetica, Sans-serif"> | |||||
| | |||||
| </font><img width="10" height="8" alt="" src="images/spacer.gif"></td><td width="10" bgcolor="$blue1"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="4" bgcolor="$blue3"><img width="10" height="1" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td align="left" width="10"><img width="10" height="1" alt="" src="images/spacer.gif"></td><td align="left" width="100%"> | |||||
| <div class="content"> | |||||
| #end | |||||
| #macro (footer) | |||||
| </div> | |||||
| </td><td width="10"><img width="10" height="4" alt="" src="images/spacer.gif"></td> | |||||
| </tr> | |||||
| </table> | |||||
| </td> | |||||
| </tr> | |||||
| </table> | |||||
| <table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0"> | |||||
| <tr> | |||||
| <td colspan="2" height="1" bgcolor="$blue2"><img height="1" width="1" alt="" src="images/spacer.gif"><a href="images/label.gif"></a><a href="images/page.gif"></a><a href="images/chapter.gif"></a><a href="images/chapter_open.gif"></a><a href="images/current.gif"></a><a href="/favicon.ico"></a></td> | |||||
| </tr> | |||||
| <tr> | |||||
| <td colspan="2" bgcolor="$blue1" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">Copyright © | |||||
| 2000-2003 The Apache Software Foundation. All rights reserved.<script type="text/javascript" language="JavaScript"><!-- | |||||
| document.write(" - "+"Last Published: " + document.lastModified); | |||||
| // --></script></font></td> | |||||
| </tr> | |||||
| </table> | |||||
| </body> | |||||
| </html> | |||||
| #end | |||||
| @@ -1,2 +0,0 @@ | |||||
| file.resource.loader.path=xdocs/stylesheets | |||||
| velocimacro.library=templates.vm | |||||