Hi,

I wanted to suggest making "layout" required when defining an Ivy repository
for Gradle 3.0. The layout is the directory structure used to store
artifacts. Ivy has a convention of using a certain directory structure
layout and this layout can be specified by setting the layout to "ivy".
Gradle by default uses its own non-standard directory layout structure.
There's really no reason for this as far as I know except for legacy.

The problem with the non-standard directory structure is that it's very
unexpected and hurts interoperability. I would always expect the
conventional directory layout to be used instead of a custom layout since
this is what I've been trained to expect from other tools. The reason I
discovered this issue is that I was trying to publish a library with Gradle
for use in an SBT project. It took me nearly an entire day to make this work
because of a few different issues, but this was one of the largest. It would
have saved a tremendous amount time to know that Gradle had chosen it's own
behavior instead of using the convention defined by Ivy and used by other
tools that read Ivy repos such as Ant, Eclipse, and SBT. If this were being
written from scratch I think we can probably all agree it makes sense to use
the standard layout since using a custom layout has several drawbacks and no
benefits. The reason I like Gradle over other build tools is that it's
easier to use and defaults are a big part of ease-of-use. I'd love to save
others from the hours of frustration I experienced debugging a bad default.

Thanks,
Ben




--
View this message in context: 
http://gradle.1045684.n5.nabble.com/Making-layout-required-for-ivy-repositories-tp5713196.html
Sent from the gradle-dev mailing list archive at Nabble.com.

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

    http://xircles.codehaus.org/manage_email


Reply via email to