From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1708898-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 19A221581F0
	for <garchives@archives.gentoo.org>; Sun, 12 Jan 2025 20:14:37 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id 41946E082B;
	Sun, 12 Jan 2025 20:14:36 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 25907E082B
	for <gentoo-commits@lists.gentoo.org>; Sun, 12 Jan 2025 20:14:36 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 274C8340C43
	for <gentoo-commits@lists.gentoo.org>; Sun, 12 Jan 2025 20:14:35 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 0A54620A3
	for <gentoo-commits@lists.gentoo.org>; Sun, 12 Jan 2025 20:14:32 +0000 (UTC)
From: "Ulrich Müller" <ulm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" <ulm@gentoo.org>
Message-ID: <1736712588.056d5a841967d32a1019c07f467cedbfab2ef591.ulm@gentoo>
Subject: [gentoo-commits] proj/pms:eapi-9 commit in: /
X-VCS-Repository: proj/pms
X-VCS-Files: eapi-differences.tex pkg-mgr-commands.tex
X-VCS-Directories: /
X-VCS-Committer: ulm
X-VCS-Committer-Name: Ulrich Müller
X-VCS-Revision: 056d5a841967d32a1019c07f467cedbfab2ef591
X-VCS-Branch: eapi-9
Date: Sun, 12 Jan 2025 20:14:32 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 8fbd6f8d-a816-4d24-9c6a-54ce57e08861
X-Archives-Hash: 999d9917fd08b94b82655c3ad25ea641

commit:     056d5a841967d32a1019c07f467cedbfab2ef591
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 29 16:06:26 2024 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun Jan 12 20:09:48 2025 +0000
URL:        https://gitweb.gentoo.org/proj/pms.git/commit/?id=056d5a84

EAPI 9 has pipestatus

Bug: https://bugs.gentoo.org/566342
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 eapi-differences.tex |  4 ++++
 pkg-mgr-commands.tex | 19 +++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/eapi-differences.tex b/eapi-differences.tex
index 4624259..b0fac03 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -135,6 +135,9 @@ Output commands use stdout & \compactfeatureref{output-no-stdout} &
 \t{die} in subshell & \compactfeatureref{subshell-die} &
     No & Yes & Yes & Yes \\
 
+\t{pipestatus} & \compactfeatureref{pipestatus} &
+    No & No & No & Yes \\
+
 \t{econf -{}-datarootdir} & \compactfeatureref{econf-options} &
     No & No & Yes & Yes \\
 
@@ -365,6 +368,7 @@ EAPI 9 is EAPI 8 with the following changes:
 \item Different default EAPI for profiles, \featureref{profile-eapi-default}.
 \item Defined variables no longer exported, \featureref{export-vars}.
 \item \t{assert} banned, \featureref{banned-commands}.
+\item \t{pipestatus}, \featureref{pipestatus}.
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{9}

diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
index 3dfc3e1..3c03f0b 100644
--- a/pkg-mgr-commands.tex
+++ b/pkg-mgr-commands.tex
@@ -205,6 +205,11 @@ completing. Ebuilds must not run any of these commands once the current phase fu
     failure), calls \t{die}, passing any parameters to it.
     In EAPIs listed in table~\ref{tab:banned-commands-table}, this command is banned as per
     section~\ref{sec:banned-commands}.
+\item[pipestatus] \featurelabel{pipestatus} Checks the shell's pipe status array, i.\,e.\ the exit
+    status of the command(s) in the most recently executed foreground pipeline. Returns shell true
+    (0) if all elements are zero, or the last non-zero element otherwise. If called with \t{-v}
+    as the first argument, also outputs the pipe status array as a space-separated list.
+    Only available in EAPIs listed in table~\ref{tab:pipestatus} as supporting \t{pipestatus}.
 \end{description}
 
 \ChangeWhenAddingAnEAPI{9}
@@ -223,6 +228,20 @@ completing. Ebuilds must not run any of these commands once the current phase fu
     \end{tabular}
 \end{centertable}
 
+\ChangeWhenAddingAnEAPI{9}
+\begin{centertable}{EAPIs supporting \t{pipestatus}}
+    \label{tab:pipestatus}
+    \begin{tabular}{ll}
+      \toprule
+      \multicolumn{1}{c}{\textbf{EAPI}} &
+      \multicolumn{1}{c}{\textbf{Supports \t{pipestatus}?}} \\
+      \midrule
+      0, 1, 2, 3, 4, 5, 6, 7, 8 & No  \\
+      9                         & Yes \\
+      \bottomrule
+    \end{tabular}
+\end{centertable}
+
 \subsection{Patch commands}
 These commands are used during the \t{src_prepare} phase to apply patches to the package's sources.
 Ebuilds must not run any of these commands once the current phase function has returned.