Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: Ulrich Mueller <ulm@g.o>
Cc: gentoo-dev@l.g.o, pms-bugs@g.o, dev-portage@g.o
Subject: Re: [gentoo-dev] Re: The meaning of || ( a:= b:= ) dependencies
Date: Mon, 04 Aug 2014 07:26:24
Message-Id: 20140804092642.77ebc2df@pomiot.lan
In Reply to: [gentoo-dev] Re: The meaning of || ( a:= b:= ) dependencies by Ulrich Mueller
1 Dnia 2014-08-04, o godz. 08:06:42
2 Ulrich Mueller <ulm@g.o> napisał(a):
3
4 > >>>>> On Mon, 4 Aug 2014, Michał Górny wrote:
5 > > In particular, I was thinking we could reuse this syntax:
6 >
7 > > || ( A:= B:= )
8 >
9 > > to express any-of dependencies that do not support runtime switching
10 > > of providers -- since that is pretty much what := does to slots.
11 > > This would save us from creating a new syntax like '||= ()' [1].
12 >
13 > Please don't, because it makes things pretty much unreadable. If you
14 > want an operator like || ( ) but without runtime switching, then
15 > define one (e.g., <<= or ||= as suggested in [1]), but don't try
16 > to inherit properties from its children.
17
18 Reasonable. However, as I see it, we'll end up having up to four
19 different operators:
20
21 - || that is deprecated yet everyone will still use it (like they don't
22 use :* right now),
23
24 - ||* that will be used scarcely,
25
26 - <<= that would be the preferred variant for compile-time switches yet
27 many people will not use it because it has different characters than
28 '||' [we could try maybe '||<' so that people will still see it as
29 replacement for '||'],
30
31 - ||= that most people would use forgetting about '<<=' [or '||<'].
32
33 So, banning '|| ( A:= B:= )' in a future EAPI sounds reasonable.
34 However, there's still the matter of setting current Portage behavior
35 because I don't we should keep the non-predictable magic.
36
37 What should be the current behavior then? Should we assume that all
38 '||' are not well-defined and need to be compile-switchable? Or try to
39 invent heuristic like I suggested?
40
41 --
42 Best regards,
43 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Re: The meaning of || ( a:= b:= ) dependencies Ulrich Mueller <ulm@g.o>