Re: OVERRIDES v2


Denys Dmytriyenko
 

On Mon, Apr 26, 2021 at 12:19:58PM -0400, Trevor Woerner wrote:
On Mon 2021-04-26 @ 11:05:55 AM, Richard Purdie wrote:
On Mon, 2021-04-26 at 11:46 +0200, Quentin Schulz wrote:
Hi all,

I submitted a presentation about OVERRIDES, _append, +=, =. and others
for YP Summit 2021 in a month. While sharing the description with some
people in the Yocto community, I've been made aware that I'm missing
some (history) bits about OVERRIDES.

I've been told that it was added as a temporary measure/hack
Not sure who told you that but OVERRIDES has been around since bitbake 
(then oemake) was split out from openembedded which is probably around 2004.
I'm pretty sure Quentin is referring to me here ;-) and I'll be the first
person to tell you that I don't have the best memory going, so I apologize if
my poor memory causes a "fake news" incident ;-) But I left that meeting with
a very distinct impression that nobody felt that bitbake's OVERRIDE mechanism
was one of its best features. I thought the overall feeling was that OVERRIDES
was one of the biggest stumbling blocks for newbies. Although I wasn't around
when it was added, I seem to think it wasn't feature that was given much
thought; there was a need for something, this was proposed, and in it went.
Then, some years later, there was a feeling of "if we had known it was going
to get this complicated…"
I, for one, really like OVERRIDES mechanism! It may not be intuitive at first,
but once mastered, it's a very powerful mechanism and, as Chris mentioned,
allows doing layered (from generic to specific) alternatives very elegantly.


and that some had tried to get it removed/reconsidered back in 2015 (been 
given this link: https://www.openembedded.org/wiki/OEDEM_2015#Agenda) but it
was already largely (ab)used?
Reading that agenda item, I suspect I was the one who added and discussed it 
and it was less about removing OVERRIDES and more about considering whether 
there was some better operator/format to clearly differentiate between
a variable name and an override. It was a way to see if anyone had ideas, no
great replacement was identified (but was worth asking IMO).
I believe we discussed both a square bracket operator and a dot operator. The
square brackets were rejected because it was already being used for tasks and
PACKAGECONFIGs. Although the dot operator received a lot of support, in the
end I thought it came down to the difficulty of how invasive the changeover
would be (flag days etc).

A good idea, perhaps, but too much inertia otherwise.

Thanks for jumping in on this topic, Richard, and filling in the gaps. It's
nice to get this sort of information out of peoples' brains an onto paper.
--
Regards,
Denys Dmytriyenko <denis@...>
PGP: 0x420902729A92C964 - https://denix.org/0x420902729A92C964
Fingerprint: 25FC E4A5 8A72 2F69 1186 6D76 4209 0272 9A92 C964

Join openembedded-architecture@lists.openembedded.org to automatically receive all group messages.