ceki        01/03/20 11:48:59

  Modified:    xdocs/site dirlayout.xml
               docs/site dirlayout.html
  Log:
  Compiled the remarks made on the general ML accoding to my understanding.
  Your comments/objections are welcome.
  
  Revision  Changes    Path
  1.6       +123 -40   jakarta-site2/xdocs/site/dirlayout.xml
  
  Index: dirlayout.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-site2/xdocs/site/dirlayout.xml,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- dirlayout.xml     2001/03/14 23:22:40     1.5
  +++ dirlayout.xml     2001/03/20 19:48:43     1.6
  @@ -14,17 +14,25 @@
   Having a common directory layout would allow for users familiar with
   one Jakarta project to immediately feel at home in another Jakarta
   project. The advantages are analogous to adopting a site-wide
  -look-and-feel as jakarta-wide procedures strengthen the Jakarta brand.
  +look-and-feel. Common Jakarta procedures strengthen the Jakarta brand.
   </p>
   
   <p>
  -The directory structure proposed below is not binding. We recognize
  -that the cost of changing an existing directory structure can be
  -high. However, we expect all projects to eventually move to the
  -proposed layout assuming that the migration can be accomplished with
  -reasonable effort.  <b>The layout is subject to approval.</b>
  +The directory structure proposed here is based on best-practices as
  +suggested by Jakarta committers. We recognize that the cost of
  +changing an existing directory structure can be high. As such, this
  +proposal is not binding.
   </p>
   
  +<p>Unless specified otherwise, the term project refers to a
  +sub-project of the Jakarta project. The terms sub-project and project
  +are used interchangeably and the intended meaning should be clear from
  +the context.</p>
  +
  +<p>
  +<b>This proposal is subject to approval.</b>
  +</p>
  +
   </section>
   
   <section name="Common Directory Layout">
  @@ -53,20 +61,20 @@
    <td>src/</td>
    <td>Source code.</td>
   
  - <td>The code may be placed into separate source code directories by
  - language, as in src/java/ and src/php/ for
  - source code in the java and PHP languages respectively. If the source
  - is the Java language, then it should follow a package structure that is
  - defined like this: org.apache.PROJECT. For example, for
  - the <a href="http://jakarta.apache.org/velocity/">Velocity</a> project, it is
  - org.apache.velocity.
  + <td><p>The code may be placed into separate source code directories
  + by language, as in src/java/ and src/php/ for source code in the Java
  + and PHP languages respectively. Some Jakarta projects organize source
  + code differently but in all cases source code is placed under the
  + src/ directory.</p>
  +
    </td>
    <td>YES</td>
    </tr>
   
  +
    <tr>
  - <td>xdocs/</td>
  - <td>Documentation file in XML format.</td>
  + <td>src/xdocs/</td>
  + <td>Documentation files in XML format.</td>
   
    <td>The Jakarta site uses Velocity/Anakia to transform dcumentation
    files in XML into HTML. The generated HTML files automatically inherit
  @@ -76,6 +84,7 @@
    <td>YES</td>
    </tr>
   
  +
    <tr>
    <td>docs/</td>
    <td>Documentation files intended for the end user.</td>
  @@ -83,10 +92,11 @@
    <td>The docs/ directory contain most of the documentation for the
    Jakarta sub-project. This includes Velocity/Anakia generated HTML
    files. This directory may also contain other documentation files.
  - Generally, all documentation is stored in the xdocs directory and then
  - "transformed" into this directory. It is then checked into CVS and
  - checked out of CVS on the live website. This can serve a dual purpose
  - of being the documentation for a project as well as the website.
  + Generally, all documentation is stored in the src/xdocs/ directory
  + and then "transformed" into this directory. It is then checked into
  + CVS and checked out of CVS on the live website. This allows the user
  + to browse the documentation on the local host without requiring
  + network connectivity as well as on the live website.
    </td>
    <td>YES</td>
    </tr>
  @@ -155,61 +165,134 @@
   
    <tr>
    <td>build/lib/</td> 
  - <td>Binary jar files required in building the sub-project.</td>
  + <td>Binary jar files required for building the sub-project.</td>
   
    <td>The jar files are added to the classpath by the bootstrapping
  - shell scripts before invoking ANT. The -kb option is automatically
  - added when placing common binary types under CVS control. See the
  - <code>CVSROOT/cvswrappers</code> file for the exact types.  Note, it
  - is allowable to place the .jar files at the top level /lib directory.
  + shell scripts before invoking ANT. The jar files should consist of
  + ant.jar as well as jar files needed for XML parsing.  
  +
  + <p>The build/lib/ directory should contain jar files needed during
  + build time and during build time only. If an XML parser
  + is also required during the runtime of the project, then the jar
  + files for the parser should be placed under dist/lib/.</p>
  +
    </td>
    <td>YES</td>
    </tr>
     
    <tr>
    <td>dist/</td>
  - <td>Generated jar files and other sub-project binaries.</td>
   
  - <td>This directory contains jar files for the
  - sub-project. Distribution binaries in .tar.gz and .zip formats should
  - also be placed in this directory.
  + <td>This directory contains most of the binaries related with the
  + sub-project, generated or not.</td>
  +
  + <td>The contents of the dist/ directory should be enough to use the
  + project.
    </td>
  +
    <td>NO</td>
    </tr>
  +
  + <tr>
  + <td>dist/bin/</td>
  +
  + <td>Scripts and executables that the end-user will invoke to run the
  + project.</td>
  + <td>A one-stop location to run the project as an application.</td>
  + <td>NO</td>
  + </tr>
  +
  + <tr>
  + <td>dist/lib/</td> 
  +
  + <td>.jar or other library files that the project
  + depends on during runtime.</td>
  +
  + <td>This directory and the build/lib/ directories are used to store
  + library files that the project depends on at runtime. 
  + </td>
  +
  + <td>YES</td>
  + </tr>
  +
    
    <tr>
    <td>dist/classes/</td>
    <td>Class files generated from the source code contained in the src/
    directory.</td>
  +
  + <td><p>In other words, when the project is compiled, the output
  + directory should be this directory.</p>
  +
  + <p>Other binary files such as icons and images may also be placed
  + under dist/classes/. The contents of this directory can be used to
  + generate jar files.</p>
   
  - <td>Other binary files such as icons and images should also be placed
  - under dist/classes/. In other words, when the project is built, the
  - output directory should be this directory.
  + <p>Note that including raw classes in a distribution will waste
  + network bandwidth as well as disk space.</p>
    </td>
    <td>NO</td>
    </tr>
   
  +
    <tr>
  - <td>contribs/</td>
  - <td>Contributions not officially part of the sub-project.</td>
  + <td>dist/release/</td>
  + 
  + <td>This directory contains the project release binaries in .tar.gz
  + and .zip format.</td>
   
  - <td>Some projects use other names such as whiteboard/ or proposals/.
  + <td>
  + <p>A project release typically consists of build scripts, source
  + code, documentation including javadoc generated documentation, jar
  + files required at runtime or everyting that an end-user needs to
  + successfully use the project.
  + </p>
  +
  + <p>It is common practive to split the release image to parts,
  + separating documentation, source code and binary.</p>
  +
  + <p>This directory is meaningful only to release managers. End-user
  + should be oblivious to it.</p>
  +
  +
    </td>
  - <td>YES</td>
  + <td>NO</td>
    </tr>
   
  +
  +
    <tr>
  - <td>lib/</td>
  - <td>.jar or other library files that the project depends on.</td>
  + <td>contribs/</td>
  + <td>Contributions not officially part of the sub-project.</td>
   
  - <td>This directory and the build/lib/ directories
  - are used to store library files that the project depends on. It is
  - allowable to choose to store files in one or both directories.
  + <td>Some projects use other names such as whiteboard/ or proposals/.
    </td>
    <td>YES</td>
    </tr>
   
  +
   </table>
  +
  +</section>
  +
  +<section name="Points to keep in mind">
  +
  +<p>It is recommended to include a <code>.cvsignore</code> file in each
  +directory under CVS control in order to avoid the distracting
  +"?" message output during CVS update.
  +</p>
  +
  +<p>If the source is in the Java language, then the package hierrarchy
  + for a given project should start at org.apache.PROJECT. For example,
  + for the <a href="http://jakarta.apache.org/velocity/">Velocity</a>
  + project, the top-most package is org.apache.velocity.
  +</p>
  +
  +
  +<p>When adding binary files to CVS, the -kb option is automatically
  + used for common binary types. See the
  + <code>CVSROOT/cvswrappers</code> file for the exact types.
  +</p>
   
   </section>
   
  
  
  
  1.9       +140 -40   jakarta-site2/docs/site/dirlayout.html
  
  Index: dirlayout.html
  ===================================================================
  RCS file: /home/cvs/jakarta-site2/docs/site/dirlayout.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- dirlayout.html    2001/03/15 11:20:18     1.8
  +++ dirlayout.html    2001/03/20 19:48:54     1.9
  @@ -133,15 +133,21 @@
   Having a common directory layout would allow for users familiar with
   one Jakarta project to immediately feel at home in another Jakarta
   project. The advantages are analogous to adopting a site-wide
  -look-and-feel as jakarta-wide procedures strengthen the Jakarta brand.
  +look-and-feel. Common Jakarta procedures strengthen the Jakarta brand.
   </p>
                                                   <p>
  -The directory structure proposed below is not binding. We recognize
  -that the cost of changing an existing directory structure can be
  -high. However, we expect all projects to eventually move to the
  -proposed layout assuming that the migration can be accomplished with
  -reasonable effort.  <b>The layout is subject to approval.</b>
  +The directory structure proposed here is based on best-practices as
  +suggested by Jakarta committers. We recognize that the cost of
  +changing an existing directory structure can be high. As such, this
  +proposal is not binding.
   </p>
  +                                                <p>Unless specified otherwise, the 
