Re: [ANN] Ant 1.5.2 Released!

2003-03-06 Thread Stefan Bodewig
Congratulations everyone!

I've updated the Jakarta site (listed Ant under elsewhere ;-),
freshmeat and sent an announcement to Usenet.

I'm back from my flu (this is what your kids are taking home from the
kindergarten 8-) and readily packed with anti-histamin to resist the
now blossoming birch trees (I hope), so I should be back in the game.

Cheers

Stefan


Re: How do you communicate with an administrator of bugzilla?

2003-03-06 Thread Stefan Bodewig
On Tue, 4 Mar 2003, Steve Cohen [EMAIL PROTECTED] wrote:

 I want to change the email address by which I am known to Bugzilla.

This requires some extra bugzilla karma (more than I have).
[EMAIL PROTECTED] is supposed to be the role-account for people with
sufficient administrative privileges IIRC.

Stefan


Re: [SUBMIT] scp

2003-03-07 Thread Stefan Bodewig
On Thu, 6 Mar 2003, Joe Consumer [EMAIL PROTECTED] wrote:

 but I read on the jcraft site, that jsch requires 1.4 so I didn't
 bother.

Two weeks ago or so I posted to the jsch list that I have successfully
used jsch with JDK 1.2 (and 1.3) and bouncycastle's JCE implementation
http://www.bouncycastle.org/.

They say JDK 1.4 as jsch uses JCE and this is part of 1.4 - but JCE is
available from Sun for JDK 1.2.2+ and bouncycastle's version works
better than Sun's in my experience.

 Does it work on 1.2?

Yes.

Stefan


Re: tests failing

2003-03-10 Thread Stefan Bodewig
On Sun, 9 Mar 2003, Steve Loughran [EMAIL PROTECTED] wrote:

 i have been lax on running tests for a while; now I am seeing (on
 winXP, single CPU)

Is this from CVS HEAD?  Looks like the bug Nico's patch was supposed
to fix
(i.e.
http://cvs.apache.org/viewcvs/ant/src/main/org/apache/tools/ant/taskdefs/Zip.java.diff?r1=1.97r2=1.98).

But then again Nico reported he still had problems with the test and
he's using Windows AFAIK.

Needless to say it passes on my machines (Linux, MacOS X and Solaris)
and seems to pass in Gump (running on Linux and Solaris) as well.

Stefan


Re: cvs commit: ant/src/etc/testcases/taskdefs/optional/dotnet HelloWorld.wsdl example.cs example.il example2.il

2003-03-10 Thread Stefan Bodewig
On 10 Mar 2003, [EMAIL PROTECTED] wrote:

   ant/src/etc/testcases/taskdefs/optional/dotnet/example2.il

   // Copyright (C) Microsoft Corporation 1998-2001. All rights
   reserved.

I realize that this file may be a generated file, but I think this
copyright notice is, uhm, problematic.

Stefan


Re: ssh exec task...

2003-03-11 Thread Stefan Bodewig
Hi Robert,

as you may have seen, our mailing list software strips all HTML parts
from mails.  I'm sure there has been some message in addition to the
tarball 8-)

I've committed modified versions of your code - in particular I've
made the password part of user:[EMAIL PROTECTED]:/path optional to really
enable key based authentication for scp and made your SSHExec task use
SSHBase (more than it did before, at least 8-).

The main thing missing now is documentation for sshexec.

Stefan


Re: [GUMP] Test Failure - Ant

2003-03-11 Thread Stefan Bodewig
On Tue, 11 Mar 2003, Steve Loughran [EMAIL PROTECTED] wrote:

 OK, this is me, I need to set up the build to exclude DotnetTest

I've already taken care of it.

Stefan


Re: ssh exec task...

2003-03-11 Thread Stefan Bodewig
On Tue, 11 Mar 2003, Rob H. Anderson [EMAIL PROTECTED]
wrote:

 There is one problem with the sshexec task that someone should look
 into: I was not able to get the output from the remote command to
 show up in the log.

It works if my machine (the one running Ant) is under heavy load, but
doesn't otherwise. 8-(

The problem seems to be (from some cursory code review on jsch) that
jsch spawns a thread to execute the command - and the task may very
well be finished (and Ant exited) before the thread gets run.

 I will work on some documentation to go with it.

Great.

Stefan


Re: 1.6 milestones ?

2003-03-13 Thread Stefan Bodewig
On Wed, 12 Mar 2003, Costin Manolache [EMAIL PROTECTED] wrote:

 It'll have documentation after it is reviewed by more people and we 
 know it's going to be stable. 

I don't like this approach at all.  How are you expecting user
feedback on an undocumented feature?

Stefan


Re: 1.6 milestones ?

2003-03-13 Thread Stefan Bodewig
On Wed, 12 Mar 2003, Costin Manolache [EMAIL PROTECTED] wrote:

 Do we have any plan or idea on when we'll start distributing 1.6
 milestone builds ?

Ant has never released any milestone builds so far, so no, there is no
plan yet AFAIK.  If there was, you'd know it for sure 8-)

Before we release a milestone we should make sure that whatever we
release at least passes our tests (including the currently disabled
ImportTest) and doesn't have any known regressions (see my mail of
yesterday).

And then I'd really love to have a rundown of the new features (I was
swamped when you committed the parts coming from the embed proposal
and lost track of it, a simple short list would suffice for starters)
and look at them one by one to get consensus on whether we want them -
if we can't agree on a given feature, it shouldn't be included in a
milestone at all IMHO.

Stefan


Re: JDK 1.1 support

2003-03-14 Thread Stefan Bodewig
On Fri, 14 Mar 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 1. Make Ant 1.6.x the last JDK 1.1 release. This would be clearly
 documented

Fine with me.

I'd like to keep 1.6 compatible to JDK 1.1, though.  When we make 1.2
a requirement, we'd better start using collections and URLClassloader
consistently - and doing this for 1.6 would push 1.6 even further down
the timeline.

 2. Make the subsequent release require JDK 1.2+ (what about leap
 frogging to later versions?)

1.2

OS/2 and the BSDs (not FreeBSD, but the rest of the pack) are the only
OSes I'm aware of that don't have a decent 1.2+ VM yet, but there are
quite a few without a stable 1.4 VM (and I don't think 1.3 would give
us too much, proxies, but what else?).

 3. Name this subsequent release Ant 2.0 (due to its change in system
 requirements)

+0

 4. Drop all the Ant2 cruft from the website. 

OK.

 Just as a data point, CVS HEAD (Ant 1.6) has not compiled against
 JDK 1.1 for a while now (due to diagnostics changes).

But I've nagged Steve about it and promise to fix it during the next
few weeks. 8-)

Stefan


Re: New External Task

2003-03-14 Thread Stefan Bodewig
I've changed the page in CVS, the site should be updated sometime
during the next few hours via cron.

Stefan


Re: cvs commit: ant/src/testcases/org/apache/tools/ant/filters EscapeUnicodeTest.java

2003-03-14 Thread Stefan Bodewig
On 14 Mar 2003, [EMAIL PROTECTED] wrote:

   New filter escapeunicode that translates non-ASCII characters to
   \u1234 escapes.

Maybe we want to rename that to native2ascii?  IIUC correctly it
does the same thing as the task or Sun's tool of that name (only that
the filter will also recode the latin-1 part (i.e. the eight but not
seven bit characters).

   +  target name=testEscapeUnicode depends=init

snip

   +fixcrlf srcdir=result eol=crlf
   +  include name=escapeunicode.test/
   +/fixcrlf
  /target

Became necessary as filtering copy converts the line ends to the
platform's version (and the original files from Antoine have DOS line
ends and contain binary characters so I had to commit them with -kb).

I'm not really sure whether this is expected behavior or a bug in
copy.

Stefan


Re: New related project

2003-03-18 Thread Stefan Bodewig
On Mon, 17 Mar 2003, Jan Materne [EMAIL PROTECTED] wrote:

 I see a new project with it´s Ant tasks: www.AndroMDA.org .

we usually don't go and search for projects to add, but wait for them
to ask us 8-)

Anyway, thanks for the pointer, I've added it - will appear on the
site when cron kicks in.

Stefan


Re: New J2ME Ant task

2003-03-18 Thread Stefan Bodewig
On Mon, 17 Mar 2003, Steve Neal [EMAIL PROTECTED] wrote:

 I've implemented this task recently to help with J2ME development

