You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by Erik Hatcher <er...@ehatchersolutions.com> on 2003/11/29 10:53:32 UTC

Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

> ------- Additional Comments From mindbridgeweb@yahoo.com  2003-11-29 
> 06:58 -------
> Unfortunately, discussions with the Apache group indicate that 
> junit.jar should
> not be kept in the Jakarta CVS repository. The same applies to 
> jdom-b8.jar
> which is also required to compile and run the Tapestry unit tests.

I don't understand this.  junit.jar is perfectly fine to have in CVS 
(we have it in Ant's CVS).  The way the Tapestry build.xml files use 
it, though, require it to be in lib/ext which bugs me because junit.jar 
has to be in ANT_HOME/lib for <junit> to work anyway - so I view it as 
just a necessary piece of Ant itself.  One of these days I'll refactor 
Tapestry's build to use <junit> rather than <java> to run the unit 
tests, which will allow for unit test reporting much nicer than just 
the console output.

	Erik




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


RE: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by Glen Stampoultzis <gs...@iinet.net.au>.
At 11:34 AM 30/11/2003, you wrote:

> >
> > Are you using ant at the moment?  Why not just use the "get" task to
> > download any external files you need?  We do this with the POI build.
> >
> > -- Glen
>
>I've been thinking about that myself for a while; I believe there's also 
>an add-on Ant library that
>parallels or emulates Maven's approach to downloading (i.e., less verbose 
>and with a consistency
>check). So we could leverage Maven's ibiblio infrastructure without 
>actually using Maven.
>
>Howard

First I check if the jars are available:


     <target name="check-jars">
         <condition property="jars.present">
             <or>
                 <and>
                     <available file="${main.jar1.dir}"/>
                     <available file="${main.jar2.dir}"/>
                     <available file="${contrib.jar1.dir}"/>
                     <available file="${contrib.jar2.dir}"/>
                     <available file="${contrib.jar3.dir}"/>
                     <available file="${junit.jar1.dir}"/>
                 </and>
                 <isset property="disconnected"/>
             </or>
         </condition>
     </target>

then I fetch them if present:


     <target name="fetch-jars" unless="jars.present"
      description="Fetches needed JAR files from the Internet">
         <get src="${main.jar1.url}" dest="${main.jar1.dir}"/>
         <get src="${main.jar2.url}" dest="${main.jar2.dir}"/>
         <get src="${contrib.jar1.url}" dest="${contrib.jar1.dir}"/>
         <get src="${contrib.jar2.url}" dest="${contrib.jar2.dir}"/>
         <get src="${contrib.jar3.url}" dest="${contrib.jar3.dir}"/>
         <get src="${junit.jar1.url}" dest="${junit.jar1.dir}"/>
     </target>


I've stopped short of getting the ant jar files but this should be possible 
also.  Ant needs a better mechanism for auto installing jars.

Is the add-on library you're talking about 
ruper?  http://www.krysalis.org/ruper/






Glen Stampoultzis
gstamp@iinet.net.au
http://members.iinet.net.au/~gstamp/glen/

