Gentoo Archives: gentoo-dev

From: Arfrever Frehtes Taifersar Arahesis <Arfrever@g.o>
To: Gentoo Development <gentoo-dev@l.g.o>
Cc: Gentoo Council <council@g.o>
Subject: [gentoo-dev] Summary of suggested new features in EAPI="4"
Date: Sat, 18 Dec 2010 01:45:51
Message-Id: 201012180246.08227.Arfrever@gentoo.org
1 This is the summary of some problems and suggested new features in EAPI="4", which would solve
2 these problems.
3
4 ================================================================================================
5
6 Problem #1: USE flags cannot contain "." characters.
7
8 The following solutions have been suggested:
9 - Add support for "." characters in USE flags in EAPI="4".
10
11 ================================================================================================
12
13 Problem #2: Files in profiles cannot use features from newer EAPIs.
14
15 The following solutions have been suggested:
16 - Add support for files with "-${EAPI}" extension in EAPI="4". These files would use EAPI
17 specified in their filenames instead of EAPI of profile.
18 Example files:
19 package.mask-${EAPI}
20 package.use-${EAPI}
21 package.provided-${EAPI}
22 use.force-${EAPI}
23 use.mask-${EAPI}
24 package.use.force-${EAPI}
25 package.use.mask-${EAPI}
26 packages-${EAPI}
27 virtuals-${EAPI}
28 - Create new profiles using EAPI="4", remove all older profiles from profiles.desc so that
29 repoman doesn't check older profiles, and deprecate older profiles.
30
31 Council should choose one of these solutions.
32
33 ================================================================================================
34
35 Problem #3: repoman doesn't allow stable packages to have optional dependencies on unstable
36 packages (usually until these packages are stabilized).
37
38 Example of the problem:
39 If "python_abis_2.7", "python_abis_3.1" and "python_abis_3.2" USE flags are masked using
40 use.mask on given architectures until Python 2.7, 3.1 and 3.2 are stabilized on these
41 architectures, then majority of reverse dependencies of Python won't be tested with new
42 versions of Python.
43
44 The following solutions have been suggested:
45 - Add support for use.unsatisfiable and package.use.unsatisfiable files in profiles in
46 EAPI="4". These files would cause that repoman would allow optional dependencies on
47 packages potentially unsatisfiable in some configurations (e.g. on stable-only systems).
48 - Create separate profiles for stable and unstable keywords. USE flags would be masked in
49 stable profiles and unmasked in unstable profiles.
50
51 Council should choose one of these solutions.
52
53 ================================================================================================
54
55 There are already existing patches for Portage, which implement these solutions, which are
56 suggested new features in EAPI="4".
57
58 --
59 Arfrever Frehtes Taifersar Arahesis

Attachments

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

Replies