This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 390 - build.xml - does not copy ecmascript tests to dist, missing targets, misc changes
Summary: build.xml - does not copy ecmascript tests to dist, missing targets, misc cha...
Status: RESOLVED FIXED
Alias: None
Product: DOM TS
Classification: Unclassified
Component: Process (show other bugs)
Version: unspecified
Hardware: Other other
: P2 normal
Target Milestone: ---
Assignee: Curt Arnold
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-11-19 11:42 UTC by Bob Clary
Modified: 2004-02-10 20:39 UTC (History)
1 user (show)

See Also:


Attachments
cvs -z3 -q diff -u (36.67 KB, patch)
2003-11-19 13:09 UTC, Bob Clary
Details
doxygen/dom1-html.doxygen (32.31 KB, text/plain)
2003-11-19 13:13 UTC, Bob Clary
Details
doxygen/dom3-core.doxygen (32.31 KB, text/plain)
2003-11-19 13:14 UTC, Bob Clary
Details
doxygen/dom3-ls.doxygen (32.30 KB, text/plain)
2003-11-19 13:15 UTC, Bob Clary
Details
doxygen/dom3-xpath.doxygen (32.31 KB, text/plain)
2003-11-19 13:15 UTC, Bob Clary
Details
tests/level1/html/metadata.xml (688 bytes, text/plain)
2003-11-19 13:16 UTC, Bob Clary
Details
docs/level1/html/index.htm (11.46 KB, text/plain)
2003-11-19 13:18 UTC, Bob Clary
Details
cvs -z3 -q diff -u (v2) (40.13 KB, patch)
2003-11-19 18:56 UTC, Bob Clary
Details

Description Bob Clary 2003-11-19 11:42:47 UTC
I have been keeping a number of changes locally in my tree and would like to use
this bug to communicate them and see if we can't get a consensus of where to go
from here on organizing build.xml and the dist outputs. I will attach a diff
from my working copy against the trunk along with a number of new files, then
edit the diff to comment on the changes. 

I am filing this under process, but it might best be placed in a new "Build"
component if you want me to create one re: bug 189.
Comment 1 Bob Clary 2003-11-19 13:09:05 UTC
Created attachment 60 [details]
cvs -z3 -q diff -u 

