commit:     f112e92497ee701194c6a7b5a1e1d09587a1d39d
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 16 11:22:22 2015 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Mar 28 19:24:31 2015 +0000
URL:        https://gitweb.gentoo.org/proj/pms.git/commit/?id=f112e924

EAPI 6: Bash version is 4.2.

See bug 431340.

 eapi-differences.tex    |  4 ++++
 ebuild-env-commands.tex | 16 ++++++++--------
 ebuild-format.tex       | 11 ++++++-----
 3 files changed, 18 insertions(+), 13 deletions(-)

diff --git a/eapi-differences.tex b/eapi-differences.tex
index b3a757a..7854739 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -142,6 +142,9 @@ Profile \t{IUSE} injection & 
\compactfeatureref{profile-iuse-inject} &
 \t{EPREFIX}, \t{ED}, \t{EROOT} & \compactfeatureref{offset-prefix-vars} &
     No & Yes & Yes & Yes & Yes \\
 
+Bash version & \compactfeatureref{bash-version} &
+    3.2 & 3.2 & 3.2 & 3.2 & 4.2 \\
+
 \t{find} is GNU? & \compactfeatureref{gnu-find} &
     Undefined & Undefined & Undefined & Yes & Yes \\
 
@@ -308,6 +311,7 @@ EAPI 6 is EAPI 5 with the following changes:
 
 \begin{compactitem}
 \item Profile \t{package*} and \t{use*} can be directories, 
\featureref{profile-file-dirs}.
+\item Bash version is 4.2, \featureref{bash-version}.
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{6}

diff --git a/ebuild-env-commands.tex b/ebuild-env-commands.tex
index f0ecb18..9e41abe 100644
--- a/ebuild-env-commands.tex
+++ b/ebuild-env-commands.tex
@@ -23,10 +23,8 @@ dependencies must be used to ensure their presence.
 
 The following commands must always be available in the ebuild environment:
 \begin{compactitem}
-\item All builtin commands in GNU bash, version 3.2\footnote{The required bash 
version was
-    retroactively updated from 3.0 to 3.2 in November 2009
-    (see 
\url{https://www.gentoo.org/proj/en/council/meeting-logs/20091109.txt}).%
-    \label{fn:bash3.2}}.
+\item \featurelabel{bash-version} All builtin commands in GNU bash, version as 
listed in
+    table~\ref{tab:system-commands-table}.
 \item \t{sed} must be available, and must support all forms of invocations 
valid for GNU sed
     version 4 or later.
 \item \t{patch} must be available, and must support all inputs valid for GNU 
patch.
@@ -36,15 +34,17 @@ The following commands must always be available in the 
ebuild environment:
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{6}
-\begin{centertable}{\t{find} implementation for EAPIs}
+\begin{centertable}{System commands for EAPIs}
     \label{tab:system-commands-table}
-    \begin{tabular}{ l l }
+    \begin{tabular}{ l l l }
       \toprule
       \multicolumn{1}{c}{\textbf{EAPI}} &
+      \multicolumn{1}{c}{\textbf{Bash version}} &
       \multicolumn{1}{c}{\textbf{GNU \t{find}?}} \\
       \midrule
-      0, 1, 2, 3, 4     & Undefined \\
-      5, 6              & Yes       \\
+      0, 1, 2, 3, 4     & 3.2 & Undefined \\
+      5                 & 3.2 & Yes       \\
+      6                 & 4.2 & Yes       \\
       \bottomrule
     \end{tabular}
 \end{centertable}

diff --git a/ebuild-format.tex b/ebuild-format.tex
index 3028e50..1e7dbe5 100644
--- a/ebuild-format.tex
+++ b/ebuild-format.tex
@@ -2,11 +2,12 @@
 \label{sec:ebuild-format}
 
 The ebuild file format is in its basic form a subset of the format of a bash 
script. The interpreter
-is assumed to be GNU bash, version 3.2 or later, see footnote~\ref{fn:bash3.2} 
on
-page~\pageref{fn:bash3.2}. The file encoding must be UTF-8 with Unix-style 
newlines. When sourced,
-the ebuild must define certain variables and functions (see 
sections~\ref{sec:ebuild-vars}
-and~\ref{sec:ebuild-functions} for specific information), and must not call 
any external programs,
-write anything to standard output or standard error, or modify the state of 
the system in any way.
+is assumed to be GNU bash, version as listed in 
table~\ref{tab:system-commands-table} on
+page~\pageref{tab:system-commands-table}, or any later version. The file 
encoding must be UTF-8
+with Unix-style newlines. When sourced, the ebuild must define certain 
variables and functions
+(see sections~\ref{sec:ebuild-vars} and~\ref{sec:ebuild-functions} for 
specific information), and
+must not call any external programs, write anything to standard output or 
standard error, or modify
+the state of the system in any way.
 
 % vim: set filetype=tex fileencoding=utf8 et tw=100 spell spelllang=en :
 

Reply via email to