ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From adammurd...@apache.org
Subject cvs commit: jakarta-ant/proposal/myrmidon/docs todo.html
Date Wed, 27 Feb 2002 13:19:40 GMT
adammurdoch    02/02/27 05:19:40

  Modified:    proposal/myrmidon/src/xdocs todo.xml
               proposal/myrmidon/docs todo.html
  Log:
  Added more stuff to the todo list.
  
  Revision  Changes    Path
  1.2       +73 -0     jakarta-ant/proposal/myrmidon/src/xdocs/todo.xml
  
  Index: todo.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/proposal/myrmidon/src/xdocs/todo.xml,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- todo.xml	27 Feb 2002 01:24:12 -0000	1.1
  +++ todo.xml	27 Feb 2002 13:19:40 -0000	1.2
  @@ -73,6 +73,79 @@
   
   </subsection>
   
  +<subsection name="File Data-Types and Tasks">
  +
  +<p>The file data-types, such as <code>&lt;fileset&gt;</code>
and
  +<code>&lt;path&gt;</code>, are some of the most widely used parts of
Ant 1.x.
  +Unfortunately, they aren't particularly extensible.</p>
  +
  +<ul>
  +    <li>Redesign the file data-types, replacing them with an interface-based
  +    API, plus a set of implementations.  The API should use the VFS file
  +    <code>FileObject</code>, rather than <code>java.io.File</code>.
  +    This process has started, in the <code>antlib.vfile</code> package.
  +    </li>
  +    <li>File Selectors:
  +    <ul>
  +        <li>Change <code>AbstractNameFileSelector</code> to use Ant 1
style patterns
  +        matches, rather than Globs patterns.</li>
  +        <li>Add 'defaultexcludes' to <code>DefaultFileSet</code>.  Also
add a
  +        file selector implementation that matches everything except the default
  +        excludes.</li>
  +        <li>Add a condition -> file selector adaptor, so that arbitrary conditions
  +        can be used to select files.</li>
  +        <li>Add a name selector that loads patterns from a file.</li>
  +        <li>Add more selector implementations: size and last-modified comparisons,
  +        checksum comparison, byte-wise content comparison.</li>
  +    </ul></li>
  +    <li>File Name Mappers:
  +    <ul>
  +        <li>Add a file name mapper interface, and port the current Mapper
  +        implementations to it.</li>
  +    </ul></li>
  +    <li>File Sets:
  +    <ul>
  +        <li>Add a file set implementation that uses a mapper to transform a nested
  +        file set.</li>
  +        <li>Add a file set implementation that provides the union of several
  +        nested file sets (that is, a file set that merges several file sets
  +        together).</li>
  +        <li>Add a file set implementation that filters files that are up-to-date
  +        WRT some other file.  Alternatively, this might be better done using a
  +        file selector.</li>
  +    </ul></li>
  +    <li>Paths:
  +    <ul>
  +        <li>Add path implementations that evaluate to the system classpath,
  +        and the ant runtime classpath.  Or, more generally, combine this with
  +        <code>ClassLoaderManager</code> to evaluate to the classpath of any
  +        'library' (e.g. system classpath, ant runtime, tools.jar,
  +        an antlib, an installed extension, or the system classes of another JVM
  +        for cross-compiling).</li>
  +    </ul></li>
  +    <li>File Filters:
  +    <ul>
  +        <li>Add a file filter interface, and use it in the copy task.</li>
  +        <li>Add a filter implementation that applies the token replacement that
  +        the old copy task provides.</li>
  +        <li>Add a filter that does cr/lf translation.</li>
  +        <li>Add a gzip/gunzip filter.</li>
  +        <li>Add a filter that applies character set encode/decode.</li>
  +    </ul></li>
  +    <li>Copy task:
  +    <ul>
  +        <li>Implement 'preservelastmodified', 'overwrite', and 'includeemptydirs'.</li>
  +        <li>Support a file name mapper.</li>
  +        <li>Support file filters.</li>
  +    </ul></li>
  +    <li>Implement the <code>&lt;move&gt;</code>, <code>&lt;delete&gt;</code>,
  +    <code>&lt;touch&gt;</code> and <code>&lt;mkdir&gt;</code>
