On Apr 17, 2009, at 10:49 PM, Steve Appling wrote:

I noticed that Configuration.copy does not really end up copying everything. The list of dependencies is copied correctly, but other fields (like transitive) are not passed on to the copy.

This confused me for a couple of hours today. Is this a bug or intentional? I can make a patch for this either way (fix the bug or add some JavaDoc so someone else will know what to expect).

Seems like a bug to me, though.

Oh yes, this is a bug. The copy operation should copy all properties except the ones that establish the resolve. The copied configuration should be in unresolved state without the cachedResolveReport.

We model a Configuration as an entity object. But it becomes immutable after the resolve. If you want to resolve a configuration differently (e.g. with a different transitive settings), you just copy and modify the copy, and then do a resolve. Amongst other things, this should make the build behavior better traceable.

- Hans

--
Hans Dockter
Gradle Project lead
http://www.gradle.org





---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to