List Archive: gentoo-dev
Note: Due to technical difficulties, the Archives are currently not up to date.
provides an alternative service for most mailing lists.c.f. bug 424647
Alec Warner wrote:
>> No, it's entirely objective. GLEP 55 clearly shows how the filename
>> based options are objectively better than anything else.
> But the decision will not be based entirely on objective merits
> (although I will concede that EAPI in filename is the 'best' technical
(Jeez, I hate to add another to this thread, but this way of defining
'technical' bothers me)
Along the lines of what Roy so eloquently expressed, I think it's
important that we do not divorce *design* from *technical*. The
decision of where to place the EAPI is a design issue, and many of us
here clearly believe that it is *not* good design to put this kind of
metadata in the filename. Therefore, the statement that it is the
'best' technical choice is not objectively true.
Technical issues of performance and efficiency can be addressed when
proper design has been done beforehand. Part of the purpose of the
implementation (after proper design is in place) is to address
performance and other related issues. And part of the design is how we
define the *interface*. The filename is clearly part of the interface.
It is part of how devs (and users) interact with portage when writing
ebuilds. Much of the argument for EAPI in the filename has been
motivated by a perceived implementation benefit of speed, as if there
were no other solutions (which is naive). As Roy suggested, if all
engineering decisions were based purely on pragmatic "ease of
implementation" factors, we'd have a lot of ugly designs/interfaces out
It may be easy (although incorrect) to dismiss elegance/design/interface
issues as "non-technical", but I maintain they actually *are* technical
matters of great importance. I've been an engineer for over 20 years,
and I have seen the pitfalls of taking the quick-and-dirty approach just
to slap a new feature into a software app. I've seen how such hasty
design mistakes can cause great pain and regret for a long time after.
Let's get the design right, first. For what it's worth, GLEP 55 does
now provide an option (#3: Easily fetchable EAPI inside the ebuild and
one-time extension change) that demonstrates good design.