On Fri, Dec 3, 2021 at 2:06 AM Richard Purdie <richard.purdie@...> wrote:
On Fri, 2021-12-03 at 01:39 -0800, Andre McCurdy wrote:
On Wed, Dec 1, 2021 at 2:33 PM Richard Purdie <richard.purdie@...> wrote:
On Tue, 2021-11-30 at 13:45 -0800, Andre McCurdy wrote:
On Tue, Nov 30, 2021 at 1:20 PM Ross Burton <ross@...> wrote:
On Tue, 30 Nov 2021 at 19:32, Andre McCurdy <armccurdy@...> wrote:
This isn't equivalent - it will cause a change in behaviour for anyone using PACKAGECONFIG += "foo" from a .bbappend.
Correct, but this is likely the only recipe in the greater ecosystem which has this behaviour, so I'm not that bothered to be honest. :)
The only recipe? There are many recipes which set a default PACKAGECONFIG with ?= and many which set it with ??=. Your change is effectively switching the vim recipe from one approach to the other. The fact that adding PACKAGECONFIG options from a .bbappend with += sometimes works OK and sometimes not is a source of confusion for new users.
You are right that no one seems to care though...
Some of us very much do care, it is actually bothering me a lot and I've posted several times on the architecture list about this kind of issue.
We haven't worked out what we can agree to do about it though :(.
As a first, very easy, step, make a statement here on the mailing list that all PACKAGECONFIG defaults should be assigned with ?= instead of ??= and fix the recipes in oe-core accordingly.
The question is whether we all agree on that and I'm not sure we all do.
What are the possible objections?
As a second step, the parser could generate a warning (or even an error) if any variable is assigned to with only ??= and += (the end result of that combination is not what any user would expect and I doubt if any legitimate use case relies on it).
Would be interesting to see if there is valid use so it is probably worth some tests/analysis. The ??= operator never did what I'd hoped it would in reality sadly.
I agree ??= is way overused and very often in places where ?= or a direct assignment would be better. I'm not the one accepting and merging patches though... you are!