Gentoo Archives: gentoo-dev

From: Ian Stakenvicius <axs@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Fw: [gentoo-automated-testing] BROKEN: repository became broken!
Date: Fri, 17 Jun 2016 22:18:07
Message-Id: 05c33c11-0d2e-9ae0-2399-00007d8765ed@gentoo.org
In Reply to: Re: [gentoo-dev] Fw: [gentoo-automated-testing] BROKEN: repository became broken! by "Michał Górny"
1 On 17/06/16 05:22 PM, Michał Górny wrote:
2 > On Sat, 18 Jun 2016 00:06:10 +0300
3 > Andrew Savchenko <bircoph@g.o> wrote:
4 >
5 >> On Fri, 17 Jun 2016 19:42:18 +0200 Michał Górny wrote:
6 >>> Hello,
7 >>>
8 >>> Since this is a major issue involving a lot of packages, and it needs
9 >>> to be fixed *quickly*, I'm forwarding the new check results to
10 >>> gentoo-dev.
11 >>>
12 >>> If the below list contains your package, please fix it ASAP. I will
13 >>> file bugs for the remaining packages then.
14 >>>
15 >>> Long story short, using := operator inside || () conditional blocks is
16 >>> completely forbidden and triggers random misbehavior inside package
17 >>> managers (Portage doesn't do exactly what you think it does).
18 >>
19 >> Please explain in more details why this is forbidden. man 5 ebuild
20 >> contains nothing about this, I can't find anything in PMS also. If
21 >> package manager misbehaves this doesn't automatically imply that
22 >> ebuilds are broken (and not PM).
23 >
24 > It was explained already. PMS doesn't permit it. It doesn't make *any*
25 > sense, so the author didn't even bother explicitly saying it's
26 > forbidden. Package manager can't not misbehave if something can't be
27 > implemented.
28 >
29
30 Where does PMS not permit it??
31
32 8.2: [...]
33 An any-of group, which consists of the string ||, followed by
34 whitespace, followed by an open parenthesis, followed by whitespace,
35 followed by zero or more of (a dependency item of any kind followed by
36 whitespace), followed by a close parenthesis.
37
38
39 "dependency item of any kind" would certainly include atoms with slot
40 operators.
41
42
43 There is also no caveat at all in 8.2.3 that excludes slot operators,
44 and 8.2.6.3 also contains no caveat or exclusion of slot operators
45 from any-of groups.
46
47
48 Using slot operators within OR deps was intended when EAPI5 was
49 introduced. If Portage and other PMs don't handle it well or properly
50 then they should be fixed, and perhaps the spec should be refined in
51 EAPI7, but that doesn't mean banning it now.

Attachments

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

Replies