Bug 28128 - <parallel> task needs cascade option
Summary: <parallel> task needs cascade option
Status: NEW
Alias: None
Product: Ant
Classification: Unclassified
Component: Core tasks (show other bugs)
Version: 1.6.1
Hardware: PC All
: P3 enhancement (vote)
Target Milestone: ---
Assignee: Ant Notifications List
URL:
Keywords:
Depends on: 28124 16906 25734
Blocks:
  Show dependency tree
 
Reported: 2004-04-01 12:40 UTC by Oliver Dungey
Modified: 2008-11-24 03:58 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
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.