diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-07-11 07:08:30 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-07-11 07:08:30 -0700 |
commit | 774ab66e9cc55f749052d690421765647c9c9c9c (patch) | |
tree | 64ad8a7f9733498e98c02300cc16f30d68316aee /pym/_emerge/is_valid_package_atom.py | |
parent | 034203acbf22320256aef748d7b0f45e3477e125 (diff) | |
download | portage-774ab66e9cc55f749052d690421765647c9c9c9c.tar.gz portage-774ab66e9cc55f749052d690421765647c9c9c9c.tar.bz2 portage-774ab66e9cc55f749052d690421765647c9c9c9c.zip |
is_valid_package_atom: fix circular import
Due to a quirk in python import behavior, this only failed
nondeterministically. However, the new preinst sanity test in the
portage-9999 ebuild tends to trigger it more often for some people.
Diffstat (limited to 'pym/_emerge/is_valid_package_atom.py')
-rw-r--r-- | pym/_emerge/is_valid_package_atom.py | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/pym/_emerge/is_valid_package_atom.py b/pym/_emerge/is_valid_package_atom.py index d33cf4557..7cb2a5bb1 100644 --- a/pym/_emerge/is_valid_package_atom.py +++ b/pym/_emerge/is_valid_package_atom.py @@ -1,13 +1,21 @@ -# Copyright 1999-2009 Gentoo Foundation +# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 import re -import portage -import _emerge.depgraph +from portage.dep import isvalidatom + +def insert_category_into_atom(atom, category): + alphanum = re.search(r'\w', atom) + if alphanum: + ret = atom[:alphanum.start()] + "%s/" % category + \ + atom[alphanum.start():] + else: + ret = None + return ret def is_valid_package_atom(x, allow_repo=False): if "/" not in x: - x2 = _emerge.depgraph.insert_category_into_atom(x, 'cat') + x2 = insert_category_into_atom(x, 'cat') if x2 != None: x = x2 - return portage.isvalidatom(x, allow_blockers=False, allow_repo=allow_repo) + return isvalidatom(x, allow_blockers=False, allow_repo=allow_repo) |