ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Solofnenko" <trel...@gmail.com>
Subject Re: <scriptcondition> is broken with Jython in the recent trunk builds
Date Tue, 31 Jul 2007 22:26:23 GMT
It is just a thought - should ScriptFilter, ScriptMapper, ... also return a
value instead of setting it?

- Alexey.

On 7/31/07, Matt Benson <gudnabrsam@yahoo.com> wrote:
>
>
> --- Alexey Solofnenko <trelony@gmail.com> wrote:
>
> > Old code was executing self.setValue() and the
> > current behaviour breaks
> > backward compatibility. I have tried old
> > ScriptCondition.eval() and it fixed
> > the problem. I think we should add "expression"
> > attribute to
> > AbstractScriptComponent and change it to use it with
> > evaluateScript(),
> > otherwise nested text will be executed with old
> > executeScript() call.
>
> Thanks for running this down, Alexey.  I see where
> you're coming from with the "expression" attribute,
> though I'm not sure I agree it should live all the way
> up in AbstractScriptComponent, because we can't use it
> to automatically drive anything.  I am going to add it
> to ScriptCondition directly; if we change our minds
> later pulling it up shouldn't cause any problems.
>
> -Matt
>
> >
> > - Alexey.
> >
> > On 7/31/07, Peter Reilly
> > <peter.kitt.reilly@gmail.com> wrote:
> > >
> > > For BSF there are two methods to run a script:
> > >   eval and exec,
> > >
> > > In ant 1.6.* the only method supported was exec.
> > Hence all
> > > the <script*> types called methods on self to set
> > the return
> > > value.
> > >
> > > For ant 1.7.0, I modified the scripting code to
> > allow access to
> > > eval and exec, but did not modify any calling
> > types to use
> > > eval rather than exec. (In fact I did not test the
> > eval on anything)
> > > I placed it here to allow expression handling from
> > property callbacks
> > > - something like <if test='${groovy: abc ==
> > "abc"}"> ..., but did
> > > not follow up.
> > >
> > > I assume that jython does not like a new line in
> > its expression.
> > >
> > > one can in python do
> > > a = 1
> > > if a > 0:
> > >    b = 2
> > > however, one cannot do
> > > if #
> > >   a > 0:
> > >
> > >
> > > ...
> > > So I think that this is a clear case of BC
> > problem.
> > > It would be nearly impossible to use
> > <scriptcondition> with
> > > jythton in it's current state.
> > >
> > >
> > > (I cannot test at the moment due to
> > (bsf/log4j/commons
> > > logging/jython.jar issues)
> > >
> > > Peter
> > >
> > >
> > >
> > > On 7/31/07, Dominique Devienne
> > <ddevienne@gmail.com> wrote:
> > > > On 7/31/07, Matt Benson <gudnabrsam@yahoo.com>
> > wrote:
> > > > > <scriptcondition> originally behaved such that
> > a
> > > > > default value can be declared on the task as
> > an
> > > > > attribute, and the embedded script can set the
> > > > > condition value.  I preserved this behavior,
> > but added
> > > > > a preference for a return value, if any, from
> > the
> > > > > script:  again, on the basis that this seemed
> > a (more)
> > > > > natural behavior to me.  DD, you said "not
> > returning a
> > > > > value is fine by you"... and that's what
> > > > > <scriptcondition> always did, and _should_
> > still
> > > > > allow... am _I_ missing anything (other than
> > whatever
> > > > > I've apparently done to break python
> > compatibility)?
> > > >
> > > > Ah, sorry, I meant that "not returning a value
> > is meaningless to me".
> > > > Sure, if a default value for the condition is
> > set as an attribute, why
> > > > not (although I don't see why that's necessary
> > or useful), but a
> > > > scriptcondition is supposed to be a script
> > fragment which returns a
> > > > boolean value, and I don't see the point of not
> > returning a value.
> > > > --DD
> > > >
> > > > PS: The error message could be nicer though ;-)
> > > >
> > > >
> >
> ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail:
> > dev-unsubscribe@ant.apache.org
> > > > For additional commands, e-mail:
> > dev-help@ant.apache.org
> > > >
> > > >
> > >
> > >
> >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > dev-unsubscribe@ant.apache.org
> > > For additional commands, e-mail:
> > dev-help@ant.apache.org
> > >
> > >
> >
> >
> > --
> > Alexey N. Solofnenko
> > Home: http://trelony.cjb.net/
> > Pleasant Hill, CA (GMT-8 usually)
> >
>
>
>
>
>
> ____________________________________________________________________________________
> Choose the right car based on your needs.  Check out Yahoo! Autos new Car
> Finder tool.
> http://autos.yahoo.com/carfinder/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org
>
>


-- 
Alexey N. Solofnenko
Home: http://trelony.cjb.net/
Pleasant Hill, CA (GMT-8 usually)

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