Browse Source

* Updated todo list.

* 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-ffa450edef68
master
adammurdoch 23 years ago
parent
commit
1e0690bc78
13 changed files with 247 additions and 149 deletions
  1. +2
    -0
      proposal/myrmidon/docs/ant1compat.html
  2. +2
    -0
      proposal/myrmidon/docs/buildfile.html
  3. +2
    -0
      proposal/myrmidon/docs/classloader.html
  4. +138
    -0
      proposal/myrmidon/docs/differences.html
  5. +2
    -0
      proposal/myrmidon/docs/getinvolved.html
  6. +20
    -76
      proposal/myrmidon/docs/index.html
  7. +2
    -0
      proposal/myrmidon/docs/librarys.html
  8. +2
    -0
      proposal/myrmidon/docs/task.html
  9. +68
    -2
      proposal/myrmidon/docs/todo.html
  10. +2
    -0
      proposal/myrmidon/docs/user.html
  11. +2
    -0
      proposal/myrmidon/docs/vfs.html
  12. +0
    -69
      proposal/myrmidon/src/xdocs/index.xml
  13. +5
    -2
      proposal/myrmidon/src/xdocs/todo.xml

+ 2
- 0
proposal/myrmidon/docs/ant1compat.html View File

@@ -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>


+ 2
- 0
proposal/myrmidon/docs/buildfile.html View File

@@ -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>


+ 2
- 0
proposal/myrmidon/docs/classloader.html View File

@@ -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>


+ 138
- 0
proposal/myrmidon/docs/differences.html View File

@@ -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 &#169; 2000-2002, Apache Software Foundation
</em></font></div>
</td></tr>
</table>
</body>
</html>
<!-- end the processing -->





+ 2
- 0
proposal/myrmidon/docs/getinvolved.html View File

@@ -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>


+ 20
- 76
proposal/myrmidon/docs/index.html View File

@@ -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>
@@ -76,85 +78,27 @@
<tr><td> <tr><td>
<blockquote> <blockquote>
<p> <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> </blockquote>
</td></tr> </td></tr>
</table> </table>


+ 2
- 0
proposal/myrmidon/docs/librarys.html View File

@@ -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>


+ 2
- 0
proposal/myrmidon/docs/task.html View File

@@ -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>


+ 68
- 2
proposal/myrmidon/docs/todo.html View File

@@ -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 &lt;ant1.property&gt; behaves as per Ant1</li> <li>Make sure that &lt;ant1.property&gt; 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>


+ 2
- 0
proposal/myrmidon/docs/user.html View File

@@ -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>


+ 2
- 0
proposal/myrmidon/docs/vfs.html View File

@@ -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>


+ 0
- 69
proposal/myrmidon/src/xdocs/index.xml View File

@@ -37,75 +37,6 @@


</section> </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> </body>


</document> </document>

+ 5
- 2
proposal/myrmidon/src/xdocs/todo.xml View File

@@ -314,7 +314,6 @@ public class MyrmidonSecurityManager


<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
@@ -350,7 +349,11 @@ public class MyrmidonSecurityManager
<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>


Loading…
Cancel
Save