From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id A53081396D0 for ; Wed, 4 Oct 2017 20:47:38 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 1165DE0D1F; Wed, 4 Oct 2017 20:47:38 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id E4DB5E0D1F for ; Wed, 4 Oct 2017 20:47:37 +0000 (UTC) Received: from localhost.localdomain (d202-252.icpnet.pl [109.173.202.252]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 3A62C341671; Wed, 4 Oct 2017 20:47:36 +0000 (UTC) From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= To: gentoo-pms@lists.gentoo.org Cc: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Subject: [gentoo-pms] [PATCH 08/28] EAPI 7 disallows stdout output of output functions Date: Wed, 4 Oct 2017 22:46:52 +0200 Message-Id: <20171004204712.10391-9-mgorny@gentoo.org> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20171004204712.10391-1-mgorny@gentoo.org> References: <20171004204712.10391-1-mgorny@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Package Manager Specification discussions X-BeenThere: gentoo-pms@gentoo.org X-BeenThere: gentoo-pms@lists.gentoo.org Reply-To: gentoo-pms@lists.gentoo.org X-Archives-Salt: 036d2407-0faa-4aa4-9b8b-1ac5d0aa7ff0 X-Archives-Hash: d39c44f46af2ccc1c316a59fad8bd9c6 Bug: https://bugs.gentoo.org/483240 --- eapi-differences.tex | 4 ++++ pkg-mgr-commands.tex | 17 +++++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/eapi-differences.tex b/eapi-differences.tex index 34ee0c9..055e6c6 100644 --- a/eapi-differences.tex +++ b/eapi-differences.tex @@ -41,6 +41,9 @@ of this document for a complete table of previous EAPIs. \bottomrule \endlastfoot +Output cmds can use stdout & \compactfeatureref{output-no-stdout} & + Yes & Yes & Yes & Yes & No \\ + \t{eqawarn} & \compactfeatureref{eqawarn} & No & No & No & No & Yes \\ @@ -391,6 +394,7 @@ EAPI 7 is EAPI 6 with the following changes: \item \t{dohtml} banned, \featureref{banned-commands}. \item Version manipulation and comparison functions added, \featureref{ver-functions}. \item \t{eqawarn} added, \featureref{eqawarn}. +\item Output commands can no longer use stdout, \featureref{output-no-stdout}. \end{compactitem} \ChangeWhenAddingAnEAPI{7} diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index c7f3696..5bb8b68 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -114,8 +114,12 @@ These commands display messages to the user. Unless otherwise stated, the entire used as a message, with backslash-escaped characters interpreted as for the \t{echo -e} command of bash, notably \t{\textbackslash t} for a horizontal tab, \t{\textbackslash n} for a new line, and \t{\textbackslash\textbackslash} for a literal backslash. Ebuilds must not run any of these commands -once the current phase function has returned. Unless otherwise noted, output may be sent to stdout, -stderr or some other appropriate facility. +once the current phase function has returned. + +\featurelabel{output-no-stdout} Unless otherwise noted, output may be sent to stderr or some other +appropriate facility. In EAPIs listed in table~\ref{tab:output-commands} as not allowing stdout +output, using stdout as an output facility is forbidden. + \begin{description} \item[einfo] Displays an informational message. \item[einfon] Displays an informational message without a trailing newline. @@ -139,13 +143,14 @@ stderr or some other appropriate facility. \ChangeWhenAddingAnEAPI{7} \begin{centertable}{Output commands for EAPIs} \label{tab:output-commands} - \begin{tabular}{ll} + \begin{tabular}{lll} \toprule \multicolumn{1}{c}{\textbf{EAPI}} & - \multicolumn{1}{c}{\textbf{\t{eqawarn}?}} \\ + \multicolumn{1}{c}{\textbf{\t{eqawarn}?}} & + \multicolumn{1}{c}{\textbf{can output to stdout?}} \\ \midrule - 0, 1, 2, 3, 4, 5, 6 & No \\ - 7 & Yes \\ + 0, 1, 2, 3, 4, 5, 6 & No & Yes \\ + 7 & Yes & No \\ \bottomrule \end{tabular} \end{centertable} -- 2.14.2