You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cactus-dev@jakarta.apache.org by "Felipe Leme (JIRA)" <ca...@jakarta.apache.org> on 2006/01/15 17:20:22 UTC

[jira] Commented: (CACTUS-151) Refactor Ant integration to use Cargo

    [ http://issues.apache.org/jira/browse/CACTUS-151?page=comments#action_12362788 ] 

Felipe Leme commented on CACTUS-151:
------------------------------------

I took some time to play with Cactus SVN code and realized we could get rid of the CACTUS_17_CARGO_BRANCH. Let me explain why..

First, I ran a command on the branch to check when it was created:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/CACTUS_17_CARGO_BRANCH: svn log -v --stop-on-copy 
^Csubversion/libsvn_ra_dav/util.c:780: (apr_err=175002)
svn: PROPFIND request failed on '/repos/asf/jakarta/cactus/branches/CACTUS_17_CARGO_BRANCH'
subversion/libsvn_ra_dav/util.c:295: (apr_err=175002)
svn: PROPFIND of '/repos/asf/jakarta/cactus/branches/CACTUS_17_CARGO_BRANCH': SSL negotiation failed: SSL error: (null) (https://svn.apache.org)
[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/CACTUS_17_CARGO_BRANCH: svn log -v --stop-on-copy project.xml 
------------------------------------------------------------------------
r239068 | (no author) | 2004-11-04 23:21:48 -0200 (Thu, 04 Nov 2004) | 2 lines
Changed paths:
   A /jakarta/cactus/branches/CACTUS_17_CARGO_BRANCH (from /jakarta/cactus/trunk:239067)

This commit was manufactured by cvs2svn to create branch
'CACTUS_17_CARGO_BRANCH'.
------------------------------------------------------------------------

So, the branch was created in 2004, on CVS, and imported on revision 239068.

Next, I tried to merge what has changed on the trunk:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/merged_trunk: svn merge -r 239068:HEAD https://svn.apache.org/repos/asf/jakarta/cactus/branches/CACTUS_17_CARGO_BRANCH 
U    build.xml
C    samples/servlet/src/scripts/share/build.xml
C    samples/servlet/build.xml
U    download.xml
U    dependencies.xml.default
U    build.properties.vmassol
U    build.properties.default

The merge was ok with 6 files (U) but produced 2 conflicts (2). Let's see what have changed:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/merged_trunk: svn st
?      samples/servlet/build.xml.merge-left.r239068
?      samples/servlet/build.xml.merge-right.r369165
?      samples/servlet/build.xml.working
?      samples/servlet/src/scripts/share/build.xml.merge-left.r239068
?      samples/servlet/src/scripts/share/build.xml.merge-right.r369165
?      samples/servlet/src/scripts/share/build.xml.working
C      samples/servlet/src/scripts/share/build.xml
C      samples/servlet/build.xml
M      dependencies.xml.default
M      build.properties.vmassol

Let's see the easy part first, the (M)odified files:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/merged_trunk: svn diff build.properties.vmassol dependencies.xml.default 
Index: build.properties.vmassol
===================================================================
--- build.properties.vmassol    (revision 367110)
+++ build.properties.vmassol    (working copy)
@@ -186,6 +186,9 @@
 jsp.12.jar = ${servlet.23.jar}
 jsp.20.jar = ${lib.repo}/${jsp.20.project}/jars/${jsp.20.artifact}-${jsp.20.version}.jar
 
+# The location of the Cargo jar
+cargo.jar = ${lib.repo}/${cargo.project}/jars/${cargo.artifact}-${cargo.version}.jar
+
 # The location of the Commons Logging jar
 commons.logging.jar = ${lib.repo}/${commons.logging.project}/jars/${commons.logging.artifact}-${commons.logging.version}.jar
 
Index: dependencies.xml.default
===================================================================
--- dependencies.xml.default    (revision 369123)
+++ dependencies.xml.default    (working copy)
@@ -11,6 +11,8 @@
       artifact="aspectjtools" version="1.2.1"/>
   <cargo project="cargo"
       artifact="cargo" version="0.6"/>
+  <cargo project="cargo"
+      artifact="cargo" version="0.4-SNAPSHOT"/>
   <checkstyle project="checkstyle"
       artifact="checkstyle" version="3.4"/>
   <clover project="clover"

So, dependencies.xml.defaul can be reverted (as the branch) is using a more recent version and build.properties.vmassol can be merged.

Next, it was time to analyze the (C)onflcted files on samples/servlet. For the build.xml,  most of the conflicts were caused by the location on cargo.jar on both files. After reverting the branch's version and switching a couple of lines, I got a clean merge:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/merged_trunk/samples/servlet: svn merge -r 239068:HEAD https://svn.apache.org/repos/asf/jakarta/cactus/branches/CACTUS_17_CARGO_BRANCH/samples/servlet/build.xml
G    build.xml

For the src/scripts/share/build.xml, the changes were tougher, as the syntax of some Cargo tasks apparently changes. So, I manually changed the file and solved most of the conflicts using the trunk's working chunk. Still, a couple of differences remained:

[felipeal@disco-stu.local]/Users/felipeal/cvs/cactus/merged_trunk/samples/servlet: svn diff src/scripts/share/build.xml
Index: src/scripts/share/build.xml
===================================================================
--- src/scripts/share/build.xml (revision 367110)
+++ src/scripts/share/build.xml (working copy)
@@ -104,8 +104,6 @@
       location="../../lib/@cactus.jar.name@"/>
   <property name="cactus.ant.jar"
       location="../../lib/@cactus.ant.jar.name@"/>
-  <!-- <property name="cargo.jar"
-      location="../../lib/@cargo.jar.name@"/> -->
   <property name="commons.httpclient.jar"
       location="../../lib/@commons.httpclient.jar.name@"/>
   <property name="commons.logging.jar"
@@ -118,7 +116,7 @@
       location="../../lib/@junit.jar.name@"/>
   <property name="nekohtml.jar"
       location="../../lib/@nekohtml.jar.name@"/>
- <property name="cargo.jar"
+  <property name="cargo.jar"
       location="../../lib/@cargo.jar.name@"/>
 
   <!-- This is optional and only needed if you wish to debug and use 
@@ -156,6 +154,7 @@
 
     <taskdef resource="cactus.tasks" classpathref="cactus.classpath"/>
     <taskdef resource="cargo.tasks" classpathref="cactus.classpath"/>
+
     <tstamp/>
 
   </target>
@@ -321,8 +320,7 @@
 
   </target>
 
-
-<!-- Start a container  -->
+  <!-- Start a container  -->
   <macrodef name="start-container">
     <attribute name="containerKey"/>
     <sequential>
@@ -345,7 +343,7 @@
         <!-- Additional jars that will be added to the classpath used to start 
              the container -->
         <extraclasspath>
-          <!-- pathelement location="${clover.jar}"/ -->
+          <@clover.begin@pathelement location="${clover.jar}"/@clover.end@>
         </extraclasspath>
       </cargo>
     </sequential>
@@ -458,14 +456,14 @@
       description="Run the tests on the defined containers">
 
     <!-- Need to add jboss 3.x once it is supported by Cargo:
-    <test-container containerKey="jboss3x"/>-->
+    <@j2ee13.begin@test-container containerKey="jboss3x"/@j2ee13.end@>-->
 
     <test-container containerKey="oc4j9x"/>
     <test-container containerKey="orion1x"/>
     <test-container containerKey="orion2x"/>
     <test-container containerKey="resin2x"/>
     <test-container containerKey="resin3x"/>
-    <!-- test-container containerKey="tomcat3x"/ -->
+    <@j2ee12.begin@test-container containerKey="tomcat3x"/@j2ee12.end@>
     <test-container containerKey="tomcat4x"/>
     <test-container containerKey="tomcat5x"/>
     <test-container containerKey="weblogic8x"/>

Anyway, after all changes, I regenerated Cactus 1.8dev and tried to run the servlet samples, but they failed due to a htmlunit issue (see CACTUS-220).

Long story short, I think it's safe to delete the branch:
- as the SVN Book says, you never actually delete anything from the repository, you just remove it from the HEAD
- if we keep the branch, people could accidentaly check code against it.

So, here are the revisions affected on the process:

trunk and branches before changes:  369227
after applying changes on trunk: 369230
before removing the branch: 369231 (the ids are global, so someone at ASF committed something else in between)
after removing the branch: 369232

-- Felipe
 







> Refactor Ant integration to use Cargo
> -------------------------------------
>
>          Key: CACTUS-151
>          URL: http://issues.apache.org/jira/browse/CACTUS-151
>      Project: Cactus
>         Type: Task
>   Components: Ant Integration
>     Reporter: Vincent Massol
>     Assignee: Xuan Thang Nguyen
>      Fix For: 1.8
>  Attachments: 08-08-05_xnguyen.diff, 09-08-xnguyen.diff, 11-08-05-xnguyen.diff, 14-08-05_xnguyen, 28-08-05_xnguyen(final).tgz, CactusTestTask.java, Jetty4xTestSetup.java, TestCactusTestTask.java, build.properties, build.xml, felipeal_after_171_merge.patch, felipeal_fixed_checkstyle_and_xml_comment.patch, felipeal_fixed_checkstyle_and_xml_comment.patch, files.zip, patch-merge-all.diff, patch.diff, patch20-07.tgz, patch_cargo_containerKeyandVersion.diff, plugin.jelly, test-cactustest.xml, xnguyen-patch.tgz, xnguyen-patch.tgz
>
> See http://cargo.codehaus.org

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: cactus-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: cactus-dev-help@jakarta.apache.org