On Apr 17, 2009, at 7:14 PM, Steve Appling wrote:
I know this is a work in progress, but thought some feedback might
be useful now.
The configuration DSL as implemented differs some from the proposal
at http://docs.codehaus.org/display/GRADLE/Dependencies
The proposal was:
configurations {
newConf extends: compile, transitive: true
// alternatively
newConf {
extends = compile
transitive = true
}
existingConf transitive: true
}
The map based syntax does not appear to work - I'm hoping this is
just not implemented yet, because it is nice and concise :)
The more verbose syntax options that works are:
configurations {
newConf {
extendsFrom compile
//or
extendsFrom = [compile]
transitive = true
}
}
The following, however, does not work
configurations {
newConf {
extendsFrom = compile
transitive = true
}
}
Configuration.setExtendsFrom takes a Set of superConfigs not a
single one. This is awkward and most usages will probably have only
a single parameter. Perhaps this should work with both a list and a
single Configuration as was discussed for flatDir earlier today.
Thanks for your feedback. It is work in progress. But it is very
helpful to bring this to a point.
BTW: What we try to achieve is a separation between our DLS and our
plain Java API. Eventually we want to have a Java only core (we have
this mostly already) that is not influenced by DSL requirements. DSL
requirements are often depend strongly on the internal DSL language.
We want to be open to multiple build script engines as well as as Java
only usage scenario (e.g. an embedded one). With the planned
OSGi'fication (and modularization) in 0.8 the separation will become
clearer. In the case above the map syntax will be part of the
ConfigurationHandler.
- Hans
--
Hans Dockter
Gradle Project lead
http://www.gradle.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email