Bug 28128

Summary: <parallel> task needs cascade option
Product: Ant Reporter: Oliver Dungey <odungey>
Component: Core tasksAssignee: Ant Notifications List <notifications>
Status: NEW ---    
Severity: enhancement    
Priority: P3    
Version: 1.6.1   
Target Milestone: ---   
Hardware: PC   
OS: All   
Bug Depends on: 28124, 16906, 25734    
Bug Blocks:    

Description Oliver Dungey 2004-04-01 12:40:07 UTC
From using the parallel task I have found that it is annoying that any sub tasks
of things called in a parallel block are also run in parallel. Sometimes you
just want to run the tasks specified as parallel and not their children. If an
attribute cascade=true/false was provided it would make it much safer/more flexible.

This would also assist where targets called in a parallel task have dependencies
that you cannot control with a <sequential> block
Comment 1 Oliver Dungey 2004-04-01 12:41:34 UTC
Adding my other related bugs as dependencies
Comment 2 Jose Alberto Fernandez 2004-04-01 13:42:06 UTC
Some small points here, what do you mean by subtasks? You mean like in

 <parallel>
  <if>
    <istrue .../>
    <then> <task1/> </then>
    <else> <task2/> </else>
  </if>
 </parallel>

Are task1 and task2 the subtask you are referring to? This one does not make 
sense to me at all.

Or are you talking about dependency TARGETS executed when calling <antcall/>?

Notice that <antcall/> executes in completely new execution environment. 
Including reparsing the buildfile. the execution of the target is completely
unaware of weather the call happens inside a parallel or not.

If you want to not execute dependencies in a call to <antcall/> you need
to restructure your build to provide you with a target with no dependencies.

Now if you are talking about something else, please give an example.
Comment 3 Oliver Dungey 2004-04-02 08:15:42 UTC
Sorry, I badly worded this. I was referring to this scenario:

<target name="someothertarget" depends="1,2,3etc">
</target>

<target name="aTarget">
    <parallel>
        <antcall target="someothertarget" inheritall="true"/>
    </parallel>
</target>

... but I have now been told that the <parallel> does not continue into 
<antcall> as this is a new environment, not sure if this is documented though.