RE: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.
> -----Original Message-----
> From: Glen Stampoultzis [mailto:gstamp@iinet.net.au] 
> Sent: Saturday, November 29, 2003 6:26 PM
> To: Tapestry development
> Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to 
> build junit subproject, but not included or mentioned anywhere
> 
> 
> At 02:35 AM 30/11/2003, you wrote:
> >On Saturday, November 29, 2003, at 06:35  AM, Mindbridge wrote:
> >>- Get an explicit approval from the Apache board that we 
> can put those
> >>libraries in the repository in order to avoid any potential 
> for future
> >>trouble. It would obviously be ideal if a person closer to 
> the board, such
> >>as Howard, could get this approval (or denial). Assuming 
> that they agree,
> >>this issue will be resolved altogether. Please note that I 
> have no idea how
> >>all this politics relates to the Ant project.
> >
> >I am also an ASF "member" (and fought hard for Howard's 
> nomination!), 
> >although my comments on this topic currently are my opinion 
> and not from 
> >the board perspective.  We can certainly raise this to the 
> board, but 
> >given that junit.jar lives in Ant's CVS and several other 
> Ant committers 
> >are also ASF members we can pretty safely presume that 
> junit.jar is fine 
> >to live in Tapestry's CVS.  I have not looked at JDOM's 
> license, but given 
> >it was created by Jason Hunter I would be surprised if its 
> license is 
> >incompatible with ASL.
> >
> >>(Btw, using <junit> would be quite neat :)
> >
> >It'll happen!
> >
> >>- Finish the 'mavenization' of Tapestry so that the build 
> automatically
> >>downloads those (and possibly other) files when needed. 
> This approach has
> >>multiple positive effects, especially now with the new 
> features in Maven
> >>that make it more suitable for use in Tapestry. The only 
> downside is that
> >>someone needs to define the configuration files :)
> >
> >I'll sit on the sidelines with respect to Maven until it is 
> proven to be 
> >good enough for the complex needs of Tapestry's build.  But 
> sure, others 
> >should feel free to give it a go.
> 
> Are you using ant at the moment?  Why not just use the "get" task to 
> download any external files you need?  We do this with the POI build.
> 
> -- Glen

I've been thinking about that myself for a while; I believe there's also an add-on Ant library that
parallels or emulates Maven's approach to downloading (i.e., less verbose and with a consistency
check). So we could leverage Maven's ibiblio infrastructure without actually using Maven.

Howard


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


Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by Glen Stampoultzis <gs...@iinet.net.au>.
At 02:35 AM 30/11/2003, you wrote:
>On Saturday, November 29, 2003, at 06:35  AM, Mindbridge wrote:
>>- Get an explicit approval from the Apache board that we can put those
>>libraries in the repository in order to avoid any potential for future
>>trouble. It would obviously be ideal if a person closer to the board, such
>>as Howard, could get this approval (or denial). Assuming that they agree,
>>this issue will be resolved altogether. Please note that I have no idea how
>>all this politics relates to the Ant project.
>
>I am also an ASF "member" (and fought hard for Howard's nomination!), 
>although my comments on this topic currently are my opinion and not from 
>the board perspective.  We can certainly raise this to the board, but 
>given that junit.jar lives in Ant's CVS and several other Ant committers 
>are also ASF members we can pretty safely presume that junit.jar is fine 
>to live in Tapestry's CVS.  I have not looked at JDOM's license, but given 
>it was created by Jason Hunter I would be surprised if its license is 
>incompatible with ASL.
>
>>(Btw, using <junit> would be quite neat :)
>
>It'll happen!
>
>>- Finish the 'mavenization' of Tapestry so that the build automatically
>>downloads those (and possibly other) files when needed. This approach has
>>multiple positive effects, especially now with the new features in Maven
>>that make it more suitable for use in Tapestry. The only downside is that
>>someone needs to define the configuration files :)
>
>I'll sit on the sidelines with respect to Maven until it is proven to be 
>good enough for the complex needs of Tapestry's build.  But sure, others 
>should feel free to give it a go.

Are you using ant at the moment?  Why not just use the "get" task to 
download any external files you need?  We do this with the POI build.

-- Glen



Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Saturday, November 29, 2003, at 06:35  AM, Mindbridge wrote:
> - Get an explicit approval from the Apache board that we can put those
> libraries in the repository in order to avoid any potential for future
> trouble. It would obviously be ideal if a person closer to the board, 
> such
> as Howard, could get this approval (or denial). Assuming that they 
> agree,
> this issue will be resolved altogether. Please note that I have no 
> idea how
> all this politics relates to the Ant project.