Just out of curiosity, what has been wrong with one of the three
existing sets of tasks?

I've added the pointer, it should appear on the site within the next
few hours.

Stefan


CLAs for all committers

2003-03-18 Thread Stefan Bodewig
Dear co-committers,

as you probably (hopefully) know, all of us need to sign the
Contributor License Agreement that can be found here
http://www.apache.org/foundation/ASF_Contributor_License_1_form.pdf.

Now there is a very simple and quick check to see whether you have
done so (or just think you have):  visit this page
http://www.apache.org/~jim/committers.html.  If your name is in
italics, the secretary of the ASF has received the CLA.

If it isn't, well, there is something waiting for you to get printed
out and sent (by snail-mail to keep Jim's FAX from exploding 8-) to
the address given in the CLA.

Please do so

Stefan


Re: [VOTE] JDK 1.1 support

2003-03-19 Thread Stefan Bodewig
On Thu, 20 Mar 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:
 On Wed, 19 Mar 2003 06:13 pm, Stefan Bodewig wrote:

 -0 and +1 on doing it after 1.6.  I think this is a majority vote,
 isn't it?
 
 Your -0 isn't a veto, in any case.

I know, and I wouldn't want it to be one.

 Do you have some reservations? Is it just a timing issue?

Mainly a timing issue, yes.  I realize that the split-up optional.jar
thing is almost crying for help from URLClassLoader, so I almost buy
that a switch now is necessary.  It just feels (to me) better to do
such a move completely than doing it in an incosistent manner.

Stefan


Re: ssh exec task...

2003-03-20 Thread Stefan Bodewig
On Wed, 19 Mar 2003, Dale Anson [EMAIL PROTECTED] wrote:

 I've asked Atsuhiko (the jsch author) to make a minor change, he
 says it will be included in the next release, scheduled for
 tomorrow.

Cool.

 I'll modify the task to capture the output correctly and make the
 maxwait attribute actually work.

Can you rename it to timeout (to mirror exec) at the same time?

 I didn't see the jsch.jar file in Ant cvs,

And it will never go there.

 how are optional libraries like this generally handled?

We expect developers to install them themselves.

Stefan


Re: Perforce patch for 1.5.3

2003-03-20 Thread Stefan Bodewig
On Wed, 19 Mar 2003, Matt Bishop [EMAIL PROTECTED] wrote:

 I'd like someone to look at this patch for 1.5.3;

Have you seen Antoine's comment on the bugrep that says your patch
didn't change anything for him?

To be honest, I don't see how it would help either as the exception is
going to be thrown in a different thread than the task is running in,
no?

Stefan


Re: java 1.1 on linux

2003-03-20 Thread Stefan Bodewig
On Tue, 18 Mar 2003, peter reilly [EMAIL PROTECTED] wrote:

 1.5.1 and 1.5: java.lang.ClassFormatError: Bad major version number

I do not get this on an admittedly simple build file using Blackdown's
1.1.8.  I.e. Ant 1.5.1 from the binary tar.gz version seems to work
with JDK 1.1 for me.

  This may be fixed by recompiling ant or it may be due to the
  fact that ant-contrib uses 1.2 isms.

Does that mean I should use one of the ant-contrib tasks to reproduce
the problem?  Maybe the ant-contrib stuff has been compiled with JDK
1.4.  Where have you obtained it (self-compiled?)?

Stefan


Re: ssh exec task...

2003-03-21 Thread Stefan Bodewig
On Thu, 20 Mar 2003, Dale Anson [EMAIL PROTECTED] wrote:

 One more question -- how is documentation handled?

The same way as code, you send patches (diff -u).  Docs are a bit more
difficult if you want to send in complete new files as our mailing
list configuration will not accept any HTML part in mails - you'd have
to zip them or something.

The documentation currently consists of static HTML pages, the docs
for sshexec are in docs/manual/OptionalTasks/sshexec.html in Ant's CVS
module.

We may or may not switch to generated docs (generated from comments in
the sources), but we are not there yet.

Stefan


Re: Dynamic Configurator

2003-03-21 Thread Stefan Bodewig
On Thu, 20 Mar 2003, Brett Wooldridge [EMAIL PROTECTED] wrote:

 When I run ant, I see that createDynamicElement() gets
 called twice for the junit element, and further that
 setDynamicAttribute() gets called twice for someattr.

This certainly sounds like a bug.  We don't call the attribute setters
or nested creators/storers twice for normal elements either.

 I put a Thread.dumpStack() inside of my implementations
 of those methods, and can provide the stacks for the two
 calls (they ARE different) if that would help.

I think it would, yes.

Stefan


AntClassLoader in 1.6

2003-03-24 Thread Stefan Bodewig
Hi,

if we are going to go the 1.2+ route for Ant 1.6, can we change
AntClassLoader in a way that Grant is going to work again (I vaguely
recall something about a no-arg constructor being added or removed or
something 8-).

This would make the jelly-tags-html Gump build failure either go away
or change to something easier to solve.

Stefan


Re: JBuilder Gel IDE Integration

2003-03-25 Thread Stefan Bodewig
On Tue, 25 Mar 2003, Paul King [EMAIL PROTECTED] wrote:

 I didn't submit a bug on this 'cause I wasn't sure if this
 should normally come from the vendor themselves.

Well, let's say we are not searching for the information, but add them
when they get sent to us.  Some vendors actually seem to care for this
list (the NetBeans folks regularly send updates) while most don't.

 But here are the details if anyone wants to make the update.

I'll look into it.

Stefan


Re: JBuilder Gel IDE Integration

2003-03-25 Thread Stefan Bodewig
On Tue, 25 Mar 2003, Paul King [EMAIL PROTECTED] wrote:

 GEL IDE for Windows
 
 License:  Freeware

Isn't very specific and the site doesn't seem to give more details.
I've downloaded the latest RC to see whether there are more license
details but the setup.exe doesn't do any good on my Linux box 8-)

Could you please take a look and pull out the exact words of the
license?  Freeware is applied to software licensed under GPL as well
as stuff that is in the public domain.

Stefan


Cygwin tester needed

2003-03-25 Thread Stefan Bodewig
Hi,

please take a look at
http://issues.apache.org/bugzilla/show_bug.cgi?id=17721.  I can
reprodice this bug, but I'm afraid that the proposed patch will break
Cygwin - as I have no idea how it handles absolute paths.

The change would be in line 54 of the ant wrapper script (CVS HEAD),
instead of 

if expr $link : '.*/.*'  /dev/null; then

we'd use

if expr $link : '^/.*'  /dev/null; then

Oh, to run into this code, you must not set ANT_HOME and the script
you invoke must be a symlink (is this possible on Cygwin?) to the real
script.

Stefan


Re: ssh exec task...

2003-03-25 Thread Stefan Bodewig
On Tue, 25 Mar 2003, Dale Anson [EMAIL PROTECTED] wrote:

 Attached are updates for the SSHExec task and documentation as
 diffs. The updates fix the problem with output not always showing on
 the screen (or log).

Thanks.  I'll commit them after the release of jsch 0.1.3 final.

 While I was at it, I fixed the timeout attribute so it actually
 does something,

8-)

 plus I added some attributes from the exec task that seemed
 appropriate:
 
 output write the output to a file
 append append to or overwrite the output file
 outputproperty store the output in a property

input and inputstring are additional candidates IMHO.

Thanks!

Stefan


Re: Request for downloadable Ant Manual in pdf Thank you

2003-03-26 Thread Stefan Bodewig
On Tue, 25 Mar 2003, Steve Loughran [EMAIL PROTECTED] wrote:

 I am sure we could probably do a PDF build from the xdocs stuff now,

I'm sure, too.

 if we somehow create docbook content via XSLT, velocity, whatever.

Why docbook?  You could create the XSL:FO directly, no?

  Please note that this is not the official
  documentation.  When in doubt, please consult the online manual.
 
 then the source :)

8-)

I completely realize that Erik and you have helped to improve the
manual a lot (and not just the manual) while writing the book, because
you've used the source.  It's just that 1.5.3 is a bit different from
1.5 in some places.

Stefan


Re: Cygwin tester needed

