public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Brian Harring <ferringb@gmail.com>
To: gentoo-dev@lists.gentoo.org
Cc: axs@gentoo.org
Subject: Re: [gentoo-dev] Unified DEPENDENCIES concept
Date: Thu, 13 Sep 2012 15:17:32 -0700	[thread overview]
Message-ID: <20120913221732.GE28593@localhost> (raw)
In-Reply-To: <CAATnKFARq9+K9eaYwNGT9HmQZ1PhBSf5zLDFSdZU+8+VTacavA@mail.gmail.com>

On Fri, Sep 14, 2012 at 07:18:54AM +1200, Kent Fredric wrote:
> On 11 September 2012 14:16, Brian Harring <ferringb@gmail.com> wrote:
> > On Fri, Sep 07, 2012 at 04:14:17PM -0400, Ian Stakenvicius wrote:
> >> Is there anything in particular in the spec/proposal for DEPENDENCIES
> >> that would exclude the addition of individual "build: app-cat/myatom"
> >> "run: app-cat/myatom" deps by an eclass or eclasses?  I know the
> >> "goal" here is to make things atom-centric, but I can't see an
> >> implementation ever working of this that wouldn't permit the "pile-on"
> >> of additional entries of different (or even the same) roles on
> >> identical or near-identical atoms.
> >
> > They could be piled on; it would require each eclass to reset the
> > label for safety reasons though; same goes for ebuilds frankly (or the
> > PM would have to reset the context to build+run: each time through).
> >
> > Pardon if addressed elsewhere; this thread is a fucking mess...
> > ~harring
> >
> Correct me if I'm wrong, but couldn't the entire proposition could be
> implemented in an eclass, not needing the EAPI development cycle to be
> tied up with it.
> 
> All you need is something in bash that can parse DEPENDENCIES and
> populate *DEPEND , and the underlying guts could be done in
> practically any language without requiring PM specific
> implementations.

You've got it inverted; if any autopopulation is occuring, *DEPEND -> 
DEPENDENCIES is the sane form.

While it definitely *is* possible to render DEPENDENCIES down into 
depend/rdepend (after all, the PM has to do exactly this for 
resolution), that does /not/ mean doing it in bash is a good idea.

I'd really not want to try that using labels; using use conditionals 
('dep:run,build? ( targets )') is frankly a bit easier imo, but still; 
why do so unless one likes pain?  It doesn't actually gain us 
anything via missing the point of DEPENDENCIES.

The point of unified DEPENDENCIES var (regardless of the form) is 
thus:
1) ability to specify common deps once, w/out having to use 
intermediate vars/copy-pasting/etc.  Think COMMON_DEPEND, and this 
should make sense.

2) To shift to a form where adding new dependency targets is easy- 
whether it be sdepend, fdepend, tdepend, or hdepend (or 
ONE-RING-DEPEND to rule them all).  This actually is rather important; 
for the average 95% case, devs won't actually have to pay much 
attention to those vars; but for those of us a bit further out (cross 
compilation, heavy parallelization, etc) those depend forms are 
becoming increasingly painful in their absense.


Basically, having devs specify DEPENDENCIES in ebuilds, which then an 
eclass chunks out into DEPEND/RDEPEND misses the point of this; it's 
doable, it's just not particularly sane imo.

The other way around, having *DEPEND automatically be collapsed into 
DEPENDENCIES, however is very sane- it makes transition/compatibilty 
for devs bloody simple, while structuring it so we can do further 
enhancements.

