
\summary{2009}{3}{12}

Agenda call: \agoref{gentoo-dev}{9f15e244517fc011f8e01ea8d3039745}

Agenda announcement: \agoref{gentoo-dev}{09e22066d8a681a046508b040d7faa1d}


\agendaitem{EAPI 3 Proposals}
\index{EAPI!3}

Reference: http://spreadsheets.google.com/ccc?key=pPAJXP6shYH78lCXeqRqCUQ (dead 
link)

Note: The following two proposals were discussed before it was realized that 
there was not sufficient time to discuss all of them. At that point a call for 
objections to any of the proposals found at above URL was asked for, and none 
were made. A full list of proposals for EAPI 3 follow.

\begin{itemize}
 \item
 Default USE dependencies\index{default use dependencies}
 \index{dependencies!use flag}

 This may be needed when one wishes to depend on a package with a certain use
 flag but if the use flag is not present in that package
 assume it is on or off(+ and - respectively); syntax is e.g. [use(+)]

 Conclusion: Approved for the draft.
 \item 
 New phase: pkg_pretend\index{pkg_pretend}, \bug{75936}

 This phase is most useful for displaying conflicting use flags at dependency 
 resolution time (pretend), though it has various other uses so that errors 
 about installing the package can be displayed before installation of packages 
 begin.

 Conclusion: Approved for the draft.
 \item
 Multislot Dependency Specifications\index{multislot 
 dependencies}\index{dependencies!multislot}
 
 This allows ebuils to tell the package manager that runtime dependencies are 
 not swappable(:1 installed at runtime can't be removed even though :2 
 'satisfies' the dependency).
 \item
 PROPERTIES mandatory in cache\index{PROPERTIES}\index{metadata cache}
 
 Some information provided by this variable is useful at --pretend
 time( interactive packages). 
 \item
 DEFINED_PHASES mandatory in cache\index{DEFINED_PHASES}\index{metadata cache}
 
 Same reasons as for PROPERTIES, but is also useful for determining the phases 
 a package provides with just the cache.
 \item
 Provide a default src_install prototype.\index{src_install}
 
 Get rid of the need for the src_install functions with just `emake install` in 
 them. Some discussion is needed to clear up issues with a DOCS variable for 
 extra documentation and a list of docs to automatically get installed.
 \item
 Provide a `docompress` function.\index{docompress}
 
 This function serves as a replacement for prepalldocs. `docompress` can 
 optionally compress files in /usr/share/doc according to a set of inclusion and 
 exclusion lists.
 \item
 Provide a '-r' option to `dodoc`\index{dodoc}
 
 Providing a way to put `dodoc` in recursive mode is widely accepted.
 \item
 Make `doins` preserve symlinks\index{doins}\index{symlinks}
 
 This obsoletes the `cp -R` constructs frequently seen and is easy to implement.
 \item
 Limit values in \$USE to those in 
 \$IUSE.\index{USE}\index{IUSE}\index{USE_EXPAND}
 
 Certain USE_EXPAND flags may be in USE even if they aren't specifically set in 
 IUSE. Eliminate this.
\end{itemize}

Next Action: The Council agreed to have portage implement as many of these as
possible in a month and then make that EAPI 3.\index{packages!sys-apps/portage}

        
\agendaitem{GLEP 54}

\dev{tanderson} sent out a comparison of \glep{54} and the live ebuild 
proposals. Among those discussing GLEP 54 there was a general consensus that
there was nothing wrong with it as a first step to get correct ordering. 
\dev{lu_zero} commented that all he was concerned about was that there was not 
enough 'meat' to the GLEP.

Next action: \dev{cardoe} and \dev{lu_zero} intend to write a GLEP to handle the 
second part of the problem (making the revision available to ebuilds / package 
manager / users).

\agendaitem{GLEP 55}

\dev{betelgeuse}, \dev{zmedico}, and \dev{ciaranm} were supposed to benchmark 
the various proposals and report back. \dev{zmedico} did not write the code for 
portage so \dev{betelgeuse} had nothing to report on this issue. \dev{ciaranm}
commented that the solutions other than \glep{55} had a 50\% slowdown in the 
valid cache situation compared to GLEP 55, but did not post the raw numbers or 
the patches used.

Next action: \dev{zmedico} needs to benchmark the proposals in portage.

            
\agendaitem{Open Floor}
\index{KEYWORDS}

Migration of KEYWORDS from ebuilds to profiles: \dev{solar} brought this up, but 
it came up in the middle of agenda items so was not talked about much. Some 
points were made that such a scheme would require a git conversion, but nothing 
was agreed upon. 
