From: Zac Medico Date: Fri, 10 Oct 2008 20:15:43 +0000 (-0000) Subject: Create a new AmbiguousPackageName exception to raise from X-Git-Tag: v2.2_rc13~106 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=7bb5894209190a2fa20c3899156a92a3313c884e;p=portage.git Create a new AmbiguousPackageName exception to raise from portage.cpv_expand(). It inherits from ValueError, for backward compatibility with calling code that already handles ValueError. svn path=/main/trunk/; revision=11670 --- diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 38724fc45..dc21b10d5 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -6617,7 +6617,10 @@ def cpv_expand(mycpv, mydb=None, use_cache=1, settings=None): else: virtual_name_collision = True if not virtual_name_collision: - raise ValueError, matches + # AmbiguousPackageName inherits from ValueError, + # for backward compatibility with calling code + # that already handles ValueError. + raise portage.exception.AmbiguousPackageName(matches) elif matches: mykey=matches[0] diff --git a/pym/portage/exception.py b/pym/portage/exception.py index ff34993a6..6626fa3bf 100644 --- a/pym/portage/exception.py +++ b/pym/portage/exception.py @@ -67,6 +67,13 @@ class ReadOnlyFileSystem(PortageException): class CommandNotFound(PortageException): """A required binary was not available or executable""" +class AmbiguousPackageName(ValueError, PortageException): + """Raised by portage.cpv_expand() when the package name is ambiguous due + to the existence of multiple matches in different categories. This inherits + from ValueError, for backward compatibility with calling code that already + handles ValueError.""" + def __str__(self): + return ValueError.__str__(self) class PortagePackageException(PortageException): """Malformed or missing package data"""