From: Brian Harring <ferringb@gmail.com>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] eapi function (Was: Collecting opinions about GLEP 55 and alternatives)
Date: Wed, 25 Feb 2009 16:02:46 -0800 [thread overview]
Message-ID: <20090226000246.GK3506@hrair> (raw)
In-Reply-To: <20090225230307.33c9f4f8@snowcone>
[-- Attachment #1: Type: text/plain, Size: 2843 bytes --]
On Wed, Feb 25, 2009 at 11:03:07PM +0000, Ciaran McCreesh wrote:
> On Wed, 25 Feb 2009 04:49:51 -0800
> Brian Harring <ferringb@gmail.com> wrote:
> > 4) eapi as a function; instead of "EAPI=1", do "eapi 1", required as
> > the first statement (simplest way).
>
> Doesn't solve anything over having it as a variable, and has a messy
> upgrade path.
>
> > - global scope changes can occur (inherit mechanism changes
> > included).
>
> Global scope changes can no more occur than they can with it as a
> variable. All it does is changes where the barfing occurs to slightly
> earlier on.
Bullshit. First invocation of the ebuild, that means it can do
whatever it wants to the environment- literally swapping in the EAPI
environment right then/there. Auto inherits, changing the inherit
mechanism, everything (this includes shopt adjustments).
Not even sure why you're arguing that one, but back it up w/ examples
if you want to continue that line of FUD.
> > - transition is slightly icky; basically one of the following is
> > required-
> > a) for EAPI>=2, do 'eapi 3 || die "upgrade your manager"'. Reason
> > for this is that current managers obviously lack an eapi
> > function, to make managers available *now* blow up the || die is
> > required. This solution can be deployed now, no transition required
> > although at some point stating "eapi is required retroactively for
> > all eapis" would be wise to eliminate the need for the || die (cut
> > support basically for old managers)
>
> Global scope die is very very messy. This leaks out to users in the
> form of horrible messages that make the user think something's badly
> broken.
One would think "upgrade your manager" would be... self explanatory.
Regardless, spelling it out- the user visible barf is only visible on
existant managers.
For any manager supporting eapi>2 (thus having the function), the
function can exist out cleanly (no stderr complaints) from sourcing at
that point without issue.
> > b) bashrc trickery, defines an eapi if it's unset. Said eapi
> > function exports EAPI=$1, optionally triggering a die if the eapi
> > isn't 0,1,2 (since any later eapi would require a manager upgrade
> > which would also have the eapi function).
>
> Unportable, and still leaks out to users.
Two options were given there; one 'leaks out to users', the other is
the old behaviour (eapi env setting)- again, this is only visible for
the window of pre eapi 3 managers, meaning it's a one time hit (rather
then continual as you're implying).
Every proposal has uglyness- g55 for example doesn't give the user any
indication that they're not seeing ebuilds due to EAPI (in other words
loss of functionality that exists now).
~brian
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
next prev parent reply other threads:[~2009-02-26 0:02 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-24 22:21 [gentoo-dev] Collecting opinions about GLEP 55 and alternatives Petteri Räty
2009-02-24 22:49 ` Ferris McCormick
2009-02-24 23:48 ` [gentoo-dev] " Ryan Hill
2009-02-25 0:38 ` [gentoo-dev] " Richard Freeman
2009-02-25 2:40 ` Jeremy Olexa
2009-02-25 3:53 ` Dawid Węgliński
2009-02-25 4:32 ` Alistair Bush
2009-02-25 6:46 ` Alec Warner
2009-02-25 6:49 ` Jeroen Roovers
2009-02-25 6:53 ` Ulrich Mueller
2009-02-25 21:00 ` Joe Peterson
2009-02-25 8:16 ` Alexis Ballier
2009-02-25 10:05 ` Tobias Klausmann
2009-02-25 10:34 ` Peter Alfredsen
2009-02-25 10:59 ` Michael Haubenwallner
2009-02-25 11:18 ` Mike Auty
2009-02-25 11:57 ` Jim Ramsay
2009-02-25 12:49 ` Brian Harring
2009-02-25 22:19 ` Andrew Gaffney
2009-02-25 23:03 ` [gentoo-dev] eapi function (Was: Collecting opinions about GLEP 55 and alternatives) Ciaran McCreesh
2009-02-26 0:02 ` Brian Harring [this message]
2009-02-26 0:11 ` Ciaran McCreesh
2009-02-26 0:24 ` Brian Harring
2009-02-26 0:32 ` Ciaran McCreesh
2009-02-26 0:43 ` Jorge Manuel B. S. Vicetto
2009-02-26 0:51 ` Ciaran McCreesh
2009-02-26 11:07 ` Petteri Räty
2009-02-25 14:33 ` [gentoo-dev] Collecting opinions about GLEP 55 and alternatives Robert Buchholz
2009-02-25 19:03 ` Thomas Anderson
2009-02-25 21:09 ` Josh Saddler
2009-02-26 2:13 ` Ravi Pinjala
2009-02-26 3:13 ` Kumba
2009-02-28 20:52 ` Kumba
2009-02-26 5:36 ` Zac Medico
2009-02-26 18:07 ` Ciaran McCreesh
2009-02-26 18:20 ` Ciaran McCreesh
2009-02-26 18:47 ` Nirbheek Chauhan
2009-02-26 18:56 ` Ciaran McCreesh
2009-02-26 19:16 ` Nirbheek Chauhan
2009-02-26 19:24 ` Ciaran McCreesh
2009-02-27 9:27 ` Caleb Cushing
2009-02-27 10:52 ` Rémi Cardona
2009-02-28 10:56 ` Peter Volkov
2009-02-28 12:25 ` Fernando J. Pereda
2009-02-28 19:39 ` Robert Bridge
2009-02-28 19:46 ` Ciaran McCreesh
2009-03-02 7:31 ` [gentoo-dev] " Christian Faulhammer
2009-03-02 8:33 ` Tiziano Müller
2009-03-02 21:23 ` [gentoo-dev] " Thilo Bangert
2009-03-09 13:01 ` Jacob Floyd
2009-03-09 15:54 ` [gentoo-dev] " Duncan
2009-03-09 19:54 ` Richard Freeman
2009-03-10 6:18 ` Duncan
2009-03-10 15:58 ` Christian Faulhammer
2009-03-10 21:11 ` Santiago M. Mola
2009-03-10 8:53 ` [gentoo-dev] " Michael Haubenwallner
2009-03-12 17:18 ` Alistair Bush
2009-03-13 10:29 ` Michael Haubenwallner
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=20090226000246.GK3506@hrair \
--to=ferringb@gmail.com \
--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