2003-03-26 Thread Stefan Bodewig
On Tue, 25 Mar 2003, Stefan Moebius [EMAIL PROTECTED] wrote:

 warning: unportable BRE: `^/.*': using `^' as the first character of
 the basic regular expression is not portable;

That's funny.

The GNU man pages of expr(1) are a bit vague here (they talk about
anchored expressions in context of the : operator) - at least the
man pages installed on my RedHat 7.3 box.

The FreeBSD and Mac OS X pages state that a leading ^ would be added
implicitly and it seems to work on Solaris as well.  So I think we'll
go without the leading ^.  This seems to be POSIX.2 conformant as
well.

 So basically, the modification works as expected. 

Great, thanks.

Stefan


Re: [patch] [bugfix] IntrospectionHelper.java

2003-03-26 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Neeme Praks [EMAIL PROTECTED] wrote:
 Stefan Bodewig ::
 On Sat, 01 Mar 2003, Neeme Praks [EMAIL PROTECTED] wrote:

storeElement() method silently returns, if the tag does not support
the specified element.

 This is because storeElement can never be called without calling
 createElement before that from within Ant.  It may be different
 from within Jelly, I don't know.
 
 So, could we fix this?

Sure.  You mean you want to fix Jelly? 8-)

If you don't invoke createElement before you call storeElement, you
are probable in trouble anyway.

I'm going to throw in the extra check in CVS HEAD later
today/tomorrow.

Stefan


Re: Artima SuiteRunner Task

2003-03-26 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Adam Duffy [EMAIL PROTECTED] wrote:

 Myself and Leigh Ishikawa (Adding 'setName' support to the
 xmljunitresultformatter.java) have not received any response to our
 contributions. Can someone please advise?

First advice would be to be more patient, four hours isn't that much
8-)

Looking into contributions is something that takes time and all of us
here are volunteers.  It is not unusual to get no response for days,
and I'll admit that occasionally there will be no response at all.

In your case, I have no idea what Artima SuiteRunner is, so a
contribution that focusses on it will not catch my attention.  It will
go into a queue of mails and I'll hope that another committer -
somebody who knows what you are talking about ;-) - will get to it
first.  Dominique's comments suggest that it is some kind of testing
tool, nice.

So now the more general response: For quite some time we've become
very reluctant to add new tasks.  Especially tasks that are tied to
third party products - we generally prefer to see them outside of Ant
and with this product.

The reason is that Ant already contains far too many tasks that no
committer can really test and support - this leaves us in a position
where we are not doing any good to our users, nor to ourselves.

Tasks have to be supported.  If no committer is able to support it
directly, we have to rely on people less tightly connected to Ant.  In
many cases the original authors of a task have disappeared and when we
receive patches for their tasks, reviewing those patches becomes
painful.

Cheers

Stefan


Re: Artima SuiteRunner Task

2003-03-26 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 That said (one more ;-), if Ant ever comes up with an easier way to
 integrate third party tasks

Easier than taskdef resource=...classpath ...//taskdef?

Almost impossible.

Stefan


Re: Artima SuiteRunner Task

2003-03-26 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 Hu, not totally.

Did I forget to put that smiley in?

 Since you now use twice the classpath, if needs to be outside and
 refid'd.

No, you'll need to use the loaderref attribute.

 And what about the junit task?

Easy in Ant 1.6, it comes in a jar of its own.

Ant's default install will most probably need to keep it on the system
classpath.  This backwards compatibility thing, you know.

 I believe it can and should be easier and more flexible.

Agreed.

Stefan


Re: Artima SuiteRunner Task

2003-03-27 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:

 Do we have a real-world candidate for
 
antlib resource=..  classpathref=.. /

ant-contrib's cpptasks, this includes custom tasks and types.

Stefan


Re: cvs commit: ant/src/main/org/apache/tools/ant/taskdefs/optional/starteam TreeBasedTask.java

2003-03-27 Thread Stefan Bodewig
On 27 Mar 2003, [EMAIL PROTECTED] wrote:

   log(checking label  + stLabel.getName(), Project.MSG_DEBUG); 
 - if (stLabel.getName().equals(this.label)) {
 + if (stLabel != null  !stLabel.isDeleted()  
 stLabel.getName().equals(this.label)) {

given that the log line will have thrown a NPE if the first test in
the if statement fails, it looks a bit redundant 8-)

I've kept it in anyway.

Stefan


Merging fixes for 17646 and 17721 into 1.5.3?

2003-03-27 Thread Stefan Bodewig
The starteam patch looks innocent and the wrapper script change has
been tested on Cygwin, Linux, MacOS X and Solaris and is know to work
(and the corresponding bug report has been verified).

But then again we've just released beta1 and I'm becoming more and
more reluctant to changes post beta (they've caused some trouble in
1.5 IIRC - and it has probably been my fault).

In this case, I'd favor to merge them in.

Stefan


Re: JBuilder Gel IDE Integration

2003-03-27 Thread Stefan Bodewig
On Wed, 26 Mar 2003, Paul King [EMAIL PROTECTED] wrote:

 P.S. Another suggestion: the external.html page has no internal
 navigation to get to the three sections: Tasks, Compiler
 Implementations and IDE and Editor Integration

fixed in CVS - and soon at the site, thanks.

 (Sorry, I know I should be looking at doing diff's but I haven't
 looked into how the doco is generated these days).

http://ant.apache.org/faq.html#creating-faq applies here as well.

Stefan


Re: cvs commit: ant/src/main/org/apache/tools/ant/taskdefs Copy.java

2003-03-28 Thread Stefan Bodewig
On 28 Mar 2003, [EMAIL PROTECTED] wrote:

   - public void setFailOnError(boolean failonerror) {
   - this.failonerror = failonerror;
   - }
   +public void setFailOnError(boolean failonerror) {
   +this.failonerror = failonerror;
   +}
   
I have no idea what's happened here, especially since I've made the
last commit to that file yesterday and can't remember running a code
formatter over it after that (or something similar).

Stefan


junit, fork and CLASSPATH

2003-03-31 Thread Stefan Bodewig
Hi,

I'm currently looking into Bug 14971.  This bug points out an
inconsistency in junit that has been there for ages and I'm a bit
unsure on how to fix it.

junit fork=true includeantruntime=yes will run the forked tests
with a classpath containing ant.jar, optional.jar and junit.jar,
nothing else.

junit fork=true includeantruntime=no will run the forked tests
with whatever is in the CLASSPATH env variable as it doesn't pass an
explicit -classpath argument at all.

If the junit task has a nested classpath, things are different,
your CLASSPATH will never be used as there will always be a -classpath
argument.

I'm not sure, how this should be resolved.  Even if we add a new
attribute, I don't see a default setting that would preserve the old
behavior.  Well, maybe I do.  Something like addsystemclasspath with a
default of false that would query the native environment for
CLASSPATH.

Maybe we don't have a bug at all and we can say that you get exactly
the classpath you are asking for?  This doesn't hold as you don't get
an empty CLASSPATH when you specify nothing.

Ideas?

Stefan


Re: [GUMP] Test Failure - Ant

2003-04-01 Thread Stefan Bodewig
This is bug 17807, I knew it would happen, I'll take care of it
http://issues.apache.org/bugzilla/show_bug.cgi?id=17807

Stefan


Re: cvs commit: ant/src/testcases/org/apache/tools/ant/taskdefs/optional ANTLRTest.java

2003-04-01 Thread Stefan Bodewig
Note that test8 is now going to fail.

test8 expects a BuildException to be thrown because the supergrammar
file didn't exist.  The real reason for the exception that has been
thrown so far was that the outputdirectory didn't exist, I've fixed
that.

Now antlr will pront a warning error: file non-existant-file.g not found
but return with an exit code of 0 so the task doesn't see an error.

We will have to parse the output, I'm afraid.

I wonder whether the now modified test would have passed with ANTLR
2.7.1 or whether it has been broken since its creation.

Stefan


Re: [Patch] for antlib proposal (sorry attachment was incomplete in previous email)

2003-04-01 Thread Stefan Bodewig
On Tue, 1 Apr 2003, Antoine Levy-Lambert [EMAIL PROTECTED]
wrote:

 Please submit quickly if you can to allow work on this proposal to
 resume.

Quick enough?

Stefan


Re: ssh exec task...

2003-04-01 Thread Stefan Bodewig
On 01 Apr 2003, Stefan Bodewig [EMAIL PROTECTED] wrote:

 The main difference (apart from formatting changes) are that timeout
 uses milliseconds as its value

and defaults to 0

 (like exec)

Stefan


Re: ssh exec task...

2003-04-01 Thread Stefan Bodewig
On Tue, 01 Apr 2003, Dale Anson [EMAIL PROTECTED] wrote:

 I take it you saw that jsch 0.1.3 was released this morning?

Yep.

 Would you mind making one other minor change to the docs, it
 references jsch 0.1.2 as a requirement, but 0.1.3 is the minimum.

Already changed in CVS. 8-)

