On Mon, May 31, 2010 at 17:09, Adam Murdoch <[email protected]> wrote: > > > On 29/05/10 3:57 AM, Steve Appling wrote: >> >> We would really like to resolve the issues related to circular >> dependencies (GRADLE-914 in particular) sometime soon. I know this is >> marked for 0.9, but so are 91 other issues. Is this something that anyone >> is planning on addressing in the short term (within the next couple of >> weeks)? If not, does anyone understand the underlying problem enough to >> point me in the right direction? >> > > I know of 2 problems. There may be more, but this is as far as I got: > > 1. The compile configuration is now transitive by default (for good or bad).
:( That blows. Should be non transitive, if you need it on your compile path, put it there. This way I know exact what I need to compile, not some third level transitive dependency that happens to be there. Major sad face on this one. > So, using a runtime dependency to break the cycle isn't going to work. This > is easily fixed by configuring the compile configuration to be > non-transitive. Another sad face. > But, this does highlight some awkwardness in the dependency > dsl, where the only options are to include the jar on its own or the entire > transitive closure of everything the jar might need (even though it doesn't > for the purposes of compiling a dependent project). I think we need > something more flexible here, so we can provide a better default behaviour. This would be nice so we can get back to compile being non-transitive. > 2. The DefaultProjectDependency.getBuildDependencies() implementation > doesn't consider whether the configuration it belongs to is transitive or > not. And so, it always drags in the tasks to build the runtime configuration > of the target project, even though only the jar may be required. This is the > actual bug. > > I was going to try to fix this for 0.9. But there's plenty of other stuff to > fix, so if you want to have a look at this, feel free to do so. > > > -- > Adam Murdoch > Gradle Developer > http://www.gradle.org > CTO, Gradle Inc. - Gradle Training, Support, Consulting > http://www.gradle.biz > > > --------------------------------------------------------------------- > To unsubscribe from this list, please visit: > > http://xircles.codehaus.org/manage_email > > > -- Jason Porter Software Engineer Open Source Advocate PGP key id: 926CCFF5 PGP key available at: keyserver.net, pgp.mit.edu --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email
