On 13 March 2013 11:36, Daz DeBoer <darrell.deb...@gradleware.com> wrote:

> Hi Marcin
>
> You pull request has been merged with a few tweaks. The most important of
> those was to fix DefaultTaskGraphExecuter so that it is considered
> "populated" whenever a task has been added. Without this fix 'gradle
> --dry-run' was broken. This breakage was picked up by
> TaskExecutionIntegrationTest, which I converted to Spock and added a few
> "mustRunAfter" test cases.
>
> Other than that, it looks great. Get this into the user guide and I'm sure
> it will be a popular feature.
> One minor improvement would be to support the map-based syntax for
> mustRunAfter, in a similar way to dependsOn:
>
>     task foo(mustRunAfter: 'bar')
>
> Not sure what our plans around supporting different parameters in this
> way, but it feels like a natural fit.
>

Let's see what falls out of the next story first.


>
> On 11 March 2013 17:00, Marcin Erdmann <marcin.erdm...@proxerd.pl> wrote:
>
>> On Mar 11, 2013 1:32 AM, "Adam Murdoch" <adam.murd...@gradleware.com>
>> wrote:>
>>
>  > Personally, I would love to see some more work on task execution model,
>> if you're interested in working on it.
>>
>> I actually wanted to work on making copy task encoding-aware but it now
>> seems to me like working on the task execution makes more sense and will be
>> more benefitial to a bigger group of users. I also know the code in that
>> area pretty well now so hopefully I should be able to get stuff done quite
>> quickly. Any design docs and/or implementation hints on those 'finalizer'
>> tasks would be highly appreciated. I'm happy to start on it after I'm done
>> with the mustRunAfter docs.
>>
> I agree that it would be fantastic to keep moving forward on improving
> task execution. Our Ant-import support will never function properly without
> "shouldRunAfter", and "finalisers" as described by Adam would be great for
> a whole bunch of use cases.
>
> The reporting spec (
> https://github.com/gradle/gradle/blob/master/design-docs/reporting.md) is
> probably the only real design doc for these changes.
>

It is the design doc for the changes.


> You'll see that there are a few integration tests that we don't yet have
> coverage for wrt "mustRunAfter". If you are willing to add those in, that
> would be awesome. The spec is a little inconsistent regarding whether the
> dashboard task should run if a reporting task fails: I think we're happy
> with it as implemented now, with the next stories taking this a little
> further.
>

We are. I've updated the spec to (hopefully) be more consistent.


>
> The best design discussion I can find regarding finalisers is in a _very_
> long email thread on the dev list. Here's a link to the middle of it:
> http://gradle.1045684.n5.nabble.com/Gradle-reporting-improvements-tp5710408p5710809.html
>

I've written up the current plan for finalisers in the spec. This is really
a write-up of the current state of the discussion, rather than a concrete
plan:
https://github.com/gradle/gradle/blob/master/design-docs/reporting.md#automatically-add-dashboard-report-task-to-task-graph

Please (everyone) have a read and give feedback. In particular, we need to
sort out how the DSL is going to look.


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

Join us at the Gradle Summit 2013, June 13th and 14th in Santa Clara, CA:
http://www.gradlesummit.com

Reply via email to