Stefan


Re: Patch JavaCC - KEEP_LINE_COLUMN, JJTree - OUTPUT_FILE and new tas kdef JJDoc

2003-04-02 Thread Stefan Bodewig
On Wed, 2 Apr 2003, Jene Jasper [EMAIL PROTECTED] wrote:

 As mentioned yesterday, I have made some changes to the JavaCC and
 JJTree taskdefs and added a new taskdef for JJDoc. I have included
 the patch.txt for the changes.  But what is the best way to deliver
 the new files JJDoc.java and jjdoc.html ?

Create an enhancement request in Bugzilla, attach this patch and the
two new files.

Does your patch include the JavaCC 3.0/2.1 changes?  I'd like to
tackle that separately if possible.

Stefan


Re: Patch JavaCC - KEEP_LINE_COLUMN, JJTree - OUTPUT_FILE and new tas kdef JJDoc

2003-04-02 Thread Stefan Bodewig
On Wed, 2 Apr 2003, Jene Jasper [EMAIL PROTECTED] wrote:

 Thus I will try to check in a patch for JavaCC 2.1/3.0 changes
 against the latest snapshot around Monday.

CVS HEAD hasn't changed for quite some time, shouldn't be a problem.

Stefan


Re: Using files in classpath in task file=

2003-04-02 Thread Stefan Bodewig
On Wed, 02 Apr 2003, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:

 The problem is that AFAIK the xslt task needs a file, not an URL,
 and hence not a jar resource.

Errm, where does it need the file?

 All tasks that resolve files IIUC call
 
public File resolveFile(File file, String filename)
 
 in FileUtils.java [1]

Most of them implicitly by defining setXYZ(File) setters, yes.

 Again IIUC and AFAIK it could be quite easy to extend this method to
 use a url to get the File.

Return an URL?  Receive an URL?  I don't understand what you want.

Stefan


Re: Using files in classpath in task file=

2003-04-03 Thread Stefan Bodewig
On Wed, 02 Apr 2003, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:

 If I had it in jars I could ship it automatically with the jar that
 has the task that generated index.xml, so I can easily do something
 like:
 
   xslt in=index.xml out=index.html
 style=resource:/a/style.xsl/

I see.  What I don't see is how we could use an URI here without
breaking backwards compatibility.

In XSLTProcess we get the style parameter via setStyle(File), this
obviously cannot be called with anything else but a file object.  If
we wanted general URIs, we'd have to change the signature and break
custom tasks that inherit from or delegate to instances of
XSLTProcess.  No way.

I'd rather propose to add an alternative attribute styleURI or
something to XSLTProcess.

 Be able to specify a URL for every task that needs a file, and that
 thus uses the above fileutils method.

Again, not without changing the tasks to use something else, not File,
in their setter method and thus severely breaking backwards
compatibility.

 Or maybe KISS and just add a getStyleResource(String
 styleResource). It solves the immediate issue and doesn't open other
 potential problems.

Seems the better way to me - at least until we are prepared to break
API compatibility on almost all tasks at once 8-)

Stefan


Need JProbe testers

2003-04-03 Thread Stefan Bodewig
Hi,

I've modified the JProbe tasks in a way that they now should
autodetect and even work with JProbe 4.x.

As I don't run any version of JProbe, I'd like to have people who
currently run the JProbe tasks successfully (with older version of
JProbe) to either bootstrap the CVS HEAD version of Ant or try the
nightly build 2003-04-04 (not the not yet published -04-03, my commit
won't be in there) to confirm that I haven't broken any existing
functionality.

Many thanks

Stefan


defaultexcludes in MatchingTask

2003-04-03 Thread Stefan Bodewig
Can anybody imagine/remember why MatchingTask#setDefaultExcludes does
not set the corresponding value on the implicit fileset but defers
that to getDirectoryScanner()?

Stefan


Re: jdepend error

2003-04-03 Thread Stefan Bodewig
On Fri, 4 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 The version of jdepend I have hanging around for building Ant is not
 compatible with the recent changes

Any chance to find out which version that is?

I'll throw in a little reflection around this (the manual still claims
support for JDepend = 1.2 and we don't need to break it if a
workaround is possible).

Thanks

Stefan


Re: jdepend error

2003-04-03 Thread Stefan Bodewig
On Fri, 4 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:
 On Fri, 4 Apr 2003 12:38 am, Stefan Bodewig wrote:
 On Fri, 4 Apr 2003, Conor MacNeill [EMAIL PROTECTED]

 wrote:
  The version of jdepend I have hanging around for building Ant is
  not compatible with the recent changes

 Any chance to find out which version that is?
 
 Not really - just jdepend.jar.

OK.  JDepend's release history says, setFilter has been introduced in
2.5 - I've updated the manual to that effect.

Could you please compile the task and run some simple metrics?  Maybe
you could also use the nested exclude element and see whether it
works as intended (i.e. print a warning and go on creating the
report).

Thanks

Stefan


Re: cvs commit: ant/xdocs/stylesheets templates.vm

2003-04-04 Thread Stefan Bodewig
On 4 Apr 2003, [EMAIL PROTECTED] wrote:

   More CSS - less tables

No question, it looks - umh - ugly on Netscape 4, don't know how much
of a concern that has to be for us, though[1].

It works (the menu comes at the top, the content below) for links and
lynx (text-only browsers that are used by tools that read webpage to
blind users) which is important IMHO.

Stefan

Footnotes: 
[1]  http://www.apache.org/~vgritsenko/stats/daily.html#User+Agents+Stats



Re: Fwd: [Xdoclet-user] multiple jsptaglib nested tag in webdoclet

2003-04-04 Thread Stefan Bodewig
On Thu, 3 Apr 2003, Erik Hatcher [EMAIL PROTECTED]
wrote:

 Any ideas on the differences between using taskdef under project
 or under a target?

Several, and they vary with the Ant version in use.

With Ant 1.5.x, the main difference is that taskdefs defined at the
project level will get evaluated immediately, so Ant creates the
real task objects and real nested elements at parser time.  If you
put the taskdef into a target, things go the UnknownElement route
first.  This causes several differences.

With CVS HEAD, things have become different, and taskdef is supposed
to work consistently now (unchecked 8-) - as all tasks will be
UnknowElement until used now.

With Ant 1.4, nested child elements didn't work properly in one of the
two cases, can't exactly remember which.

Stefan


Re: updated sql documentation....

2003-04-04 Thread Stefan Bodewig
On Thu, 3 Apr 2003, Rob H. Anderson [EMAIL PROTECTED]
wrote:

 Attached is the updated sql documentation that I promised.

Didn't make it to the list, sorry.

Stefan


Where are we WRT the JDK decision?

2003-04-04 Thread Stefan Bodewig
When I fixed the JDepend task, I made it depend on JDK 1.2 - which is
fine as JDepend has the same dependency.

I'll shortly commit the JUnit Report patches and those contain workarounds
for the famous StringBuffer#toString memory leak[1] in JDK 1.4.1.
Unfortunately the workaround is to use StringBuffer#substring which is
not part of JDK 1.1.

IIUC we don't have a 1.1 compatibility requirement for CVS HEAD any
longer, so that is fine.

I'll grep through the sources to see whether I find more cases of
StringBuffer#toString used on shared StringBuffers (its my
understanding that it doesn't do too much harm if the StringBuffer
gets recycled at some point) and will apply the same workaround there.
We won't be able to fix the problem in the 1.5 branch, though.

Stefan

Footnotes: 
[1]  http://developer.java.sun.com/developer/bugParade/bugs/4724129.html



Re: updated sql documentation....

2003-04-04 Thread Stefan Bodewig
On Fri, 4 Apr 2003, Rob H. Anderson [EMAIL PROTECTED]
wrote:

 How about now?

Got it.

Stefan


