diff options
author | Martin Pihlak | 2009-11-06 08:57:06 +0000 |
---|---|---|
committer | Martin Pihlak | 2009-11-06 08:57:06 +0000 |
commit | d7db381ed4365848e7fefdfbee2ffa7f99da4903 (patch) | |
tree | 4d3c09ef2029cbd92c86eee45eab55dc291b604e /python/pkgloader.py | |
parent | 0f31618dc5b868123f278efb37ce1064ef4675b2 (diff) | |
parent | 661a2e367246d3915c387679c13f6e56aade9c82 (diff) |
Merge branch 'master' of git://github.com/markokr/skytools-dev
Diffstat (limited to 'python/pkgloader.py')
-rw-r--r-- | python/pkgloader.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/python/pkgloader.py b/python/pkgloader.py index 940defe5..f27b3571 100644 --- a/python/pkgloader.py +++ b/python/pkgloader.py @@ -49,15 +49,15 @@ def require(pkg, reqver): got = _import_cache[pkg] if need[0] != got[0] or reqval > got: raise ImportError("Request for package '%s' ver '%s', have '%s'" % ( - pkg, reqver, '.'.join(_skytools_required_version))) + pkg, reqver, '.'.join(got))) return # pick best ver from available ones - _pkg_cache = _load_pkg_cache() - if pkg not in _pkg_cache: + cache = _load_pkg_cache() + if pkg not in cache: return - for pkgver, pkgdir in _pkg_cache[pkg]: + for pkgver, pkgdir in cache[pkg]: if pkgver[0] == need[0] and pkgver >= need: # install the best on _install_path(pkg, os.path.join(_top, pkgdir)) @@ -69,12 +69,13 @@ def require(pkg, reqver): mod = __import__(pkg) ver_str = mod.__version__ # check if it is actually useful + ver_str = ver_str.split('-', 1)[0] full_ver = tuple([int(x) for x in ver_str.split('.')]) if full_ver[0] != reqval[0] or reqval > full_ver: raise ImportError("Request for Skytools ver '%s', got '%s'" % ( - reqver, full_str)) + reqver, '.'.join(full_ver))) raise ImportError("Request for package '%s' ver '%s', have '%s'" % ( - pkg, reqver, full_str)) + pkg, reqver, '.'.join(full_ver))) inst_ver = full_ver except ImportError: pass |