From: hasufell <hasufell@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] rfc: calling all eclass phase functions by default
Date: Mon, 18 Aug 2014 12:41:11 +0000 [thread overview]
Message-ID: <53F1F467.80508@gentoo.org> (raw)
In-Reply-To: <53F1F1EB.6030601@gentoo.org>
hasufell:
> Sergey Popov:
>> 18.08.2014 16:04, hasufell пишет:
>>>> You have my strong opposition on such change as well. It will turn
>>>> ebuilds into unreadable and undpredictable mess, please do not do that
>>>>
>>>
>>> They are already fairly unreadable and unpredictable.
>>>
>>
>> For you - maybe. But not for me.
>>
>> I am NOT talking about hacks like putting additional *.as files through
>> echo(hello Boost ebuild) or doing something crazy with subshells.
>>
>> But most of the eclass and ebuilds are readable quite simple if you read
>> devmanual, PMS and have a brain.
>>
>> Of course, there are sometimes non-trivial stuff that is hard to read.
>>
>> But majority of ebuilds and eclasses are fine to understand and predict.
>>
>> So, without examples from you, this discussion will lead to nowhere, so,
>> please let's stop it.
>>
>
> From my time as a sunrise dev I strongly disagree. People have problems
> with understanding the mess, including actual programmers. They have
> enough technical understanding, but not the time or motivation to go
> through all those funny pitfalls which are NOT properly documented in
> devmanual.
>
> The most popular example is what we are talking about right now:
> indirect inheritance for example via games.eclass which inherits
> base.eclass but does not export src_unpack so stuff like unpacker.eclass
> and git-2.eclass will likely just do nothing if you inherit them before
> games.eclass (which is required by games herd policy)... uhm. I doubt
> you would have guessed this one if you saw the plain ebuild. I know the
> pitfall, so I see it just from looking at the inherit line. But it is
> far from being obvious.
>
Even more interesting... you can work around this by inheriting
base.eclass explicitly before e.g. unpacker.eclass, something like
inherit base unpacker games
=> unpacker_src_unpack() is carried out by default (and the ebuild
breaks if someone thinks the base.eclass is useless and removes it)
inherit unpacker games
=> unpacker_src_unpack is not carried out by default although
games.eclass does not directly overwrite it
If you think any of this is sensible...
next prev parent reply other threads:[~2014-08-18 12:42 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-16 21:54 [gentoo-dev] rfc: calling all eclass phase functions by default William Hubbs
2014-08-16 22:32 ` Kent Fredric
2014-08-16 23:01 ` William Hubbs
2014-08-17 3:11 ` [gentoo-dev] " Duncan
2014-08-17 7:03 ` [gentoo-dev] " Michał Górny
2014-08-17 8:49 ` Kent Fredric
2014-08-17 7:06 ` "Paweł Hajdan, Jr."
2014-08-17 7:18 ` Michał Górny
2014-08-17 7:23 ` "Paweł Hajdan, Jr."
2014-08-16 22:54 ` Michał Górny
2014-08-16 23:30 ` William Hubbs
2014-08-17 6:54 ` Ulrich Mueller
2014-08-17 12:24 ` Rich Freeman
2014-08-18 8:54 ` Sergey Popov
2014-08-18 10:44 ` Rich Freeman
2014-08-18 12:21 ` Sergey Popov
2014-08-18 13:27 ` Rich Freeman
2014-08-18 12:04 ` hasufell
2014-08-18 12:19 ` Sergey Popov
2014-08-18 12:30 ` hasufell
2014-08-18 12:41 ` hasufell [this message]
2014-08-18 12:52 ` Michał Górny
2014-08-18 12:56 ` hasufell
2014-08-18 13:22 ` Chris Reffett
2014-08-18 13:27 ` hasufell
2014-08-18 15:11 ` Michał Górny
2014-08-18 19:37 ` Chris Reffett
2014-08-18 20:08 ` Michał Górny
2014-08-18 20:23 ` hasufell
2014-08-19 7:02 ` Sergey Popov
2014-08-18 14:13 ` Rich Freeman
2014-08-19 6:58 ` Sergey Popov
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=53F1F467.80508@gentoo.org \
--to=hasufell@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