Changes made to my local tree which will serve as the basis for comments
Comment 2 Bob Clary 2003-11-19 13:13:28 UTC
Created attachment 61 [details]
doxygen/dom1-html.doxygen
Comment 3 Bob Clary 2003-11-19 13:14:28 UTC
Created attachment 62 [details]
doxygen/dom3-core.doxygen
Comment 4 Bob Clary 2003-11-19 13:15:01 UTC
Created attachment 63 [details]
doxygen/dom3-ls.doxygen
Comment 5 Bob Clary 2003-11-19 13:15:32 UTC
Created attachment 64 [details]
doxygen/dom3-xpath.doxygen
Comment 6 Bob Clary 2003-11-19 13:16:32 UTC
Created attachment 65 [details]
tests/level1/html/metadata.xml
Comment 7 Bob Clary 2003-11-19 13:18:16 UTC
Created attachment 66 [details]
docs/level1/html/index.htm
Comment 8 Bob Clary 2003-11-19 13:57:48 UTC
With the exception of the docs/level3/* files and the
docs/level1/html/resources/* directories which are essentially copies of other
files in the tree, I believe this is the list of new files used in my tree. 

Discussion of changes to build.xml

Note that the current dom?-*-dist targets do not include the ecmascript versions
of the tests in the dist output. Some of the changes in build.xml such as 

@@ -605,18 +605,22 @@ All implementation conditions combined i
     <copy todir="${build.dir}/level1/core/ecmascript/docs">
         <fileset dir="${build.dir}/ecmascript/jsunit/docs" excludes="*.bak"/>
     </copy>
     <mkdir dir="${build.dir}/level1/core/ecmascript/jsunit-self-tests"/>
     <copy todir="${build.dir}/level1/core/ecmascript/jsunit-self-tests">
         <fileset dir="${build.dir}/ecmascript/jsunit/tests" excludes="*.bak"/>
     </copy>
     <copy file="${build.dir}/dom1-core-matrix.html"
todir="${build.dir}/level1/core"/>
 
+    <mkdir dir="${build.dir}/level1/core/ecmascript/level1/core"/>
+    <copy todir="${build.dir}/level1/core/ecmascript/level1/core">
+        <fileset dir="${build.dir}/ecmascript/level1/core"/>
+    </copy>
 
     <mkdir dir="${build.dir}/level1/core/tests/files"/>
     <copy todir="${build.dir}/level1/core/tests">
         <fileset dir="${tests.dir}/level1/core" includes="*.xml"/>
         <fileset dir="${build.dir}" includes="dom1.dtd"/>
         <fileset dir="${build.dir}" includes="dom1.xsd"/>
         <fileset dir="${transforms.dir}" includes="test-to-html.xsl"/>
     </copy>
     <copy todir="${build.dir}/level1/core/tests/files">

are meant to correct this. There are corresponding changes to the other targets
as well.

Many of the other changes are meant to include targets which are missing from
the current build.xml. These include 

dom1-html-dist
dom1-html-doxygen
dom3-ls-gen-jsunit
dom3-core-metadata
dom3-ls-metadata
dom3-core-matrix
dom3-ls-matrix
dom3-core-doxygen
dom3-ls-doxygen
dom3-xpath-doxygen
dom3-core-dist
dom3-ls-dist
dom3-xpath-dist

Note the difference between the dom1-html-dist target and the dom1-core-dist
target. dom1-html-dist copies jsunit to ${build.dir}/ecmascript/jsunit rather
than ${build.dir}/ecmascript. This is necessary since the actual ecmascript
tests contain references to ../../jsunit/. I accidentally lost the corresponding
changes to dom1-core-dist while synching with the trunk this morning, but
similar changes are necessary there as well.

Also note the changes to the dom3-subjects target. The paths used in the style
tasks need to be corrected to point to the actual locations for the specificatin
sources. Note that I commented out the views transform since the specification
for views includes a reference to a missing toc.xml file which breaks the build
if you attempt to build the level3 targets which depend on dom3-subjects. The
dom3 views specification document needs to be corrected.

These changes will allow the building of the following targets: dom1-core-dist,
dom1-html-dist, dom3-core-dist, dom2-html-dist, dom3-core-dist, dom3-xpath-dist,
will allow the ecmascript tests to be run and can form the basis for futher
improvements to build.xml.

If I can convince you to agree to these or similar changes to build.xml, I would
then like to propose additional changes to be made after these changes are commited.

1. reorganize the sequence of targets in build.xml so that all dom1* targets
appear together in the file and within that area all dom1-core*, dom1-html*
targets appear together. Similarly for the other levels as well. I think this
would improve the readability and maintainability of the build.xml file.

2. reorganize the directory structure of the dist outputs. 

Currently, the build directory structure does not correspond directly to the
structure used in the dist. I think these should be made to mirror each other
very closely. In addition, the current directory structure used in the dist
directories does not use a structure which supports the easy combination of
various distributions. For example, each distribution zip/tar file does not
separate its content into a distinct directory such as dom1-core/, etc; Each
dist includes separate instances of jsunit and junit; each docs/level?/*/
contains identical resources directories, etc. This kind of reorganization would
help eliminate redundant content in the cvs tree and allow optional packaging of
different test suites (e.g. dom1-core, dom2-core, dom2-html) together in the
same files which would be helpful for people who wish to download and use the
test suites. The changes necessary to change the dist directory structure for
the ecmascript portions are relatively easy however it is not clear to me how
such changes should be made for the java portions.

I feel that the changes identified in the attached patch and files should be
made so that we can start from a build.xml which is capable of building all of
the targets in runnable form. Once that is accomplished we can attempt a
reorganization of build.xml and the dist directories with the ability to test
that any changes result in a system which will successfully build each dist
target and produce runnable versions of the test suites.

Whether you wish to use these changes as is or use changes of your own
production, I believe that we must address these issues before we can hope to
drive the test suites to completion.




Comment 9 Bob Clary 2003-11-19 18:56:42 UTC
Created attachment 67 [details]
cvs -z3 -q diff -u (v2)

This attachment contains a new version of the full diff which contains the
changes to the jsunit output directory for dom1-core and dom2-core which were
missing from the earlier attachment. 

I have posted a version of the domts using these changes to
http://dom-ts.bclary.com/Read-Me-First.html where you can see the full effect,
download the tarballs, browse the results online or run the tests online. This
should help in evaluating the proposed changes.
Comment 10 Curt Arnold 2003-11-24 15:00:17 UTC
committed doxygen/dom1-html.doxygen thru 11-19 patch file.  Did not review
changes to build.xml.  build.xml has grown pretty organically.  There are now
sufficient targets that it might be good to refactor and parameterize the build
file.

JSUnit has been pretty quiet.  Will need to follow up, hopefully we can
coordinate so that we don't have to use a custom version.
Comment 11 Bob Clary 2003-11-24 15:25:44 UTC
I have been running the latest JsUnit 2.0 alpha without any changes. The change
I was referring to was in the output location of the ecmascript tests which
assume the ecmascript test page can reach jsunit via a path ../../jsunit/
Comment 12 Bob Clary 2004-02-10 15:39:58 UTC
I think the issues in this bug are all fixed with the exception of "2.
reorganize the directory structure of the dist outputs" which can be revisited
later.