Gentoo Archives: gentoo-dev

From: "Tiziano Müller" <dev-zero@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] EAPI 3 PMS Draft
Date: Mon, 16 Mar 2009 23:23:18
Message-Id: 1237245756.4276.85.camel@localhost
In Reply to: [gentoo-dev] EAPI 3 PMS Draft by Ciaran McCreesh
1 Thanks a lot for your work.
2
3 Am Montag, den 16.03.2009, 20:47 +0000 schrieb Ciaran McCreesh:
4 > I've got a very rough draft of what EAPI 3 might end up looking like,
5 > based upon discussion:
6 >
7 > http://github.com/ciaranm/pms/tree/eapi-3
8 >
9 > Note that I will probably rebase and modifying the branch quite a bit,
10 > so if you don't know how to deal with that when using git, don't track
11 > it.
12 >
13 > It should be one commit per feature, which makes it fairly easy to
14 > remove anything that ends up not making it, and very easy to see what's
15 > proposed, which currently looks like this:
16 >
17 > * Introduce eapi 3
18 > * Rework tables for EAPI 3.
19 > * EAPI 3 has pkg_pretend.
20 > * EAPI 3 supports slot operator dependencies
21 > * EAPI 3 has use dependency defaults
22 > * PROPERTIES, DEFINED_PHASES mandatory in EAPI 3
23 > * EAPI 3 has a default src_install
24 > * EAPI 3 has controllable compression and docompress
25 > * EAPI 3 has dodoc -r
26 > * EAPI 3 requires doins support for symlinks
27 > * EAPI 3 bans || ( use? ( ... ) )
28 > * dohard and dosed banned in EAPI 3
29 > * doinclude, newinclude for EAPI 3
30 > * EAPI 3 supports .xz, .tar.xz
31 > * EAPI 3 has more econf arguments
32 > * EAPI 3 supports pkg_info on installed packages
33 > * USE is stricter in EAPI 3
34 > * Note that (+) won't work on USE_EXPAND etc things
35 > * AA, KV gone in EAPI 3
36 >
37 > Still to work out:
38 >
39 > * The exact details for the new USE restrictions. In particular, do we
40 > want IUSE_IMPLICIT? We'll also need an accurate list of all
41 > possible values for things like LINGUAS.
42 >
43 > * The [use(+)] thing. For various really pesky reasons, there's no way
44 > things like [video_cards_radeon(+)] can be expected to work when
45 > applied against EAPIs before 3, but it can be made to work if we know
46 > it'll only ever be applied against things with EAPI 3 or later. Is it
47 > easier to just say it's never allowed, though?
48 >
49 > * What's a doexample?
50
51
52 >
53 > * What's default_src_install going to do? I've seen a load of
54 > variations. It looks like our choices are between things that ignore
55 > docs, making it largely worthless, or things that use a DOCS
56 > variable, which Donnie hates (despite making extensive use of such
57 > things himself in eclasses).
58 Well, we have distutils and gnome2 eclass using DOCS (to name a few,
59 short glep shows around 18 eclasses), so I'd say: if we go for a
60 default_src_install it needs surely DOCS.
61 If default_src_install should install some DOCS automatically, I'd like
62 to have a way to disable that behaviour without having to roll my own
63 src_install.
64 You forgot to mentioned that we probably also want that
65 default_src_configure/src_compile die when they try to `cd` to an
66 invalid ${S}.
67
68
69
70 >
71 > * "Provide ebuilds a way to differentiate between updates and
72 > removals". I suggested REPLACING_VERSIONS and REPLACED_BY_VERSION,
73 > but I've not had any feedback on that.
74
75
76 >
77 > * "Utility commands, even the ones that aren't functions, should die.".
78 > Is Portage likely to be able to do this in the timeframe we're after?
79 I'd say this is a pretty isolated task even people without in-depth
80 portage knowledge can work on, so I guess it can be implemented.
81
82 >
83 > * "Calling unpack on an unrecognised extension should be fatal, unless
84 > --if-compressed is specified.". There've been questions on this, but
85 > no obvious outrage. Is this in or out?
86 I'd vote for "in" here since I prefer defined behaviour over undefined
87 and people who want unpack to unpack not-packed files should state it
88 explicitly.
89
90 >
91 > * I've left out killing off dohtml. Was a decision reached on that?
92 No.
93
94
95 >
96 > * RDEPEND=DEPEND is still in. Again, was a decision reached?
97 No, but since repoman is already warning when no RDEPEND or DEPEND is
98 specified I guess most people want it to be explicit.
99
100
101 >
102 > * xz is in, but do we really want to do that when there appears to be
103 > nothing stable that can deal with xz? lzma going in was a mistake
104 > caused by people being too eager here in exactly the same way they
105 > were for making Portage handle xz...
106 >
107 > * Am I to take it src_test is to remain in its current worthless state?
108 Yes, I'd like to see it enable by default as well, but we have to
109 discuss that further. So, not suited for a fast eapi release.
110
111
112 Btw, I put up a document explaining the changes in some detail here:
113 http://dev.gentoo.org/~dev-zero/docs/EAPI3.{rst,html}
114 (including references to bugs if any, etc.)
115 It is completely based on the spreadsheet we used earlier for
116 discussion. I'll finish it within the next days.
117
118 Cheers,
119 Tiziano

Attachments

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

Replies

Subject Author
[gentoo-dev] Re: EAPI 3 PMS Draft Ryan Hill <dirtyepic@g.o>
Re: [gentoo-dev] EAPI 3 PMS Draft Ulrich Mueller <ulm@g.o>
Re: [gentoo-dev] EAPI 3 PMS Draft "Tiziano Müller" <dev-zero@g.o>