Gentoo Archives: gentoo-dev

From: Patrick Lauer <patrick@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] [RFC] Tightening EAPI rules
Date: Mon, 10 Feb 2014 12:39:55
Message-Id: 52F8C97D.4030403@gentoo.org
1 As previously discussed I would like to suggest that the number of
2 tolerated EAPIs be reduced. There's been some discussion
3 over the last 2+ years, with a weak consensus towards deprecating
4 some EAPIs. What, when and how still isn't decided.
5 So let's add some data so we have a better idea:
6
7 EAPI Statistics:
8
9 The daily updated stats [2] show a slow general trend down.
10 There's historical data (well, just a few days right now at [3]
11
12 The current sum of all ebuilds in tree adds up to ~10% EAPI 1+2
13 EAPI0 is still surprisingly big around ~15%
14 EAPI3 is about as big as EAPI2 at around ~7%
15
16 According to [1] EAPI 1 and 2 are deprecated.
17 At the time EAPI 0 was in limbo as toolchain required it
18 (What's the current status of toolchain on that?)
19
20 I suggest the following change:
21
22 [ EAPI 0 depends on toolchain's acceptance.
23 Should toolchain agree then adding EAPI0 ebuilds becomes forbidden]
24 Adding EAPI 1 and 2 ebuilds is forbidden. (repoman-fatal)
25 EAPI 3 becomes deprecated (like 1 and 2 are now)
26 Adding EAPI 3 ebuilds is forbidden in now +3 months
27
28 EAPI 4 becomes deprecated when/if there's a new EAPI allowed in-tree
29 (EAPI 6, most likely)
30
31 EAPI 5 is the recommended default.
32
33
34 Rationale:
35 More than two supported EAPIs is an unneeded burden on developers.
36 Thus 4 will be deprecated when post-5 becomes added.
37
38 There's no immediate need to forbid the antepenultimate EAPI immediately.
39
40 The goal of this upgrade policy is that we can accelerate the expiration
41 of old EAPIs - EAPI 2 happened
42 at some point in 2008, I think (or 2009?) and we still carry
43 five-year-old cruft around.
44
45 Given the percentages -
46
47 EAPI 1 can be "cleaned out" by a single motivated individual. It's
48 almost gone.
49
50 EAPI 2 and 3 will take a few months at least, even if there's a
51 coordinated effort to migrate.
52 EAPI 0 is as big as 2 and 3 together, and depends on toolchain herd's
53 actions.
54 It'll still be around for a looong time. (Given the current rate of
55 change, plus repoman support, plus people actively working on pruning
56 it, I would assume it'll take at least a year, more likely two)
57
58 In other words, even if we go for the "fastest" option you won't see any
59 revolutionary change :)
60
61 Please no bikeshedding,
62
63 Patrick
64
65
66 [1] https://www.gentoo.org/proj/en/council/meeting-logs/20130409.txt
67 [2] http://packages.gentooexperimental.org/eapi-stats.txt
68 [3] http://packages.gentooexperimental.org/eapi-history/

Replies

Subject Author
Re: [gentoo-dev] [RFC] Tightening EAPI rules Dirkjan Ochtman <djc@g.o>
Re: [gentoo-dev] [RFC] Tightening EAPI rules "Anthony G. Basile" <blueness@g.o>
Re: [gentoo-dev] [RFC] Tightening EAPI rules Rich Freeman <rich0@g.o>
[gentoo-dev] Re: [RFC] Tightening EAPI rules Ryan Hill <dirtyepic@g.o>