commit: d82fac36796849882d8718bdb024f7d01daed50a Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Wed Sep 6 10:11:16 2017 +0000 Commit: Göktürk Yüksek <gokturk <AT> gentoo <DOT> org> CommitDate: Mon Sep 25 04:29:21 2017 +0000 URL: https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d82fac36
general-concepts/dependencies: Add a warning on pure DEPEND soft blockers general-concepts/dependencies/text.xml | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/general-concepts/dependencies/text.xml b/general-concepts/dependencies/text.xml index f6cceba..7c8caeb 100644 --- a/general-concepts/dependencies/text.xml +++ b/general-concepts/dependencies/text.xml @@ -215,6 +215,10 @@ to the package manager. </p> <p> +The following description applies to all EAPIs starting with EAPI 2. +</p> + +<p> There are two kinds of blockers: soft blockers and hard blockers. </p> @@ -233,11 +237,17 @@ to solve file collisions between packages and are meaningful only in <c>RDEPEND</c>. </p> +<warning> +Soft blockers that are pure <c>DEPEND</c> <e>do not work correctly</e>. +While Portage seemingly queues the package for removal, it <e>does not</e> +exempt their contents from file collision checks. Always include your +soft blockers in <c>RDEPEND</c>! +</warning> + <p> If it is strictly necessary to resolve the blocker before the package -is built (installed) or if automatic resolution is undesired, -a hard blocker must be used instead. Hard blockers are not resolved -automatically, and are expressed using the following syntax: +is built (installed), a hard blocker must be used instead. Hard blockers +are expressed using the following syntax: </p> <codesample lang="ebuild"> @@ -254,10 +264,6 @@ or when it is installed from a binary package. </p> <p> -Hard blocks require EAPI 2 or newer. -</p> - -<p> Specific versions can also be blocked: </p>