I am also an ASF "member" (and fought hard for Howard's nomination!), 
although my comments on this topic currently are my opinion and not 
from the board perspective.  We can certainly raise this to the board, 
but given that junit.jar lives in Ant's CVS and several other Ant 
committers are also ASF members we can pretty safely presume that 
junit.jar is fine to live in Tapestry's CVS.  I have not looked at 
JDOM's license, but given it was created by Jason Hunter I would be 
surprised if its license is incompatible with ASL.

> (Btw, using <junit> would be quite neat :)

It'll happen!

> - Finish the 'mavenization' of Tapestry so that the build automatically
> downloads those (and possibly other) files when needed. This approach 
> has
> multiple positive effects, especially now with the new features in 
> Maven
> that make it more suitable for use in Tapestry. The only downside is 
> that
> someone needs to define the configuration files :)

I'll sit on the sidelines with respect to Maven until it is proven to 
be good enough for the complex needs of Tapestry's build.  But sure, 
others should feel free to give it a go.

	Erik


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


RE: Tapestry / Junit / Maven

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.
I have a good idea of how to do it, basically treating the test scripts just like a page or
component specification; generating TestSpecification objects of some kind, then executing those
objects.  You can take a peek if you have the cycles, or leave it until december when I get a
breather from NLG.  

The intent is a new design to simplify a lot of things.

