commit: 92d5586a5522db487b6dab304dc3fc3a113daaeb Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Sat Sep 30 23:06:39 2017 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Sun Oct 1 07:11:35 2017 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=92d5586a
[WIP] EAPI 7 bans all-of groups in REQUIRED_USE. Reword the allowed variable list for the all-of group to account for additional restrictions of EAPI 7. The use in REQUIRED_USE is banned explicitly as it leads to ambiguity in automatic solver actions. The use in SRC_URI becomes meaningless given that it is only permitted inside any-of, and any-of is not permitted there. [TODO: add label & update eapi-differences] Bug: https://bugs.gentoo.org/632000 dependencies.tex | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/dependencies.tex b/dependencies.tex index fd142bb..dca4a21 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -87,8 +87,9 @@ be surrounded on both sides by whitespace, except at the start and end of the st \item An all-of group, which consists of an open parenthesis, followed by whitespace, followed by zero or more of (a dependency item of any kind followed by whitespace), followed by a close parenthesis. More formally: - \t{all-of} \t{::=} \t{'(' whitespace (item whitespace)* ')'}. Permitted in all specification - style variables. Permitted inside groups listed in table~\ref{tab:depend-nesting}. + \t{all-of} \t{::=} \t{'(' whitespace (item whitespace)* ')'}. Permitted in variables listed + in table~\ref{tab:depend-group-variables}. Permitted inside groups listed + in table~\ref{tab:depend-nesting}. \item An any-of group, which consists of the string \t{||}, followed by whitespace, followed by an open parenthesis, followed by whitespace, followed by zero or more of (a dependency item of any kind followed by whitespace), followed by a close parenthesis. @@ -188,6 +189,21 @@ In particular, note that whitespace is not optional. \end{tabular} \end{centertable} +\ChangeWhenAddingAnEAPI{7} +\begin{centertable}{EAPI-specific group use restrictions} + \label{tab:depend-group-variables} + \begin{tabular}{ll} + \toprule + \multicolumn{1}{c}{\textbf{EAPI}} & + \multicolumn{1}{c}{\textbf{all-of}} \\ + & \multicolumn{1}{c}{\textbf{permitted inside}} \\ + \midrule + 0, 1, 2, 3, 4, 5, 6 & all specification style variables \\ + 7 & \t{DEPEND}, \t{RDEPEND}, \t{PDEPEND}, \t{LICENSE} \\ + \bottomrule + \end{tabular} +\end{centertable} + \subsection{All-of dependency specifications} In an all-of group, all of the child elements must be matched.
