root/releases/pkgcore/0.1.1/dev-notes/eapi.rst @ ferringb%2540gentoo.org-20060920122051-a6955753d4892936

Revision ferringb%2540gentoo.org-20060920122051-a6955753d4892936, 2.6 KB (checked in by Brian Harring <ferringb@…>, 2 years ago)

add a note about not allowing blockers in PDEPEND for eapi=1

Line 
1===========
2Ebuild EAPI
3===========
4
5
6This should hold the proposed (with a chance of making it in), accepted, and
7implemented changes for ebuild format version 1.  A version 0 doc would also
8be a good idea ( no one has volunteered thus far ).
9
10Version 0 (or undefined eapi, <=portage-2.0.52*)]
11*************************************************
12
13Version 1
14*************************************************
15- EAPI = 1 required
16- src_configure exists, configuration of packages must occur in src_configure
17  and not src_compile.
18- not necessarily using EXPORT_FUNCTIONS, but enable all EAPI functionality to
19  be overriden via eclass/repo, yet still able to be referenced without
20- default src_install
21- RDEPEND="${RDEPEND-${DEPEND}}" is no longer set by portage, same for eclass.
22- Elibs
23- (proposed) BDEPEND metadata addition ?
24- default IUSE support, IUSE="+gcj" == USE="gcj" unless the user disables it.
25- GLEP 37
26- test depend, test src_uri (or represent test in the use namespace somehow)
27- drop AA (unused)
28- some form of optional metadata specifying that a binpkg works on multiple arches, iow it doesn't rely on compiled components.
29- represent in metadata if the pkg needs pkg_preinst to have access to ${D} or not; forced unpacking sucks.
30- some way to 'bind' a rdep/pdep so that it's explicit "I'm locked against the version I was compiled against"
31- use groups in some form.
32- drop reliance on PORTDIR and ECLASSDIR(s); they break any potential remote, and are dodgey as all hell for multiple
33  repos combined together.
34- disallow direct access to /var/db/pkg
35- deprecate ebuild access/awareness of PORTAGE_* vars; perl ebuilds security fix for PORTAGE_TMPDIR (rpath stripping in a way)
36  might make this harder.
37- use/slot deps, optionally repository deps.
38- hard one to slide in, but change versioning rules; no longer allow 1.006, require it to be 1.6
39- pkg_setup must be sandboxable.
40- default IUSE, bug # 61732
41- allowed USE conditional configurations; new metadata key, extend depset syntax to include xor, represent allowed configurations.
42- use groups (kill use_expand off)
43- true incremental stacking support for metadata keys between eclasses/ebuilds; RESTRICT=-strip for example in the ebuild.
44- potentially add '<>dev-util/diffball-1.0' support; would require supporting tildes also; to head off the "but blockers exist",
45  blockers are statements of "I will not work with any matches to this in the graph, get rid of them", not "I'll work with this
46  range" which <> is.
47- drop -* from keywords; it's package.masking, use that instead (-arch is acceptable although daft)
48- blockers aren't allowed in PDEPEND (the result of that is serious insanity for resolving)
Note: See TracBrowser for help on using the browser.