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