tasks on top
  +    of the VFS and the new file data-types.  Might be some scope for generalising
  +    'touch' and 'mkdir' into a single task.</li>
  +</ul>
  +
  +</subsection>
  +
   <subsection name="Command-line and Configuration Files">
   
   <p>One of the goals of Ant 2 is to allow the user to easily customise and
  
  
  
  1.2       +78 -0     jakarta-ant/proposal/myrmidon/docs/todo.html
  
  Index: todo.html
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/proposal/myrmidon/docs/todo.html,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- todo.html	27 Feb 2002 01:24:11 -0000	1.1
  +++ todo.html	27 Feb 2002 13:19:40 -0000	1.2
  @@ -140,6 +140,84 @@
                                     <table border="0" cellspacing="0" cellpadding="2"
width="100%">
       <tr><td bgcolor="#828DA6">
         <font color="#ffffff" face="arial,helvetica,sanserif">
  +        <a name="File Data-Types and Tasks"><strong>File Data-Types and Tasks</strong></a>
  +      </font>
  +    </td></tr>
  +    <tr><td>
  +      <blockquote>
  +                        <p>The file data-types, such as <code>&lt;fileset&gt;</code>
and
  +<code>&lt;path&gt;</code>, are some of the most widely used parts of
Ant 1.x.
  +Unfortunately, they aren't particularly extensible.</p>
  +                                <ul>
  +    <li>Redesign the file data-types, replacing them with an interface-based
  +    API, plus a set of implementations.  The API should use the VFS file
  +    <code>FileObject</code>, rather than <code>java.io.File</code>.
  +    This process has started, in the <code>antlib.vfile</code> package.
  +    </li>
  +    <li>File Selectors:
  +    <ul>
  +        <li>Change <code>AbstractNameFileSelector</code> to use Ant 1
style patterns
  +        matches, rather than Globs patterns.</li>
  +        <li>Add 'defaultexcludes' to <code>DefaultFileSet</code>.  Also
add a
  +        file selector implementation that matches everything except the default
  +        excludes.</li>
  +        <li>Add a condition -&gt; file selector adaptor, so that arbitrary conditions
  +        can be used to select files.</li>
  +        <li>Add a name selector that loads patterns from a file.</li>
  +        <li>Add more selector implementations: size and last-modified comparisons,
  +        checksum comparison, byte-wise content comparison.</li>
  +    </ul></li>
  +    <li>File Name Mappers:
  +    <ul>
  +        <li>Add a file name mapper interface, and port the current Mapper
  +        implementations to it.</li>
  +    </ul></li>
  +    <li>File Sets:
  +    <ul>
  +        <li>Add a file set implementation that uses a mapper to transform a nested
  +        file set.</li>
  +        <li>Add a file set implementation that provides the union of several
  +        nested file sets (that is, a file set that merges several file sets
  +        together).</li>
  +        <li>Add a file set implementation that filters files that are up-to-date
  +        WRT some other file.  Alternatively, this might be better done using a
  +        file selector.</li>
  +    </ul></li>
  +    <li>Paths:
  +    <ul>
  +        <li>Add path implementations that evaluate to the system classpath,
  +        and the ant runtime classpath.  Or, more generally, combine this with
  +        <code>ClassLoaderManager</code> to evaluate to the classpath of any
  +        'library' (e.g. system classpath, ant runtime, tools.jar,
  +        an antlib, an installed extension, or the system classes of another JVM
  +        for cross-compiling).</li>
  +    </ul></li>
  +    <li>File Filters:
  +    <ul>
  +        <li>Add a file filter interface, and use it in the copy task.</li>
  +        <li>Add a filter implementation that applies the token replacement that
  +        the old copy task provides.</li>
  +        <li>Add a filter that does cr/lf translation.</li>
  +        <li>Add a gzip/gunzip filter.</li>
  +        <li>Add a filter that applies character set encode/decode.</li>
  +    </ul></li>
  +    <li>Copy task:
  +    <ul>
  +        <li>Implement 'preservelastmodified', 'overwrite', and 'includeemptydirs'.</li>
  +        <li>Support a file name mapper.</li>
  +        <li>Support file filters.</li>
  +    </ul></li>
  +    <li>Implement the <code>&lt;move&gt;</code>, <code>&lt;delete&gt;</code>,
  +    <code>&lt;touch&gt;</code> and <code>&lt;mkdir&gt;</code>
tasks on top
  +    of the VFS and the new file data-types.  Might be some scope for generalising
  +    'touch' and 'mkdir' into a single task.</li>
  +</ul>
  +                    </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="Command-line and Configuration Files"><strong>Command-line
and Configuration Files</strong></a>
         </font>
       </td></tr>
  
  
  

--
To unsubscribe, e-mail:   <mailto:ant-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-dev-help@jakarta.apache.org>


Mime
View raw message