On Mon, 2020-05-18 at 13:35 -0500, William Hubbs wrote:
> All,
> 
> I would like to start a discussion on checking the PROPERTIES value in
> ebuilds. Specifically this could be used to check for live ebuilds
> instead of assuming that the version number of an ebuild indicates
> whether the ebuild is live.

Why would an ebuild have to check whether the ebuild is live?  Isn't it
supposed to know that by definition?

> The up side of this would be that we aren't reserving a specific version
> number for live ebuilds.

We aren't.

> The down side that is being pointed out to me right now is that
> we would need a function like in_iuse, but called in_properties, to
> check the properties. We would need something like this because
> properties supports use conditionals, e.g.
> PROPERTIES="foo? ( bar )"

No, that's not why we needed in_iuse.  We need IUSE because IUSE is
stacked and there's no guarantee that its value will be correct (or even
present) at an arbitrary time during ebuild execution.

in_iuse does not handle USE conditionals because obviously there are
none in IUSE.

PROPERTIES isn't stacked at the moment but there is a proposition to
make it stacked in EAPI 8 for better consistency.  Right now it is easy
to wrongly assume it is stacked and accidentally override it.

-- 
Best regards,
Michał Górny

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to