@@ -51,6 +51,8 @@
<li> <a href="./vfs.html">Virtual File System</a>
<li> <a href="./vfs.html">Virtual File System</a>
</li>
</li>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a>
</li>
<li> <a href="./differences.html">Differences to Ant1</a>
</li>
</li>
</ul>
</ul>
<p><strong>Extending Ant</strong></p>
<p><strong>Extending Ant</strong></p>
@@ -80,6 +82,51 @@
sections describe some of the many things which still need to be done to
sections describe some of the many things which still need to be done to
achieve that goal. This list is currently under construction.</p>
achieve that goal. This list is currently under construction.</p>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Security Manager"><strong>Security Manager</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Add the ability to run java programs that call System.exit() by adding a
security manager. Should look something like:</p>
<div align="left">
<table cellspacing="4" cellpadding="0" border="0">
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#ffffff"><pre>
public class MyrmidonSecurityManager
extends SecurityManager
{
public void checkExit( final int status )
{
throw new ExitException( status );
}
public void checkPermission( final Permission permission )
{
}
}
</pre></td>
<td bgcolor="#023264" width="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
<tr>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
<td bgcolor="#023264" width="1" height="1"><img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/></td>
</tr>
</table>
</div>
</blockquote>
</td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Self Hosting"><strong>Self Hosting</strong></a>
<a name="Self Hosting"><strong>Self Hosting</strong></a>
@@ -94,6 +141,20 @@
able to be built from scratch, without using Ant 1.x at all).</p>
able to be built from scratch, without using Ant 1.x at all).</p>
</blockquote>
</blockquote>
</td></tr>
</td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<font color="#ffffff" face="arial,helvetica,sanserif">
<a name="Validation Pass"><strong>Validation Pass</strong></a>
</font>
</td></tr>
<tr><td>
<blockquote>
<p>Consider calling validate() on task prior to execute(). This would allow
us to have a "make -k" mode that actually did basic validation and would also
encourage task writers to do validation properly.</p>
</blockquote>
</td></tr>
</table>
</table>
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<table border="0" cellspacing="0" cellpadding="2" width="100%">
<tr><td bgcolor="#828DA6">
<tr><td bgcolor="#828DA6">
@@ -154,12 +215,14 @@
Write tests for the various bits that rely on Myrmidon
Write tests for the various bits that rely on Myrmidon
functionality:
functionality:
<ul>
<ul>
<li>Simple sanity test</li>
<li>if/unless on targets: check that behaviour complies with Ant1</li>
<li>if/unless on targets: check that behaviour complies with Ant1</li>
<li>Make sure properties are shared between Ant1 and Myrmidon tasks.</li>
<li>Make sure properties are shared between Ant1 and Myrmidon tasks.</li>
<li>Make sure that <ant1.property> behaves as per Ant1</li>
<li>Make sure that <ant1.property> behaves as per Ant1</li>
</ul>
</ul>
</li>
</li>
<li>Get GUMP runs going using Myrmidon.</li>
<li>Get GUMP runs going using Myrmidon.</li>
<li>i18n messages</li>
</ul>
</ul>
</blockquote>
</blockquote>
</td></tr>
</td></tr>
@@ -402,7 +465,6 @@
<code>ant-services.xml</code> descriptor.
<code>ant-services.xml</code> descriptor.
</li>
</li>
<li>Route external process stdout and stderr through the logger.</li>
<li>Add verbosity level to ProjectListener LogEvent</li>
<li>Add verbosity level to ProjectListener LogEvent</li>
<li>Fire ProjectListener events taskFinished(), targetFinished() and
<li>Fire ProjectListener events taskFinished(), targetFinished() and
projectFinished() events on build failure, adding indicator methods to
projectFinished() events on build failure, adding indicator methods to
@@ -438,7 +500,11 @@
<li>Move
<li>Move
<code>crimson.jar</code> to
<code>crimson.jar</code> to
<code>bin/lib</code> in the distribution,
<code>bin/lib</code> in the distribution,
and make to other jars via the extension mechanism.
and make available to other jars via the extension mechanism.
</li>
<li>Change <code>DefaultPropertyResolver</code> to ignore '$${'.</li>
<li>Add a <code>--type</code> command-line option, to allow
the project builder to be manually selected.
</li>
</li>
<li>Unit tests.</li>
<li>Unit tests.</li>
</ul>
</ul>