term project refers to a
  +sub-project of the Jakarta project. The terms sub-project and project
  +are used interchangeably and the intended meaning should be clear from
  +the context.</p>
  +                                                <p>
  +<b>This proposal is subject to approval.</b>
  +</p>
                               </blockquote>
         </td></tr>
       </table>
  @@ -213,13 +219,12 @@
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                The code may be placed into separate source code directories by
  - language, as in src/java/ and src/php/ for
  - source code in the java and PHP languages respectively. If the source
  - is the Java language, then it should follow a package structure that is
  - defined like this: org.apache.PROJECT. For example, for
  - the <a href="http://jakarta.apache.org/velocity/">Velocity</a> project, it is
  - org.apache.velocity.
  +                <p>The code may be placed into separate source code directories
  + by language, as in src/java/ and src/php/ for source code in the Java
  + and PHP languages respectively. Some Jakarta projects organize source
  + code differently but in all cases source code is placed under the
  + src/ directory.</p>
  +
    
               </font>
   </td>
  @@ -232,12 +237,12 @@
                                   <tr>
                           <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                xdocs/
  +                src/xdocs/
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Documentation file in XML format.
  +                Documentation files in XML format.
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  @@ -270,10 +275,11 @@
                   The docs/ directory contain most of the documentation for the
    Jakarta sub-project. This includes Velocity/Anakia generated HTML
    files. This directory may also contain other documentation files.
  - Generally, all documentation is stored in the xdocs directory and then
  - "transformed" into this directory. It is then checked into CVS and
  - checked out of CVS on the live website. This can serve a dual purpose
  - of being the documentation for a project as well as the website.
  + Generally, all documentation is stored in the src/xdocs/ directory
  + and then "transformed" into this directory. It is then checked into
  + CVS and checked out of CVS on the live website. This allows the user
  + to browse the documentation on the local host without requiring
  + network connectivity as well as on the live website.
    
               </font>
   </td>
  @@ -421,16 +427,20 @@
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Binary jar files required in building the sub-project.
  +                Binary jar files required for building the sub-project.
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
                   The jar files are added to the classpath by the bootstrapping
  - shell scripts before invoking ANT. The -kb option is automatically
  - added when placing common binary types under CVS control. See the
  - <code>CVSROOT/cvswrappers</code> file for the exact types.  Note, it
  - is allowable to place the .jar files at the top level /lib directory.
  + shell scripts before invoking ANT. The jar files should consist of
  + ant.jar as well as jar files needed for XML parsing.  
  +
  + <p>The build/lib/ directory should contain jar files needed during
  + build time and during build time only. If an XML parser
  + is also required during the runtime of the project, then the jar
  + files for the parser should be placed under dist/lib/.</p>
  +
    
               </font>
   </td>
  @@ -448,14 +458,14 @@
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Generated jar files and other sub-project binaries.
  +                This directory contains most of the binaries related with the
  + sub-project, generated or not.
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                This directory contains jar files for the
  - sub-project. Distribution binaries in .tar.gz and .zip formats should
  - also be placed in this directory.
  +                The contents of the dist/ directory should be enough to use the
  + project.
    
               </font>
   </td>
  @@ -468,6 +478,54 @@
                                   <tr>
                           <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                dist/bin/
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                Scripts and executables that the end-user will invoke to run the
  + project.
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                A one-stop location to run the project as an application.
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                NO
  +            </font>
  +</td>
  +            </tr>
  +                                <tr>
  +                        <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                dist/lib/
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                .jar or other library files that the project
  + depends on during runtime.
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                This directory and the build/lib/ directories are used to store
  + library files that the project depends on at runtime. 
  + 
  +            </font>
  +</td>
  +                                <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  +                YES
  +            </font>
  +</td>
  +            </tr>
  +                                <tr>
  +                        <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
  +    <font color="#000000" size="-1" face="arial,helvetica,sanserif">
                   dist/classes/
               </font>
   </td>
  @@ -479,9 +537,15 @@
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Other binary files such as icons and images should also be placed
  - under dist/classes/. In other words, when the project is built, the
  - output directory should be this directory.
  +                <p>In other words, when the project is compiled, the output
  + directory should be this directory.</p>
  +
  + <p>Other binary files such as icons and images may also be placed
  + under dist/classes/. The contents of this directory can be used to
  + generate jar files.</p>
  +
  + <p>Note that including raw classes in a distribution will waste
  + network bandwidth as well as disk space.</p>
    
               </font>
   </td>
  @@ -494,42 +558,54 @@
                                   <tr>
                           <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                contribs/
  +                dist/release/
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Contributions not officially part of the sub-project.
  +                This directory contains the project release binaries in .tar.gz
  + and .zip format.
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                Some projects use other names such as whiteboard/ or proposals/.
  +                
  + <p>A project release typically consists of build scripts, source
  + code, documentation including javadoc generated documentation, jar
  + files required at runtime or everyting that an end-user needs to
  + successfully use the project.
  + </p>
  +
  + <p>It is common practive to split the release image to parts,
  + separating documentation, source code and binary.</p>
  +
  + <p>This directory is meaningful only to release managers. End-user
  + should be oblivious to it.</p>
  +
  +
    
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                YES
  +                NO
               </font>
   </td>
               </tr>
                                   <tr>
                           <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" 
