ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Brown" <>
Subject Re: assertion changes
Date Thu, 22 Nov 2001 01:50:16 GMT
For clarification, I want to add some comments about the version compatibility issue with the
proposed assertion enabling features.

None of the Ant code proposed here requires 1.4.  All of this will compile and execute fine
with 1.1.

Using the new features would require 1.4.  The new features include passing "-da" and "-ea"
to the interpreter via new optional attributes and elements in the java target, which are
not valid options pre 1.4.  This would be a problem if someone tried to use this feature,
but they were using a pre 1.4 vm.  Why would that ever happen?  It wouldn't.  The only reason
to ever add these new options to your build file would be to enable or disable assertions.
 You would not do that unless your code had assertions in it to begin with.  If your code
has assertions in it, you are already imposing on the user that they must have 1.4.  Code
with assertions that was compiled under 1.4 will run just fine on pre 1.4 vms, but will not
compile with a pre 1.4 compiler.  If someone is accessing your source code and you have assertions
in your source code, they will need 1.4 to build, regardless of wether these new features
are added to Ant.

I hope that all makes sense.  I have been taking advantage of these features for several weeks
now and I think others would also.

Please let me know if I can answer any questions about this.


  It may not be advisable to check the vm version for >= 1.4 before allowing these options
because the vm that is being launched isn't necessarily the same vm that the task is executing
in.  In my opinion, this "functionality" would not be funcionality at all, but would be a
problem in some circumstances.  Of course, this implementation is entirely passive in that
it does not impose anything at all on users not interested in taking advantage of it.

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message