I really want to do is to capture System.out and System.err and redirect them to log files;
currently, when things go wrong (or even when exceptions are reported that are "ok, part of the
test") it all goes to the console, and it is hard to tell what output belongs to what test. I want
to implement individual log files for *each* test.

For 3.1 I really want to harden and otherwise improve the testing framework and make it part of the
Tapestry framework proper, so that Tapestry uers can leverage it for some or all of their
application testing.

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com

> -----Original Message-----
> From: Erik Hatcher [mailto:erik@ehatchersolutions.com] 
> Sent: Saturday, November 29, 2003 10:38 AM
> To: Tapestry development
> Subject: Re: Tapestry / Junit / Maven
> 
> 
> On Saturday, November 29, 2003, at 09:58  AM, Howard M. Lewis Ship 
> wrote:
> > I think this approach to junit is good for the meantime. I 
> also want 
> > to break the jdom dependency
> > and use Digester instead:
> > - fewer dependencies
> > - much faster
> > - line precise error reporting of test failures
> > - easier to extend
> 
> I'll have a look at the JDOM -> Digester conversion and maybe 
> save you 
> some effort.
> 
> Get the book done!
> 
> 	Erik
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 


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


Re: Tapestry / Junit / Maven

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Saturday, November 29, 2003, at 09:58  AM, Howard M. Lewis Ship 
wrote:
> I think this approach to junit is good for the meantime. I also want 
> to break the jdom dependency
> and use Digester instead:
> - fewer dependencies
> - much faster
> - line precise error reporting of test failures
> - easier to extend

I'll have a look at the JDOM -> Digester conversion and maybe save you 
some effort.

Get the book done!

	Erik


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


RE: Tapestry / Junit / Maven

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.
I've learned a lot about Maven from building HiveMind (that was part of the point). However, there's
a lot of downside to using Maven ... loss of control over behavior, shrinkage in the number of
people who can maintain the (Maven) build files, etc.  In addition, the best thing to do is to
radically reshuffle the directories to be more Maven-friendly ... which is complicated by the 3.1
branch which contains a partial refactoring of code out of Tapestry and into HiveMind.  So I want to
let sleeping dogs lie, at least until we get into 3.1.

I'm (you guessed it) mired in the book (and getting depressed about it again). I have a stack of
stuff to do when the book is more under control. I miss coding for fun.

I think this approach to junit is good for the meantime. I also want to break the jdom dependency
and use Digester instead:
- fewer dependencies
- much faster
- line precise error reporting of test failures
- easier to extend

Don't know if that will be in the 3.0 or 3.1 timeframe. We'll see how much time I have in december
2003.

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com

> -----Original Message-----
> From: Mindbridge [mailto:mindbridgeweb@yahoo.com] 
> Sent: Saturday, November 29, 2003 6:36 AM
> To: Tapestry development
> Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to 
> build junit subproject, but not included or mentioned anywhere
> 
> 
> Hi Erik,
> 
> I have to say that personally I agree with you -- it seems to me the
> licenses are perfectly compatible, etc (but IANAL).
> 
> I was on 'sabbatical' for a couple of weeks, but before I 
> left I looked at
> the mailing list archives (jakarta-general, etc) for messages 
> discussing the
> topic as suggested by Danny Angus, and frankly, there did not 
> seem to be a
> clear and unified position on this issue. Given that during incubation
> Howard opted for leaving junit.jar and jdom-b8.jar outside 
> the repository,
> the adamant possition by some people that non-ASL code needs 
> to be kept out,
> the current license 'discussions' on the lists, the small 
> number of people
> who will build and test the framework, the simplicity of 
> "installing" a
> couple of files, etc, it seems to me that it simply makes 
> sense keep the
> status quo for the time being, even though it is not ideal. Hence the
> resolution I've put in and the documentation that has been checked in.
> 
> I guess that from this point we can do a number of things:
> 
> - Get an explicit approval from the Apache board that we can put those
> libraries in the repository in order to avoid any potential for future
> trouble. It would obviously be ideal if a person closer to 
> the board, such
> as Howard, could get this approval (or denial). Assuming that 
> they agree,
> this issue will be resolved altogether. Please note that I 
> have no idea how
> all this politics relates to the Ant project.
> 
> - Use the junit.jar that is provided by Ant (or Eclipse or 
> sth else) as you
> suggest. This is a reasonable solution, but unfortunately it will not
> resolve the matter fully, since the Tapestry unit tests also depend on
> jdom-b8.jar, and that is not present in those products. So 
> one would still
> have to download external files.
> (Btw, using <junit> would be quite neat :)
> 
> - Finish the 'mavenization' of Tapestry so that the build 
> automatically
> downloads those (and possibly other) files when needed. This 
> approach has
> multiple positive effects, especially now with the new 
> features in Maven
> that make it more suitable for use in Tapestry. The only 
> downside is that
> someone needs to define the configuration files :)
> 
> 
> In short, what was given is a stop-gap solution and hopefully 
> it will change
> in one of the ways described above.
> 
> I hope this makes sense...
> - mb
> 
> 
> ----- Original Message ----- 
> From: "Erik Hatcher" <er...@ehatchersolutions.com>
> To: "Tapestry development" <ta...@jakarta.apache.org>
> Sent: Saturday, November 29, 2003 11:53 AM
> Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to 
> build junit
> subproject, but not included or mentioned anywhere
> 
> 
> > > ------- Additional Comments From mindbridgeweb@yahoo.com  
> 2003-11-29
> > > 06:58 -------
> > > Unfortunately, discussions with the Apache group indicate that
> > > junit.jar should
> > > not be kept in the Jakarta CVS repository. The same applies to
> > > jdom-b8.jar
> > > which is also required to compile and run the Tapestry unit tests.
> >
> > I don't understand this.  junit.jar is perfectly fine to have in CVS
> > (we have it in Ant's CVS).  The way the Tapestry build.xml files use
> > it, though, require it to be in lib/ext which bugs me 
> because junit.jar
> > has to be in ANT_HOME/lib for <junit> to work anyway - so I 
> view it as
> > just a necessary piece of Ant itself.  One of these days 
> I'll refactor
> > Tapestry's build to use <junit> rather than <java> to run the unit
> > tests, which will allow for unit test reporting much nicer than just
> > the console output.
> >
> > Erik
> >
> >
> >
> >
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: 
> tapestry-dev-help@jakarta.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org
> 


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


Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by Mindbridge <mi...@yahoo.com>.
Hi Erik,

I have to say that personally I agree with you -- it seems to me the
licenses are perfectly compatible, etc (but IANAL).

I was on 'sabbatical' for a couple of weeks, but before I left I looked at
the mailing list archives (jakarta-general, etc) for messages discussing the
topic as suggested by Danny Angus, and frankly, there did not seem to be a
clear and unified position on this issue. Given that during incubation
Howard opted for leaving junit.jar and jdom-b8.jar outside the repository,
the adamant possition by some people that non-ASL code needs to be kept out,
the current license 'discussions' on the lists, the small number of people
who will build and test the framework, the simplicity of "installing" a
couple of files, etc, it seems to me that it simply makes sense keep the
status quo for the time being, even though it is not ideal. Hence the
resolution I've put in and the documentation that has been checked in.

I guess that from this point we can do a number of things:

- Get an explicit approval from the Apache board that we can put those
libraries in the repository in order to avoid any potential for future
trouble. It would obviously be ideal if a person closer to the board, such
as Howard, could get this approval (or denial). Assuming that they agree,
this issue will be resolved altogether. Please note that I have no idea how
all this politics relates to the Ant project.

- Use the junit.jar that is provided by Ant (or Eclipse or sth else) as you
suggest. This is a reasonable solution, but unfortunately it will not
resolve the matter fully, since the Tapestry unit tests also depend on
jdom-b8.jar, and that is not present in those products. So one would still
have to download external files.
(Btw, using <junit> would be quite neat :)

- Finish the 'mavenization' of Tapestry so that the build automatically
downloads those (and possibly other) files when needed. This approach has
multiple positive effects, especially now with the new features in Maven
that make it more suitable for use in Tapestry. The only downside is that
someone needs to define the configuration files :)