align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                lib/
  +                contribs/
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                .jar or other library files that the project depends on.
  +                Contributions not officially part of the sub-project.
               </font>
   </td>
                                   <td bgcolor="#a0ddf0" colspan="" rowspan="" 
valign="top" align="left">
       <font color="#000000" size="-1" face="arial,helvetica,sanserif">
  -                This directory and the build/lib/ directories
  - are used to store library files that the project depends on. It is
  - allowable to choose to store files in one or both directories.
  +                Some projects use other names such as whiteboard/ or proposals/.
    
               </font>
   </td>
  @@ -540,6 +616,30 @@
   </td>
               </tr>
               </table>
  +                            </blockquote>
  +      </td></tr>
  +    </table>
  +                                                <table border="0" cellspacing="0" 
cellpadding="2" width="100%">
  +      <tr><td bgcolor="#525D76">
  +        <font color="#ffffff" face="arial,helvetica,sanserif">
  +          <strong>Points to keep in mind</strong>
  +        </font>
  +      </td></tr>
  +      <tr><td>
  +        <blockquote>
  +                                    <p>It is recommended to include a 
<code>.cvsignore</code> file in each
  +directory under CVS control in order to avoid the distracting
  +"?" message output during CVS update.
  +</p>
  +                                                <p>If the source is in the Java 
language, then the package hierrarchy
  + for a given project should start at org.apache.PROJECT. For example,
  + for the <a href="http://jakarta.apache.org/velocity/">Velocity</a>
  + project, the top-most package is org.apache.velocity.
  +</p>
  +                                                <p>When adding binary files to CVS, 
the -kb option is automatically
  + used for common binary types. See the
  + <code>CVSROOT/cvswrappers</code> file for the exact types.
  +</p>
                               </blockquote>
         </td></tr>
       </table>
  
  
  

Reply via email to