Re: sql triggers, stored procedures, packages, format preserved

2003-04-04 Thread Stefan Bodewig
On Thu, 3 Apr 2003, Rob H. Anderson [EMAIL PROTECTED]
wrote:

 one line, pretty self explanatory

self explaining?  Yes.

I'm just not sure whether we want to do that unconditionally.

Stefan


Re: Patch JavaCC - KEEP_LINE_COLUMN, JJTree - OUTPUT_FILE and new tas kdef JJDoc

2003-04-04 Thread Stefan Bodewig
On Fri, 4 Apr 2003, Jene Jasper [EMAIL PROTECTED] wrote:

 Would it be useful if I add an updated patch.txt to bug 18602 for
 JavaCC.java and JJTree.java after the changes are available in a
 nightly build ??

Maybe, but I don't think that merging them will be a big deal anyway.

Stefan


Re: cvs commit: ant/xdocs/stylesheets templates.vm

2003-04-04 Thread Stefan Bodewig
BTW, it looks nice in Safari as well, which probably makes up a
considerable part of the Unknowns in

 http://www.apache.org/~vgritsenko/stats/daily.html#User+Agents+Stats

Stefan


Re: [RESULT] Ant 1.6 will require JDK 1.2

2003-04-04 Thread Stefan Bodewig
On Sat, 5 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 It's funny that Stefan, who only voted +0, is the first to make a
 change that requires JDK 1.2 :-)

I couldn't find a workaround, that's all (yes, I've seen that smiley).

Having said that, I could have left all toStrings as they were after
making sure that the StringBuffers didn't get reused.  The real bad
things happen in StringBuffer#setLength and only if the StringBuffer
is shared, which happens after calling toString.  Not calling
toString avoids the sharing part, not reusing StringBuffers avoids
both, sharing and the calls to setLength.

This means that we've now traded a certain amount of memory that
cannot get reclaimed by the GC in 1.4.1 for more objects that can get
garbage collected.  I.e. we could see some negative performance
impact.

The JDepend change would have required yet another (i.e. a third)
layer of indirection via reflection.

Let's say I'm lazy. ;-)

Have nice weekend

Stefan


Re: Using files in classpath in task file=

2003-04-04 Thread Stefan Bodewig
On Fri, 04 Apr 2003, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:

 What I mean is not to change the passing of a File object.  I mean
 that we can *wrap* an URL in a File. So we pass a File, and use an
 URL, getting a Virtual File System.

How so - put the URI into the name and abuse File as a String?  I'd
really like to understand that.

We are talking about java.io.File here 8-)

Stefan


Re: Using files in classpath in task file=

2003-04-04 Thread Stefan Bodewig
On Fri, 04 Apr 2003, Nicola Ken Barozzi [EMAIL PROTECTED] wrote:

 Sure. Look at the JDK 1.4 version,

Ahh, far to modern for Ant.

 Because a URI can be navigated, and it's possible to make a File
 from a URI.

Not always.

   org.apache.tools.vfs.File extends java.io.File

But this version cannot be the argument for the (existing) setters.
For this to work, IntrospectionHelper will need to take special care
(i.e. if setXYZ(java.io.File) is found, actually pass it an instance
of org.apache.tools.vfs.File).  This is possible, but ...

* Is this generally desirable?

mkdir dir=http://www.apache.org//

delete
  fileset dir=jar:http://my.server.com/applets/loader.jar;
