On Fri, Aug 1, 2014 at 5:18 AM, Szczepan Faber <szcze...@gmail.com> wrote:
> > b) I would add some higher level api that would use a). For example: > > dependencies { > components { > > > modules("com.google.collections:google-collections").deprecatedBy("com.google.guava:guava") > //or replacedBy(), supersededBy() > } > } > > Thoughts? > > We're designing a similar DSL for targeting version-selection rules to a particular module or set of modules ( https://github.com/gradle/gradle/blob/master/design-docs/component-metadata.md#story-build-script-targets-versionselection-rule-to-particular-module ). I'm not sold on that DSL, but we do need a way to say "this block applies to _all_ modules". I guess we can either choose to use a string-based selector for choosing the modules that apply: dependencies { components/versions/some-other-rule-type { modules('*') { } modules('com.google.guava:*') { } modules('com.google.guava:guava') { } } Or use explicit parameters: dependencies { components/versions/some-other-rule-type { allModules { } group('com.google.guava') { } group('com.google.guave').name('guava') { } } I think I prefer the first approach. But we should definitely aim for consistency here. -- Darrell (Daz) DeBoer http://www.gradleware.com