On Sun, Sep 16, 2012 at 07:32:39PM +0300, Alex Alexander wrote: > On Sep 16, 2012 4:55 PM, "Brian Harring" <[1]ferri...@gmail.com> wrote: > > > > Folks- > > > > Keeping it short and quick, a basic glep has been written for what > I'm > > proposing for DEPENDENCIES enhancement. > > > > The live version of the doc is available at > > > [2]http://dev.gentoo.org/~ferringb/unified-dependencies/extensible_depe > ndencies.html > > Am I the only one who thinks that this dep:{build,...} thing looks > really ugly and is hard to read? > > IMO simply removing the "dep" part would greatly improve things:
That 'dep' part isn't great, but it's added for a reason; to unify with USE_EXPAND/use group intended syntax. There's a reference in there to http://www.gossamer-threads.com/lists/gentoo/dev/260069#260069 which I'll formalize soon enough. > DEPENDENCIES=" > :build,run? ( ... ) > :run? ( ... ) > " For your suggestion, consider it if we *do* fxi USE expand- via using the same <namespace>:<setting> form. Using app-admin/mcollective ad an example, it's deps are thus: DEPEND="ruby_targets_ruby18? ( dev-lang/ruby:1.8 ) ruby_targets_ree18? ( dev-lang/ruby-enterprise:1.8 )" RDEPEND="dev-ruby/stomp ruby_targets_ruby18? ( dev-lang/ruby:1.8 ) ruby_targets_ree18? ( dev-lang/ruby-enterprise:1.8 )" Which, if USE_EXPAND targets were groupped, would go from this ruby_targets_ruby18? ( dev-lang/ruby:1.8 ) ruby_targets_ree18? ( dev-lang/ruby-enterprise:1.8 ) dep:run? ( dev-ruby/stomp )" to this: ruby:targets_ruby18? ( dev-lang/ruby:1.8 ) ruby:targets_ree18? ( dev-lang/ruby-enterprise:1.8 ) :run? ( dev-ruby/stomp ) > s/:/@/ would also be interesting Just a note; the character choosen was *intentionally* one that isn't a valid use character. @ is a valid character due to linguas. See the thread I referenced (ciaran's response, then my response). Short version; to use @, we need use subgroups; thus linguas@ca@valencia . > DEPENDENCIES=" > @build,run? ( ... ) > @run? ( ... ) > " DEPENDENCIES=" ruby@targets_ruby18? ( dev-lang/ruby:1.8 ) ruby@targets_ree18? ( dev-lang/ruby-enterprise:1.8 ) @run? ( dev-ruby/stomp )" Using equivalent syntax for mcollective. I'm not a huge fan of dep:, and I'm a bit wary of a bare @{run,test,whatever} since it carries with it an implicit "this is targetting the dep namespace". That said, I'm not opposed to it- just as I said, I'm a bit wary at first glance. Comments? ~harring