include name=**/*.gif/
  /fileset
/delete

means what?

If I sound harsh, please forgive me.  I'm trying to show that in some
situations it may be better to stick with files and we need a way to
distinguish them.

* is not as transparent as you say.

Tasks could only use the URI if they first check that the object is is
our version of File and cast to it.  I.e. the change in
IntrospectionHelper will only work for tasks that can handle it.

Both points mean that it becomes hard to explain when URIs can get
used and when not.

Just as people have by now become so used to the relazive path
resolution magic that happens inside Ant that they now report it as a
bug if a ceratin attribute is not resolved relative to basedir, we
will get bug reports that certain tasks do not deal with URLs of
protocol foo properly.  I find it hard to imagine that we'll be able
to convert all tasks that could reasonably be expected to deal with
URIs in one go.

 if I gave you just an url in the constructor, you could write
 almost, if not all, those methods.

That really depends on the protocol you use.  delete() for resources
loaded from a jar located on a remote server, loaded via some P2P
protocol?  I may be making up things, I know.

 Am I really missing the obvious? Could as well be.

Same here.

Stefan


Re: Using files in classpath in task file=

2003-04-07 Thread Stefan Bodewig
On Fri, 4 Apr 2003, Jose Alberto Fernandez [EMAIL PROTECTED]
wrote:

 I would like for ANT to do this for me, transparently.
 
   property name=fileurl locationURL=${myfile}/
 
 or somethig like that.

Sure, should be trivial using FileUtils#toURI together with
setLocationURL(File), I'm just not sure about the attribute name.
locationURL would imply that its value was an URL and not a location
that gets turned into an URI - at least to me.  

Hmm, uriOfLocation=${myfile}?  uriForLocation?

Attributes are case-insensitive in Ant.

Stefan


Re: [Patch] trying solve w2k command line length limitations

2003-04-08 Thread Stefan Bodewig
On Mon, 7 Apr 2003, Ignacio J. Ortega [EMAIL PROTECTED] wrote:
 Stefan Bodewig [EMAIL PROTECTED] escribió en el mensaje

 Class.forName will use the system classloader and not the nice
 little
 
 IMHO This contradicts my experience of CLs, i think some places
 inside tomcat used Class.forName also, and never seen what you
 say.. Class.forName loads in the current loader

Now, where did I get this misconception?  Sorry I have disappointed
you, DD ;-)

I think what you say is true for Java 1.2+, but not for Java 1.1.  The
API docs of Java 1.1 are not clear about this, but a lot of
classloader stuff has changed between 1.1 and 1.2.  I'm one of those
poor guys who still have to maintain 1.1 compatibility.

So for Ant 1.6, this is no issue as long as no core Ant classes
calling Class.forName can also be loaded via the parent.

Stefan


Re: New external resource found

2003-04-08 Thread Stefan Bodewig
committed, thanks

Stefan


Re: [PMC VOTE] ANt 1.5.3 Release

2003-04-08 Thread Stefan Bodewig
On Tue, 8 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 I am about to build Ant 1.5.3.

Yes, yes, yes.  Sigh with relief. 8-)

+1

Stefan


Re: Making URIs from locations

2003-04-08 Thread Stefan Bodewig
On Tue, 8 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 Note the change to resource (from resources) to be consistent with
 taskdef / available.

resources has been a typo, thanks.

 I assume the url attribute's signature would be setUrl(URL url).

Yes.

Stefan


Re: 1.5.3 Release

2003-04-09 Thread Stefan Bodewig
On Wed, 9 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 The 1.5.3 release is up on the site. I haven't had time to send the 
 announcements out yet. 

Which may be good so that the mirrors have time to catch up.

Freshmeat announcement is pending approval, next I'll do will be
Usenet and the Jakarta Site (under elsewhere 8-).  I'll let you do the
various announce@ mailing lists.

Stefan


Re: having datatypes load classes

2003-04-09 Thread Stefan Bodewig
On Tue, 08 Apr 2003, Marc Portier [EMAIL PROTECTED] wrote:

 but since that pattern is to be seen more around ant iteself, I was
 hoping for some reuse here

One would think so, but the truth is that you'll find copy-paste reuse
in this area instead of delegation or something.

Patches for a nice little utility class are welcome 8-)

Stefan


Re: [PATCH] add regular expressions to ContainsSelector.java

2003-04-11 Thread Stefan Bodewig
On Thu, 10 Apr 2003, Jay [EMAIL PROTECTED] wrote:

 I was thinking that the filters were more geared to changing text,
 not just identifiying a file has a specific content.

You are absolutely correct.  What I tried to say in my clumsy way:

We have to tasks that perform replacements, replace and replaceregexp.
We have two filter readers that select lines based on matching,
linecontains and linecontainsregexp.  Following that it would be
consistent to have to selectors based on matching, contains and
containsregexp.

 So would it be ok to make ContainsRegexpSelector under
 /ant/types/selectors that is basically the same as ContainsSelector
 but just accepts a single parm and does the regular expression
 search only?

Exactly.

 Thanks for your time on this.

Thank you

Stefan


Re: having datatypes load classes

2003-04-11 Thread Stefan Bodewig
On Thu, 10 Apr 2003, Marc Portier [EMAIL PROTECTED] wrote:

 seems to me however the current LoaderUtil more has somewhat of a
 jdk-version match-up function?

It used to be used for that, yes.  But this part of its functionality
is no longer needed in Ant 1.6 as we've dropped JDK 1.1 compatibility.

 CVS HEAD is going to drop Java 1.1 compatibility, so some changes
 in the whole classloader area are to be expected.
 
 could you elaborate, and maybe be explicit on how this can affect my
 doing ATM?

If only I knew 8-)

One thing that looks as if it was changing is that Ant's classes
themselves will be loaded by a classloader that is not the system
classloader.  I don't think it is going to affect your doing, but I'm
not 100% sure.

The other thing is that you may be able to simplify things when you
know you don't have to care about 1.1 compatibilty.

Stefan


Re: [Patch] es to be submitted

2003-04-11 Thread Stefan Bodewig
On Fri, 11 Apr 2003, Antoine Levy-Lambert [EMAIL PROTECTED]
wrote:

 There are several bug reports where I have prepared code, and
 documentation and testcases , and I would like them to be submitted
 before the code patches are obsolete :

There are certain constants in life, one is there will always be a
huge patch backlog in Ant 8-)

 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=17007 allow to
 define ZipFileSet(s) outside of Zip task this is an easy one,

And at the same time something that I wouldn't want to apply.  It
interferes with several proposals to introduce some kind of
polymorphism in Ant.  I'm sure that you are not aware of them, but
there've been plans and even complete code for such things.

 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15434 MimeMailer
 doesn't work properly with national charset

I looked into it, but I'm not really familiar with JavaMail.

 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18431 new
 p4labelsync task this one has been requested by one user;

and even less with Perforce.  When things like this happen, I usually
hope that a patch is confirmed (i.e. works for me) by at least one
other (Perforce in this case) user.

 since it is a new task, it should not harm any one.

Sorry, this is somewhat short sighted, every new task that no
committer can maintain does harm to Ant in some way or the other.

Stefan


Re: [Patch] es to be submitted

2003-04-11 Thread Stefan Bodewig
On Fri, 11 Apr 2003, Jan Materne [EMAIL PROTECTED] wrote:

 http://nagoya.apache.org/bugzilla/show_bug.cgi?id=18849
 Adds a new skip attribute to HeadFilter and TailFilter. 

We (or at least I) have some informal segmentation in Ant's code base.
Bruce is the selector guy, Magesh is the filter guy and so on.  Unless
Magesh finds time for this, I'll assign it to myself sometime later
this months.

Note that your patch - just like Antoine's - are not really targeting
a piece of code that was changing every day, so it is unlikely a patch
would go bad within the next weeks.  The patch command itself does a
reasonably good job to merge things, even if there were changes.

Stefan


[VOTE] Antoine Levy-Lambert as committer

2003-04-14 Thread Stefan Bodewig
Hi all,

Antoine has continuously been sending in patches since months now,
he's played an important role in the zip refactoring and is answering
more question on the user list than most of us here.  Furthermore
Antoine has access to a perforce installation, so he's able to test
and fix those tasks. 8-)

Finally he's expressed interest in reviving the antlib proposal.

I feel it is time to make him a committer and ask you to vote on this.

Let me start with my +1

Stefan


Re: cvs commit: ant/xdocs contributors.xml

2003-04-14 Thread Stefan Bodewig
On 14 Apr 2003, [EMAIL PROTECTED] wrote:

   Add myself to the list as a test of write access

welcome!

Further commit mails should go through without delay (this one was
waiting in the moderation queue).

Stefan


Re: FileUtils.createTempFile() - should we delete on exit?

2003-04-15 Thread Stefan Bodewig
On Mon, 14 Apr 2003, Jesse Stockall [EMAIL PROTECTED] wrote:

 Should the fix be applied to each task that creates temp files, or
 should it be put in FileUtils.createTempFile().

The later (and I agree with Conor on the optional additional
argument).

Stefan


Test failures (Gump is coming to tell us anyway ...)

2003-04-15 Thread Stefan Bodewig
Like for Jesse, testTailSkip and testTailLinesSkip fail on Linux for
me, I bet it is a line ending problem.  As the nightly Gump build is
performed on Linux as well, we are going to get nagged.

In addition, testScriptFilter fails.  It seems as if the new filter
was using the old IBM BSF package names, while the rest of Ant has
switched to Apache BSF.  The later is on my CLASSPATH, so bsf.present
gets set and the test is run, but fails due to a 
java.lang.NoClassDefFoundError: com/ibm/bsf/util/BSFEngineImpl.

I'll try to look into them later today but wouldn't mind if anybody
else was faster 8-)

Stefan


Re: cvs commit: ant/xdocs contributors.xml

2003-04-15 Thread Stefan Bodewig
On 15 Apr 2003, [EMAIL PROTECTED] wrote:

   Add myself to contributors list

Welcome!

again, future commit mails should go by without further delay.

Stefan


Re: cvs commit: ant/src/etc/testcases/taskdefs/optional/vss vss.xml

2003-04-16 Thread Stefan Bodewig
On Tue, 15 Apr 2003, Jesse Stockall [EMAIL PROTECTED] wrote:

 It's fixed now.

Yep, compiles again, thanks.

Stefan


Re: junit.jar in Ant 1.5.3 distro?!?!?

2003-04-16 Thread Stefan Bodewig
On Tue, 15 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 Why is Ant 1.5.3 shipping with junit.jar in ANT_HOME/lib???

It is?  Which download?

Without shipping the license of JUnit and all that, we can't do it.

Stefan


Re: junit.jar in Ant 1.5.3 distro?!?!?

2003-04-16 Thread Stefan Bodewig
On Wed, 16 Apr 2003, Conor MacNeill [EMAIL PROTECTED]
wrote:

 I'll rebuild the distribution tonight.

One thing that you'll need to consider is that people may download the
old distribution from a mirror and try to check it with the signature
for the new distribution from www.apache.org.

You will probably have to chose different names for the archives.

Stefan


Re: [GUMP] Test Failure - Ant

2003-04-16 Thread Stefan Bodewig
On 16 Apr 2003, Diane Holt [EMAIL PROTECTED] wrote:

 [junit] Testcase:
 
 testCheckoutCommandLine(org.apache.tools.ant.taskdefs.optional.vss.MSVSSTest):
 FAILED 
 [junit] extra args
 [junit] junit.framework.AssertionFailedError: extra args
 [junit] at junit.framework.Assert.fail(Assert.java:47)
 [junit] at
 
 org.apache.tools.ant.taskdefs.optional.vss.MSVSSTest.checkCommandLines(MSVSSTest.java:455)
 [junit] at
 
 org.apache.tools.ant.taskdefs.optional.vss.MSVSSTest.testCheckoutCommandLine(MSVSSTest.java:323)

happens on my machine (Linux, in case this is important) as well.

Stefan


Re: cvs commit: ant/src/main/org/apache/tools/ant/types ZipFileSet.java defaults.properties

2003-04-22 Thread Stefan Bodewig
On Sat, 19 Apr 2003, Antoine Levy-Lambert [EMAIL PROTECTED]
wrote:

 I have coded the calls to the getters of ZipFileSet similarly to the
 getters of FileSet or AbstractFileSet in Zip.java.

They are the way they look right now because FileSet is much older
than ProjectComponent and thus didn't have project instance (same for
Path, BTW).

 Can we safely to change all the getters of AbstractFileSet

As long as you keep the old method signatures (of released code, that
is) for backwards compatibility, probably yes, but ...

 From: Conor MacNeill [EMAIL PROTECTED]

 Hmmm, it may even be a different project instance.

is something to consider.  I don't think we are testing a scenario
where a fileset gets inherited by a subbuild thoroughly, if at all -
still we may get away with the help of clone() that is performed in
Ant.java.

Stefan


Re: antlib

2003-04-22 Thread Stefan Bodewig
On Tue, 22 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 I agree with Stefan.

Cool.

Now if only I could find time to respond to Antoine's original mail.
8-) Will try very hard tomorrow.

 Regarding AntLib itself, XML descriptor or not, I'm more interested
 in being able to partition the namespace used by Ant to perform the
 name to class mapping currently restricted to tasks/types.

Let's start with tasks and types and see if/how that flies.

If we want to extend the plugability to mappers or selectors or
whatever (I do), the solution in the end may be a flat namespace
(everything is a type) as Costin seems to hint at when he wants to
drop the difference between task and type.

Stefan


Re: [GUMP] Test Failure - Ant

2003-04-23 Thread Stefan Bodewig
On Tue, 22 Apr 2003, Antoine Levy-Lambert [EMAIL PROTECTED]
wrote:
 From: Stefan Bodewig [EMAIL PROTECTED]

 Which documentation?
 I meant the ant manual page under docs/manual/CoreTasks/war.html
 Nested elements lib
 
 The nested lib element specifies a FileSet.

Well, yes.  This doesn't rule out zipfileset, I'd call it an
implementation detail that the user shouldn't have to be aware of.
Which also measn that using a reference to a plain fileset must work.

 What about changing the method signature of War#addLib from
 addLib(ZipFileSet fs) to addLib(FileSet fs) ?

Would break this here

war ...
  lib src=foo.zip/
/war

which should work right now (and in Ant 1.3+).

 Yes this is new, it was possible to do fileset ... id=xyz/
 war
 lib refid=xyz/
 /war
 
 before I did my changes.

Yes, I've seen Gianugo's post as well 8-)

Stefan


Re: cvs commit: ant/src/main/org/apache/tools/ant/types ZipFileSet.java

2003-04-23 Thread Stefan Bodewig
On 22 Apr 2003, [EMAIL PROTECTED] wrote:

   +if (o instanceof FileSet) {
   +   return (AbstractFileSet)(new ZipFileSet((FileSet)o));

the cast is not needed here.

   +}
   +else if (!(o instanceof ZipFileSet)) {

will always be true as instanceof ZipFileSet implies instanceof
FileSet.

Maybe you really wanted something like

if (o instanceof FileSet) {
return (AbstractFileSet) o;
} else if (o instanceof FileSet) {
   return (new ZipFileSet((FileSet) o));
} else {
String msg = getRefid().getRefId() +  doesn\'t denote a zipfileset 
or a fileset;
throw new BuildException(msg);
}

Stefan


ZipFileSet test failures in CVS HEAD

2003-04-23 Thread Stefan Bodewig
[junit] Testcase: 
testAttributes(org.apache.tools.ant.types.ZipFileSetTest):Caused an 
ERROR
[junit] null
[junit] java.lang.NullPointerException
[junit] at 
org.apache.tools.ant.types.ZipFileSetTest.testAttributes(ZipFileSetTest.java:149)
[junit] at java.lang.reflect.Method.invoke(Native Method)
[junit] at junit.framework.TestCase.runTest(TestCase.java:154)
[junit] at junit.framework.TestCase.runBare(TestCase.java:127)
[junit] at junit.framework.TestResult$1.protect(TestResult.java:106)
[junit] at junit.framework.TestResult.runProtected(TestResult.java:124)
[junit] at junit.framework.TestResult.run(TestResult.java:109)
[junit] at junit.framework.TestCase.run(TestCase.java:118)
[junit] at junit.framework.TestSuite.runTest(TestSuite.java:208)
[junit] at junit.framework.TestSuite.run(TestSuite.java:203)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:318)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeInVM(JUnitTask.java:872)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:562)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:538)
[junit] at 
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:231)
[junit] at org.apache.tools.ant.Task.perform(Task.java:399)
[junit] at org.apache.tools.ant.Target.execute(Target.java:309)
[junit] at org.apache.tools.ant.Target.performTasks(Target.java:336)
[junit] at 
org.apache.tools.ant.Project.executeTarget(Project.java:1404)[junit] at 
org.apache.tools.ant.Project.executeTargets(Project.java:1278)
[junit] at org.apache.tools.ant.Main.runBuild(Main.java:611)
[junit] at org.apache.tools.ant.Main.start(Main.java:198)
[junit] at org.apache.tools.ant.Main.main(Main.java:245)


[junit] Testcase: 
testCircularReferenceCheck(org.apache.tools.ant.types.ZipFileSetTest):FAILED
[junit] Dir is basedir expected:null but 
was:/home/bodewig/ASF/jakarta/jakarta-ant
[junit] junit.framework.AssertionFailedError: Dir is basedir 
expected:null but was:/home/bodewig/ASF/jakarta/jakarta-ant
[junit] at junit.framework.Assert.fail(Assert.java:47)
[junit] at junit.framework.Assert.failNotEquals(Assert.java:282)
[junit] at junit.framework.Assert.assertEquals(Assert.java:64)
[junit] at 
org.apache.tools.ant.types.AbstractFileSetTest.testCircularReferenceCheck(AbstractFileSetTest.java:281)
[junit] at java.lang.reflect.Method.invoke(Native Method)
[junit] at junit.framework.TestCase.runTest(TestCase.java:154)
[junit] at junit.framework.TestCase.runBare(TestCase.java:127)
[junit] at junit.framework.TestResult$1.protect(TestResult.java:106)
[junit] at junit.framework.TestResult.runProtected(TestResult.java:124)
[junit] at junit.framework.TestResult.run(TestResult.java:109)
[junit] at junit.framework.TestCase.run(TestCase.java:118)
[junit] at junit.framework.TestSuite.runTest(TestSuite.java:208)
[junit] at junit.framework.TestSuite.run(TestSuite.java:203)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:318)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeInVM(JUnitTask.java:872)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:562)
[junit] at 
org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:538)
[junit] at 
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:231)
[junit] at org.apache.tools.ant.Task.perform(Task.java:399)
[junit] at org.apache.tools.ant.Target.execute(Target.java:309)
[junit] at org.apache.tools.ant.Target.performTasks(Target.java:336)
[junit] at 
org.apache.tools.ant.Project.executeTarget(Project.java:1404)[junit] at 
org.apache.tools.ant.Project.executeTargets(Project.java:1278)
[junit] at org.apache.tools.ant.Main.runBuild(Main.java:611)
[junit] at org.apache.tools.ant.Main.start(Main.java:198)
[junit] at org.apache.tools.ant.Main.main(Main.java:245)



Re: [PATCH] add test case for containsregexp

2003-04-23 Thread Stefan Bodewig
I'm taking care of it.

Stefan


Re: antlib

2003-04-23 Thread Stefan Bodewig
On Tue, 22 Apr 2003, Jose Alberto Fernandez
[EMAIL PROTECTED] wrote:

 If we do this, then we can concentrate here on the local antlib
 while someone else can take care of the external work.

+1

Stefan


Re: antlib

2003-04-23 Thread Stefan Bodewig
On Mon, 21 Apr 2003, Antoine Levy-Lambert [EMAIL PROTECTED]
wrote:

 1) antlib  antjar
 
 
 deployment descriptor called antlib.xml which would go in the
 META-INF subdirectory of the antlib

I prefer an XML descriptor over manifest entries as well, because it
is easier to extend in the future.  Say centipede wants to add
information in that descriptor that antlib doesn't need to care
about.

 looks like that
 antlib version=1.5 

Is that the version of the antlib parser, i.e. does version define the
format of the file?  The minimal version of Ant the antlib needs?  Or
is that the version of the antlib itself?  I think we'll have to
provide all three items, while the first two may in fact be just one.

 2) type definitions 
 --
 
 allowing to define new implementations of mappers, selectors, paths,
 conditions,

We definitely need this, roles may be the key here.  With that, do we
really need separate task and data-type in antlib or are they
just special cases of roles?

 3) A scoping framework for the symbol tables needed to manage the
 antlib definitions

 Management of a hash symbol table containing names, classes, and
 roles. Roles are currently task or datatype.  It is possible to
 define new roles.

Works for me.

 4) A framework for managing classloaders where you can specify which
 classloader to use when loading an antlib.

This is the hardest part IMHO.  Sorry, I haven't looked at the
proposal thoroughly so far.  Is there such a classloading framework in
place?  What does it provide and how do you use it?

Stefan


Re: antlib

2003-04-23 Thread Stefan Bodewig
On Wed, 23 Apr 2003, Jose Alberto Fernandez
[EMAIL PROTECTED] wrote:

 I am not even sure the code today was examining the value.

8-)  It's been a long time, I know.

 we probably should define more meaningful attributes
 
   ant-required-version, antlib-version (version used to buils
   the library)
 
 that would probably mate things more clear.

Fine with me.

 With that, do we really need separate task and data-type in
 antlib or are they just special cases of roles?
 
 They should be.

So if they are just roles, why treat them in a different way than
other roles?  Why a task element?

define classname=... name=... role=task/

could do the same and be more consistent.  I don't have a strong
feeling here, just trying to find my way through the ideas without
having to read the code ;-)

Maybe something could even be in different roles at the same time?
See available, checksum or uptodate for things that are tasks and
conditions in one.

 Let me first say that this feature appeared by the need to be able
 to say,
 
   antlib name=A classpathref=XYZ/
   antlib name=B classpathref=XYZ/
 
 And being able to make sure that B and A use the same classLoader
 and therefore they can use each other components.

I understand that usecase and think it's important.  See Steve
Loughran's comment on the .NET tasks wanting to have access to the
datatypes defined in the cpptasks project for example.

 My solution at the time was this idea of a named classloader that
 you could define using a classpath, and then tell your antlibs use
 this or that classloader, if you use the same classloader visibility
 is guaranteed.

Take a look at what Costin had done to taskdef and typedef with
the loaderref attribute.  This has now (i.e. CVS HEAD) been
generalized in ClasspathUtils, the infrastructure for named
classloaders is there - at least the foundation for it.

Stefan


Re: Cleanup for ClasspathUtils

2003-04-23 Thread Stefan Bodewig
On Fri, 18 Apr 2003, Marc Portier [EMAIL PROTECTED] wrote:

 1. ClasspathUtils duplicates (i.e. stole) some code from the
 o.a.t.a.taskdefs.Definer: the least I should do is refactor that one
 to now use what is in the ClasspathUtils.

This is now in CVS.

I noted at least one difference, and I'm not sure whether it is going
to have any effect right now, but we may need to address this: If no
classpath had been defined, Definer would first check the project's
core loader and use that if set.  ClasspathUtils ignores this.

 While this is not that much of code I still would like to add to
 this some Helper that does all of this for you,

It's also in.

BTW

 public void setClasspathRef(Reference r) {
  this.cpHelper.setClasspathRef(r);
 }

I wouldn't implement this and setClasspath(Path) at all if I were to
write a new task today.  I'd simply stick with the nested element.

 (what about these ./proposal things?)

Ignore them for now.

 I take it the prefered patch format is cvs -q diff -u -N ?

Yep.  The -q is your choice, off course.

 tests are currently not working in cvs head

I think some of the failures you've seen are due to the copy
changes the line-end style bug that is supposed to be fixed now.  If
things keep failing, nag this list.  ant test is supposed to pass.

Stefan


Re: antlib

2003-04-23 Thread Stefan Bodewig
On Wed, 23 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 If everything is defined as a component at a low level, then they
 can be easily introspected to find out what interfaces components
 implement.

This breaks down if there is no specific interface for a role - like
task or data-type.  And also doesn't address things that can be in
multiple roles.

At least for task I'd expect some strong opposition against an
interface that marks them up.  Hi Costin ;-)

Stefan


Re: antlib

2003-04-23 Thread Stefan Bodewig
On Wed, 23 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 Forcing roles to map to an interface is probably a *good* idea!

Maybe, hmm, probably, not convinced ...

 Every single bean would become implicitly a data-type, and the ones
 with an execute() method implicitly become tasks. Beyond that, all
 other roles are interfaces.

How would you have a task that also is a condition?  It implements
Condition and has an execute method?

How would you have a datatype that also is a condition?  This may be
far-fetched, not sure.

Stefan


Re: antlib

2003-04-24 Thread Stefan Bodewig
On Thu, 24 Apr 2003, Jose Alberto Fernandez
[EMAIL PROTECTED] wrote:

 Two years ago (or was it three?)

One.

 this proposal got nowhere because it got picked appart to death.

I've seen the danger myself, this is why I've delayed my responses
today.

In the end we are not that far apart at all.  Let's get the things
together then.

* antlib needs a way to define mappings between names and classes.

Costin prefers a properties file.  Most others prefer XML.

My argument for XML is the extensibility.  We will need versioning, we
will need some statement of pre-reqs (like this antlib requires
log4j), we will need additional capabilities we do not see now.

We certainly could put this into MANIFEST.MF, but it would be hard to
put all of this into a properties file.  I like to keep the
information in a single place, so properties plus manifest is no good
idea IMHO.

* if we are having problems with roles right now, lets start small.

Let's make a version of antlib that knows about two predefined roles,
task and data-type.  I think this is already feature complete in the
proposal (which does even more).

Let's move this code with the restriction to tasks and types into the
main branch ASAP.  Let's sort out the classloading requirements as
well as the interplay of antlib with taskdef and typedef here.

After this flies, I'd expect us to get roles sorted out.  If we feel
like removing the difference between tasks and types, we can do so
then as well.

Stefan


Re: antlib

2003-04-24 Thread Stefan Bodewig
On Thu, 24 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 I'm not fond of this pre-req thing you're describing,

I didn't make myself clear, that's obvious.

In good old Ant terms:

available classname=org.apache.log4j.Category property=Log4j.present/
failThe antlib requires log4j version XYZ to run/fail

Maps to the idea of reusing Ant's existing vocabulary.

I want to enable the antlib to state what it needs, I didn't think of
a way to satisfy the pre-reqs (at least not yet).

 I think classloading issues would be greatly simplified if Ant
 loaded only its core in the system CL, and everything else in child
 AntLoaders.

It would simplify a lot but break backwards compatibility - the impact
depends on how broad you define what belongs to the core 8-)

Is the Java task part of the core?  There are several optional tasks
that create Java task internally in Ant itself, much more to be
expected outside of Ant.

Sequential?  ExecTask? Mkdir?  Soon you'll end up having almost
everything back on the system classloader (or at least on a
classloader common to all tasks).

We should enable such a mechanism, but we need to keep the door open
for the old mechanism.  We may even be forced to make the old
classloading scheme the default for everything that could be loaded
from the system classloader in Ant 1.5.3.

Stefan


Re: antlib

2003-04-25 Thread Stefan Bodewig
On Thu, 24 Apr 2003, Costin Manolache [EMAIL PROTECTED] wrote:

 Look - adding roles concept to ant, and adding antlib are 2
 separate issues.

I tend to agree - that's why I proposed to get antlib into the main
trunk with support for types and tasks only.  At least for starters.

If you want a custom mapper you can do so right now with a data type
and refid.  The same is not true for filter readers, conditions or
selectors.  But I feel that enabling that would inevitably lead us to
the more general polymorphism discussion and this is what I wanted to
avoid 8-).

Stefan


Re: antlib

2003-04-25 Thread Stefan Bodewig
On Thu, 24 Apr 2003, Dominique Devienne [EMAIL PROTECTED] wrote:

 So how do *you* propose we plug in custom implementations of all the
 things mentioned above, if not with roles?

That other thing we discuss and discuss over and over again without
getting anywhere 8-)

Polymorphism.

Stefan


Re: antlib

2003-04-25 Thread Stefan Bodewig
On Fri, 25 Apr 2003, peter reilly [EMAIL PROTECTED] wrote:

 I have implemented a generalization of FilterChain's usage of
 DynamicConfigurator in IntrospectionHelper.  This extends the
 introspection support to include methods of the form:

Yes, that's one way to implement it.  The tricky part starts if you
want to support polymorphism for more than one nested element.

Say class PathThatIgnoresBuildSysclassPathToTrickGump extends Path
and you want to use it in javac which has several nested elements
that are Paths.

My, will I ever by able to keep focused on one thread at a time 8-)

 2) As a consequence of 1), the same identifier by be used to point
 to different classes.

I see

manifest as data type - the one you'd use for refid usage - is
implemented by a different class than the manifest task.  Luckily we
never declared a data-type named manifest.

 3) they provide an optional adaptor to allow classes that do not
 support a requred interface.

This may be out of scope for antlib and in scope for the polymorphism
debate.

 My feeling is that roles are not needed to support dynamic
 conditions, filters ..., in fact I do not think that typedef is
 needed:

I agree.  At least no formal definition of a role.

Stefan


  1   2   3   4   5   6   7   8   9   10   >