Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/pms:eapi-7 commit in: /
Date: Thu, 28 Sep 2017 16:58:28
Message-Id: 1506616584.9c0e84b3c82b7fcb1ddae3f7a5288b61689fc787.mgorny@gentoo
1 commit: 9c0e84b3c82b7fcb1ddae3f7a5288b61689fc787
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Thu Sep 28 14:10:20 2017 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Thu Sep 28 16:36:24 2017 +0000
6 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=9c0e84b3
7
8 EAPI 7 disallows stdout output of output functions
9
10 Bug: https://bugs.gentoo.org/483240
11
12 eapi-differences.tex | 4 ++++
13 pkg-mgr-commands.tex | 17 +++++++++++------
14 2 files changed, 15 insertions(+), 6 deletions(-)
15
16 diff --git a/eapi-differences.tex b/eapi-differences.tex
17 index 34ee0c9..055e6c6 100644
18 --- a/eapi-differences.tex
19 +++ b/eapi-differences.tex
20 @@ -41,6 +41,9 @@ of this document for a complete table of previous EAPIs.
21 \bottomrule
22 \endlastfoot
23
24 +Output cmds can use stdout & \compactfeatureref{output-no-stdout} &
25 + Yes & Yes & Yes & Yes & No \\
26 +
27 \t{eqawarn} & \compactfeatureref{eqawarn} &
28 No & No & No & No & Yes \\
29
30 @@ -391,6 +394,7 @@ EAPI 7 is EAPI 6 with the following changes:
31 \item \t{dohtml} banned, \featureref{banned-commands}.
32 \item Version manipulation and comparison functions added, \featureref{ver-functions}.
33 \item \t{eqawarn} added, \featureref{eqawarn}.
34 +\item Output commands can no longer use stdout, \featureref{output-no-stdout}.
35 \end{compactitem}
36
37 \ChangeWhenAddingAnEAPI{7}
38
39 diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
40 index c7f3696..5bb8b68 100644
41 --- a/pkg-mgr-commands.tex
42 +++ b/pkg-mgr-commands.tex
43 @@ -114,8 +114,12 @@ These commands display messages to the user. Unless otherwise stated, the entire
44 used as a message, with backslash-escaped characters interpreted as for the \t{echo -e} command of
45 bash, notably \t{\textbackslash t} for a horizontal tab, \t{\textbackslash n} for a new line, and
46 \t{\textbackslash\textbackslash} for a literal backslash. Ebuilds must not run any of these commands
47 -once the current phase function has returned. Unless otherwise noted, output may be sent to stdout,
48 -stderr or some other appropriate facility.
49 +once the current phase function has returned.
50 +
51 +\featurelabel{output-no-stdout} Unless otherwise noted, output may be sent to stderr or some other
52 +appropriate facility. In EAPIs listed in table~\ref{tab:output-commands} as not allowing stdout
53 +output, using stdout as an output facility is forbidden.
54 +
55 \begin{description}
56 \item[einfo] Displays an informational message.
57 \item[einfon] Displays an informational message without a trailing newline.
58 @@ -139,13 +143,14 @@ stderr or some other appropriate facility.
59 \ChangeWhenAddingAnEAPI{7}
60 \begin{centertable}{Output commands for EAPIs}
61 \label{tab:output-commands}
62 - \begin{tabular}{ll}
63 + \begin{tabular}{lll}
64 \toprule
65 \multicolumn{1}{c}{\textbf{EAPI}} &
66 - \multicolumn{1}{c}{\textbf{\t{eqawarn}?}} \\
67 + \multicolumn{1}{c}{\textbf{\t{eqawarn}?}} &
68 + \multicolumn{1}{c}{\textbf{can output to stdout?}} \\
69 \midrule
70 - 0, 1, 2, 3, 4, 5, 6 & No \\
71 - 7 & Yes \\
72 + 0, 1, 2, 3, 4, 5, 6 & No & Yes \\
73 + 7 & Yes & No \\
74 \bottomrule
75 \end{tabular}
76 \end{centertable}