On 03/02/2013, at 9:02 PM, Hans Dockter wrote:

> 
> 
> On Sat, Feb 2, 2013 at 11:50 PM, Adam Murdoch <[email protected]> 
> wrote:
> Hi,
> 
> Something I'd like to try to achieve as part of the work to introduce 
> multiple outputs for JVM based projects, is to create fewer task instances at 
> configuration time. There are 2 main parts to this:
> 
> 1. Don't create tasks that will never be required. For example, if there is 
> no src/main/resources directory, and nothing generates it, then don't create 
> a processResources task.
> 2. Don't create tasks that are not required for the current build. For 
> example, if I'm generating the javadoc, don't create the test task or any of 
> its dependencies.
> 
> Ignore for the moment how we might do this. Let's just say its possible to 
> infer both #1 and #2.
> 
> Which would be awesome. But doesn't it leave the door open for certain 
> undetectable(?) configuration time dependencies? I would say if we are able 
> to reliably solve that problem, reliable parallel task execution isn't far 
> away either (if we want to go for it). 

Possibly. We'd be inferring whether a thing is required, but not how it is 
used, so we wouldn't know whether its safe to run it concurrently with other 
tasks. I imagine we could tweak things to allow us to figure this out.


--
Adam Murdoch
Gradle Co-founder
http://www.gradle.org
VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting
http://www.gradleware.com

Reply via email to