Gentoo Archives: gentoo-pms

From: "Andreas K. Huettel" <dilfridge@g.o>
To: gentoo-pms@l.g.o
Subject: Re: [gentoo-pms] Re: EAPI 5
Date: Tue, 01 May 2012 12:10:32
Message-Id: 201205011410.37811.dilfridge@gentoo.org
In Reply to: Re: [gentoo-pms] Re: EAPI 5 by Ciaran McCreesh
1 Am Dienstag 01 Mai 2012, 11:16:25 schrieb Ciaran McCreesh:
2 > On Tue, 1 May 2012 11:01:57 +0200
3 >
4 > "Andreas K. Huettel" <dilfridge@g.o> wrote:
5 > > Am Dienstag 01 Mai 2012, 10:38:41 schrieb Ciaran McCreesh:
6 > > > > Well. PMS describes the files in a profile directory. If
7 > > > > * we introduce a new file via PMS that was not in there before,
8 > > > > * and another package manager accesses that file but expects
9 > > > > different information there not corresponding to our new
10 > > > > definition, that package manager should be considered broken
11 > > > > because it is not adhering to previous PMS revisions. So?
12 > > >
13 > > > What happens if a user uses an EAPI 4 ebuild with an EAPI 4 package
14 > > > manager when the ebuild in question would be hit by your new files,
15 > > > which the package manager doesn't know about yet?
16 > >
17 > > Err, nothing? The useflags remain available and switchable as before,
18 > > no difference regarding useflags between stable / not stable?
19 >
20 > What is the impact of this, then? Does it mean users will start to see
21 > lots of "masked" errors that they should not be seeing?
22
23 If
24
25 * the ebuild is <= EAPI 4
26 * the ebuild is listed in package.stable.use.(mask|force)
27
28 then it will be possible to enable/disable features in the stable variant that
29 are not really deemed suitable for a "stable package" yet. All quality
30 requirements from ~arch remain, meaning also the use flag combinations should
31 lead to a successful build and a reasonably working package. Also, the stable
32 ebuild will then eventually depend on non-stable packages, which is bad.
33
34 Thus, I would strongly recommend that this situation is treated as a blocker
35 for stabilization (either upgrade EAPI or modify the package.stable.use.(mask|
36 force) entry so it does not apply to this ebuild).
37 Repoman could prevent such a commit.
38
39 It might make sense to go even further and write explicitly that
40 package.stable.use.(mask|force) entries must not resolve to any <= EAPI 4
41 ebuilds. Unfortunately there is no automatic repoman check during commits in
42 the profile dirs which could prevent it.
43
44
45 --
46
47 Andreas K. Huettel
48 Gentoo Linux developer
49 dilfridge@g.o
50 http://www.akhuettel.de/