diff options
Diffstat (limited to 'lib/_emerge/DepPrioritySatisfiedRange.py')
-rw-r--r-- | lib/_emerge/DepPrioritySatisfiedRange.py | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/_emerge/DepPrioritySatisfiedRange.py b/lib/_emerge/DepPrioritySatisfiedRange.py index 0633a5e1c..b3bc90c2f 100644 --- a/lib/_emerge/DepPrioritySatisfiedRange.py +++ b/lib/_emerge/DepPrioritySatisfiedRange.py @@ -1,4 +1,4 @@ -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 from _emerge.DepPriority import DepPriority @@ -89,7 +89,17 @@ class DepPrioritySatisfiedRange: def _ignore_runtime(cls, priority): if priority.__class__ is not DepPriority: return False - return bool(priority.satisfied or priority.optional or not priority.buildtime) + # We could split this up into 2 variants (ignoring satisfied + # runtime_slot_op, and not) if we need more granularity for ignore_priority + # in future. + return bool( + ( + (not priority.runtime_slot_op) + or (priority.satisfied and priority.runtime_slot_op) + or priority.cross + ) + and (priority.satisfied or priority.optional or not priority.buildtime) + ) ignore_medium = _ignore_runtime ignore_medium_soft = _ignore_satisfied_buildtime_slot_op |