In short, what was given is a stop-gap solution and hopefully it will change
in one of the ways described above.

I hope this makes sense...
- mb


----- Original Message ----- 
From: "Erik Hatcher" <er...@ehatchersolutions.com>
To: "Tapestry development" <ta...@jakarta.apache.org>
Sent: Saturday, November 29, 2003 11:53 AM
Subject: Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit
subproject, but not included or mentioned anywhere


> > ------- Additional Comments From mindbridgeweb@yahoo.com  2003-11-29
> > 06:58 -------
> > Unfortunately, discussions with the Apache group indicate that
> > junit.jar should
> > not be kept in the Jakarta CVS repository. The same applies to
> > jdom-b8.jar
> > which is also required to compile and run the Tapestry unit tests.
>
> I don't understand this.  junit.jar is perfectly fine to have in CVS
> (we have it in Ant's CVS).  The way the Tapestry build.xml files use
> it, though, require it to be in lib/ext which bugs me because junit.jar
> has to be in ANT_HOME/lib for <junit> to work anyway - so I view it as
> just a necessary piece of Ant itself.  One of these days I'll refactor
> Tapestry's build to use <junit> rather than <java> to run the unit
> tests, which will allow for unit test reporting much nicer than just
> the console output.
>
> Erik
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org


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


Re: DO NOT REPLY [Bug 21871] - junit.jar needed to build junit subproject, but not included or mentioned anywhere

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Saturday, November 29, 2003, at 04:53  AM, Erik Hatcher wrote:
> I don't understand this.  junit.jar is perfectly fine to have in CVS 
> (we have it in Ant's CVS).  The way the Tapestry build.xml files use 
> it, though, require it to be in lib/ext which bugs me because 
> junit.jar has to be in ANT_HOME/lib for <junit> to work anyway - so I 
> view it as just a necessary piece of Ant itself.  One of these days 
> I'll refactor Tapestry's build to use <junit> rather than <java> to 
> run the unit tests, which will allow for unit test reporting much 
> nicer than just the console output.

Replying to myself.

'./junit> ant junit' was just added.  It uses the <junit> task.  You 
can use 'ant junitreport' to generate an HTML report.  Reports go to 
the classes directory currently.  It is running the TapestrySuite which 
is not idea in <junit> since its better to run tests separately for 
reporting.

I still have 3 failures that I'll try to track down.

	Erik


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