~harring


  reply	other threads:[~2012-09-13 22:18 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-07 11:45 [gentoo-dev] Unified DEPENDENCIES concept Ciaran McCreesh
2012-09-07 12:29 ` Michał Górny
2012-09-07 12:36   ` Ciaran McCreesh
2012-09-07 14:23     ` Michał Górny
2012-09-07 14:53       ` Ciaran McCreesh
2012-09-07 15:02         ` Michał Górny
2012-09-07 15:07           ` Ciaran McCreesh
2012-09-07 15:16             ` Michał Górny
2012-09-07 15:25               ` Wulf C. Krueger
2012-09-07 14:50 ` Ian Stakenvicius
2012-09-07 14:58   ` Ciaran McCreesh
2012-09-07 15:46 ` Alexis Ballier
2012-09-07 16:03   ` Michał Górny
2012-09-07 16:11     ` Ian Stakenvicius
2012-09-07 16:28       ` Michael Mol
2012-09-07 16:34         ` Ciaran McCreesh
2012-09-07 16:40     ` "Paweł Hajdan, Jr."
2012-09-07 16:47       ` Ciaran McCreesh
2012-09-07 17:40     ` Alexis Ballier
2012-09-07 18:21       ` Michał Górny
2012-09-07 19:59         ` Alexis Ballier
2012-09-07 20:10           ` Michał Górny
2012-09-07 20:14             ` Ian Stakenvicius
2012-09-11  2:16               ` Brian Harring
2012-09-13 19:18                 ` Kent Fredric
2012-09-13 22:17                   ` Brian Harring [this message]
2012-09-15 11:06                     ` Kent Fredric
2012-09-15 20:33                       ` Brian Harring
2012-09-15 22:03                         ` Michał Górny
2012-09-16  1:20                           ` [gentoo-dev] example conversion of gentoo-x86 current deps to unified dependencies Brian Harring
2012-09-16  2:39                             ` Diego Elio Pettenò
2012-09-16  7:39                             ` Ben de Groot
2012-09-16 13:15                               ` Brian Harring
2012-09-18 22:51                                 ` Matt Turner
2012-09-19  4:22                                 ` Ben de Groot
2012-09-19 10:59                                   ` [gentoo-dev] " Duncan
2012-09-19 13:09                                     ` Michael Orlitzky
2012-09-19 13:16                                       ` Ian Stakenvicius
2012-09-30 22:15                                         ` Brian Harring
2012-10-01  0:23                                           ` Duncan
2012-10-02 17:47                                           ` Ian Stakenvicius
2012-10-03  4:00                                             ` Ben de Groot
2012-10-07 14:09                                           ` [gentoo-dev] " Steven J. Long
2012-09-16  7:56                             ` [gentoo-dev] " Michał Górny
2012-09-16 11:10                               ` Brian Harring
2012-09-16 11:21                                 ` Michał Górny
2012-09-16 11:49                                   ` Brian Harring
2012-09-16 12:02                                     ` Michał Górny
2012-09-16 13:38                                       ` Brian Harring
2012-09-07 16:10   ` [gentoo-dev] Unified DEPENDENCIES concept Ciaran McCreesh
2012-09-07 16:53     ` Zac Medico
2012-09-07 16:58       ` Ciaran McCreesh
2012-09-07 17:02         ` Ian Stakenvicius
2012-09-07 17:40           ` Zac Medico
2012-09-07 17:58             ` Ian Stakenvicius
2012-09-07 18:18               ` Zac Medico
2012-09-07 18:23                 ` Ciaran McCreesh
2012-09-07 18:23                 ` Zac Medico
2012-09-07 18:23               ` Michał Górny
2012-09-07 18:31                 ` Ciaran McCreesh
2012-09-07 18:46                   ` Michał Górny
2012-09-07 18:52                     ` Ciaran McCreesh
2012-09-07 19:11                       ` Michał Górny
2012-09-07 19:13                         ` Ciaran McCreesh
2012-09-07 19:21                           ` Michał Górny
2012-09-07 19:25                             ` Ciaran McCreesh
2012-09-07 20:07                               ` Michał Górny
2012-09-07 20:15                                 ` Ciaran McCreesh
2012-09-07 20:08                       ` Ian Stakenvicius
2012-09-07 20:14                         ` Ciaran McCreesh
2012-09-07 20:28                           ` Ian Stakenvicius
2012-09-07 20:40                             ` Ciaran McCreesh
2012-09-07 19:42                     ` Ian Stakenvicius
2012-09-07 17:31         ` Zac Medico
2012-09-07 16:12   ` "Paweł Hajdan, Jr."
2012-09-07 16:43     ` Michał Górny
2012-09-07 22:55 ` Michael Orlitzky
2012-09-08  6:43   ` Ciaran McCreesh
2012-09-08 13:01     ` Michael Orlitzky
2012-09-08  7:27   ` Michał Górny
2012-09-08  1:02 ` Patrick Lauer
2012-09-09  3:32 ` Matt Turner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120913221732.GE28593@localhost \
    --to=ferringb@gmail.com \
    --cc=axs@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox