* Removed the 'differences to ant1' blurbage from index.xml. * Regenerated HTML. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@272036 13f79535-47bb-0310-9956-ffa450edef68master
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -0,0 +1,138 @@ | |||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |||
<!-- Content Stylesheet for Site --> | |||
<!-- start the processing --> | |||
<html> | |||
<head> | |||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> | |||
<meta name="author" value="Adam Murdoch"> | |||
<meta name="email" value="adammurdoch@apache.org"> | |||
<title>Apache Myrmidon - Differences to Ant1</title> | |||
</head> | |||
<body bgcolor="#ffffff" text="#000000" link="#525D76"> | |||
<table border="0" width="100%" cellspacing="0"> | |||
<!-- TOP IMAGE --> | |||
<tr> | |||
<td> <td colspan="2"> | |||
<a href="http://jakarta.apache.org"><img src="http://jakarta.apache.org/images/jakarta-logo.gif" align="left" border="0"/></a> | |||
</td> | |||
</td> | |||
<td valign="bottom"><div align="right"><b><font size="+3" color="#525D76">Apache Myrmidon</font></b></div></td> | |||
</tr> | |||
</table> | |||
<table border="0" width="100%" cellspacing="4"> | |||
<tr><td colspan="2"> | |||
<hr noshade="" size="1"/> | |||
</td></tr> | |||
<tr> | |||
<!-- LEFT SIDE NAVIGATION --> | |||
<td valign="top" nowrap="true"> | |||
<p><strong>Myrmidon</strong></p> | |||
<ul> | |||
<li> <a href="./index.html">Introduction</a> | |||
</li> | |||
<li> <a href="./getinvolved.html">Get Involved</a> | |||
</li> | |||
<li> <a href="./user.html">Building Myrmidon</a> | |||
</li> | |||
<li> <a href="./todo.html">Todo List</a> | |||
</li> | |||
</ul> | |||
<p><strong>User Guide</strong></p> | |||
<ul> | |||
<li> <a href="./buildfile.html">Build file</a> | |||
</li> | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
<ul> | |||
<li> <a href="./task.html">Task Writers HOWTO</a> | |||
</li> | |||
<li> <a href="./classloader.html">ClassLoader HOWTO</a> | |||
</li> | |||
<li> <a href="./librarys.html">Library HOWTO</a> | |||
</li> | |||
</ul> | |||
<p><strong>Container Design</strong></p> | |||
<ul> | |||
</ul> | |||
</td> | |||
<td align="left" valign="top"> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#525D76"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Differences to Ant 1.x"><strong>Differences to Ant 1.x</strong></a> | |||
</font> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>Some of the differences between Ant 1.x and Myrmidon:</p> | |||
<ul> | |||
<li> | |||
Groups of tasks can be assembled into self-describing | |||
<i>antlib</i> task libraries. This makes it very easy to | |||
distribute and install tasks and data-types. | |||
</li> | |||
<li> A project can import other projects, and reference their targets. </li> | |||
<li>Properties and data type references now share the same namespace.</li> | |||
<li> | |||
Changes to task and data-type API: | |||
<ul> | |||
<li>An interface based API, through which a task interacts with the | |||
task engine, and the services it provides.</li> | |||
<li>A well-defined object lifecycle.</li> | |||
<li>Polymorphic types are supported when objects are configured.</li> | |||
<li>Reference handling is handled automatically when objects are configured.</li> | |||
<li>Aspects can be used to decorate tasks, to add facilities like logging, | |||
error handling, or user preferences.</li> | |||
</ul> | |||
</li> | |||
<li>A set of well-defined services and APIs have been introduced, to allow | |||
tasks to do their work without depending on other tasks: | |||
<ul> | |||
<li>Execute external commands.</li> | |||
<li>Execute other tasks.</li> | |||
<li>Manage ClassLoaders and Class-paths.</li> | |||
<li>Virtual file system (in progress).</li> | |||
<li>Execute Java applications (in progress).</li> | |||
<li>...</li> | |||
</ul> | |||
</li> | |||
</ul> | |||
<p>There are plenty more features planned. You can read about them | |||
<a href="todo.html">here</a>. | |||
</p> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
</td> | |||
</tr> | |||
<!-- FOOTER --> | |||
<tr><td colspan="2"> | |||
<hr noshade="" size="1"/> | |||
</td></tr> | |||
<tr><td colspan="2"> | |||
<div align="center"><font color="#525D76" size="-1"><em> | |||
Copyright © 2000-2002, Apache Software Foundation | |||
</em></font></div> | |||
</td></tr> | |||
</table> | |||
</body> | |||
</html> | |||
<!-- end the processing --> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -76,85 +78,27 @@ | |||
<tr><td> | |||
<blockquote> | |||
<p> | |||
Myrmidon is one of the Ant 2 proposals currently in development. You can | |||
read more about the goals of Ant 2 | |||
<a href="http://jakarta.apache.org/ant/ant2/">here</a>. | |||
</p> | |||
<p> | |||
Myrmidon is a general-purpose <i>task engine</i>. It contains the basic | |||
building blocks for assembling any sort of task-based tool. Ant 2 | |||
is an example of such a tool, which could be assembled using the Myrmidon task | |||
engine, and a library of build related tasks. | |||
</p> | |||
<p> | |||
Currently, Myrmidon is a prototype of what a task engine might look. It | |||
includes a small set of tasks and data types. We are currently porting | |||
many of the Ant 1.x tasks to the Myrmidon task engine. | |||
</p> | |||
<p> | |||
</p> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
<table border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#525D76"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<a name="Differences to Ant 1.x"><strong>Differences to Ant 1.x</strong></a> | |||
</font> | |||
</td></tr> | |||
<tr><td> | |||
<blockquote> | |||
<p>Some of the differences between Ant 1.x and Myrmidon:</p> | |||
<ul> | |||
<li> | |||
Groups of tasks can be assembled into self-describing <i>antlib</i> task | |||
libraries. This makes it very easy to distribute and install tasks and data-types. | |||
</li> | |||
Myrmidon is one of the Ant 2 proposals currently in development. You can | |||
read more about the goals of Ant 2 | |||
<li> | |||
A project can import other projects, and reference their targets. | |||
</li> | |||
<a href="http://jakarta.apache.org/ant/ant2/">here</a>. | |||
<li> | |||
Changes to the property model: | |||
<ul> | |||
<li>Properties and data type references now share the same namespace.</li> | |||
<li>Properties are mutable.</li> | |||
<li>Properties are scoped into global, local, and parent contexts.</li> | |||
<li><code>if</code> and <code>unless</code> checks now test the property | |||
value against <code>false</code>, in addition to testing set/not-set.</li> | |||
</ul> | |||
</li> | |||
<li> | |||
Changes to task and data-type API: | |||
<ul> | |||
<li>An interface based API, through which a task interacts with the | |||
task engine, and the services it provides.</li> | |||
<li>A well-defined object lifecycle.</li> | |||
<li>Polymorphic types are supported when objects are configured.</li> | |||
<li>Reference handling is handled automatically when objects are configured.</li> | |||
<li>Aspects can be used to decorate tasks, to add facilities like logging, | |||
error handling, or user preferences.</li> | |||
</ul> | |||
</li> | |||
<li> | |||
A set of well-defined services and APIs have been introduced, to allow | |||
tasks to do their work without depending on other tasks: | |||
<ul> | |||
<li>Execute external commands.</li> | |||
<li>Execute other tasks.</li> | |||
<li>Manage ClassLoaders and Class-paths.</li> | |||
<li>Virtual file system (in progress).</li> | |||
<li>Execute Java applications (in progress).</li> | |||
<li>...</li> | |||
</ul> | |||
</li> | |||
</p> | |||
<p> | |||
Myrmidon is a general-purpose | |||
<i>task engine</i>. It contains the basic | |||
building blocks for assembling any sort of task-based tool. Ant 2 | |||
is an example of such a tool, which could be assembled using the Myrmidon task | |||
engine, and a library of build related tasks. | |||
</ul> | |||
<p>There are plenty more features planned. You can read about them <a href="todo.html">here</a>.</p> | |||
</p> | |||
<p> | |||
Currently, Myrmidon is a prototype of what a task engine might look. It | |||
includes a small set of tasks and data types. We are currently porting | |||
many of the Ant 1.x tasks to the Myrmidon task engine. | |||
</p> | |||
<p> | |||
</p> | |||
</blockquote> | |||
</td></tr> | |||
</table> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -80,6 +82,51 @@ | |||
sections describe some of the many things which still need to be done to | |||
achieve that goal. This list is currently under construction.</p> | |||
<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"> | |||
<font color="#ffffff" face="arial,helvetica,sanserif"> | |||
<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> | |||
</blockquote> | |||
</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 border="0" cellspacing="0" cellpadding="2" width="100%"> | |||
<tr><td bgcolor="#828DA6"> | |||
@@ -154,12 +215,14 @@ | |||
Write tests for the various bits that rely on Myrmidon | |||
functionality: | |||
<ul> | |||
<li>Simple sanity test</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 that <ant1.property> behaves as per Ant1</li> | |||
</ul> | |||
</li> | |||
<li>Get GUMP runs going using Myrmidon.</li> | |||
<li>i18n messages</li> | |||
</ul> | |||
</blockquote> | |||
</td></tr> | |||
@@ -402,7 +465,6 @@ | |||
<code>ant-services.xml</code> descriptor. | |||
</li> | |||
<li>Route external process stdout and stderr through the logger.</li> | |||
<li>Add verbosity level to ProjectListener LogEvent</li> | |||
<li>Fire ProjectListener events taskFinished(), targetFinished() and | |||
projectFinished() events on build failure, adding indicator methods to | |||
@@ -438,7 +500,11 @@ | |||
<li>Move | |||
<code>crimson.jar</code> to | |||
<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>Unit tests.</li> | |||
</ul> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -51,6 +51,8 @@ | |||
<li> <a href="./vfs.html">Virtual File System</a> | |||
</li> | |||
<li> <a href="./ant1compat.html">Ant1 Compatibility Layer</a> | |||
</li> | |||
<li> <a href="./differences.html">Differences to Ant1</a> | |||
</li> | |||
</ul> | |||
<p><strong>Extending Ant</strong></p> | |||
@@ -37,75 +37,6 @@ | |||
</section> | |||
<section name="Differences to Ant 1.x"> | |||
<p>Some of the differences between Ant 1.x and Myrmidon:</p> | |||
<ul> | |||
<li> | |||
Groups of tasks can be assembled into self-describing | |||
<i>antlib</i> task | |||
libraries. This makes it very easy to distribute and install tasks and data-types. | |||
</li> | |||
<li> | |||
A project can import other projects, and reference their targets. | |||
</li> | |||
<li> | |||
Changes to the property model: | |||
<ul> | |||
<li>Properties and data type references now share the same namespace.</li> | |||
<li>Properties are mutable.</li> | |||
<li>Properties are scoped into global, local, and parent contexts.</li> | |||
<li> | |||
<code>if</code> and | |||
<code>unless</code> checks now test the property | |||
value against | |||
<code>false</code>, in addition to testing set/not-set. | |||
</li> | |||
</ul> | |||
</li> | |||
<li> | |||
Changes to task and data-type API: | |||
<ul> | |||
<li>An interface based API, through which a task interacts with the | |||
task engine, and the services it provides.</li> | |||
<li>A well-defined object lifecycle.</li> | |||
<li>Polymorphic types are supported when objects are configured.</li> | |||
<li>Reference handling is handled automatically when objects are configured.</li> | |||
<li>Aspects can be used to decorate tasks, to add facilities like logging, | |||
error handling, or user preferences.</li> | |||
</ul> | |||
</li> | |||
<li> | |||
A set of well-defined services and APIs have been introduced, to allow | |||
tasks to do their work without depending on other tasks: | |||
<ul> | |||
<li>Execute external commands.</li> | |||
<li>Execute other tasks.</li> | |||
<li>Manage ClassLoaders and Class-paths.</li> | |||
<li>Virtual file system (in progress).</li> | |||
<li>Execute Java applications (in progress).</li> | |||
<li>...</li> | |||
</ul> | |||
</li> | |||
</ul> | |||
<p>There are plenty more features planned. You can read about them | |||
<a href="todo.html">here</a>. | |||
</p> | |||
</section> | |||
</body> | |||
</document> |
@@ -314,7 +314,6 @@ public class MyrmidonSecurityManager | |||
<code>ant-services.xml</code> descriptor. | |||
</li> | |||
<li>Route external process stdout and stderr through the logger.</li> | |||
<li>Add verbosity level to ProjectListener LogEvent</li> | |||
<li>Fire ProjectListener events taskFinished(), targetFinished() and | |||
projectFinished() events on build failure, adding indicator methods to | |||
@@ -350,7 +349,11 @@ public class MyrmidonSecurityManager | |||
<li>Move | |||
<code>crimson.jar</code> to | |||
<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>Unit tests.</li> | |||
</ul> | |||