On Jul 12, 2009, at 3:54 PM, Steve Appling wrote:

I think that a significant bug related to dependency conflicts has been introduced some time between revision 1590 and 1636 (I know that is a long time). I suspect that the problem was introduced with revision 1633 but I don't understand the resolving mechanism well enough to fix this.

I change the groovy quickstart sample in the conflict branch of my git repo at git://github.com/sappling/gradle.git to demonstrate this.

In this example I changed the testCompile configuration to depend on version 3.8.1 of junit. The groovy 1.6.0 dependency has a transitive dependency to version 3.8.2 of junit. This seems to cause Report2Classpath to filter out junit alltogether from the test classpath instead of using the most recent version or reporting an error. If you change the version of junit requested in the sample's build.gradle to 3.8.2 or exclude junit from the groovy configuration it will work fine. Note that this works with version 3.8.1 if you use gradle 0.6.1, but not with the current trunk.

This has been the source of several problems for us over the last week and was very hard to track down. We are temporarily working around it by adding some exclude rules to certain problematic configurations.

I wonder if this is also the root cause of the problem that Russel Winder has been discussing on the user list.

Thanks for pointing this out. In my working copy this is fixed. I plan to commit the updated dependency handling sometimes today.

- Hans

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


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

   http://xircles.codehaus.org/manage_email


Reply via email to