From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1283291-garchives=archives.gentoo.org@lists.gentoo.org>
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 5712C1382C5
	for <garchives@archives.gentoo.org>; Mon, 17 May 2021 19:37:36 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id AFAD0E07FA;
	Mon, 17 May 2021 19:37:35 +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 9A24EE07FA
	for <gentoo-commits@lists.gentoo.org>; Mon, 17 May 2021 19:37:35 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id BEBAE340F99
	for <gentoo-commits@lists.gentoo.org>; Mon, 17 May 2021 19:37:34 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id E15F778F
	for <gentoo-commits@lists.gentoo.org>; Mon, 17 May 2021 19:37:31 +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: <1621276728.4e89df952e3b4d9638a2ac9d45098e781c04ce35.ulm@gentoo>
Subject: [gentoo-commits] proj/pms:eapi-8 commit in: /
X-VCS-Repository: proj/pms
X-VCS-Files: eapi-differences.tex eclasses.tex
X-VCS-Directories: /
X-VCS-Committer: ulm
X-VCS-Committer-Name: Ulrich Müller
X-VCS-Revision: 4e89df952e3b4d9638a2ac9d45098e781c04ce35
X-VCS-Branch: eapi-8
Date: Mon, 17 May 2021 19:37:31 +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: 53c9fa52-147d-4b36-9c67-3d8349aa3815
X-Archives-Hash: ce6bf9b841eb78e3e8977e222b664938

commit:     4e89df952e3b4d9638a2ac9d45098e781c04ce35
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun May 16 18:46:09 2021 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Mon May 17 18:38:48 2021 +0000
URL:        https://gitweb.gentoo.org/proj/pms.git/commit/?id=4e89df95

EAPI 8 accumulates PROPERTIES and RESTRICT across eclasses

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

 eapi-differences.tex |  4 ++++
 eclasses.tex         | 27 ++++++++++++++++++++++-----
 2 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/eapi-differences.tex b/eapi-differences.tex
index 5d7170d..5319bf0 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -149,6 +149,9 @@ Parallel tests & \compactfeatureref{parallel-tests} &
     \t{pkg_nofetch}, \t{src_unpack}, \t{src_prepare}, \t{src_configure},
         \t{src_compile}, \t{src_test}, \t{src_install} \\
 
+Accumulate \t{RESTRICT} etc. & \compactfeatureref{accumulate-vars} &
+    No & No & No & No & Yes \\
+
 \t{AA} & \compactfeatureref{aa} &
     * & No & No & No & No \\
 
@@ -495,6 +498,7 @@ EAPI 8 is EAPI 7 with the following changes:
 \item Selective fetch/mirror restriction, \featureref{uri-restrict}.
 \item \t{IDEPEND}, \featureref{idepend}.
 \item Different \t{src_prepare} implementation, \featureref{src-prepare-8}.
+\item \t{PROPERTIES}, \t{RESTRICT} accumulated across eclasses, \featureref{accumulate-vars}.
 \end{compactitem}
 
 \ChangeWhenAddingAnEAPI{8}

diff --git a/eclasses.tex b/eclasses.tex
index 7f4ba67..a92ce1f 100644
--- a/eclasses.tex
+++ b/eclasses.tex
@@ -34,11 +34,28 @@ The \t{inherit} command must also ensure that:
 
 \section{Eclass-defined Metadata Keys}
 
-The \t{IUSE}, \t{REQUIRED_USE}, \t{DEPEND}, \t{BDEPEND}, \t{RDEPEND}, \t{PDEPEND} and \t{IDEPEND}
-variables are handled specially when set by an eclass. They must be accumulated across eclasses,
-appending the value set by each eclass to the resulting value after the previous one is loaded.
-Then the eclass-defined value is appended to that defined by the ebuild. In the case of \t{RDEPEND},
-this is done after the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied.
+\featurelabel{accumulate-vars} The \t{IUSE}, \t{REQUIRED_USE}, \t{DEPEND}, \t{BDEPEND}, \t{RDEPEND},
+\t{PDEPEND} and \t{IDEPEND} variables are handled specially when set by an eclass. They must be
+accumulated across eclasses, appending the value set by each eclass to the resulting value after
+the previous one is loaded. For EAPIs listed in table~\ref{tab:accumulate-vars} as accumulating
+\t{PROPERTIES} and \t{RESTRICT}, the same is true for these variables. Then the eclass-defined
+value is appended to that defined by the ebuild. In the case of \t{RDEPEND}, this is done after
+the implicit \t{RDEPEND} rules in section~\ref{sec:rdepend-depend} are applied.
+
+\ChangeWhenAddingAnEAPI{8}
+\begin{centertable}{EAPIs accumulating \t{PROPERTIES} and \t{RESTRICT} across eclasses}
+    \label{tab:accumulate-vars}
+    \begin{tabular}{lll}
+      \toprule
+      \multicolumn{1}{c}{\textbf{EAPI}} &
+      \multicolumn{1}{c}{\textbf{Accumulates \t{PROPERTIES}?}} &
+      \multicolumn{1}{c}{\textbf{Accumulates \t{RESTRICT}?}} \\
+      \midrule
+      0, 1, 2, 3, 4, 5, 6, 7  & No  & No  \\
+      8                       & Yes & Yes \\
+      \bottomrule
+    \end{tabular}
+\end{centertable}
 
 \section{EXPORT_FUNCTIONS}