+1 for this change, Antoine ----- Original Message ----- From: "Peter Reilly" <[EMAIL PROTECTED]> To: "Ant Developers List" <dev@ant.apache.org> Sent: Friday, September 22, 2006 4:00 PM Subject: Deferring references
> Currently in ant, there is two steps in processing > a project build file, a parsing step and an execution > step. In the parsing step a DOM like structure of > Targets and UnknownElements are build up. > These targets and unknown elements are then processed > in the execution step. This model works quite ok. > One part that does not work like this is the processing > of the "id" attribute, these get processed at parsing > stage. > > This has given rise to a lot of bugs and strange behaviour. > http://issues.apache.org/bugzilla/show_bug.cgi?id=34458 > http://issues.apache.org/bugzilla/show_bug.cgi?id=36955 > http://issues.apache.org/bugzilla/show_bug.cgi?id=37688 > http://issues.apache.org/bugzilla/show_bug.cgi?id=21724 > > This type of bug will happen more as people write > larger build files (or equivalate using lots of <import> and <macrodef>) > and use shared build files. > > I propose that we defer handing id's until the processing > stage. > > The change to do this is very small. > Index: src/main/org/apache/tools/ant/helper/ProjectHelper2.java > > =================================================================== > > --- src/main/org/apache/tools/ant/helper/ProjectHelper2.java (revision > 448497) > > +++ src/main/org/apache/tools/ant/helper/ProjectHelper2.java (working > copy) > > @@ -1007,8 +1007,6 @@ > > task.setLocation(location); > task.setOwningTarget(context.getCurrentTarget()); > > - context.configureId(task, attrs); > - > if (parent != null) { > // Nested element > ((UnknownElement) parent).addChild(task); > > I have have played a little with this and everthing seems > to work fine. > > > Peter > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]