diff options
author | 2010-08-06 05:30:42 -0700 | |
---|---|---|
committer | 2010-08-06 05:30:42 -0700 | |
commit | 0d529b7829b19b3f55dc05747dc8299ae32498e1 (patch) | |
tree | 2ee6107644f090d7afe013b32da3a594db78a9b4 | |
parent | Bug #331413 - Clarify valid $VERSION parts that may be used in (diff) | |
download | portage-multirepo-0d529b7829b19b3f55dc05747dc8299ae32498e1.tar.gz portage-multirepo-0d529b7829b19b3f55dc05747dc8299ae32498e1.tar.bz2 portage-multirepo-0d529b7829b19b3f55dc05747dc8299ae32498e1.zip |
* Split out a _get_masking_status() method that returns categorized
message objects instead of plain strings.
* Move masks to the "invalid" category.
-rw-r--r-- | pym/_emerge/depgraph.py | 18 | ||||
-rw-r--r-- | pym/portage/package/ebuild/getmaskingstatus.py | 4 |
2 files changed, 15 insertions, 7 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index cc697ccf..4addbd44 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -20,6 +20,8 @@ from portage.dep import Atom from portage.output import bold, blue, colorize, create_color_func, darkblue, \ darkgreen, green, nc_len, red, teal, turquoise, yellow bad = create_color_func("BAD") +from portage.package.ebuild.getmaskingstatus import \ + _getmaskingstatus, _MaskReason from portage.sets import SETPREFIX from portage.sets.base import InternalPackageSet from portage.util import cmp_sort_key, writemsg, writemsg_stdout @@ -6020,21 +6022,27 @@ def show_blocker_docs_link(): print() def get_masking_status(pkg, pkgsettings, root_config): + return [mreason.message for \ + mreason in _get_masking_status(pkg, pkgsettings, root_config)] - mreasons = portage.getmaskingstatus( +def _get_masking_status(pkg, pkgsettings, root_config): + + mreasons = _getmaskingstatus( pkg, settings=pkgsettings, portdb=root_config.trees["porttree"].dbapi) if not pkg.installed: if not pkgsettings._accept_chost(pkg.cpv, pkg.metadata): - mreasons.append("CHOST: %s" % \ - pkg.metadata["CHOST"]) + mreasons.append(_MaskReason("CHOST", "CHOST: %s" % \ + pkg.metadata["CHOST"])) if pkg.invalid: for msg_type, msgs in pkg.invalid.items(): for msg in msgs: - mreasons.append("invalid: %s" % (msg,)) + mreasons.append( + _MaskReason("invalid", "invalid: %s" % (msg,))) if not pkg.metadata["SLOT"]: - mreasons.append("invalid: SLOT is undefined") + mreasons.append( + _MaskReason("invalid", "SLOT: undefined")) return mreasons diff --git a/pym/portage/package/ebuild/getmaskingstatus.py b/pym/portage/package/ebuild/getmaskingstatus.py index f1ccd6d9..61a06e76 100644 --- a/pym/portage/package/ebuild/getmaskingstatus.py +++ b/pym/portage/package/ebuild/getmaskingstatus.py @@ -147,7 +147,7 @@ def _getmaskingstatus(mycpv, settings, portdb): msg.append("license(s)") rValue.append(_MaskReason("LICENSE", " ".join(msg))) except portage.exception.InvalidDependString as e: - rValue.append(_MaskReason("LICENSE", "LICENSE: "+str(e))) + rValue.append(_MaskReason("invalid", "LICENSE: "+str(e))) try: missing_properties = settings._getMissingProperties(mycpv, metadata) @@ -161,7 +161,7 @@ def _getmaskingstatus(mycpv, settings, portdb): msg.append("properties") rValue.append(_MaskReason("PROPERTIES", " ".join(msg))) except portage.exception.InvalidDependString as e: - rValue.append(_MaskReason("PROPERTIES", "PROPERTIES: "+str(e))) + rValue.append(_MaskReason("invalid", "PROPERTIES: "+str(e))) # Only show KEYWORDS masks for installed packages # if they're not masked for any other reason. |